Ich brauche alle IP-Adressen in einem Subnetz innerhalb enthalten sind, zu bekommen, und ich versuche, es zu tun mit IPnetworkListe IP alle Adressen in einem Subnetz
Zum Beispiel das Subnetz 192.168.1.0/29 das hätte folgende Ausgabe:
// Output
// 192.168.1.0
// 192.168.1.1
// 192.168.1.2
// 192.168.1.3
// 192.168.1.4
// 192.168.1.5
// 192.168.1.6
// 192.168.1.7
Hier ist mein Code:
IPNetwork ipn = IPNetwork.Parse("192.168.1.0/29");
IPAddressCollection ips = IPNetwork.ListIPAddress(ipn);
foreach (IPAddress ip in ips)
{
Console.WriteLine(ip);
}
// Output
// 192.168.1.0
// 192.168.1.0
// 192.168.1.0
// 192.168.1.0
// 192.168.1.0
// 192.168.1.0
Wie Sie sehen können, ist dies nicht das gewünschte Ergebnis. Was vermisse ich? Gibt es ein anderes Werkzeug oder eine andere Methode, um diese Aufgabe zu erledigen? Ich habe es geschafft, etwas zu hacken, aber es ist nicht schön und ich bin mir nicht sicher, ob es größere Subnetze richtig aufzählt.
heh Ihre rep ist 256 zum Zeitpunkt der Frage diese Frage :) –
Dies sieht aus wie ein Fehler in der ipnetwork-Bibliothek, die Sie verwenden. –
Ich hatte gehofft, mich an jemanden zu klammern, der diese Bibliothek in der Vergangenheit benutzt hat, ohne den Code des Kerls reparieren zu müssen ... Er bekommt viele Empfehlungen für Leute, die C# Subnetting machen wollen, also glaube ich, dass ich für die fixieren;). –