Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

IPv6 Neighbor Discovery

Die Nachbarerkennung ist ein Protokoll für IPv6-Datenverkehr, das es verschiedenen Knoten auf derselben Verbindung ermöglicht, ihre Nachbarn über ihre Existenz zu informieren und von der Existenz ihrer Nachbarn zu erfahren.

IPv6 Neighbor Discovery – Übersicht

Bei der Nachbarerkennung handelt es sich um ein Protokoll, das es verschiedenen Knoten auf derselben Verbindung ermöglicht, ihre Nachbarn über ihre Existenz zu informieren und von der Existenz ihrer Nachbarn zu erfahren.

Router und Hosts (Knoten) verwenden Nachbarsuche (ND)-Nachrichten, um die Link-Layer-Adressen von Nachbarn zu ermitteln, die sich auf angeschlossenen Links befinden, und um ungültige Cache-Einträge zu überschreiben. Hosts verwenden ND auch, um benachbarte Router zu finden, die Pakete in ihrem Namen weiterleiten können.

Darüber hinaus nutzen Knoten ND, um aktiv die Fähigkeit zu verfolgen, Nachbarn zu erreichen. Wenn ein Router (oder der Pfad zu einem Router) ausfällt, suchen Knoten aktiv nach Alternativen, um das Ziel zu erreichen.

In diesem Abschnitt werden die folgenden Themen behandelt:

Verbesserungen gegenüber IPv4-Protokollen

IPv6 Neighbor Discovery entspricht einer Reihe von IPv4-Protokollen: ARP, ICMP Router Discovery und ICMP Redirect. Die Nachbarsuche bietet jedoch viele Verbesserungen gegenüber den IPv4-Protokollen. Diese Verbesserungen adressieren Folgendes:

  • Routererkennung: Wie ein Host Router lokalisiert, die sich auf einem angeschlossenen Link befinden.

  • Präfixerkennung: Wie ein Host Adresspräfixe für Ziele erkennt, die sich auf einer angeschlossenen Verbindung befinden. Knoten verwenden Präfixe, um zwischen Zielen zu unterscheiden, die sich auf einer angeschlossenen Verbindung befinden, und Zielen, die nur über einen Router erreicht werden können.

  • Parametererkennung: Wie ein Knoten verschiedene Parameter (Verbindungsparameter oder Internetparameter) lernt, die er in ausgehenden Paketen platziert.

  • Adressauflösung: Wie ein Knoten nur eine IPv6-Zieladresse verwendet, um eine Link-Layer-Adresse für Ziele auf einem angeschlossenen Link zu bestimmen.

  • Bestimmung des nächsten Hops: Der Algorithmus, den ein Knoten verwendet, um eine IPv6-Zieladresse einer benachbarten IPv6-Adresse (entweder dem nächsten Router-Hop oder dem Ziel selbst) zuzuordnen, an die er Datenverkehr für das Ziel senden möchte.

  • Erkennung der Nichterreichbarkeit von Nachbarn: Wie ein Knoten feststellt, dass er einen Nachbarn nicht mehr erreichen kann.

  • Erkennung doppelter Adressen: Wie ein Knoten bestimmt, ob eine Adresse bereits von einem anderen Knoten verwendet wird.

Ein Router sendet in regelmäßigen Abständen von jeder seiner Multicastschnittstellen eine Multicast-Anzeige und kündigt deren Verfügbarkeit an. Hosts lauschen auf diese Ankündigungen für die automatische Adresskonfiguration und die Erkennung von verbindungslokalen Adressen der benachbarten Router. Wenn ein Host gestartet wird, sendet er eine Multicasting-Aufforderung an einen Router, um sofortige Ankündigungen anzufordern.

Die Routererkennungsnachrichten stellen kein Routingprotokoll dar. Sie ermöglichen es Hosts, die Existenz benachbarter Router zu erkennen, werden aber nicht verwendet, um zu bestimmen, welcher Router am besten geeignet ist, um ein bestimmtes Ziel zu erreichen.

Die Nachbarsuche verwendet die folgenden ICMPv6-Nachrichten (Internet Control Message Protocol, Version 6): Routeranforderung, Routerankündigung, Nachbaranwerbung, Nachbarankündigung und Umleitung.

Die Nachbarsuche für IPv6 ersetzt die folgenden IPv4-Protokolle: Routersuche (RDISC), Address Resolution Protocol (ARP) und ICMPv4-Umleitung.

Junos OS Version 9.3 und höher unterstützt Secure Neighbor Discovery (SEND). Mit SEND können Sie NDP-Nachrichten (Neighbor Discovery Protocol) sichern. Er eignet sich für Umgebungen, in denen die physische Sicherheit einer Verbindung nicht gewährleistet ist und Angriffe auf NDP-Nachrichten ein Problem darstellen. Das Junos OS sichert NDP-Nachrichten durch kryptografisch generierte Adressen (CGAs).

Router-Erkennung

Routerankündigungen können eine Liste von Präfixen enthalten. Diese Präfixe werden für die automatische Adresskonfiguration, zur Verwaltung einer Datenbank mit Onlink-Präfixen (auf derselben Datenverbindung) und zur Erkennung von Duplikationsadressen verwendet. Wenn ein Knoten im Verbindung ist, leitet der Router Pakete an diesen Knoten weiter. Ist der Knoten nicht im Link, werden die Pakete zur Prüfung an den nächsten Router gesendet. Bei IPv6 kann jedes Präfix in der Präfixliste eine Präfixlänge, eine gültige Lebensdauer für das Präfix, eine bevorzugte Lebensdauer für das Präfix, ein Onlink-Flag und ein Autokonfigurations-Flag enthalten. Diese Informationen ermöglichen die automatische Adresskonfiguration und die Einstellung von Verbindungsparametern, wie z. B. die maximale MTU-Größe (Transmission Unit) und die Hop-Grenze.

Junos OS Version 22.4R1 und höher unterstützt NAT64-IPv6-Adresspräfix-Routerankündigung. Der Router kündigt das konfigurierte IPv6-Adresspräfix NAT64 in den Routerankündigungspaketen an. Sie können bis zu 3 NAT64-IPv6-Adresspräfixe pro Schnittstelle konfigurieren.

Sie können das IPv6-Adresspräfix NAT64 mit dem folgenden Befehl konfigurieren: set protocols router-advertisement interface <interface-name> nat-prefix <prefix>.

Sie können die Ankündigungszeit des Routers mit dem Befehl set protocols router-advertisement interface <interface-name> nat-prefix <prefix> lifetime <lifetime>.

Adressenauflösung

Bei IPv6 ersetzt ICMPv6 Neighbor Discovery das Address Resolution Protocol (ARP) für die Auflösung von Netzwerkadressen in Link-Level-Adressen. Die Nachbarerkennung verarbeitet auch Änderungen an Link-Layer-Adressen, eingehendem Load Balancing, Anycastadressen und Proxyankündigungen.

Knoten, die die Link-Layer-Adresse eines Zielknotens anfordern, multicasten eine Neighbor Solicitation-Nachricht mit der Zieladresse. Das Ziel sendet eine Neighbor Advertisement-Nachricht zurück, die seine Link-Layer-Adresse enthält.

Nachbarwerbungs- und Werbenachrichten werden verwendet, um doppelte Unicastadressen auf demselben Link zu erkennen. Die automatische Konfiguration einer IP-Adresse hängt davon ab, ob dieser Link eine doppelte Adresse enthält. Die Erkennung doppelter Adressen ist eine Voraussetzung für die automatische Konfiguration.

Nachbarwerbungs- und Werbenachrichten werden auch zur Erkennung der Nichterreichbarkeit von Nachbarn verwendet. Bei der Erkennung der Nichterreichbarkeit von Nachbarn wird das Vorhandensein eines Zielknotens auf einer bestimmten Verbindung erkannt.

Umleiten

Umleitungsnachrichten werden gesendet, um einen Host über einen besseren Next-Hop-Router zu einem bestimmten Ziel oder einem Onlink-Nachbarn zu informieren. Dies ist vergleichbar mit der ICMPv4-Weiterleitung. Ähnlich wie bei der ICMPv4-Umleitungsfunktion wird die ICMPv6-Umleitungsnachricht von Routern verwendet, um On-Link-Hosts über einen besseren nächsten Hop für ein bestimmtes Ziel zu informieren. Die Router sollen es den Hosts ermöglichen, möglichst effiziente lokale Routing-Entscheidungen zu treffen.

SLAAC

Zusätzlich zu all den anderen Verbesserungen, die es für die Netzwerkwelt mit sich bringt, ermöglicht Neighbor Discovery auch die automatische Adresskonfiguration, nämlich die zustandslose Adressen-Autokonfiguration (SLAAC). IPv6 bietet weiterhin die Möglichkeit zur zustandsbehafteten Adresszuweisung über DHCPv6 (und statische Zuweisung), SLAAC bietet jedoch eine einfache Adresskonfigurationsmethode, die unter vielen Umständen wünschenswert sein kann.

SLAAC bietet Plug-and-Play-IP-Konnektivität in zwei Phasen: Phase 1: Link-lokale Adresszuweisung; und dann in Phase 2: Globale Adresszuweisung.

  • Phase 1 – Schritte für die lokale Konnektivität:

    1. Link-Local-Adressgenerierung: Jedes Mal, wenn eine Multicast-fähige IPv6-fähige Schnittstelle aktiviert wird, generiert der Knoten eine Link-Local-Adresse für diese Schnittstelle. Dies geschieht durch Anhängen eines Schnittstellenbezeichners an das verbindungslokale Präfix (FE80::/10). Die automatisch generierte Link-Local-Adresse kann nicht gelöscht werden. Es kann aber auch manuell eine neue Link-Local-Adresse eingetragen werden, die die automatisch generierte Link-Local-Adresse überschreibt.

    2. Duplikaterkennung: Bevor der Knoten seiner Schnittstelle die neue verbindungslokale Adresse zuweist, prüft er, ob die Adresse eindeutig ist. Dies wird erreicht, indem eine Neighbor Solicitation-Nachricht gesendet wird, die für die neue Adresse bestimmt ist. Wenn es eine Antwort gibt, ist die Adresse ein Duplikat und der Prozess wird gestoppt, was ein Eingreifen des Bedieners erfordert.

    3. Link-Local Address Assignment: Wenn die Adresse eindeutig ist, weist der Knoten sie der Schnittstelle zu, für die sie generiert wurde.

    Zu diesem Zeitpunkt verfügt der Knoten über IPv6-Konnektivität zu allen anderen Knoten über dieselbe Verbindung. Phase 2 kann nur von Hosts abgeschlossen werden. Die Schnittstellenadressen des Routers müssen auf andere Weise konfiguriert werden.

  • Phase 2 – Schritte für globale Konnektivität:

    1. Routerankündigung: Der Knoten sendet eine Routeranforderung, um alle Router auf dem Link aufzufordern, ihm Routerankündigungen zu senden. Wenn der Router für die zustandslose Autokonfiguration aktiviert ist, enthält die Routerankündigung ein Subnetzpräfix für die Verwendung durch benachbarte Hosts.

    2. Globale Adressgenerierung: Sobald der Host ein Subnetzpräfix von einem Router erhält, generiert er eine globale Adresse, indem er die Schnittstellen-ID an das angegebene Präfix anhängt.

    3. Erkennung doppelter Adressen: Der Host führt erneut die Erkennung doppelter Adressen (Duplicate Address Detection, DAD) durch, diesmal für die neue globale Adresse. 4. Globale Adressvergabe: Unter der Annahme, dass es sich bei der Adresse nicht um ein Duplikat handelt, weist der Host sie der Schnittstelle zu.

    Dieser Prozess gewährleistet eine vollständige globale IPv6-Konnektivität ohne manuelle Hostkonfiguration und mit sehr geringer Routerkonfiguration.

Unterstützte Standards für ICMP-Routersuche und IPv6 Neighbor Discovery

Junos OS unterstützt im Wesentlichen die folgenden RFCs, die Standards für das Internet Control Message Protocol (ICMP für IP-Version 4 [IPv4]) und Nachbarerkennung (für IP-Version 6 [IPv6]) definieren.

  • RFC 1256, ICMP-Router-Erkennungsmeldungen

  • RFC 4861, Neighbor Discovery für IP Version 6 (IPv6)

  • RFC 2463, Internet Control Message Protocol (ICMPv6) für das Internet Protocol Version 6 (IPv6)-Spezifikation

  • RFC 4443, Internet Control Message Protocol (ICMPv6) für das Internet Protocol Version 6 (IPv6)-Spezifikation

  • RFC 4862, IPv6 zustandslose Adressen-Autokonfiguration

  • RFC 8335, PROBE: Ein Dienstprogramm zum Sondieren von Schnittstellen

Beispiel: Konfigurieren von IPv6-Schnittstellen und Aktivieren von Neighbor Discovery

In diesem Beispiel wird gezeigt, wie der Router oder Switch so konfiguriert wird, dass IPv6-Nachbarerkennungsnachrichten gesendet werden.

Anforderungen

In diesem Beispiel ist keine spezielle Konfiguration erforderlich, die über die Geräteinitialisierung hinausgeht.

Überblick

In diesem Beispiel sind alle Schnittstellen in der Beispieltopologie mit IPv6-Adressen konfiguriert. Wenn Sie die IPv6-Funktionalität auf Ihr LAN, Ihr Datencenter oder Ihre Kundennetzwerke ausweiten möchten, sollten Sie Stateless Address Auto-Configuration (SLAAC) verwenden, was bedeutet, dass Sie Routerankündigungen konfigurieren müssen. SLAAC ist ein IPv6-Protokoll, das ähnliche Funktionen wie DHCP in IPv4 bietet. Mithilfe von SLAAC können Netzwerkhosts eine weltweit eindeutige IPv6-Adresse basierend auf dem Präfix eines Routers in der Nähe in einer Routerankündigung automatisch konfigurieren. Dadurch entfällt die Notwendigkeit, jede Schnittstelle in einem bestimmten Netzwerkbereich explizit zu konfigurieren. Routerankündigungsmeldungen sind standardmäßig deaktiviert, und Sie müssen sie aktivieren, um SLAAC nutzen zu können.

Um den Router so zu konfigurieren, dass er Routerankündigungsnachrichten sendet, müssen Sie mindestens die folgenden Anweisungen in die Konfiguration aufnehmen. Alle anderen Konfigurationsanweisungen für die Routerwerbung sind optional.

Um die Nachbarermittlung zu konfigurieren, fügen Sie die folgenden Anweisungen ein. Sie konfigurieren die Routerankündigung für jede Schnittstelle.

Topologie

Abbildung 1 zeigt eine vereinfachte Beispieltopologie.

Abbildung 1: ICMP-Router Topologie ICMP Router Discover Topology ermitteln

In diesem Beispiel wird gezeigt, wie sichergestellt wird, dass alle IPv6-Hosts, die mit den Subnetzen in der Beispieltopologie verbunden sind, eine lokale EUI-64-Adresse automatisch konfigurieren können.

Die CLI-Schnellkonfiguration zeigt die Konfiguration für alle Geräte in Abbildung 1. #d15e200__d15e368 beschreibt die Schritte auf Gerät R1.

Konfiguration

Verfahren

CLI Schnellkonfiguration

Um dieses Beispiel schnell zu konfigurieren, kopieren Sie die folgenden Befehle, fügen Sie sie in eine Textdatei ein, entfernen Sie alle Zeilenumbrüche, ändern Sie alle erforderlichen Details, damit sie Ihrer Netzwerkkonfiguration entsprechen, und kopieren Sie dann die Befehle, und fügen Sie sie dann in die CLI auf der [edit] Hierarchieebene ein.

Gerät R1

Gerät R2

Gerät R3

Gerät R4

Schritt-für-Schritt-Anleitung

Im folgenden Beispiel müssen Sie durch verschiedene Ebenen in der Konfigurationshierarchie navigieren. Anweisungen hierzu finden Sie unter Verwenden des CLI-Editors im Konfigurationsmodus im CLI-Benutzerhandbuch.

So konfigurieren Sie eine IPv6-Nachbarerkennung:

  1. Konfigurieren Sie die Netzwerkschnittstellen.

    Dieses Beispiel zeigt mehrere Loopback-Schnittstellenadressen zum Simulieren angeschlossener Netzwerke.

  2. Aktivieren Sie die Nachbarschaftserkennung.

Befund

Bestätigen Sie im Konfigurationsmodus Ihre Konfiguration, indem Sie die show interfaces Befehle und show protocols eingeben. Wenn in der Ausgabe nicht die beabsichtigte Konfiguration angezeigt wird, wiederholen Sie die Konfigurationsanweisungen in diesem Beispiel, um sie zu korrigieren.

Wenn Sie mit der Konfiguration des Geräts fertig sind, wechseln Sie in den Konfigurationsmodus .

Verifizierung

Gehen Sie folgendermaßen vor, um zu bestätigen, dass die Konfiguration ordnungsgemäß funktioniert:

Überprüfung der Schnittstellen

Zweck

Vergewissern Sie sich, dass die Schnittstellen aktiviert sind, und zeigen Sie die zugewiesenen EUI-64-Adressen an.

Aktion

Geben Sie im Betriebsmodus den show interfaces terse Befehl ein.

Bedeutung

Die Ausgabe zeigt, dass alle Schnittstellen mit der IPv6-Adressfamilie (inet6) konfiguriert sind. Jede IPv6-fähige Schnittstelle verfügt über zwei IPv6-Adressen. eine verbindungslokale Adresse und eine globale Adresse. Die globalen Adressen stimmen mit denen in Abbildung 1 überein. Junos OS erstellt automatisch eine Link-Local-Adresse für jede Schnittstelle, die für den IPv6-Betrieb aktiviert ist. Alle verbindungslokalen Adressen beginnen mit dem Präfix fe80::/64. Der Hostteil der Adresse ist ganze 64 Bit lang und entspricht der Kennung der verbindungslokalen Schnittstelle. Wenn eine Schnittstellenadresse mit der eui-64 Anweisung konfiguriert wird, stimmt ihre Schnittstellen-ID mit der Schnittstellen-ID der verbindungslokalen Adresse überein. Das liegt daran, dass Link-Local-Adressen nach der EUI-64-Spezifikation kodiert sind.

Pingen der Schnittstellen

Zweck

Überprüfen Sie die Konnektivität zwischen den direkt verbundenen Schnittstellen.

Aktion
  1. Ermitteln Sie die IPv6-Schnittstellenadresse des Remote-Routers.

    Führen Sie auf Gerät R2 den show interfaces terse Befehl für die Schnittstelle aus, die direkt mit Gerät R1 verbunden ist, und kopieren Sie die globale Adresse in den Erfassungspuffer Ihres Terminalemulators.

  2. Führen Sie den ping Befehl auf Gerät R1 mit der globalen Adresse aus, die Sie kopiert haben.

Bedeutung

Junos OS verwendet denselben Ping-Befehl für IPv4- und IPv6-Tests. Das Fehlen eines Interior Gateway Protocol (IGP) im Netzwerk beschränkt die Ping-Tests auf direkt verbundene Nachbarn. Wiederholen Sie den Ping-Test für andere direkt verbundene Nachbarn.

Überprüfen des IPv6-Nachbarcaches

Zweck

Zeigt Informationen über die IPv6-Nachbarn an.

Nach der Durchführung eines Ping-Tests finden Sie im IPv6-Nachbarcache Einträge für Schnittstellenadressen.

Aktion

Geben Sie im Betriebsmodus den show ipv6 neighbors Befehl ein.

Bedeutung

In IPv6 wurde das Address Resolution Protocol (ARP) durch das Neighbor Discovery Protocol (NDP) ersetzt. Der Befehl IPv4 show arp wird durch den Befehl show ipv6 neighborsIPv6 ersetzt. Die wichtigsten Informationen, die von diesem Befehl angezeigt werden, sind die IP-Adresse, die MAC-Adresse (Link Layer) und die Schnittstelle.

Überprüfen von IPv6-Router-Ankündigungen

Zweck

Vergewissern Sie sich, dass dem Netzwerk mithilfe von SLAAC Geräte hinzugefügt werden können, indem Sie sicherstellen, dass die Routerankündigungen ordnungsgemäß funktionieren.

Aktion

Geben Sie im Betriebsmodus den show ipv6 router-advertisement Befehl ein.

Bedeutung

Die Ausgabe zeigt, dass Routerankündigungen an den Schnittstellen von Gerät R1 gesendet und empfangen werden, was darauf hinweist, dass sowohl Gerät R1 als auch seine direkt verbundenen Nachbarn für die Generierung von Routerankündigungen konfiguriert sind.

Ablaufverfolgung von Nachbarermittlungsereignissen

Zweck

Führen Sie zusätzliche Überprüfungen durch, indem Sie die Routerankündigungen verfolgen.

Aktion
  1. Konfigurieren von Ablaufverfolgungsvorgängen.

  2. Führen Sie den show log Befehl aus.