Auf dieser Seite
Beispiel: Konfigurieren von Routing-Richtlinien-Präfixlisten
In Junos OS bieten Präfixlisten eine Methode zum Definieren einer Reihe von Routen. Junos OS bietet andere Methoden zur Ausführung derselben Aufgabe, wie z. B. Routenfilter. Eine Präfixliste ist eine Liste von IP-Präfixen, die eine Reihe von Routen darstellen, die als Übereinstimmungskriterien in einer angewandten Richtlinie verwendet werden. Eine solche Liste kann nützlich sein, um eine Liste der Kundenrouten in Ihrem autonomen System (AS) darzustellen. Eine Präfixliste erhält einen Namen und wird innerhalb der [edit policy-options]
Konfigurationshierarchie konfiguriert.
Anforderungen
Vor der Konfiguration dieses Beispiels ist keine spezielle Konfiguration erforderlich, die über die Geräteinitialisierung hinausgeht.
Aktualisiert und erneut validiert mit Junos OS Version 22.1R1.
Überblick
Präfixlisten ähneln einer Liste von Routenfiltern. Der funktionale Unterschied zwischen Routenfiltern und Präfixlisten besteht darin, dass Sie einen Bereich mit einer Präfixliste nicht angeben können. Sie können einen Bereich mit einer Präfixliste simulieren, indem Sie zusätzliche Präfixe in die Liste aufnehmen, oder indem Sie zwei Präfixlisten verwenden, eine kürzere und eine längere, wobei eine auf "Akzeptieren" und "ablehnen" festgelegt wird. Sie können auch eine Präfixliste mithilfe der Übereinstimmungsbedingung prefix-list-filter
filtern. Ihre Wahl ist exact
, longer
und orlonger
.
Der Vorteil einer Präfixliste gegenüber einer Liste von Routenfiltern zeigt sich, wenn auf die Präfixe an mehreren verschiedenen Standorten verwiesen wird. Eine Präfixliste kann beispielsweise in einer BGP-Importrichtlinie, einer Exportrichtlinie, einer RPF-Richtlinie, in Firewall-Filtern, in Loopback-Filtern, beim Festlegen eines Multicast-Bereichs usw. referenziert werden.
Wenn sich die Liste der Präfixe ändert, anstatt zu versuchen, sich die vielen verschiedenen Standortpräfixe zu merken, können Sie stattdessen die Präfixliste aktualisieren und das Präfix einmal ändern, anstatt mehrmals. Dies hilft, die Wahrscheinlichkeit von Konfigurationsfehlern zu reduzieren, wie z. B. die falsche Typisierung der Adresse an einem Speicherort oder das Vergessen, einen oder mehrere Standorte zu aktualisieren.
Präfixlisten helfen auch bei der Verwaltung einer großen Anzahl von Geräten. Sie können die verschiedenen Filter und Richtlinien so allgemein wie möglich schreiben und auf Präfixlisten anstelle von bestimmten IP-Adressen verweisen. Die komplexere Logik in den Filtern und Richtlinien muss nur einmal geschrieben werden, mit minimalen Anpassungen pro Gerät und Standort.
Wie in Abbildung 1dargestellt, verfügt jedes Routingin AS 6500 0über Kundenrouten. Gerät R1 weist Kundenrouten innerhalb des 172.16.1.0/24-Subnetzes zu. Geräte R2 und Gerät R3 weisen Kundenrouten innerhalb der Subnetze 172.16.2.0/24 bzw. 172.16.3.0/24 zu. Gerät R1 wurde als zentraler Punkt in AS 650 00bezeichnet, um eine vollständige Liste der Kundenrouten zu pflegen. Gerät R1 hat eine Präfixliste namens customers
, wie folgt:
user@R1# show policy-options prefix-list customers { 172.16.1.16/28; 172.16.1.32/28; 172.16.1.48/28; 172.16.1.64/28; 172.16.2.16/28; 172.16.2.32/28; 172.16.2.48/28; 172.16.2.64/28; 172.16.3.16/28; 172.16.3.32/28; 172.16.3.48/28; 172.16.3.64/28; }
Wie Sie sehen können, enthält die Präfixliste keinen Übereinstimmungstyp für jede Route (wie Sie bei einem Routenfilter sehen würden). Dies ist ein wichtiger Punkt, wenn eine Präfixliste in einer Richtlinie verwendet wird. Routen stimmen nur überein, wenn sie genau mit einem der Präfixe in der Liste übereinstimmen. Mit anderen Worten, jede Route in der Liste muss in der Routing-Tabelle genau so angezeigt werden, wie sie in der Prefix-Liste konfiguriert ist.
Sie verweisen auf die Prefix-Liste als Übereinstimmungskriterium innerhalb einer Richtlinie wie die folgende:
user@R1# show policy-options policy-statement customer-routes { term get-routes { from { prefix-list customers; } then accept; } term others { then reject; } }
In diesem Beispiel werden alle Routen in der customers
Präfixliste in der Routingtabelle auf Gerät R1 angezeigt. Geräte R2 und Gerät R3 exportieren statische Routen auf Gerät R1 zu ihren Kunden.
Wie bereits erwähnt, können Sie die Übereinstimmungsbedingung prefix-list-filter
mit dem exact
Typ , longer
oder orlonger
Übereinstimmungstyp verwenden. Dies bietet eine Möglichkeit, die Einschränkung der Präfixliste für die genaue Übereinstimmung von Präfixlisten zu vermeiden. Zum Beispiel:
user@R1# show policy-options policy-statement customer-routes { term get-routes { from { prefix-list-filter customers orlonger; } then accept; } term others { then reject; } }
In diesem Beispiel werden die Auswirkungen der Übereinstimmungsbedingung prefix-list
und der Übereinstimmungsbedingung prefix-list-filter
veranschaulicht.
Topologie
Abbildung 1 zeigt das Beispielnetzwerk.

CLI-Schnellkonfiguration zeigt die Konfiguration für alle Geräte in Abbildung 1.
In diesem Abschnitt #configuration449__policy-prefix-list-st werden die Schritte auf Gerät R1 beschrieben.
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
set interfaces ge-0/0/0 unit 0 description to_R2 set interfaces ge-0/0/0 unit 0 family inet address 10.0.0.1/30 set interfaces ge-0/0/1 unit 0 description to_R3 set interfaces ge-0/0/1 unit 0 family inet address 10.0.0.5/30 set interfaces ge-0/0/2 unit 0 description to_R4 set interfaces ge-0/0/2 unit 0 family inet address 10.1.0.5/30 set interfaces lo0 unit 0 family inet address 192.168.0.1/32 set policy-options prefix-list customers 172.16.1.16/28 set policy-options prefix-list customers 172.16.1.32/28 set policy-options prefix-list customers 172.16.1.48/28 set policy-options prefix-list customers 172.16.1.64/28 set policy-options prefix-list customers 172.16.2.16/28 set policy-options prefix-list customers 172.16.2.32/28 set policy-options prefix-list customers 172.16.2.48/28 set policy-options prefix-list customers 172.16.2.64/28 set policy-options prefix-list customers 172.16.3.16/28 set policy-options prefix-list customers 172.16.3.32/28 set policy-options prefix-list customers 172.16.3.48/28 set policy-options prefix-list customers 172.16.3.64/28 set policy-options policy-statement customer-routes term get-routes from prefix-list customers set policy-options policy-statement customer-routes term get-routes then accept set policy-options policy-statement customer-routes term others then reject set routing-options router-id 192.168.0.1 set routing-options autonomous-system 65000 set routing-options static route 172.16.1.16/28 discard set routing-options static route 172.16.1.32/28 discard set routing-options static route 172.16.1.48/28 discard set routing-options static route 172.16.1.64/28 discard set protocols bgp group int type internal set protocols bgp group int local-address 192.168.0.1 set protocols bgp group int neighbor 192.168.0.2 set protocols bgp group int neighbor 192.168.0.3 set protocols bgp group to_65001 type external set protocols bgp group to_65001 export customer-routes set protocols bgp group to_65001 neighbor 10.1.0.6 peer-as 65001 set protocols ospf area 0.0.0.0 interface ge-0/0/0.0 set protocols ospf area 0.0.0.0 interface ge-0/0/1.0 set protocols ospf area 0.0.0.0 interface lo0.0 passive
Gerät R2
set interfaces ge-0/0/0 unit 0 description to_R1 set interfaces ge-0/0/0 unit 0 family inet address 10.0.0.2/30 set interfaces ge-0/0/1 unit 0 description to_R3 set interfaces ge-0/0/1 unit 0 family inet address 10.1.0.1/30 set interfaces lo0 unit 0 family inet address 192.168.0.2/32 set policy-options policy-statement send-static term 1 from protocol static set policy-options policy-statement send-static term 1 then accept set routing-options router-id 192.168.0.2 set routing-options autonomous-system 65000 set routing-options static route 172.16.2.16/28 discard set routing-options static route 172.16.2.32/28 discard set routing-options static route 172.16.2.48/28 discard set routing-options static route 172.16.2.64/28 discard set protocols bgp group int type internal set protocols bgp group int local-address 192.168.0.2 set protocols bgp group int neighbor 192.168.0.1 export send-static set protocols bgp group int neighbor 192.168.0.3 set protocols ospf area 0.0.0.0 interface ge-0/0/0.0 set protocols ospf area 0.0.0.0 interface ge-0/0/1.0 set protocols ospf area 0.0.0.0 interface lo0.0 passive
Gerät R3
set interfaces ge-0/0/0 unit 0 description to_R1 set interfaces ge-0/0/0 unit 0 family inet address 10.0.0.6/30 set interfaces ge-0/0/1 unit 0 description to_R2 set interfaces ge-0/0/1 unit 0 family inet address 10.1.0.2/30 set interfaces lo0 unit 0 family inet address 192.168.0.3/32 set policy-options policy-statement send-static term 1 from protocol static set policy-options policy-statement send-static term 1 then accept set routing-options router-id 192.168.0.3 set routing-options autonomous-system 65000 set routing-options static route 172.16.3.16/28 discard set routing-options static route 172.16.3.32/28 discard set routing-options static route 172.16.3.48/28 discard set routing-options static route 172.16.3.64/28 discard set protocols bgp group int type internal set protocols bgp group int local-address 192.168.0.3 set protocols bgp group int neighbor 192.168.0.1 export send-static set protocols bgp group int neighbor 192.168.0.2 set protocols ospf area 0.0.0.0 interface ge-0/0/0.0 set protocols ospf area 0.0.0.0 interface ge-0/0/1.0 set protocols ospf area 0.0.0.0 interface lo0.0 passive
Gerät R4
set interfaces ge-0/0/0 unit 0 description to_R1 set interfaces ge-0/0/0 unit 0 family inet address 10.1.0.6/30 set interfaces lo0 unit 0 family inet address 192.168.0.4/32 set routing-options autonomous-system 65001 set protocols bgp group ext type external set protocols bgp group ext peer-as 65000 set protocols bgp group ext neighbor 10.1.0.5
Verfahren
Schritt-für-Schritt-Verfahren
Wir zeigen Ihnen die schritt-für-Schritt-Prozedur zur Konfiguration von R1. Die anderen Router haben einen ähnlichen Schritt-für-Schritt-Prozess. Im folgenden Beispiel müssen Sie auf verschiedenen Ebenen in der Konfigurationshierarchie navigieren. Informationen zum Navigieren in der CLI finden Sie Verwenden des CLI-Editors im Konfigurationsmodus im Junos OS CLI-Benutzerhandbuch.
So konfigurieren Sie R1:
-
Konfigurieren Sie die Schnittstellen.
[edit] user@R1# set interfaces ge-0/0/0 unit 0 description to_R2 user@R1# set interfaces ge-0/0/0 unit 0 family inet address 10.0.0.1/30 user@R1# set interfaces ge-0/0/1 unit 0 description to_R3 user@R1# set interfaces ge-0/0/1 unit 0 family inet address 10.0.0.5/30 user@R1# set interfaces ge-0/0/2 unit 0 description to_R4 user@R1# set interfaces ge-0/0/2 unit 0 family inet address 10.1.0.5/30 user@R1# set interfaces lo0 unit 0 family inet address 192.168.0.1/32
-
Konfigurieren Sie die internen BGP (IBGP) -Peerings zu R2 und R3.
[edit] user@R1# set protocols bgp group int type internal user@R1# set protocols bgp group int local-address 192.168.0.1 user@R1# set protocols bgp group int neighbor 192.168.0.2 user@R1# set protocols bgp group int neighbor 192.168.0.3
-
Konfigurieren Sie das externe BGP (EBGP) -Peering zu R4. Die Konfiguration der Exportrichtlinien wird in einem späteren Schritt dargestellt.
[edit] user@R1# set protocols bgp group to_65001 type external user@R1# set protocols bgp group to_65001 export customer-routes user@R1# set protocols bgp group to_65001 neighbor 10.1.0.6 peer-as 65001
-
Konfigurieren Sie die OSPF-Peerings zu R2 und R3. Das OSPF-Protokoll bietet das Lernen der Loopback-Adresse für jedes Gerät, wodurch ibGP-Peerings festgelegt werden können.
[edit] user@R1# set protocols ospf area 0.0.0.0 interface ge-0/0/0.0 user@R1# set protocols ospf area 0.0.0.0 interface ge-0/0/1.0 user@R1# set protocols ospf area 0.0.0.0 interface lo0.0 passive
-
Konfigurieren Sie die Präfixliste.
[edit] user@R1# set policy-options prefix-list customers 172.16.1.16/28 user@R1# set policy-options prefix-list customers 172.16.1.32/28 user@R1# set policy-options prefix-list customers 172.16.1.48/28 user@R1# set policy-options prefix-list customers 172.16.1.64/28 user@R1# set policy-options prefix-list customers 172.16.2.16/28 user@R1# set policy-options prefix-list customers 172.16.2.32/28 user@R1# set policy-options prefix-list customers 172.16.2.48/28 user@R1# set policy-options prefix-list customers 172.16.2.64/28 user@R1# set policy-options prefix-list customers 172.16.3.16/28 user@R1# set policy-options prefix-list customers 172.16.3.32/28 user@R1# set policy-options prefix-list customers 172.16.3.48/28 user@R1# set policy-options prefix-list customers 172.16.3.64/28
-
Konfigurieren Sie die Routing-Richtlinie, die auf die Präfixliste als Übereinstimmungskriterium verweist.
[edit] user@R1# set policy-options policy-statement customer-routes term get-routes from prefix-list customers user@R1# set policy-options policy-statement customer-routes term get-routes then accept user@R1# set policy-options policy-statement customer-routes term others then reject
-
Konfigurieren Sie die statische Routes für 172.16. 1,0/24 Netzwerk. Wir verwenden statische Routen, um die Kundenrouten zu emulieren.
[edit] user@R1# set routing-options static route 172.16.1.16/28 discard user@R1# set routing-options static route 172.16.1.32/28 discard user@R1# set routing-options static route 172.16.1.48/28 discard user@R1# set routing-options static route 172.16.1.64/28 discard
-
Konfigurieren Sie die Autonome Systemnummer (AS) und die Router-ID.
[edit] user@R1# set routing-options router-id 192.168.0.1 user@R1# set routing-options autonomous-system 65000
Ergebnisse
Bestätigen Sie Ihre Konfiguration im Konfigurationsmodus, indem Sie die show interfaces
Befehle , show protocols
, show policy-options
und 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.
user@R1# show interfaces ge-0/0/0 { unit 0 { description to_R2; family inet { address 10.0.0.1/30; } } } ge-0/0/1 { unit 0 { description to_R3; family inet { address 10.0.0.5/30; } } } ge-0/0/2 { unit 0 { description to_R4; family inet { address 10.1.0.5/30; } } } lo0 { unit 0 { family inet { address 192.168.0.1/32; } } }
user@R1# show protocols bgp { group int { type internal; local-address 192.168.0.1; neighbor 192.168.0.2; neighbor 192.168.0.3; } group to_65001 { type external; export customer-routes; neighbor 10.1.0.6 { peer-as 65001; } } } ospf { area 0.0.0.0 { interface ge-0/0/0.0; interface ge-0/0/1.0; interface lo0.0 { passive; } } }
user@R1# show policy-options prefix-list customers { 172.16.1.16/28; 172.16.1.32/28; 172.16.1.48/28; 172.16.1.64/28; 172.16.2.16/28; 172.16.2.32/28; 172.16.2.48/28; 172.16.2.64/28; 172.16.3.16/28; 172.16.3.32/28; 172.16.3.48/28; 172.16.3.64/28; } policy-statement customer-routes { term get-routes { from { prefix-list customers; } then accept; } term others { then reject; } }
user@R1# show routing-options static { route 172.16.1.16/28 discard; route 172.16.1.32/28 discard; route 172.16.1.48/28 discard; route 172.16.1.64/28 discard; } router-id 192.168.0.1; autonomous-system 65000;
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üfen der Routen auf R1
- Überprüfung der Routenanzeige zu R4
- Experimentieren mit der Prefix-list-filter-Anweisung
Überprüfen der Routen auf R1
Zweck
Überprüfen Sie auf R1 die Routen in der Routing-Tabelle.
Aktion
user@R1> show route terse 172.16/16 inet.0: 30 destinations, 30 routes (30 active, 0 holddown, 0 hidden) + = Active Route, - = Last Active, * = Both A V Destination P Prf Metric 1 Metric 2 Next hop AS path * ? 172.16.1.16/28 S 5 Discard * ? 172.16.1.32/28 S 5 Discard * ? 172.16.1.48/28 S 5 Discard * ? 172.16.1.64/28 S 5 Discard * ? 172.16.2.16/28 B 170 100 I unverified >10.0.0.2 * ? 172.16.2.32/28 B 170 100 I unverified >10.0.0.2 * ? 172.16.2.48/28 B 170 100 I unverified >10.0.0.2 * ? 172.16.2.64/28 B 170 100 I unverified >10.0.0.2 * ? 172.16.3.16/28 B 170 100 I unverified >10.0.0.6 * ? 172.16.3.32/28 B 170 100 I unverified >10.0.0.6 * ? 172.16.3.48/28 B 170 100 I unverified >10.0.0.6 * ? 172.16.3.64/28 B 170 100 I unverified >10.0.0.6
Bedeutung
Gerät R1 hat seine eigenen statischen Routen (S) und die BGP-Routen von den Geräten R2 und R3 (B) gelernt.
Überprüfung der Routenanzeige zu R4
Zweck
Stellen Sie auf R1 sicher, dass die Kundenrouten zu R4 angekündigt sind.
Aktion
user@R1> show route advertising-protocol bgp 10.1.0.6 inet.0: 30 destinations, 30 routes (30 active, 0 holddown, 0 hidden) Prefix Nexthop MED Lclpref AS path * 172.16.1.16/28 Self I * 172.16.1.32/28 Self I * 172.16.1.48/28 Self I * 172.16.1.64/28 Self I * 172.16.2.16/28 Self I * 172.16.2.32/28 Self I * 172.16.2.48/28 Self I * 172.16.2.64/28 Self I * 172.16.3.16/28 Self I * 172.16.3.32/28 Self I * 172.16.3.48/28 Self I * 172.16.3.64/28 Self I
Bedeutung
Wie erwartet werden nur die Routen aus der Kunden-Präfixliste zu R4 angekündigt.
Experimentieren mit der Prefix-list-filter-Anweisung
Zweck
Sehen Sie, was passieren kann, wenn Sie prefix-list-filter
anstelle von prefix-list
.
Aktion
-
Fügen Sie auf R3 eine statische Route hinzu, die länger ist als eine der vorhandenen statischen Routen.
[edit routing-options static] user@R3# set route 172.16.3.65/32 discard user@R3# commit
-
Deaktivieren Sie auf R1 die Präfixliste und konfigurieren Sie einen Prefix-Listenfilter mit dem Übereinstimmungstyp
orlonger
.[edit policy-options policy-statement customer-routes term get-routes] user@R1# deactivate from prefix-list customers user@R1# set from prefix-list-filter customers orlonger user@R1# commit
-
Prüfen Sie auf R1, welche Routen zu R4 angeboten werden.
user@R1> show route advertising-protocol bgp 10.1.0.6 inet.0: 31 destinations, 31 routes (31 active, 0 holddown, 0 hidden) Prefix Nexthop MED Lclpref AS path * 172.16.1.16/28 Self I * 172.16.1.32/28 Self I * 172.16.1.48/28 Self I * 172.16.1.64/28 Self I * 172.16.2.16/28 Self I * 172.16.2.32/28 Self I * 172.16.2.48/28 Self I * 172.16.2.64/28 Self I * 172.16.3.16/28 Self I * 172.16.3.32/28 Self I * 172.16.3.48/28 Self I * 172.16.3.64/28 Self I * 172.16.3.65/32 Self I
Bedeutung
Wie erwartet, wirbt R1 nun für den 172.16. 3,65/32-Route zu R4, obwohl 172.16. 3.65/32 ist nicht in der Prefix-Liste enthalten.