https://github.com/bitvantage/internetprotocol.networkprefix
A library for working with IPv4 and IPV6 network prefixes.
https://github.com/bitvantage/internetprotocol.networkprefix
Last synced: 4 months ago
JSON representation
A library for working with IPv4 and IPV6 network prefixes.
- Host: GitHub
- URL: https://github.com/bitvantage/internetprotocol.networkprefix
- Owner: Bitvantage
- License: agpl-3.0
- Created: 2024-06-28T15:01:59.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2024-09-16T22:21:51.000Z (over 1 year ago)
- Last Synced: 2026-01-05T11:49:43.488Z (5 months ago)
- Language: C#
- Homepage:
- Size: 49.8 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# Bitvantage.InternetProtocol.NetworkPrefix
A library for working with IPv4 and IPV6 network prefixes.
## Installing via NuGet Package Manager
```sh
PM> NuGet\Install-Package Bitvantage.InternetProtocol.NetworkPrefix
```
## Quick Start
```csharp
// create a new network prefix
var prefix = NetworkPrefix.Parse("10.0.0.0/24");
// get the total number of host addresses in a network
var totalHosts = prefix.TotalHosts;
// get the total number of addresses in a network
var totalAddresses = prefix.TotalAddresses;
// iterate through each host address
foreach(var address in prefix.Hosts()
Console.WriteLine(address);
// determine if a prefix is contained by a different prefix
var prefixContainsPrefix = prefix.Contains("10.0.0.0/25");
// determine if a IP address is contained by a prefix
var prefixContainsHost = prefix.Contains(IPAddress.Parse("10.0.0.100");
```