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

Verstehen von BGP-Communities, erweiterten Communities und großen Communities als Übereinstimmungsbedingungen für Routing-Richtlinien

Eine BGP-Community ist eine Gruppe von Zielen, die sich ein gemeinsames Eigentum teilen. Community-Informationen sind als Pfadattribut in BGP-Aktualisierungsmeldungen enthalten. Diese Informationen identifizieren Community-Mitglieder und ermöglichen es Ihnen, Aktionen für eine Gruppe durchzuführen, ohne jedes Mitglied näher ausführen zu müssen. Sie können Community- und erweiterte Community-Attribute verwenden, um Routing-Entscheidungen wie Annahme, Ablehnung, Präferenz oder Neuverteilung auszulösen.

Sie können Community-Tags zu Nicht-BGP-Routen über die Konfiguration (für statische, aggregierte oder generierte Routen) oder eine Import-Routing-Richtlinie zuweisen. 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 Bit des Werts kodieren die AS-Nummer des Netzwerks, aus dem die Community stammt, während die letzten 16 Bit eine eindeutige Nummer tragen, die vom AS zugewiesen wird. Dieses System versucht, einen weltweit eindeutigen Satz von Community-Werten für jeden AS im Internet zu garantieren. Junos OS verwendet die Notation von , wobei jeder Wert eine Dezimalzahl ist.as-number:community-value Die AS-Werte 0 und 65.535 sind reserviert, ebenso wie alle Community-Werte innerhalb dieser AS-Nummern. Jede Community oder Gruppe von Communitys erhält einen Namen innerhalb der Konfigurationshierarchie.[edit policy-options] Der Name der Community identifiziert es eindeutig für das Routing-Gerät und dient als Methode, nach der Routen kategorisiert werden. Eine Route mit dem Community-Wert 64510:1111 könnte z. B. zur Community mit dem Namen gehören.AS64510-routes Der Community-Name wird auch innerhalb einer Routing-Richtlinie als Übereinstimmungskriterium oder als Aktion verwendet. Die Befehlssyntax zum Erstellen einer Community lautet: policy-options .community name members [community-ids] Dabei handelt es sich entweder um einen einzelnen Community-Wert oder um mehrere Community-Werte.community-ids 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 ihr der Community-Name zugewiesen wird.

Das reguläre Community-Attribut sind vier Oktette. Netzwerkerweiterungen, wie z. B. VPNs, haben Funktionsanforderungen, die von einem Attribut wie einer Community erfüllt werden können. Der 4-Oktett-Community-Wert bietet jedoch nicht genug Erweiterung und Flexibilität, um VPN-Anforderungen zu erfüllen. Dies führt zur Schaffung erweiterter Communities. Eine erweiterte Community ist ein 8-Oktett-Wert, der ebenfalls 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 durch das Typfeld definierten Format enthalten. Erweiterte Communitys bieten einen größeren Bereich zum Gruppieren oder Kategorisieren von Communitys.

Das BGP-Attributformat für erweiterte Communitys besteht aus drei Feldern: type:administrator:assigned-number. Das Routing-Gerät erwartet, dass Sie die Wörter verwenden oder das Typfeld darstellen.targetorigin Das Feld "Administrator" verwendet eine Dezimalzahl für die AS- oder IPv4-Adresse, während das Feld "Zugewiesene Nummer" eine Dezimalzahl erwartet, die nicht größer als die Größe des Feldes ist (65.535 für 2 Oktette oder 4.294.967.295 für 4 Oktette).

Beim Angeben von Community-IDs für Standard- und erweiterte Community-Attribute können Sie reguläre Ausdrücke im UNIX-Stil verwenden. Die einzige Ausnahme sind VPN-Importrichtlinien (), die keine regulären Ausdrücke für das erweiterte Community-Attribut unterstützen.vrf-import

Reguläre BGP-Community-Attribute sind ein Attribut variabler Länge, das aus einem Satz von einem oder mehreren 4-Byte-Werten besteht, die in 16-Bit-Werte aufgeteilt wurden. Das höchstwertige Wort wird als AS-Zahl interpretiert und das niedrigstwertige Wort ist ein lokal definierter Wert, der vom Operator 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 BGP-Community-Attribute nicht mehr unterstützen. Betreiber kodieren die AS-Nummer häufig im lokalen Teil der BGP-Community, was bedeutet, dass das Format der Community manchmal ASN:ASN ist. Bei der 4-Byte-ASN benötigen Sie 8 Byte, um sie zu codieren. Obwohl die erweiterte BGP-Community die Codierung eines 4-Byte-AS als globales Administratorfeld zulässt, verfügt das lokale Administratorfeld nur über 2 Byte verfügbaren Speicherplatz. Daher ist auch das erweiterte 6-Byte-Community-Attribut ungeeignet. Um dieses Problem zu lösen, können Sie mit Junos OS ein optionales transitives Pfadattribut konfigurieren – eine große 12-Byte-BGP-Community, die den wichtigsten 4-Byte-Wert zur Codierung der autonomen Systemnummer als globaler Administrator bereitstellt, und die verbleibenden zwei zugewiesenen 4-Byte-Nummern zur Codierung der lokalen Werte, wie in RFC 8092 definiert. Sie können die große BGP-Community auf der Hierarchieebene und konfigurieren.[edit policy-options community community-name members][edit routing-options static route ip-address community] Das BGP-Format für große Community-Attribute besteht aus vier Feldern: :.largeglobal administrator:assigned number:assigned number

Die BGP-IPv6-Unicast-Adressen-spezifische erweiterte Community wird als Satz von 20-Byte-Werten codiert. Der 20-Byte-Wert wird im folgenden Format interpretiert:

  • Most significant 2-Byte codiert den Type- und Sub-Type-Wert (hoher Wert (höchstwertiges Byte) und niedriger Wert (zweithöchstwertiges Byte)).

  • Die nächsten 16 Bytes codieren die IPv6-Unicastadresse. Er ist der globale Administrator im IETF RFC.

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

Die IPv6-Unicast-Adressen-spezifischen BGP-Extended-Community-Attribute werden durch ein Schlüsselwort dargestellt, oder gefolgt von IPv6 und lokalem Administrator, getrennt durch <, > und :.ipv6-targetipv6-originipv6-extended

HINWEIS:

Die Länge des BGP-Attributwerts für große Communities sollte ein Vielfaches ungleich Null von 12 sein.

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

In diesem Beispiel wird eine Richtlinie definiert, die BGP-Routen aus der Community übernimmt und sie mit einer Metrik von 63 in IS-IS platziert.Edu

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: Umverteilen von BGP-Routen mit einem bestimmten Community-Tag in IS-ISUmverteilen von BGP-Routen mit einem bestimmten Community-Tag in IS-IS

In diesem Beispiel befinden sich Gerät A, Gerät B, Gerät C und Gerät D im autonomen System (AS) 1 und führen IS-IS aus. Auf allen AS 1-Geräten, mit Ausnahme von Gerät D, wird internes BGP (IBGP) ausgeführt.

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

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

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

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 Details, die für Ihre Netzwerkkonfiguration erforderlich sind, und kopieren Sie dann die Befehle und fügen Sie sie in die CLI auf Hierarchieebene ein.[edit]

Gerät A

Gerät B

Gerät C

Gerät D

Gerät E

Schritt-für-Schritt-Anleitung

Im folgenden Beispiel müssen Sie durch verschiedene Ebenen in der Konfigurationshierarchie navigieren. Weitere Informationen zum Navigieren in der CLI finden Sie unter Verwenden des CLI-Editors im Konfigurationsmodus im CLI-Benutzerhandbuch.Verwenden des CLI-Editors im Konfigurationsmodushttps://www.juniper.net/documentation/en_US/junos/information-products/pathway-pages/junos-cli/junos-cli.html

So konfigurieren Sie Gerät E:

  1. Konfigurieren Sie die Schnittstellen.

  2. Konfigurieren Sie die Richtlinie, die den statischen Routen das community-Attribut hinzufügt.staticsEdu

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

  4. Konfigurieren Sie die statischen Routen.

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

Schritt-für-Schritt-Anleitung

Im folgenden Beispiel müssen Sie durch verschiedene Ebenen in der Konfigurationshierarchie navigieren. Weitere Informationen zum Navigieren in der CLI finden Sie unter Verwenden des CLI-Editors im Konfigurationsmodus im CLI-Benutzerhandbuch.Verwenden des CLI-Editors im Konfigurationsmodushttps://www.juniper.net/documentation/en_US/junos/information-products/pathway-pages/junos-cli/junos-cli.html

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 von Gerät E gelernten Edu-Tagged-BGP-Routen neu verteilt und die Metrik 63 anwendet.

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

  5. Konfigurieren Sie die Richtlinie send-isis-and-direct, die Routen über EBGP an Gerät E umverteilt.

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

  6. Konfigurieren Sie EBGP, und wenden Sie die Richtlinie send-isis-and-direct an.

  7. Konfigurieren Sie die Router-ID und die AS-Nummer (Autonomous System).

Ergebnisse

Bestätigen Sie im Konfigurationsmodus Ihre Konfiguration, indem Sie die Befehle , , und eingeben.show interfacesshow protocolsshow policy-optionsshow routing-options Wenn die Ausgabe nicht die gewünschte Konfiguration anzeigt, 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, rufen Sie den Konfigurationsmodus auf .commit

Überprüfung

Vergewissern Sie sich, dass die Konfiguration ordnungsgemäß funktioniert.

IS-IS-Nachbar verifizieren

Zweck

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

Was

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

Bedeutung

Wie erwartet, sind 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 Metrik von 73 enthalten. Wenn Gerät C der Metrik nicht 63 hinzugefügt hätte, hätte Gerät D eine Metrik von 10 für diese Routen.

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

In diesem Beispiel wird gezeigt, wie eine Richtlinie erstellt wird, die BGP-Routen akzeptiert, aber BGP-Communities aus den Routen entfernt.

Anforderungen

Über die Geräteinitialisierung hinaus ist keine spezielle Konfiguration erforderlich, bevor Sie dieses Beispiel konfigurieren.

Überblick

Dieses Beispiel zeigt zwei Routing-Geräte mit einer externen BGP-Verbindung (EBGP). 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-Communities aus den Routen entfernt werden müssen.

Wenn Communities auf EBGP-Peers konfiguriert sind, werden sie standardmäßig gesendet und akzeptiert. Um die Annahme von Communitys zu unterdrücken, die Sie von einem Nachbarn erhalten haben, können Sie alle Communitys oder eine bestimmte Gruppe von Communitys entfernen. Wenn das Ergebnis einer Richtlinie eine leere Gruppe von Communitys ist, wird das Community-Attribut nicht berücksichtigt. Um alle Communities zu entfernen, definieren Sie zunächst einen Platzhaltersatz von Communities (hier heißt die Community):wild

Geben Sie dann in der Routingrichtlinienanweisung die Aktion an:community delete

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

Topologie

Abbildung 2 zeigt das Beispielnetzwerk an.

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 sie in eine Textdatei ein, entfernen Sie alle Zeilenumbrüche, ändern Sie alle Details, die für Ihre Netzwerkkonfiguration erforderlich sind, und kopieren Sie dann die Befehle und fügen Sie sie in die CLI auf Hierarchieebene ein.[edit]

Gerät R1

Gerät R2

Verfahren

Schritt-für-Schritt-Anleitung

Im folgenden Beispiel müssen Sie durch verschiedene Ebenen in der Konfigurationshierarchie navigieren. Weitere Informationen zum Navigieren in der CLI finden Sie unter Verwenden des CLI-Editors im Konfigurationsmodus im Junos OS CLI-Benutzerhandbuch.Verwenden des CLI-Editors im Konfigurationsmodushttps://www.juniper.net/documentation/en_US/junos/information-products/pathway-pages/junos-cli/junos-cli.html

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 Routingrichtlinie, mit der Communitys gelöscht werden.

  4. Konfigurieren Sie die AS-Nummer (Autonomous System) und die Router-ID.

Schritt-für-Schritt-Anleitung

Im folgenden Beispiel müssen Sie durch verschiedene Ebenen in der Konfigurationshierarchie navigieren. Weitere Informationen zum Navigieren in der CLI finden Sie unter Verwenden des CLI-Editors im Konfigurationsmodus im Junos OS CLI-Benutzerhandbuch.Verwenden des CLI-Editors im Konfigurationsmodushttps://www.juniper.net/documentation/en_US/junos/information-products/pathway-pages/junos-cli/junos-cli.html

So konfigurieren Sie Gerät R2:

  1. Konfigurieren Sie die Schnittstellen.

  2. Konfigurieren Sie die Router-ID und die AS-Nummer (Autonomous System).

  3. Konfigurieren Sie BGP.

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

  5. Konfigurieren Sie die statischen Routen.

  6. Konfigurieren Sie eine Routing-Richtlinie, die statische Routen in BGP ankündigt und die BGP-Community zu den Routen hinzufügt.

  7. Wenden Sie die Exportrichtlinie an.

Ergebnisse

Bestätigen Sie im Konfigurationsmodus Ihre Konfiguration, indem Sie die Befehle , , und eingeben.show interfacesshow protocolsshow policy-optionsshow routing-options Wenn die Ausgabe nicht die gewünschte Konfiguration anzeigt, 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, rufen Sie den Konfigurationsmodus auf .commit

Überprüfung

Vergewissern Sie sich, 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.

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

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

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

Bedeutung

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

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

In diesem Beispiel wird gezeigt, wie eine Richtlinie erstellt wird, die BGP-Routen basierend auf der Anzahl der BGP-Communities akzeptiert.

Anforderungen

Über die Geräteinitialisierung hinaus ist keine spezielle Konfiguration erforderlich, bevor Sie dieses Beispiel konfigurieren.

Überblick

Dieses Beispiel zeigt zwei Routing-Geräte mit einer externen BGP-Verbindung (EBGP). 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 von BGP empfangenen Routen bis zu fünf Communities enthalten können, um als Übereinstimmung betrachtet zu werden. Wenn eine Route z. B. drei Communities enthält, wird sie als Übereinstimmung betrachtet und akzeptiert. Wenn eine Route sechs oder mehr Gemeinden enthält, wird sie als Nichtübereinstimmung betrachtet und abgelehnt.

Es ist wichtig, sich daran zu erinnern, dass die Standardrichtlinie für EBGP darin besteht, alle Routen zu akzeptieren. Um sicherzustellen, dass die nicht übereinstimmenden Routen zurückgewiesen werden, müssen Sie am Ende der Richtliniendefinition eine Aktion einfügen.then reject

Topologie

Abbildung 3 zeigt das Beispielnetzwerk an.

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 sie in eine Textdatei ein, entfernen Sie alle Zeilenumbrüche, ändern Sie alle Details, die für Ihre Netzwerkkonfiguration erforderlich sind, und kopieren Sie dann die Befehle und fügen Sie sie in die CLI auf Hierarchieebene ein.[edit]

Gerät R1

Gerät R2

Verfahren

Schritt-für-Schritt-Anleitung

Im folgenden Beispiel müssen Sie durch verschiedene Ebenen in der Konfigurationshierarchie navigieren. Weitere Informationen zum Navigieren in der CLI finden Sie unter Verwenden des CLI-Editors im Konfigurationsmodus im Junos OS CLI-Benutzerhandbuch.Verwenden des CLI-Editors im Konfigurationsmodushttps://www.juniper.net/documentation/en_US/junos/information-products/pathway-pages/junos-cli/junos-cli.html

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 Routingrichtlinie, die direkte Routen sendet.

  4. Konfigurieren Sie die AS-Nummer (Autonomous System) und die Router-ID.

Schritt-für-Schritt-Anleitung

Im folgenden Beispiel müssen Sie durch verschiedene Ebenen in der Konfigurationshierarchie navigieren. Weitere Informationen zum Navigieren in der CLI finden Sie unter Verwenden des CLI-Editors im Konfigurationsmodus im Junos OS CLI-Benutzerhandbuch.Verwenden des CLI-Editors im Konfigurationsmodushttps://www.juniper.net/documentation/en_US/junos/information-products/pathway-pages/junos-cli/junos-cli.html

So konfigurieren Sie Gerät R2:

  1. Konfigurieren Sie die Schnittstellen.

  2. Konfigurieren Sie die Router-ID und die AS-Nummer (Autonomous System).

  3. Konfigurieren Sie BGP.

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

  5. Konfigurieren Sie die statischen Routen.

  6. Konfigurieren Sie eine Routing-Richtlinie, die statische Routen in BGP ankündigt und die BGP-Community zu den Routen hinzufügt.

  7. Wenden Sie die Exportrichtlinie an.

Ergebnisse

Bestätigen Sie im Konfigurationsmodus Ihre Konfiguration, indem Sie die Befehle , , und eingeben.show interfacesshow protocolsshow policy-optionsshow routing-options Wenn die Ausgabe nicht die gewünschte Konfiguration anzeigt, 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, rufen Sie den Konfigurationsmodus auf .commit

Überprüfung

Vergewissern Sie sich, 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.

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

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

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

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

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 Importrichtlinie von Gerät R1 geändert wird, werden die BGP-Routen nicht mehr ausgeblendet.community-count