# IP Adresse erhöhen



## Kreatief (23. Sep 2005)

Hallo,

gibt es eine Möglichkeit, eine IP Adresse zu erhöhen?

Ich möchte einen bestimmten Bereich von IP Adressen durchlaufen, und connects herstellen. Dazu gibt der User die Start IP und die End IP an. Nun soll ein Connect zur Start IP hergestellt werden, und wenn die Aufgaben erledigt sind, die nächste IP getestet werden. 

Bsp: 192.168.5.1, 192.168.5.2, ...


Jedoch kann ich diese Adressen nicht als string erhöhen, ebenso funktioniert das inetAddress Object nicht.


DKT


----------



## SnooP (23. Sep 2005)

Nunja - ich würde glaub ich den String per split am "." trennen in einzelne Bereiche - diese Einzelstrings in z.B. bytes umwandeln und die dann erhöhen - dann kannst du auch per Methode direkt z.B. in Class-C Netzen nicht nur die Hosts hinten addieren, sondern auch den Bereich davor, falls das gewünscht wird.


----------



## The_S (23. Sep 2005)

Was spricht dagegen das einfach so zu erhöhen?


----------



## Guest (23. Sep 2005)

Hobbit_Im_Blutrausch hat gesagt.:
			
		

> Was spricht dagegen das einfach so zu erhöhen?




Ehm... Das funktioniert nicht. Es wirft ne Exception.

InetAddress inetAdrs = InetAddress.getByName( "192.168.5.1" );
inetAdrs++;


Oder wie meinst du es? 


Zum Splitten: Ja, ok, aber ich muss es ja hinterher wieder zusammenfügen. Ausserdem erhöhe ich dann nur die einzelnen Segmente, steigen die aber über 255 soll das es auf 0 zurückgesetzt werden, und das nächste Segment erhöht werden...



DKT


----------



## SnooP (23. Sep 2005)

Das ist ja nu ne einfache if-Abfrage... und das zurückschreiben ist doch nu auch nich so tragisch:
seg[3]+"."+seg[2]+"."+seg[1]+"."+seg[0] oder? 

Ne andere Möglichkeit wäre noch das ganze als Binärzahl zu generieren und dann einfach immer +1 zu machen - danach per Bitoperationen die 4 Bytes ausschneiden und in Strings umwandeln.. aber ich glaube das ist auch nicht besser


----------

