Einleitung
In diesem Dokument wird die Funktion Border Gateway Protocol (BGP) local-AS beschrieben, die ursprünglich in der Cisco IOS® Software, Version 12.0(5)S, verfügbar war.
Voraussetzungen
Anforderungen
In diesem Dokument werden Kenntnisse über das BGP-Routing-Protokoll und dessen Betrieb empfohlen. Weitere Informationen finden Sie in den Anwenderberichten zum Examine Border Gateway Protocol.
Verwendete Komponenten
Die Informationen in diesem Dokument wurden mit dieser Softwareversion erstellt, sind jedoch nicht auf bestimmte Software- und Hardwareversionen beschränkt:
Die Informationen in diesem Dokument beziehen sich auf Geräte in einer speziell eingerichteten Testumgebung. Alle Geräte, die in diesem Dokument benutzt wurden, begannen mit einer gelöschten (Nichterfüllungs) Konfiguration. Wenn Ihr Netzwerk in Betrieb ist, stellen Sie sicher, dass Sie die möglichen Auswirkungen aller Befehle kennen.
Konventionen
Weitere Informationen zu Dokumentkonventionen finden Sie unter Cisco Technical Tips Conventions (Technische Tipps von Cisco zu Konventionen).
Hintergrundinformationen
Die Funktion "local-AS" ermöglicht es einem Router, neben seinem ursprünglichen AS als Mitglied eines zweiten autonomen Systems (AS) zu erscheinen. Diese Funktion kann nur für echte eBGP-Peers verwendet werden. Sie können diese Funktion nicht für zwei Peers verwenden, die Mitglieder verschiedener Confederation-Sub-ASs sind.
Die Funktion "local-AS" ist ein nützliches Tool, wenn ein ISP einen anderen erwirbt, da sie es Routern des erworbenen ISP ermöglicht, nahtlos dem AS des erwerbenden ISP beizutreten. Dies ist besonders dann von Vorteil, wenn die Kunden des übernommenen ISP es vorziehen, ihre bestehenden Peering-Vereinbarungen und -Konfigurationen beizubehalten. Mit der Funktion "local-AS" können Router des übernommenen ISP als Mitglieder des AS des übernehmenden ISP auftreten, ohne jedoch ihre ursprüngliche AS-Nummer aus Sicht der Kunden zu verlieren. Dies gewährleistet einen reibungslosen Übergang und minimiert Störungen für die Kunden des übernommenen ISP.
Ein Beispiel finden Sie in den Netzwerkdiagrammen. In Abbildung 1 hat ISP-A ISP-B noch nicht erworben, in Abbildung 2 hat ISP-A ISP-B gekauft, und ISP-B verwendet die Funktion "local-AS". Wenn ISP-A ISP-B erwirbt, ISP-B-Kunden jedoch keine Konfiguration ändern möchten, ermöglicht die Funktion "local-AS", dass Router in ISP-B Mitglieder von ISP-A (100) AS werden. Gleichzeitig scheinen diese Router für ihre Kunden ihre ISP-B (200) AS-Nummer zu behalten.
In Abbildung 2 gehört ISP-B jetzt zu AS 100 und ISP-C (Kunde) zu AS 300. Beim Peering mit ISP-C verwendet ISP-B AS 200 als AS-Nummer unter Verwendung des Befehls neighbor <ISP-C> local-as 200. Bei den von ISP-B an ISP-C gesendeten BGP-Updates enthält das AS_SEQUENCE-Attribut im AS_PATH-Attribut "200 100". "200" wird von ISP-B aufgrund des für ISP-C konfigurierten Befehls "local-as 200" vorangestellt.
Normalerweise werden die Router in ISP-B von einem kombinierten ISP-A/B in AS 100 umnummeriert. Was geschieht, wenn der ISP-C seine eBGP-Konfigurationen mit dem ISP-B nicht ändern kann? Vor der Funktion "local-AS" muss der kombinierte ISP-A/B zwei AS-Nummern verwalten. Mit dem Befehl local-as kann ISP-A/B physisch ein AS sein, während ISP-C anscheinend zwei ASs hat.
Befehlssyntax
Diese Liste zeigt die Syntax der Befehle, die in den Konfigurationen in diesem Dokument verwendet werden:
Local-AS kann nicht für einzelne Peers in einer Peer-Gruppe angepasst werden.
Local-AS kann nicht über die AS-Nummer des lokalen BGP-Protokolls oder die AS-Nummer des Remote-Peers verfügen.
Der Befehl local-as ist nur gültig, wenn der Peer ein echter eBGP-Peer ist. Dies funktioniert nicht für zwei Peers in verschiedenen Sub-ASs in einer Konföderation.
Konfigurieren
In diesem Abschnitt finden Sie Informationen zum Konfigurieren der in diesem Dokument beschriebenen Funktionen.
Netzwerkdiagramme
In diesem Dokument werden diese Netzwerkeinstellungen verwendet.
Abbildung 1
Abbildung 2
Konfigurationen
In diesem Dokument werden folgende Konfigurationen verwendet:
ISP-B (AS 100, lokal als 200) |
hostname ISP-B
!
interface serial 0
ip address 192.168.1.1 255.255.255.252
!
interface ethernet 0
ip address 192.168.4.1 255.255.255.0
!
router bgp 100
!--- Note the AS number 100. This is the AS number of ISP-A, which is now !--- used by all routers in ISP-B after its acquisition by ISP-A.
neighbor 192.168.1.2 remote-as 300
!--- Defines the e-BGP connection to ISP-C.
neighbor 192.168.1.2 local-as 200
!--- This command makes the remote router in ISP-C to see this !--- router as belonging to AS 200 instead of AS 100. !--- This also make this router to prepend AS 200 in !--- all updates to ISP-C.
network 192.168.4.0
!
! |
ISP-C (AS 300) |
hostname ISP-C
!
interface serial 1
ip address 192.168.1.2 255.255.255.252
!
interface ethernet 0
ip address 192.168.9.1 255.255.255.0
!
router bgp 300
neighbor 192.168.1.1 remote-as 200
!--- Defines the e-BGP connection to ISP-B.
!--- Note AS is 200 and not AS 100.
network 192.168.9.0
!
! |
Überprüfung
In diesem Abschnitt finden Sie Informationen, die Sie verwenden können, um sicherzustellen, dass Ihre Konfiguration ordnungsgemäß funktioniert.
In der BGP-Routing-Tabelle erfahren Sie, wie der Befehl local-as den AS_PATH geändert hat. Sie beobachten, dass ISP-B dem AS 200 Updates voranstellt, die an den ISP-C gesendet und von diesem empfangen werden. Beachten Sie außerdem, dass sich ISP-B in AS Nummer 100 befindet.
ISP-B#show ip bgp summary
BGP router identifier 192.168.4.1, local AS number 100
BGP table version is 3, main routing table version 3
2 network entries and 2 paths using 266 bytes of memory
2 BGP path attribute entries using 104 bytes of memory
1 BGP AS-PATH entries using 24 bytes of memory
0 BGP route-map cache entries using 0 bytes of memory
0 BGP filter-list cache entries using 0 bytes of memory
BGP activity 2/6 prefixes, 2/0 paths, scan interval 15 secs
Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd
192.168.1.2 4 300 29 29 3 0 0 00:25:19 1
In dieser Ausgabe erkennt ISP-C ISP-B als Teil von AS 200.
ISP-C#show ip bgp summary
BGP table version is 3, main routing table version 3
2 network entries (2/6 paths) using 480 bytes of memory
2 BGP path attribute entries using 192 bytes of memory
0 BGP route-map cache entries using 0 bytes of memory
0 BGP filter-list cache entries using 0 bytes of memory
Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd
192.168.1.1 4 200 34 34 3 0 0 00:30:19 1
Beachten Sie in dieser Ausgabe, dass ISP-B den vom ISP-C empfangenen Routen "200" vorgibt.
ISP-B#show ip bgp
BGP table version is 3, local router ID is 192.168.4.1
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete
Network Next Hop Metric LocPrf Weight Path
*> 192.168.4.0 0.0.0.0 0 32768 i
*> 192.168.9.0 192.168.1.2 0 0 200 300 i
Beachten Sie, dass ISP-C Routen von ISP-B mit dem AS_PATH-Wert "200 100" erkennt.
ISP-C#show ip bgp
BGP table version is 3, local router ID is 192.168.1.2
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete
Network Next Hop Metric LocPrf Weight Path
*> 192.168.4.0 192.168.1.1 0 0 200 100 i
*> 192.168.9.0 0.0.0.0 0 32768 i
Diese Befehle zeigen die konfigurierten local-as-Werte in der Ausgabe an:
ISP-B#show ip bgp neighbors 192.168.1.2
BGP neighbor is 192.168.1.2, remote AS 300, local AS 200, external link
BGP version 4, remote router ID 192.168.9.1
BGP state = Established, up for 00:22:42
Last read 00:00:42, hold time is 180, keepalive interval is 60 seconds
Neighbor capabilities:
Route refresh: advertised and received(old & new)
Address family IPv4 Unicast: advertised and received
Message statistics:
InQ depth is 0
OutQ depth is 0
Sent Rcvd
Opens: 1 1
Notifications: 0 0
Updates: 2 1
Keepalives: 25 25
Route Refresh: 0 1
Total: 28 28
Default minimum time between advertisement runs is 30 seconds
Fehlerbehebung
Der Befehl debug ip bgp updates zeigt die empfangenen Präfixe mit den Attributen des Nachbarn an. Diese Ausgabe zeigt, dass das Präfix 192.168.4.0/24 mit AS PATH 200, 100 empfangen wird.
ISP-C#
*May 10 12:45:14.947: BGP(0): 192.168.1.1 computing updates, afi 0, neighbor version 0, table version 5, starting at 0.0.0.0
*May 10 12:45:14.947: BGP(0): 192.168.1.1 send UPDATE (format) 192.168.9.0/24, next 192.168.1.2, metric 0, path
*May 10 12:45:14.947: BGP(0): 192.168.1.1 1 updates enqueued (average=52, maximum=52)
*May 10 12:45:14.947: BGP(0): 192.168.1.1 update run completed, afi 0, ran for 0ms, neighbor version 0, start version 5, throttled to 5
*May 10 12:45:14.947: BGP: 192.168.1.1 initial update completed
*May 10 12:45:15.259: BGP(0): 192.168.1.1 rcvd UPDATE w/ attr: nexthop 192.168.1.1, origin i, metric 0, path 200 100
*May 10 12:45:15.259: BGP(0): 192.168.1.1 rcvd 192.168.4.0/24
*May 10 12:45:15.279: BGP(0): Revise route installing 192.168.4.0/24 -> 192.168.1.1 to main IP table
ISP-C#
Zugehörige Informationen