Doppelte IP-Adresse - welche gewinnt?

14

Wenn es eine doppelte IP-Adresse gibt, welche gewinnt? Erstens, zuletzt, weder Klappen noch?

Pseudocyber
quelle
Siehe RFC 4862, Abschnitt "Erkennung doppelter Adressen".
BatchyX
RFC5227 kann auch eine nützliche Ressource sein
ytti
Hat dir eine Antwort geholfen? In diesem Fall sollten Sie die Antwort akzeptieren, damit die Frage nicht für immer auftaucht und nach einer Antwort sucht. Alternativ können Sie auch Ihre eigene Antwort eingeben und annehmen.
Ron Maupin

Antworten:

17

IPv4:

Es wird "flattern". Auf dem sendenden Host (einem anderen Host oder dem Gateway / Router) befindet sich ein ARP-Eintrag für die IP, der auf die MAC-Adresse eines der Hosts verweist. Pakete werden an einen der Hosts gesendet, unabhängig davon, wohin der ARP-Eintrag aktuell zeigt. Dadurch wird die Konnektivität für beide Hosts effektiv unterbrochen.

IPv6:

Das Neighbor Discovery-Protokoll führt vor dem Konfigurieren / Aktivieren einer neuen Adresse eine Duplicate Address Detection (DAD) durch. Wenn festgestellt wird, dass die neue vorläufige Adresse bereits verwendet wird, wird die Adresse nicht aktiviert, sodass der "erste" Host weiterhin über eine Verbindung verfügt.

Sebastian Wiesinger
quelle
1
Hinweis: (wie bei allem IPv6) gibt es immer noch eine Lücke. DAD funktioniert nicht, wenn sich die beiden Hosts beim Zuweisen der Adresse nicht sehen können. Sie können also immer noch im selben Loch landen.
Ricky Beam
1
Ja, wenn Hosts sich nicht sehen, funktioniert DAD nicht, aber das ist kein IPv6-Problem. Wenn Sie keine Konnektivität haben, kann dies durch kein Protokoll verhindert werden.
Sebastian Wiesinger
3
IPv4 kann DAD auch, DHCP-Clients oft. Im Durchschnitt stimme ich jedoch zu, dass v6-Host dies eher tut. Der Fehlermodus ist in beiden Fällen ziemlich gleich.
Ytti
8

Wenn es eine doppelte IP-Adresse gibt, welche gewinnt? Erstens, zuletzt, weder Klappen noch?

Ich habe die letzten sechs Stunden über diese Frage nachgedacht ... Ich denke, die passendste Antwort ist "Niemand gewinnt" .

Mit anderen Worten, mindestens zwei Computer können nicht zuverlässig verwendet werden. Außerdem verbringen Sie Zeit damit, ein Problem zu beheben, und diese Zeit hätte für etwas viel Produktiveres verwendet werden können. Jeder, der lange Zeit ein Netzwerktechniker war, weiß, dass uns oft die Zeit ausgeht.

Eine grundlegende Lösung zur Vermeidung von IP-Konflikten

IP-Konflikte deuten auf eine grundlegende Störung oder ein Fehlen guter IP-Zuweisungsprozesse hin. Wenn der Prozess fehlerhaft ist, sollten diese Probleme schnell behoben werden. Andernfalls könnten Sie zu viele Zyklen mit solchen taktischen Problemen verbringen.

Proaktive Planung könnte Folgendes verwenden:

  • DHCP für PCs
  • Statische DHCP-Reservierungen für Server
  • DHCP-Snooping bei Switchports
  • IP Source Guard bei Switchports
  • Dynamische ARP-Inspektion auf Switchports

In Cisco IOS würden die IP Source Guard- und DHCP-Snooping-Konfiguration ungefähr so ​​aussehen:

!! NOTE: Source guard requires DHCP Snooping global config
!! NOTE: Source guard requires DHCP Snooping on vlan
!! NOTE: Source guard *static* bindings REQUIRE DHCP snooping on the switch
!!     (even if you aren't using DHCP anywhere else)
ip dhcp snooping
ip dhcp snooping vlan 100,200
!
! static Source Guard binding for a non-DHCP device
ip source binding 0011.2233.4455 vlan 100 10.71.2.85 interface GigabitEthernet 5/48
!
interface GigabitEthernet 4/1
 description For DHCP_SERVER port
 switchport access vlan 200
 ! Trust DHCP server ports
 ip dhcp snooping trust
!
interface GigabitEthernet 5/20
 description For DHCP_PC port
 switchport access vlan 200
 no ip dhcp snooping trust
 ip verify source
!

Eine solche Lösung verhindert IP-Konflikte, bevor sie auftreten. Wenn Sie das Problem bereits haben, würde ich anfangen, einen Plan zu entwickeln, um es zu lösen. Dies ist nur eine mögliche Lösung.

Mike Pennington
quelle
5

Bei IPv4 werden an die doppelte Adresse gesendete IP-Pakete an die MAC-Adresse gesendet, die sich derzeit im ARP-Cache befindet. Flapping tritt nur auf, wenn beide Hosts ARP-Antworten an den Absender senden und den ARP-Eintrag flappen. Wenn keine ARP-Antworten empfangen werden, ist die Konnektivität mit einem der Eigentümer der doppelten IP-Adresse in Ordnung.

Der letzte Host, der eine ARP-Anfrage beantwortet (oder beantwortet hat), "gewinnt". Dieser Wettbewerb findet für jeden neuen Host statt, der mit der doppelten IP kommunizieren möchte.

Sie könnten den Wettbewerb manipulieren, indem Sie regelmäßig kostenlose ARPs senden.

Gerben
quelle
4

Wenn es keinen ARP-Eintrag gibt (ein anderer Host möchte mit dem Dup sprechen), gewinnt derjenige, der zuerst antwortet. und Hosts (und viele Router) zwischenspeichern ARP-Einträge manchmal stundenlang.

Ricky Beam
quelle
1
Gewinnt nicht die letzte Antwort? ARPs können für eine lange Zeit zwischengespeichert werden, aber ich denke, der Eintrag wird überschrieben, wenn eine neue ARP-Antwort eintrifft. Die zweite Antwort würde die erste überschreiben. Die ersten Pakete könnten auf dem Host landen, der zuerst geantwortet hat, aber nach Erhalt der zweiten Antwort würden Sie zum Senden von Paketen an diesen Host wechseln.
Gerben
1

Im Allgemeinen werden solche Vorfälle verhindert, bevor sie einen Konflikt verursachen.
Dank des kostenlosen ARP kann der Host feststellen, ob ein anderer Host bereits eine bestimmte IP-Adresse verwendet. Der sendende Host erwartet die Antwort nicht, was bedeutet, dass die angegebene Adresse nicht von einem anderen Host verwendet wird. Wenn eine Antwort eingeht, wird die Fehlermeldung "IP-Adresse duplizieren ..." angezeigt. Dies ist ein Warnsignal für eine Fehlkonfiguration. Dies bietet kein Reaktionsschema, um das Problem zu lösen.

DHCP-Server führen im Allgemeinen die Adresskonflikterkennung (Address Conflict Detection, ACD) [RFC5227] durch, um solche Konflikte zu vermeiden. Es besteht aus ARP-Probe- und ARP-Ansagepaketen. ARP-Test ist eine spezielle Art von ARP-Paket, bei dem das Feld Absender-Protokolladresse auf 0 gesetzt ist. Dies geschieht, um eine Cache-Verschmutzung zu vermeiden. Auf der anderen SeiteDie ARP-Ansage ähnelt der ARP-Sonde, enthält jedoch die Felder Absender-Protokolladresse und Zielprotokolladresse. Es wird verwendet, um die Absicht des Absenders mitzuteilen, die entsprechende IP-Adresse zu verwenden.
Wenn eine neue Schnittstellenverbindung hergestellt wird, werden drei ARP-Testpakete gesendet, bevor auf eine zufällige Zeit gewartet wird (Bereich 0-1). Während diese Tests gesendet werden, empfängt der Knoten möglicherweise ARP-Anforderungen ODER -Antworten . Eine Antwort zeigt das Vorhandensein eines anderen Knotens unter Verwendung der angegebenen IP-Adresse an. Eine Anfrage , die dieselbe IP-Adresse im Adressfeld des Zielprotokolls enthält, impliziert, dass ein anderer Knoten versucht, dieselbe IP-Adresse abzurufen. In beiden Fällen wird eine Fehlermeldung angezeigt und eine alternative IP-Adresse verfolgt.Dieses Verhalten wird empfohlen, wenn Adressen von DHCP zugewiesen werden . Wenn der sendende Knoten keinen Konflikt entdeckt, kann er die IP-Adresse anfordern, die die Protokolladresse des Absenders gefüllt hat.

Ugnes
quelle