Gibt es nativen .NET-Typ für CIDR Subnetze?
-
10-07-2019 - |
Frage
Es ist einfach genug, um eine Klasse zu speichern / zu validieren etwas wie 192.168.0.0/16
zu kodieren, aber ich war neugierig, wenn ein nativer Typ für diesen bereits in .NET vorhanden ist? Ich könnte mir vorstellen, wäre es viel wie IPAddress
arbeiten:
CIDR subnet = CIDR.Parse("192.168.0.0/16");
Im Grunde braucht es nur um sicherzustellen, dass Sie mit einer IPv4 oder IPv6-Adresse arbeiten und dann, dass die Anzahl der Bits Ihre Spezifizierungs für diesen Typ gültig ist.
Lösung
Nein, es so nativen Typ in .NET ist, müssen Sie ein, um sich selbst zu entwickeln.
Andere Tipps
Sie können den Code von CodePlex verwenden nur das zu tun:
http://ipnetwork.codeplex.com/
IPNetwork ipnetwork = IPNetwork.Parse("192.168.168.100/24");
Console.WriteLine("Network : {0}", ipnetwork.Network);
Console.WriteLine("Netmask : {0}", ipnetwork.Netmask);
Console.WriteLine("Broadcast : {0}", ipnetwork.Broadcast);
Console.WriteLine("FirstUsable : {0}", ipnetwork.FirstUsable);
Console.WriteLine("LastUsable : {0}", ipnetwork.LastUsable);
Console.WriteLine("Usable : {0}", ipnetwork.Usable);
Console.WriteLine("Cidr : {0}", ipnetwork.Cidr);
Output
Network : 192.168.168.0
Netmask : 255.255.255.0
Broadcast : 192.168.168.255
FirstUsable : 192.168.168.1
LastUsable : 192.168.168.254
Usable : 254
Cidr : 24
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow