ho bisogno di ottenere tutti gli indirizzi IP contenuti in all'interno di una sottorete e sto cercando di farlo utilizzando IPnetworkLista IP tutti gli indirizzi di una sottorete
Per esempio la sottorete 192.168.1.0/29 avrebbe il output seguente:
// 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
Ecco il mio codice:
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
Come si può vedere, questo non è il risultato desiderato. Cosa mi manca? C'è un altro strumento o metodo per fare questo lavoro? Sono riuscito a incidere qualcosa, ma non è bello e non sono sicuro se enumeri correttamente le sottoreti più grandi.
heh il tuo rappresentante è 256 al momento di porre questa domanda :) –
Questo sembra un bug nella libreria ipnetwork che stai usando. –
Speravo di aggrapparmi a qualcuno che ha usato questa libreria in passato senza dover correggere il codice del ragazzo ...... Si ottengono molte raccomandazioni per le persone che vogliono fare subnetting C#, quindi suppongo che stavo pescando per il correzione;). –