Zum Hauptinhalt springen

5.1.3. NEXT_HOP

5.1.3. NEXT_HOP

NEXT_HOP ist ein wohlbekanntes obligatorisches Attribut, das die IP-Adresse des Routers definiert, die als nächster Hop zu den in der UPDATE-Nachricht aufgeführten Zielen verwendet werden SOLLTE. Das NEXT_HOP-Attribut wird wie folgt berechnet:

  1. Wenn eine Nachricht an einen internen Peer gesendet wird und die Route nicht lokal erstellt wurde, SOLLTE der BGP-Speaker das NEXT_HOP-Attribut NICHT ÄNDERN, es sei denn, er wurde explizit so konfiguriert, dass er seine eigene IP-Adresse als NEXT_HOP ankündigt. Wenn eine lokal erstellte Route einem internen Peer angekündigt wird, SOLLTE der BGP-Speaker die Schnittstellenadresse des Routers, über den das angekündigte Netzwerk für den Speaker erreichbar ist, als NEXT_HOP verwenden. Wenn die Route direkt mit dem Speaker verbunden ist oder wenn die Schnittstellenadresse des Routers, über den das angekündigte Netzwerk für den Speaker erreichbar ist, die Adresse des internen Peers ist, dann SOLLTE der BGP-Speaker seine eigene IP-Adresse für das NEXT_HOP-Attribut verwenden (die Adresse der Schnittstelle, die verwendet wird, um den Peer zu erreichen).

  2. Wenn eine Nachricht an einen externen Peer X gesendet wird und der Peer einen IP-Hop vom Speaker entfernt ist:

    • Wenn die angekündigte Route von einem internen Peer gelernt wurde oder lokal erstellt wurde, kann der BGP-Speaker eine Schnittstellenadresse des internen Peer-Routers (oder des internen Routers), über den das angekündigte Netzwerk für den Speaker erreichbar ist, für das NEXT_HOP-Attribut verwenden, vorausgesetzt, dass Peer X ein gemeinsames Subnetz mit dieser Adresse teilt. Dies ist eine Form des "Third Party" NEXT_HOP-Attributs.

    • Andernfalls, wenn die angekündigte Route von einem externen Peer gelernt wurde, kann der Speaker eine IP-Adresse eines beliebigen benachbarten Routers (bekannt aus dem empfangenen NEXT_HOP-Attribut), den der Speaker selbst für die lokale Routenberechnung verwendet, im NEXT_HOP-Attribut verwenden, vorausgesetzt, dass Peer X ein gemeinsames Subnetz mit dieser Adresse teilt. Dies ist eine zweite Form des "Third Party" NEXT_HOP-Attributs.

    • Andernfalls, wenn der externe Peer, dem die Route angekündigt wird, ein gemeinsames Subnetz mit einer der Schnittstellen des ankündigenden BGP-Speakers teilt, KANN der Speaker die IP-Adresse, die einer solchen Schnittstelle zugeordnet ist, im NEXT_HOP-Attribut verwenden. Dies ist als "First Party" NEXT_HOP-Attribut bekannt.

    • Standardmäßig (wenn keine der oben genannten Bedingungen zutrifft) SOLLTE der BGP-Speaker die IP-Adresse der Schnittstelle, die der Speaker zum Herstellen der BGP-Verbindung zu Peer X verwendet, im NEXT_HOP-Attribut verwenden.

  3. Wenn eine Nachricht an einen externen Peer X gesendet wird und der Peer mehrere IP-Hops vom Speaker entfernt ist (auch bekannt als "Multihop EBGP"):

    • Der Speaker KANN so konfiguriert sein, dass er das NEXT_HOP-Attribut propagiert. In diesem Fall ist, wenn eine Route angekündigt wird, die der Speaker von einem seiner Peers gelernt hat, das NEXT_HOP-Attribut der angekündigten Route genau dasselbe wie das NEXT_HOP-Attribut der gelernten Route (der Speaker ändert das NEXT_HOP-Attribut nicht).

    • Standardmäßig SOLLTE der BGP-Speaker die IP-Adresse der Schnittstelle, die der Speaker im NEXT_HOP-Attribut verwendet, um die BGP-Verbindung zu Peer X herzustellen, verwenden.

Normalerweise wird das NEXT_HOP-Attribut so gewählt, dass der kürzeste verfügbare Pfad genommen wird. Ein BGP-Speaker MUSS in der Lage sein, die Deaktivierung der Ankündigung von Third Party NEXT_HOP-Attributen zu unterstützen, um unvollkommen überbrückte Medien zu handhaben.

Eine von einem BGP-Speaker erstellte Route DARF NICHT einem Peer unter Verwendung einer Adresse dieses Peers als NEXT_HOP angekündigt werden (SHALL NOT). Ein BGP-Speaker DARF keine Route mit sich selbst als nächstem Hop installieren (SHALL NOT).

Das NEXT_HOP-Attribut wird vom BGP-Speaker verwendet, um die tatsächliche ausgehende Schnittstelle und die unmittelbare Next-Hop-Adresse zu bestimmen, die verwendet werden SOLLTE, um Transit-Pakete an die zugehörigen Ziele weiterzuleiten.

Die unmittelbare Next-Hop-Adresse wird bestimmt, indem eine rekursive Routen-Lookup-Operation für die IP-Adresse im NEXT_HOP-Attribut durchgeführt wird, unter Verwendung des Inhalts der Routing-Tabelle, wobei ein Eintrag ausgewählt wird, wenn mehrere Einträge mit gleichen Kosten existieren. Der Routing-Tabellen-Eintrag, der die IP-Adresse im NEXT_HOP-Attribut auflöst, gibt immer die ausgehende Schnittstelle an. Wenn der Eintrag ein angeschlossenes Subnetz angibt, aber keine Next-Hop-Adresse angibt, dann SOLLTE die Adresse im NEXT_HOP-Attribut als unmittelbare Next-Hop-Adresse verwendet werden. Wenn der Eintrag auch die Next-Hop-Adresse angibt, SOLLTE diese Adresse als unmittelbare Next-Hop-Adresse für die Paketweiterleitung verwendet werden.