Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Routing-Richtlinien für BGP-Communitys

Verständnis von BGP-Communitys, erweiterten Communities und großen Communities als Routing-Richtlinien-Übereinstimmungen

Eine BGP-Community ist eine Gruppe von Zielen, die sich ein gemeinsames Eigentum teilen. Community-Informationen werden als Pfadattribute in BGP-Aktualisierungsnachrichten enthalten. Diese Informationen identifizieren Community-Mitglieder und ermöglichen es Ihnen, Aktionen in einer Gruppe durchzuführen, ohne dass Sie jedes Mitglied umarbeiten müssen. Sie können Community- und erweiterte Community-Attribute verwenden, um Routing-Entscheidungen auszulösen, z. B. Akzeptanz, Ablehnung, Bevorzugung oder Weiterverteilung.

Sie können Community-Tags nicht-BGP-Routen zuweisen, indem Sie (für statische, aggregierte oder generierte Routen) oder eine Routing-Richtlinie importieren. Diese Tags können dann abgeglichen werden, wenn BGP die Routen exportiert.

Ein Community-Wert ist ein 32-Bit-Feld, das in zwei Hauptabschnitte unterteilt ist. Die ersten 16 Bits des Wertes codieren die AS-Nummer des Netzwerks, das aus der Community stammt, während die letzten 16 Bits eine eindeutige Nummer enthalten, die vom AS zugewiesen wird. Dieses System versucht, für jeden AS im Internet ein weltweit einzigartiges Set an Gemeinschaftswerten zu garantieren. Junos OS verwendet eine Schreibweise von as-number:community-value, wobei jeder Wert eine Dezimalzahl ist. Die AS-Werte von 0 und 65.535 sind vorbehalten, ebenso wie alle Community-Werte innerhalb dieser AS-Zahlen. Jede Community oder Gruppe von Communities erhält einen Namen innerhalb der [edit policy-options] Konfigurationshierarchie. Der Name der Community identifiziert es eindeutig für das Routing-Gerät und dient als Methode, nach der Routen kategorisiert werden. Beispielsweise könnte eine Route mit einem Community-Wert von 64510:1111 zur Community namens AS64510-routesgehören. Der Community-Name wird auch innerhalb einer Routing-Richtlinie als Übereinstimmungskriterium oder als Aktion verwendet. Die Befehlssyntax für die Erstellung einer Community lautet: Richtlinienoptionen community name members [community-ids]. Die community-ids sind entweder ein einzelner Gemeinschaftswert oder mehrere Gemeinschaftswerte. Wenn einem Community-Namen mehr als ein Wert zugewiesen wird, interpretiert das Routing-Gerät dies als logisches UND der Community-Werte. Mit anderen Worten, eine Route muss alle konfigurierten Werte aufweisen, bevor der Community-Name zugewiesen wird.

Das reguläre Community-Attribut ist vier Oktette. Netzwerkverbesserungen wie VPNs haben Funktionsanforderungen, die durch ein Attribut wie eine Community erfüllt werden können. Die 4-Oktett-Community bietet jedoch nicht genug Erweiterung und Flexibilität, um VPN-Anforderungen zu erfüllen. Dies führt zur Gründung erweiterter Communitys. Eine erweiterte Community ist ein Acht-Oktett-Wert, der auch in zwei Hauptabschnitte unterteilt ist. Die ersten 2 Oktette der Community codieren ein Typfeld, während die letzten 6 Oktette einen eindeutigen Datensatz in einem Format tragen, das durch das Typfeld definiert ist. Erweiterte Communitys bieten ein größeres Spektrum für Gruppierung oder Kategorisierung von Communitys.

Das erweiterte BGP-Community-Attributformat hat drei Felder: type:administrator:assigned-number. Das Routinggerät erwartet, dass Sie die Wörter target verwenden oder origin das Typfeld darstellen. Das Administratorfeld verwendet eine Dezimalzahl für den AS oder eine IPv4-Adresse, während das Feld mit der zugewiesenen Zahl eine Dezimalzahl erwartet, die nicht größer ist als die Größe des Feldes (65.535 für 2 Oktette oder 4.294.967.295 für 4 Oktette).

Wenn Sie Community-IDs für Standard- und erweiterte Community-Attribute angeben, können Sie reguläre Ausdrücke im UNIX-Stil verwenden. Die einzige Ausnahme ist für VPN-Importrichtlinien (vrf-import), die reguläre Ausdrücke für das erweiterte Community-Attribut nicht unterstützen.

Normale BGP-Community-Attribute sind ein Attribut mit variabler Länge, das aus einem Satz von einem oder mehreren 4-Byte-Werten besteht, die in 16-Bit-Werte aufgeteilt wurden. Das bedeutendste Wort wird als AS-Zahl interpretiert und das geringste Wort ist ein lokal definierter Wert, der vom Betreiber des AS zugewiesen wird. Seit der Einführung von 4-Byte-ASNs können die reguläre 4-Byte-BGP-Community und die erweiterte 6-Byte-BGP-Community nicht mehr BGP-Community-Attribute unterstützen. Die Betreiber codieren oft AS-Nummer im lokalen Teil der BGP-Community, was bedeutet, dass manchmal das Format der Community ASN:ASN ist. Mit dem 4-Byte-ASN benötigen Sie 8 Bytes, um es zu codieren. Obwohl die erweiterte BGP-Community zulässt, dass ein 4-Byte-AS als globales Administratorfeld codiert werden kann, verfügt das lokale Administratorfeld über nur zwei Byte an verfügbaren Speicherplatz. Daher ist ein erweitertes 6-Byte-Community-Attribut auch ungeeignet. Um dies zu überwinden, ermöglicht Ihnen Junos OS die Konfiguration optionaler transitiver Pfadattribute – eine 12-Byte-BGP-Große Community, die den bedeutendsten 4-Byte-Wert zum Codieren autonomer Systemnummern als globaler Administrator und die beiden verbleibenden 4-Byte-Zahlen zur Codierung der lokalen Werte wie in RFC 8092 definiert bietet. Sie können BGP large community auf hierarchie [edit policy-options community community-name members] - und [edit routing-options static route ip-address community] hierarchieebene konfigurieren. Das Format "BGP large community attributes" umfasst vier Felder: large:global administrator:assigned number:assigned number.

Die BGP-IPv6-Unicast-Adress-spezifische erweiterte Community wird als 20-Bytes-Wert codiert. Der 20-Byte-Wert wird im folgenden Format interpretiert:

  • Die wichtigsten 2-Bytes kodieren den Wert Typ und Untertyp (hoher Wert (wichtigstes Byte) und Niedriger Wert (zweitwisserigstes Byte)).

  • Die nächste 16-Byte codiert die IPv6-Unicast-Adresse. Er ist der globale Administrator im IETF RFC.

  • Die letzten 2 Bytes codieren die vom Betreiber definierten lokalen Werte. Er ist lokaler Administrator im IETF RFC.

Die IPv6-Unicast-adressspezifischen BGP erweiterten Community-Attribute werden durch ein Schlüsselwort ipv6-targetdargestellt, ipv6-originoder ipv6-extended gefolgt von IPv6 und lokalem Administrator, getrennt durch <, > und :.

HINWEIS:

Die Länge des BGP large communities Attributwerts sollte ein Nicht-Null-Multiple von 12 sein.

Beispiel: Konfigurieren einer Routing-Richtlinie zur Neuverteilung von BGP-Routen mit einem bestimmten Community-Tag in IS-IS

In diesem Beispiel wird eine Richtlinie definiert, die BGP-Routen aus der Edu Community mit einer Metrik 63 in IS-IS einträgt.

Anforderungen

Vor der Konfiguration dieses Beispiels ist keine spezielle Konfiguration erforderlich, die über die Geräteinitialisierung hinausgeht.

Überblick

Abbildung 1 zeigt die in diesem Beispiel verwendete Topologie.

Abbildung 1: Neuverteilung von BGP-Routen mit einem spezifischen Community-Tag in IS-ISNeuverteilung von BGP-Routen mit einem spezifischen Community-Tag in IS-IS

In diesem Beispiel befinden sich Geräte A, Gerät B, Gerät C und Gerät D im autonomen System (AS) 1 und führen IS-IS aus. Alle AS 1-Geräte mit Ausnahme von Gerät D laufen auf internem BGP (IBGP).

Gerät E befindet sich in AS 2 und verfügt über eine externe BGP (EBGP)-Peering-Sitzung mit Gerät C. Gerät E hat zwei statische Routen, 10.2.0.0/16 und 10.3.0.0/16. Diese Routen werden mit dem Edu 2:5 Community-Attribut getaggt und über EBGP zu Gerät C angekündigt.

Gerät C akzeptiert die BGP-Routen, die mit dem Community-Attribut Edu 2:5 getaggt sind, verteilt die Routen in IS-IS und wendet eine IS-IS-Metrik von 63 auf diese Routen an.

CLI-Schnellkonfiguration zeigt die Konfiguration für alle Geräte in Abbildung 1. In diesem Abschnitt #d245e62__d245e383 werden die Schritte auf Gerät C und Gerät E beschrieben.

Konfiguration

Verfahren

CLI-Schnellkonfiguration

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

Gerät A

Gerät B

Gerät C

Gerät D

Gerät E

Schritt-für-Schritt-Verfahren

Im folgenden Beispiel müssen Sie auf verschiedenen Ebenen in der Konfigurationshierarchie navigieren. Informationen zum Navigieren in der CLI finden Sie unter Verwenden des CLI-Editors im Konfigurationsmodus im CLI-Benutzerhandbuch.

So konfigurieren Sie Gerät E:

  1. Konfigurieren Sie die Schnittstellen.

  2. Konfigurieren Sie die statics Richtlinie, die das Edu Community-Attribut zu den statischen Routen hinzufügt.

  3. Konfigurieren Sie EBGP und wenden Sie die statics Richtlinie an.

  4. Konfigurieren Sie die statischen Routen.

  5. Konfigurieren Sie die Router-ID und die AS-Nummer.

Schritt-für-Schritt-Verfahren

Im folgenden Beispiel müssen Sie auf verschiedenen Ebenen in der Konfigurationshierarchie navigieren. Informationen zum Navigieren in der CLI finden Sie unter Verwenden des CLI-Editors im Konfigurationsmodus im CLI-Benutzerhandbuch.

So konfigurieren Sie Gerät C:

  1. Konfigurieren Sie die Schnittstellen.

  2. Konfigurieren Sie IBGP.

  3. Konfigurieren Sie die Edu-to-isis-Richtlinie, die die mit Edu getaggten BGP-Routen, die von Gerät E gelernt wurden, neu verteilt und eine Metrik von 63 anwendet.

  4. Aktivieren Sie IS-IS auf den Schnittstellen und wenden Sie die Edu-to-isis-Richtlinie an.

  5. Konfigurieren Sie die Send-isis-and-Direct-Richtlinie, die Routen zu Gerät E über EBGP neu verteilt.

    Ohne diese Richtlinie hätte Gerät E keine Konnektivität zu den Netzwerken in AS 1.

  6. Konfigurieren Sie EBGP und wenden Sie die Send-isis-and-Direct-Richtlinie an.

  7. Konfigurieren Sie die Router-ID und die Autonome Systemnummer (AS).

Ergebnisse

Bestätigen Sie Ihre Konfiguration im Konfigurationsmodus, indem Sie die show interfacesBefehle , show protocols, show policy-optionsund show routing-options eingeben. Wenn die gewünschte Konfiguration in der Ausgabe nicht angezeigt wird, wiederholen Sie die Anweisungen in diesem Beispiel, um die Konfiguration zu korrigieren.

Gerät E

Gerät C

Wenn Sie mit der Konfiguration des Geräts fertig sind, geben Sie im Konfigurationsmodus ein commit .

Überprüfung

Bestätigen Sie, dass die Konfiguration ordnungsgemäß funktioniert.

Überprüfung des IS-IS-Nachbarn

Zweck

Stellen Sie sicher, dass die BGP-Routen von Gerät E über das IS-IS-Netzwerk in AS 1 kommuniziert werden.

Aktion

Geben Sie im Betriebsmodus den show route protocol isis Befehl ein.

Bedeutung

Wie erwartet, befinden sich die Routen 10.2.0.0/16 und 10.3.0.0/16 in der Routing-Tabelle von Gerät D als externe IS-IS-Routen mit einer Kennzahl 73. Wenn Gerät C die Kennzahl 63 nicht hinzugefügt hätte, hätte Gerät D eine Kennzahl von 10 für diese Routen.

Beispiel: Konfigurieren einer Routing-Richtlinie, die BGP-Communitys entfernt

Dieses Beispiel zeigt, wie Sie eine Richtlinie erstellen, die BGP-Routen akzeptiert, aber BGP-Communitys aus den Routen entfernt.

Anforderungen

Vor der Konfiguration dieses Beispiels ist keine spezielle Konfiguration erforderlich, die über die Geräteinitialisierung hinausgeht.

Überblick

Dieses Beispiel zeigt zwei Routing-Geräte mit einer externen BGP (EBGP)-Verbindung zwischen ihnen. Gerät R2 verwendet die BGP-Sitzung, um zwei statische Routen an Gerät R1 zu senden. Auf Gerät R1 gibt eine Importrichtlinie an, dass alle BGP-Communitys aus den Routen entfernt werden müssen.

Wenn Communitys auf EBGP-Peers konfiguriert sind, werden sie standardmäßig gesendet und akzeptiert. Um die Akzeptanz von Gemeinden zu unterbinden, die von einem Nachbarn erhalten wurden, können Sie alle Gemeinden oder eine bestimmte Gruppe von Communities entfernen. Wenn das Ergebnis einer Richtlinie eine leere Gruppe von Communitys ist, wird das Community-Attribut nicht einbezogen. Um alle Communitys zu entfernen, definieren Sie zuerst einen Wildcard-Satz von Communitys (hier heißt wilddie Community):

Geben Sie dann in der Routing-Richtlinienaussage die community delete Aktion an:

Um eine bestimmte Gemeinschaft aus jedem autonomen System (AS) zu unterdrücken, definieren Sie die Community als community wild members "*:community-value".

Topologie

Abbildung 2 zeigt das Beispielnetzwerk.

Abbildung 2: BGP-Richtlinie, die Communities entferntBGP-Richtlinie, die Communities entfernt

Konfiguration

CLI-Schnellkonfiguration

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

Gerät R1

Gerät R2

Verfahren

Schritt-für-Schritt-Verfahren

Im folgenden Beispiel müssen Sie auf verschiedenen Ebenen in der Konfigurationshierarchie navigieren. Informationen zum Navigieren in der CLI finden Sie unter Verwenden des CLI-Editors im Konfigurationsmodus im Junos OS CLI-Benutzerhandbuch.

So konfigurieren Sie Gerät R1:

  1. Konfigurieren Sie die Schnittstellen.

  2. Konfigurieren Sie BGP.

    Wenden Sie die Importrichtlinie auf die BGP-Peering-Sitzung mit Gerät R2 an.

  3. Konfigurieren Sie die Routing-Richtlinie, die Communities löscht.

  4. Konfigurieren Sie die Autonome Systemnummer (AS) und die Router-ID.

Schritt-für-Schritt-Verfahren

Im folgenden Beispiel müssen Sie auf verschiedenen Ebenen in der Konfigurationshierarchie navigieren. Informationen zum Navigieren in der CLI finden Sie unter Verwenden des CLI-Editors im Konfigurationsmodus im Junos OS CLI-Benutzerhandbuch.

So konfigurieren Sie Gerät R2:

  1. Konfigurieren Sie die Schnittstellen.

  2. Konfigurieren Sie die Router-ID und die Autonome Systemnummer (AS).

  3. Konfigurieren Sie BGP.

  4. Konfigurieren Sie mehrere Communitys oder konfigurieren Sie eine einzelne Community mit mehreren Mitgliedern.

  5. Konfigurieren Sie die statischen Routen.

  6. Konfigurieren Sie eine Routing-Richtlinie, die statische Routen in BGP ankünbt, und fügt den Routen die BGP-Community hinzu.

  7. Wenden Sie die Exportrichtlinie an.

Ergebnisse

Bestätigen Sie Ihre Konfiguration im Konfigurationsmodus, indem Sie die show interfacesBefehle , show protocols, show policy-optionsund show routing-options eingeben. Wenn die gewünschte Konfiguration in der Ausgabe nicht angezeigt wird, wiederholen Sie die Anweisungen in diesem Beispiel, um die Konfiguration zu korrigieren.

Gerät R1

Gerät R2

Wenn Sie mit der Konfiguration der Geräte fertig sind, geben Sie im Konfigurationsmodus ein commit .

Überprüfung

Bestätigen Sie, dass die Konfiguration ordnungsgemäß funktioniert.

Überprüfen der BGP-Routen

Zweck

Stellen Sie sicher, dass die Routing-Tabelle auf Gerät R1 keine BGP-Communitys enthält.

Aktion
  1. Führen Sie auf Gerät R1 den show route protocols bgp extensive Befehl aus.

  2. Deaktivieren Sie auf Gerät R1 die community remove Konfiguration in der Importrichtlinie.

  3. Führen Sie auf Gerät R1 den show route protocols bgp extensive Befehl aus, um die angekündigten Communitys anzuzeigen.

Bedeutung

Die Ausgabe zeigt, dass in der Routing-Tabelle von Gerät R1 die Communitys in den von Gerät R2 gesendeten BGP-Routen unterdrückt werden. Wenn die Einstellung in der community remove Importrichtlinie des Geräts R1 deaktiviert ist, werden die Communitys nicht mehr unterdrückt.

Beispiel: Konfigurieren einer Routing-Richtlinie basierend auf der Anzahl der BGP-Communitys

Dieses Beispiel zeigt, wie Sie eine Richtlinie erstellen, die BGP-Routen basierend auf der Anzahl der BGP-Communitys akzeptiert.

Anforderungen

Vor der Konfiguration dieses Beispiels ist keine spezielle Konfiguration erforderlich, die über die Geräteinitialisierung hinausgeht.

Überblick

Dieses Beispiel zeigt zwei Routing-Geräte mit einer externen BGP (EBGP)-Verbindung zwischen ihnen. Gerät R2 verwendet die BGP-Sitzung, um zwei statische Routen an Gerät R1 zu senden. Auf Gerät R1 gibt eine Importrichtlinie an, dass die BGP-empfangenen Routen bis zu fünf Communitys enthalten können, die als Übereinstimmung gelten. Wenn eine Route beispielsweise drei Communitys enthält, wird sie als Übereinstimmung betrachtet und akzeptiert. Wenn eine Route sechs oder mehr Communitys enthält, wird sie als nicht übereinstimmend angesehen und abgelehnt.

Es ist wichtig zu beachten, dass die Standardrichtlinie für EBGP darin besteht, alle Routen zu akzeptieren. Um sicherzustellen, dass die nicht übereinstimmenden Routen abgelehnt werden, müssen Sie am Ende der Richtliniendefinition eine then reject Aktion einschließen.

Topologie

Abbildung 3 zeigt das Beispielnetzwerk.

Abbildung 3: BGP-Richtlinie mit einer Begrenzung der Anzahl der akzeptierten CommunitysBGP-Richtlinie mit einer Begrenzung der Anzahl der akzeptierten Communitys

Konfiguration

CLI-Schnellkonfiguration

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

Gerät R1

Gerät R2

Verfahren

Schritt-für-Schritt-Verfahren

Im folgenden Beispiel müssen Sie auf verschiedenen Ebenen in der Konfigurationshierarchie navigieren. Informationen zum Navigieren in der CLI finden Sie unter Verwenden des CLI-Editors im Konfigurationsmodus im Junos OS CLI-Benutzerhandbuch.

So konfigurieren Sie Gerät R1:

  1. Konfigurieren Sie die Schnittstellen.

  2. Konfigurieren Sie BGP.

    Wenden Sie die Importrichtlinie auf die BGP-Peering-Sitzung mit Gerät R2 an.

  3. Konfigurieren Sie die Routing-Richtlinie, die direkte Routen sendet.

  4. Konfigurieren Sie die Autonome Systemnummer (AS) und die Router-ID.

Schritt-für-Schritt-Verfahren

Im folgenden Beispiel müssen Sie auf verschiedenen Ebenen in der Konfigurationshierarchie navigieren. Informationen zum Navigieren in der CLI finden Sie unter Verwenden des CLI-Editors im Konfigurationsmodus im Junos OS CLI-Benutzerhandbuch.

So konfigurieren Sie Gerät R2:

  1. Konfigurieren Sie die Schnittstellen.

  2. Konfigurieren Sie die Router-ID und die Autonome Systemnummer (AS).

  3. Konfigurieren Sie BGP.

  4. Konfigurieren Sie mehrere Communitys oder konfigurieren Sie eine einzelne Community mit mehreren Mitgliedern.

  5. Konfigurieren Sie die statischen Routen.

  6. Konfigurieren Sie eine Routing-Richtlinie, die statische Routen in BGP ankünbt, und fügt den Routen die BGP-Community hinzu.

  7. Wenden Sie die Exportrichtlinie an.

Ergebnisse

Bestätigen Sie Ihre Konfiguration im Konfigurationsmodus, indem Sie die show interfacesBefehle , show protocols, show policy-optionsund show routing-options eingeben. Wenn die gewünschte Konfiguration in der Ausgabe nicht angezeigt wird, wiederholen Sie die Anweisungen in diesem Beispiel, um die Konfiguration zu korrigieren.

Gerät R1

Gerät R2

Wenn Sie mit der Konfiguration der Geräte fertig sind, geben Sie im Konfigurationsmodus ein commit .

Überprüfung

Bestätigen Sie, dass die Konfiguration ordnungsgemäß funktioniert.

Überprüfen der BGP-Routen

Zweck

Stellen Sie sicher, dass die Routing-Tabelle auf Gerät R1 die erwarteten BGP-Routen enthält.

Aktion
  1. Führen Sie auf Gerät R1 den show route protocols bgp Befehl aus.

  2. Ändern Sie auf Gerät R1 die community-count Konfiguration in der Importrichtlinie.

  3. Führen Sie auf Gerät R1 den show route protocols bgp Befehl aus.

  4. Führen Sie auf Gerät R1 den show route protocols bgp extensive Befehl aus, um die angekündigten Communitys anzuzeigen.

Bedeutung

Die Ausgabe zeigt, dass in der Routing-Tabelle von Gerät R1 die von Gerät R2 gesendeten BGP-Routen ausgeblendet sind. Wenn die Einstellung in der community-count Importrichtlinie von Gerät R1 geändert wird, werden die BGP-Routen nicht mehr ausgeblendet.