PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : IP-Adresskonflikt



Sandal
11.01.00, 16:46
Hallo,

kennt jemand eine Möglichkeit, wie sich eine doppelt vergebene IP-Adresse schon beim Booten mit Linux feststellen läßt? Ich dachte der Kernel bekommt das ohnehin mit. Ich habe hier einen NT-Rechner und einen Linux-Rechner. Wenn beide dieselbe Adresse bekommen, dann beschwert sich der NT-Rechner sofort (egal ob beim Booten oder im Betrieb), Linux dagegen läuft weiter und kann sogar im Netz arbeiten, allerdings nur sehr langsam.

Irgendeine Idee?

Gruß Sandal

robert
11.01.00, 17:53
Nun...

a) Zwei verschiedene IP-Adr. benutzen! http://www.linuxforen.de/ubb/wink.gif

b) In /sbin/init.d/ bzw. /etc/rc.d/ im boot.local ein Script einfügen, das ein kurzes PING an die entsprechende Adr. macht und wenn dieses erfolgreich war eine Meldung ausgeben, bzw. das Booten stoppen!

Gruß

Robert

Sandal
11.01.00, 20:16
Danke,

klar, daß man nicht zweimal dieselbe IP-Adresse vergeben soll. Aber wenn man sich in einem größeren Netzwerk befindet, dann kann das schonmal passieren. Funktioniert das mit dem Ping wirklich? Zum Zeitpunkt der "boot.local" ist das Netzwerk ja schon gestartet (sonst funktioniert ping ja sowieso nicht). Aber dann sind die IP-Adressen ja schon aktiv, also auch die eigene; d.h. pinge ich mich damit nicht einfach selbst an???

Gruß Sandal

global C
12.01.00, 16:31
Würd' ich auch so denken: zum anpingen muß man eine IP haben.
Aber man könnte doch der Netzkarte eine 'Test-ip' zuteilen, die nirgendwo anders genutzt wird, und damit pingen.
In Abhängigkeit vom Ergebnis kann die eigentliche IP dann zugeteilt werden.

Oder?

robert
12.01.00, 17:12
Stimmt, hab ich gar nicht dran gedacht.

Hmm... im Prinzip müßte das Ping rausgehen, wenn zwar das Netz (die Karte) schon aktiv sind, aber noch keine intnterne IP vergeben wurde.
Oder man vergibt beim Start eine Dummy-IP (die 100%ig nicht vorhanden ist!) und wenn ein Ping auf die vergebene Adr. erfolglos war, kann man seine eigene IP auf diese ändern.

Ist nicht ganz trivial, sollte aber gehen...

Robert

P.S.
Ich hab auch mal wieder nur mit einem Auge gelesen.
GlobalC hatte es so ja schon beschrieben...



[Diese Nachricht wurde von robert am 12. Januar 2000 editiert.]

Sandal
13.01.00, 18:09
Hallo,

nochmal was zum Hintergrund: Ich will hier Linux als Server in der Uni verwenden. In der Uni gibt es schon gelegentlich Idioten, die Rechner ins Netz hängen mit falscher IP-Adresse. Das Dumme ist, daß das jederzeit passieren kann, also auch, wenn der Rechner schon gestartet ist. Ich habe hier zum Vergleich einen BSD-Rechner, der sowohl beim Hochfahren, als auch beim Betrieb augenblicklich einen Addresskonflikt meldet (Console/Logfile); NT übrigens auch. Um der Sache auf die Spur zu kommen, habe ich einen Packet-Sniffer mitlaufen lassen. Es ist wohl so, daß jeder Rechner der sich mit seiner IP im Netz anmeldet ein ARP-Packet als Broadcast schickt. BSD und NT reagieren auf ein Packet mit der eigenen IP-Adresse sofort und schicken ihrerseits ein ARP-Packet los. Somit wissen beide Bescheid. Linux dagegen reagiert überhaupt nicht, d.h. schickt gar nichts, was zur Folge hat, daß unser Switch den Rechner abhängt. Das Netzwerk ist dann auf dem Linuxrechner gestört und man weiß nicht warum. Finde ich ziemlich peinlich sowas. Hat jemand eine Idee, wie man sowas den Entwicklern näherbringen könnte?

Sandal

robert
13.01.00, 18:13
Moment mal... Linux hat doch eine ARP Funktion!

Hast du mal im Kernel unter Netzwerk geschaut?
Vielleicht steht was in den HOWTO's.
Ich kann mir nicht vorstellen, das Linux für diese Situation keine Lösung hat.

Robert

P.S.
Schau dir mal in /usr/src/linux/Documentation/networking/ip_dynaddr.txt an!
Vielleicht hilft das...


[Diese Nachricht wurde von robert am 13. Januar 2000 editiert.]

Sandal
13.01.00, 23:39
Ja klar, Linux hat auch ARP sonst funktioniert ja gar nichts. Aber es reagiert nicht auf ein eintreffendes ARP-Packet mit der eigenen(!) Adresse. Im Normalfall gibt es ja auch keine Reaktion auf ARP-Broadcasts, oder? Ich weiß auch nicht, ob dieser Fall in den RFCs irgendwie geregelt ist.

Diesen Verbose-Mode aus dem TXT-File habe ich mal enabled, aber noch nicht weiter getestet. Ich weiß nicht, ob der die Sache ganz trifft...

Gruß Sandal