BGP-Communitys, erweiterte Communities und große Communitys verstehen, wenn Routing-Richtlinien den Bedingungen entsprechen
Eine BGP-Community ist eine Gruppe von Zielen, die sich ein gemeinsames Eigentum teilen. Community-Informationen sind als Pfadattribut in BGP-Aktualisierungsnachrichten enthalten. Mit diesen Informationen werden Community-Mitglieder identifiziert und Sie können Aktionen für eine Gruppe ausführen, ohne jedes einzelne Mitglied näher ausführen zu müssen. Sie können Community- und erweiterte Community-Attribute verwenden, um Routing-Entscheidungen auszulösen, z. B. Annahme, Ablehnung, Präferenz oder Neuverteilung.
Sie können Nicht-BGP-Routen Community-Tags über die Konfiguration (für statische, aggregierte oder generierte Routen) oder über eine importierte Routing-Richtlinie zuweisen. Diese Tags können dann beim Exportieren der Routen durch BGP abgeglichen werden.
Ein Community-Wert ist ein 32-Bit-Feld, das in zwei Hauptabschnitte unterteilt ist. Die ersten 16 Bits des Werts kodieren die AS-Nummer des Netzwerks, aus dem die Community hervorgegangen ist, während die letzten 16 Bits eine eindeutige Nummer enthalten, die vom AS zugewiesen wird. Dieses System versucht, einen weltweit einzigartigen Satz von Gemeinschaftswerten für jeden AS im Internet zu garantieren. Junos OS verwendet die Notation von as-number:community-value
, wobei jeder Wert eine Dezimalzahl ist. 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 [edit policy-options]
Konfigurationshierarchie. Der Name der Community identifiziert sie eindeutig für das Routinggerät und dient als Methode zur Kategorisierung von Routen. Beispielsweise könnte eine Route mit einem Community-Wert von 64510:1111 zur Community mit dem Namen AS64510-routes
gehören. 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 community-ids
handelt es sich entweder um einen einzelnen Gemeinschaftswert oder um mehrere Gemeinschaftswerte. Wenn einem Community-Namen mehr als ein Wert zugewiesen ist, 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 besteht aus vier Oktetten. Netzwerkerweiterungen, wie z. B. VPNs, haben Funktionsanforderungen, die durch ein Attribut wie eine Community erfüllt werden können. Der Community-Wert von 4 Oktetten bietet jedoch nicht genügend Erweiterung und Flexibilität, um VPN-Anforderungen zu erfüllen. Dies führt zur Schaffung erweiterter Gemeinschaften. 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 Format enthalten, das durch das Typfeld definiert wird. Erweiterte Communitys bieten einen größeren Bereich zum Gruppieren oder Kategorisieren von Communitys.
Das Attributformat für erweiterte BGP-Communitys enthält drei Felder: type:administrator:assigned-number
. Das Routing-Gerä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 "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).
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 bilden VPN-Importrichtlinien (vrf-import
), die keine regulären Ausdrücke für das Attribut "Erweiterte Gemeinschaften" unterstützen.
Reguläre BGP-Community-Attribute sind ein Attribut variabler Länge, das aus einem Satz von einem oder mehreren 4-Byte-Werten besteht, der in 16-Bit-Werte aufgeteilt wurde. Das höchstwertige Wort wird als AS-Zahl interpretiert, und das niederwertigste 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 keine BGP-Community-Attribute mehr unterstützen. Administratoren codieren 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. Somit 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 BGP-Community mit 12 Byte, die den höchstwertigen 4-Byte-Wert für die Codierung der autonomen Systemnummer als globaler Administrator und die verbleibenden zwei zugewiesenen 4-Byte-Nummern für die Codierung der lokalen Werte gemäß der Definition in RFC 8092 bereitstellt. Sie können die große BGP-Community auf Hierarchieebene [edit policy-options community community-name members]
und [edit routing-options static route ip-address community]
konfigurieren. Das Format für große BGP-Community-Attribute enthält vier Felder: large
:global administrator:assigned number:assigned number
.
Die BGP-IPv6-Unicastadressen-spezifischen erweiterten Communitys werden als Satz von 20-Byte-Werten codiert. Der 20-Byte-Wert wird im folgenden Format interpretiert:
-
Höchste Wertigkeit 2 Byte codiert den Typ- und Untertypwert (hoher Wert (höchstwertiges Byte) und niedriger Wert (zweitwertigstes Byte)).
-
Die nächsten 16 Byte codieren die IPv6-Unicastadresse. Er ist der globale Administrator im IETF RFC.
-
Die letzten 2 Bytes codieren die vom Operator definierten lokalen Werte. Er ist lokaler Administrator im IETF RFC.
Die IPv6-Unicastadressen-spezifischen erweiterten BGP-Community-Attribute werden durch ein Schlüsselwort ipv6-target
dargestellt, ipv6-origin
, oder ipv6-extended
gefolgt von IPv6 und lokalem Administrator, getrennt durch <, > und :.
Die Länge des Attributwerts für BGP Large Communities sollte ein Vielfaches von 12 ungleich Null sein.