Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

BGP Fehlermeldungen

Verstehen der Fehlerbehandlung für BGP Von Nachrichten aktualisieren

Eine BGP wird als falsch formatiert angesehen, wenn eines der Nachrichtenattribute falsch formatiert ist. Wenn ein an einer Sitzung teilnehmen BGP der Router eine falsch formatierte Aktualisierungsnachricht empfängt, wird die gesamte Sitzung standardmäßig zurückgesetzt. Dies ist unerwünschte, da auch Nachrichten mit gültigen Routen aktualisiert werden. Um dieses unerwünschte Verhalten zu vermeiden, muss die BGP von Nachrichten geändert werden.

Konfigurieren Sie die Anweisung auf der oder auf der Hierarchieebene, um die Fehlerbehandlung für BGP Aktualisierung von bgp-error-tolerance[edit protocols bgp] Nachrichten zu [edit protocols bgp group group-name][edit protocols bgp group group-name neighbor address] konfigurieren.

Wenn ein Attribut Attribut-Flags enthält, die mit dem Wert des Feldes Attributestyp in Konflikt stehen, werden die Attribut-Flags auf den richtigen Wert zurückgesetzt und die Aktualisierungsnachricht wird verarbeitet. Der Wert des Bits erweiterter Länge in den Attribut-Flags wird nicht geändert, da dieser Wert definiert, ob die Attributelänge eins oder zwei Oktetts ist. Daher wirkt sich der Wert des Attribute-Flags darauf aus, wie das Paket BGP Paket aktualisiert wird.

Anmerkung:

Es gibt keine explizite Spezifikation für den Attribut-Flag-Wert für die Pfadattribute.

Falsch formatierte Aktualisierungsmeldungen werden je nach Fall behandelt, abhängig von den Werten der in den Nachrichten enthaltenen Attribute. Es gibt drei Möglichkeiten, mit falsch formatierten Nachrichten BGP zu gehen, die in der sinkenden Reihenfolge des Schweregrads aufgelistet sind.

  1. Notification message approach— Der Fehler bei der falschen Nachricht wird lokal protokolliert, eine Fehlermeldung, mit der die Fehlermeldung aktualisiert wird, und die gesamte BGP wird zurückgesetzt.

    Dieser Ansatz wird gewählt, wenn:

    • Die BGP-Aktualisierung enthält das MP REACH-Attribut oder das MP-Unreach-Attribut.

    • Das NLRI-Feld oder die BGP können nicht richtig analysiert werden, da eine Mismatch zwischen der Länge des Attributs und dem Wert des Feldes mit der Attributelänge liegt.

  2. Treat-as-withdraw approach— Alle Routen innerhalb der falsch formatierten Aktualisierungsnachricht werden als verborgene Routen behandelt, sofern die Anweisung nicht konfiguriert wurde. In diesem Fall werden die Routen keep none verworfen. Wenn die Aussage fehlt, wird die Anzahl der versteckten falsch formatierten Routen mit einem Limit konfiguriert. Wenn die Routen überschritten werden, wird verhindert, dass weitere falsch formatierte Routen verborgen keep none werden. Junos OS die neu empfangenen malformierten Routen entfernt, wenn die Begrenzung der falsch formatierten Route erreicht wird.

  3. Attribute discard approach— Die falsch formatierten Attribute in der Aktualisierungsnachricht werden verworfen. die Nachricht wird jedoch verarbeitet. Wir empfehlen nicht die Verwendung dieses Ansatzes, wenn sich die zu verwerfenden Attribute auf die Routenauswahl oder -installation auswirken.

    Anmerkung:

    Wenn ein Attribut in einer Aktualisierungsnachricht mehr als ein Mal erscheint, werden alle Vorkommnisse des Attributs – andere als das erste – verworfen und die Nachricht wird verarbeitet.

Die BGP werden nach den folgenden Attributen gescannt und basierend auf den Werten dieser Attribute als falsch behandelt:

  • The origin attribute- Der Ansatz "Treat as withdraw" gehandhabt.

  • The AS path attribute- Der Ansatz "Treat as withdraw" gehandhabt.

  • The AS 4 path attribute— Nach dem Ansatz des Attributs verwerfen. Wenn ein Attribut Attribut-Flags auf hat, die mit dem Code des Attributs in Konflikt stehen, Junos OS die Attribute-Flags auf den richtigen Wert zurückgesetzt. Die Aktualisierungsnachricht wird weiter verarbeitet.

    Junos OS den Wert des Bits mit erweiterter Länge in den Attribut-Flags nicht. Dieses Bit definiert, ob die Attributlänge ein Oktett oder zwei Oktett benutzerdefinierter Länge ist. Der Wert dieses Flags wirkt sich darauf aus, wie BGP Paket analysiert wird. Es gibt keine explizite Spezifikation dieses Werts für die Pfadattribute.

  • The aggregator attribute— Nach dem Ansatz des Attributs verwerfen.

  • The aggregator 4 attribute— Nach dem Ansatz des Attributs verwerfen.

  • The next-hop attribute- Der Ansatz "Treat as withdraw" gehandhabt.

  • The multiple exit discriminator attribute- Der Ansatz "Treat as withdraw" gehandhabt.

  • The local preference attribute- Der Ansatz "Treat as withdraw" gehandhabt.

  • The atomic aggregate attribute— Nach dem Ansatz des Attributs verwerfen.

  • The community attribute- Der Ansatz "Treat as withdraw" gehandhabt.

  • The extended community attribute- Der Ansatz "Treat as withdraw" gehandhabt.

  • The originator attribute- Der Ansatz "Treat as withdraw" gehandhabt.

  • The cluster attribute- Der Ansatz "Treat as withdraw" gehandhabt.

  • The PMSI attribute- Der Ansatz "Treat as withdraw" gehandhabt.

  • The MP reach attribute— Handhabung durch den Ansatz der Benachrichtigungsnachricht.

  • The MP unreach attribute— Handhabung durch den Ansatz der Benachrichtigungsnachricht.

  • The attribute set attribute- Der Ansatz "Treat as withdraw" gehandhabt.

  • The AIGP attribute- Der Ansatz "Treat as withdraw" gehandhabt.

  • Unknown attribute—Wenn der BGP Flag nicht anahnt, dass es sich um ein optionales Attribut handelt, wird dieses falsch formatierte Attribut vom Ansatz der Benachrichtigung verarbeitet.

Anmerkung:

Wenn eine BGP-Nachricht mehrere falsch formatierte Attribute enthält, folgt der schwerste von einem der Attribute ausgelöste Ansatz.

Beispiel: Konfiguration von Fehlerbehandlung für BGP Von Nachrichten aktualisieren

In diesem Beispiel wird die Konfiguration einer BGP von Fehlern gezeigt.

Anforderungen

Bevor Sie beginnen:

  • Konfigurieren Sie Routerschnittstellen.

  • Konfigurieren Sie ein Interior Gateway Protocol (IGP).

  • Konfiguration BGP.

  • Konfigurieren Sie Routing-Richtlinien.

Überblick

Wenn ein Routinggerät eine Aktualisierungsnachricht mit einem falsch formatierten Attribut empfängt, muss der Router die Sitzung zurücksetzen. Dies ist in RFC 4271, A Border Gateway Protocol 4 (BGP-4) festgelegt. Die Sitzung setzt die Sitzung zurück und wirkt sich nicht nur auf Routen mit dem anschlagenden Attribut aus, sondern auch auf andere gültige Routen, die während der Sitzung ausgetauscht werden. Darüber hinaus kann dieses Verhalten bei optionalen Transitattributen zu einer potenziellen Sicherheitslücke führen. Um die Auswirkungen von falsch formatierten Aktualisierungsmeldungen auf das Routing zu minimieren, gibt der Internet-Draft draft-ietf-idr-error-handling-01.txt, Revised Error Handling for BGP UPDATE Messages Änderungen zur Verarbeitung von BGP-Aktualisierungsmeldungen mit falsch formatierten Attributen an. Die neue Fehlerbehandlung ermöglicht die Verwaltung der etablierten Sitzung und das Beibehalten der gültigen Routen, während gleichzeitig die in der falsch formatierten UPDATE-Nachricht getragenen Routen entfernt werden.

Topologie

In verfügt Gerät R1 über eine interne BGP-Peering-Sitzung mit Device R0 und eine externe BGP-Peering-Sitzung mit Abbildung 1 Gerät R2.

Abbildung 1: BGP-Topologie der FehlerbehandlungBGP-Topologie der Fehlerbehandlung

Für den Schutz vor falsch formatierten Aktualisierungsmeldungen, die Netzwerkinstabilität verursachen, wurde BGP Für Gerät R1 eine Fehlerbehandlung konfiguriert, wie in diesem Beispiel dargestellt:

Standardmäßig gilt eine BGP als falsch formatiert, wenn eines der Nachrichtenattribute falsch formatiert ist. Wenn ein router, der an einer bestimmten BGP, eine falsch formatierte Aktualisierungsnachricht empfängt, wird die gesamte Sitzung zurückgesetzt. Die bgp-error-tolerance Anweisung setzt dieses Verhalten außer Kraft, sodass die BGP-Fehlerbehandlung wirksam ist:

  • Bei schwerwiegenden Fehlern Junos OS eine Benachrichtigung mit dem Titel "Error Code Update Message" gesendet und die BGP zurückgesetzt. Ein Fehler im {MP_{UN}REACH-Attribut gilt als erfolgreich. Auch das Vorhandensein mehrerer MP_{UN}REACH-Attribute in einer Aktualisierung BGP wird als ein schwerwiegender Fehler angesehen. Junos OS die BGP-Sitzung zurück, wenn das NLRI-Feld nicht analysiert werden kann oder der BGP richtig aktualisiert wird. Ein Fehler beim Analysieren BGP Aktualisierungspakets kann vorkommen, wenn die Länge des Attributs nicht mit der Länge des Attributwerts übereinstimmen sollte.

  • Bei einigen nichtfatalen Fehlern behandelt Junos OS alle in der falsch formatierten BGP-Aktualisierungsnachricht enthaltenen Routen als zurückgenommene Routen und installiert sie als verborgen, sofern die Anweisung nicht in der BGP-Konfiguration enthalten keep none ist. Junos OS verwendet diesen Ansatz zur Fehlerbehandlung für Fälle, die eines der folgenden Attribute beinhalten: ORIGIN, AS_PATH, NEXT_HOP, MULTI_EXIT_DISC, LOCAL_PREF, ORIGINATOR, CLUSTER, ATTRSET, PMSI, Community und erweiterte Community. Wenn außerdem eines der obligatorischen, bekannten Pfadattribute fehlt, behandelt Junos OS den BGP als falsch. Um die Speicherauslastung dieser falsch formatierten versteckten Routen zu begrenzen, stoppt Junos OS die Installation neuer falsch formatierter, versteckter Routen, nachdem die maximale Anzahl solcher falsch formatierten versteckten Routen erreicht wurde. In diesem Beispiel wird die maximale Anzahl mithilfe der Anweisung auf 5 malformed-route-limit festgelegt. Der Standardwert ist 1000. Optional können Sie eine unbegrenzte Anzahl von Routen zulassen, die aufgrund falsch formatierten Attributen verborgen ist. Dazu geben Sie dazu eine Erklärung no-malformed-route-limit an.

  • Bei anderen nichtfatalen Fehlern Junos OS die falsch formatierten Pfadattribute verworfen und die BGP weiter verarbeiten. Diese Vorgehensweise kann nicht bei Pfadattributen verwendet werden, die sich möglicherweise auf die Routenauswahl oder -installation auswirken. Junos OS verwendet diesen Ansatz zur Fehlerbehandlung für Fälle, die eines der folgenden Attribute beinhalten: ATOMIC_AGGREGATE, AGGREGATOR, AGGREGATOR4 und AS4PATH.

Um die Fehlersuche bei falsch formatierten Paketen zu erleichtern, protokolliert Junos OS die Fehlerliste des fehlerhaften Pfadattributcodes, des Flags, der Länge, Informationen zu Peer und Produktfamilie und des ersten Präfixs aus dem falsch formatierten BGP Update. Wenn in kürzester Zeit eine erhebliche Anzahl falsch formatierter Pakete empfangen wird, kann dies zur Leistungssteigerung Junos OS führen. Um die Leistungswirkung zu begrenzen, Junos OS einen Algorithmus implementiert, um ein fehlerhaftes Update zu protokollieren, die Protokollierung für ein Intervall zu unterdrücken und eine Zusammenfassung zu protokollieren. Wenn der Timer zur Protokollierungsunterdrückung abläuft, protokolliert die Software die Gesamtzahl der falschen Attribute, die während des Intervalls empfangen werden. In diesem Beispiel wird der Timer mithilfe der Anweisung auf 10 Sekunden malformed-update-log-interval festgelegt. Der Standardwert ist 300 Sekunden (5 Minuten).

CLI-Konfiguration zeigt die Konfiguration für alle Geräte in Abbildung 1 an.

In diesem #d100e116__d100e306 Abschnitt werden die Schritte auf Gerät R1 beschrieben.

Konfiguration

CLI-Konfiguration

Um dieses Beispiel schnell konfigurieren zu können, kopieren Sie die folgenden Befehle, fügen Sie diese in eine Textdatei ein, entfernen Sie alle Zeilenbrüche, ändern Sie alle Details, die zur Übereinstimmung mit Ihrer Netzwerkkonfiguration erforderlich sind, und kopieren Sie die Befehle, und fügen Sie die Befehle in die CLI der Hierarchieebene [edit] ein.

Gerät R0

Gerät R1

Gerät R2

Verfahren

Schritt-für-Schritt-Verfahren

Im folgenden Beispiel müssen Sie durch verschiedene Ebenen in der Konfigurationshierarchie navigieren. Informationen zur Navigation in CLI finden Sie unter Verwenden des CLI-Editors im Konfigurationsmodus im Junos OS CLI Benutzerhandbuch.

So konfigurieren Sie die BGP Umgang mit Fehlern:

  1. Konfigurieren Sie die Routerschnittstellen.

  2. Konfigurieren Sie ein Interior Gateway Protocol (IGP), wie z. B. OSPF oder IS-IS.

  3. Konfigurieren Sie die autonome Systemnummer (AS) und die Router-ID.

  4. Konfigurieren Sie die Routing-Richtlinie.

  5. EbGP-Sitzung konfigurieren.

  6. Konfigurieren Sie die IBGP-Sitzungen.

  7. Aktivieren BGP Fehlertoleranz.

  8. (optional) Konfigurieren Sie das Protokollintervall.

  9. (optional) Konfigurieren Sie eine Begrenzung für die Anzahl der verborgenen Routen, die gespeichert werden müssen.

Ergebnisse

Bestätigen Sie Ihre Konfiguration im Konfigurationsmodus, indem Sie die show interfacesshow protocols Befehle , show policy-options und show routing-options Wenn in der Ausgabe nicht die beabsichtigte Konfiguration angezeigt wird, wiederholen Sie die Anweisungen in diesem Beispiel, um die Konfiguration zu korrigieren.

Wenn Sie die Konfiguration der Geräte erledigt haben, geben Sie commit sie aus dem Konfigurationsmodus ein.

Überprüfung

Stellen Sie sicher, dass die Konfiguration ordnungsgemäß funktioniert.

Prüfung der BGP Neighbor Sessions

Zweck

Stellen Sie sicher BGP dass Fehlertoleranz aktiviert ist, und zeigen Sie die Zähler in Bezug auf falsch formatierte Pfadattribute an.

Aktion
Bedeutung

Das Feld "Malformed Attribute" zeigt, dass die Fehlertoleranz aktiviert ist. Die Felder für Protokollintervall und Routenbegrenzung zeigen die konfigurierten Werte an.

Die Attribute-Zähler zeigen, dass bei der EBGP-Verbindung mehrere falsch formatierte Attribute von Gerät R2 empfangen wurden.

Verborgene Routen prüfen

Zweck

Informationen zu versteckten Routen anzeigen und erfahren, warum sie verborgen sind.

Aktion
Bedeutung

Die falsch formatierten versteckten Routen werden mit MalformedAttr im Feld AS Pfad markiert.

Sie können die versteckten Routen löschen, indem Sie den Befehl clear bgp neighbor 10.10.10.2 malformed-route ausführen.

Verifizieren der Quelle der versteckten Routen

Zweck

Informationen zu versteckten Routen anzeigen und erfahren, warum sie verborgen sind.

Aktion
Bedeutung

Junos OS zeigt in der Ausgabe des Befehls MalformedAttr im Feld AS Pfad show route receive-protocol bgp 10.10.10.2 detail hidden an.

Sie können die versteckten Routen löschen, indem Sie den Befehl clear bgp neighbor 10.10.10.2 malformed-route ausführen.