Ping zwischen IPv6-Hosts, die mit einem Router verbunden sind

Ping zwischen IPv6-Hosts, die mit einem Router verbunden sind

Ich versuche zu verstehen, wie der Ping-Befehl in einer Situation wie dieser funktioniert:

IPv6-Adresse von Host A: 2001:A::A (MAC-Adresse AA-BB-CC-00-11-22)

IPv6-Adresse von Host B: 2001:B::B (MAC-Adresse 22-44-66-00-EE-DD)

Diese beiden Hosts sind mit einem Router verbunden. Dieser hat für jedes Präfix eine Schnittstelle. Beispielsweise ist Host A mit der Schnittstelle 2001:A::1 (MAC 77-88-99-00-DD-22) des Routers verbunden und Host B mit der Schnittstelle 2001:B::1 (MAC 11-66-AA-00-33-88) des Routers.

Nehmen wir an, dass die Caches auf allen Geräten, einschließlich des Routers, leer sind. Was sollte die Konsequenz eines Ping-Befehls von A nach B sein? ping 2001:B::B

1) Host A fordert den Router an, sein Standard-Gateway anzufordern (A benötigt die MAC-Adresse).

2) Router-Werbung vom Router an Host A

3) ICMP-Echoanforderung von A an den Router (von der MAC-Adresse von A an die MAC-Adresse des Routers)

4) Muss der Router eine Nachbarerkennung durchführen, um die MAC-Adresse von B zu finden oder nicht?

Alles Weitere ergibt sich aus Punkt 4.

Danke

Antwort1

So wie ich es verstehe, sind die Schritte 1 und 2 keine Funktion einer ICMP-Anforderung, sondern einfach eine Folge der Verbindung mit einem IPv6-Netzwerk. Dies unterscheidet sich von IPv4 darin, dass eine Netzwerkkarte unter bestimmten Umständen ruhig bleiben und einfach den Netzwerkverkehr abhören kann, bis entweder ihr Host etwas zu übertragen hat oder als Reaktion auf eine Link-Layer-Übertragung.

Der RA aus Schritt 2 würde sich selbst nominell als Standard-Gateway nominieren.

Wenn also Host A eine ICMPv6-Echoanforderung an einen Host sendet, der sich nicht im lokalen Netzwerk befindet, wird sie per Unicast an die IPv6-Adresse des Routers gesendet, in diesem Fall 2001:A::1. Die MAC-Adresse der Routerschnittstelle wurde bereits während des Neighbor Discovery-Schritts deklariert, sodass kein zusätzliches ARP durchgeführt werden muss: Host A hat 2001:A::A (MAC-Adresse AA-BB-CC-00-11-22) vorab zugeordnet.

Der Router empfängt ein Paket von Host A für Host B. Der Router weiß, dass Host B direkt über die Schnittstelle 2001:B::1 verbunden ist, und kennt auch die MAC-Adresse von Host B. Daher sendet er die ICMPv6-Anforderung per Unicast an Host B.

Die MAC-Adresse von Host B wurde bereits unabhängig von der ICMPv6-Anforderung ermittelt, als Host B zum ersten Mal mit dem Router verbunden wurde. Dies unterscheidet sich von IPv4, bei dem der Router who-hasbeim Empfang eines Pakets für einen Host im B-Netzwerk eine ARP-Übertragung auf der B-Schnittstelle durchführen müsste.

verwandte Informationen