Hallo zusammen,
ich bin auf der Suche nach einer Library, die in der Lage ist mir für eine Netzadresse (z.B. 10.0.15.0/24) eine Liste aller möglichen IP-Adressen zurückzugeben.
Das Beispiel hat grundsätzlich ja 256 mögliche Adressen. Davon geht 10.0.15.0 an das Netzwerk und 10.0.15.255 wäre die Broadcast-Adresse. Damit bleiben 254 Adressen übrig.
Ich möchte gerne eine Liste/Array von diesen Adressen haben, also: 10.0.15.1, 10.0.15.2, ... 10.0.15.254 als string oder anderes Objekt.
Ich habe bereits die Lib IPNetwork2 gefunden, die liefert mir aber leider nicht das, was ich brauche (oder ich bin blind).
Muss ich das selbst bauen oder gibt es dafür vielleicht schon etwas cooles?
Vielen Dank und viele Grüße
Erster Treffer auf GitHub binnen 10 Sekunden 🙂https://github.com/jsakamoto/ipaddressrange
- performance is a feature -
Microsoft MVP - @Website - @AzureStuttgart - github.com/BenjaminAbt - Sustainable Code
Hallo 1nf1n1ty,
abgesehen von Abts (aufwändiger) Recherche ist das Problem an sich ja nicht recht kompliziert. Siehe Netzmaske -- es ist im Grunde nur eine Bit-Maskierung (cf. [Artikel] Bitoperationen in C#) und daraus lassen sich auch wieder IPv4-Adressen erzeugen, damit diese ausgegeben, etc. werden können. Das wäre eine nette Übung zum selber programmieren (und somit auch etwas zu lernen / probieren).
mfG Gü
Stellt fachliche Fragen bitte im Forum, damit von den Antworten alle profitieren. Daher beantworte ich solche Fragen nicht per PM.
"Alle sagten, das geht nicht! Dann kam einer, der wusste das nicht - und hat's gemacht!"
Hallo ihr zwei,
grml... wieso bin ich nicht auf die Idee gekommen bei github zu suchen? Vielen Dank für den Fund, das hilft mir weiter. Danke auch für den Hinweis mit der Bitmaskierung, war mir garnicht mehr so präsent, da ich normalerweise wenig mit Netzwerken in der Form zu tun habe.
Viele Grüße
Dein Problem ist die Herangehensweise -> "ich bin auf der Suche nach einer Library".
Als erstes sollte man bei solch kleinen Dingen danach suchen wie Netzwerkadressen gebildet werden und sich überlegen ob man sich ein Snippet dazu sucht das man in den Code einbaut, statt eine Library dafür einzubinden 😉