Introduzione
Questo documento descrive la funzionalità Border Gateway Protocol (BGP) local-AS, inizialmente disponibile nel software Cisco IOS® versione 12.0(5)S.
Prerequisiti
Requisiti
In questo documento viene consigliata la conoscenza del protocollo di routing BGP e delle relative operazioni. Per ulteriori informazioni, fare riferimento ai casi di studio del protocollo Examine Border Gateway.
Componenti usati
Le informazioni di questo documento fanno riferimento alla versione software in uso, ma non sono limitate a versioni software e hardware specifiche:
Le informazioni discusse in questo documento fanno riferimento a dispositivi usati in uno specifico ambiente di emulazione. Su tutti i dispositivi menzionati nel documento la configurazione è stata ripristinata ai valori predefiniti. Se la rete è operativa, valutare attentamente eventuali conseguenze derivanti dall'uso dei comandi.
Convenzioni
Per ulteriori informazioni sulle convenzioni usate, consultare il documento Cisco sulle convenzioni nei suggerimenti tecnici.
Premesse
La funzionalità Local-AS consente a un router di apparire come membro di un secondo sistema autonomo (AS), oltre che del relativo AS originale. Questa funzionalità può essere utilizzata solo per i peer eBGP autentici. Non è possibile utilizzare questa funzionalità per due peer che sono membri di sub-SA confederazione diversi.
La funzione AS locale è uno strumento utile quando un ISP ne acquisisce un altro, in quanto consente ai router dell'ISP acquisito di unirsi senza problemi all'ISP che acquisisce. Ciò risulta particolarmente vantaggioso quando i clienti dell'ISP acquisito preferiscono mantenere le configurazioni e gli accordi di peer esistenti. Con la funzione AS locale, i router nell'ISP acquisito possono apparire come membri dell'ISP che acquisisce, mantenendo il loro numero AS originale agli occhi dei clienti. Ciò garantisce una transizione senza problemi e riduce al minimo le interruzioni per i clienti dell'ISP acquisito.
Per esempio, fare riferimento ai diagrammi di rete, dove nella Figura 1, ISP-A non ha ancora acquistato l'ISP-B e nella Figura 2, ISP-A ha acquistato l'ISP-B e ISP-B utilizza la funzione locale-AS. Se l'ISP-A acquista l'ISP-B, ma i clienti dell'ISP-B non vogliono modificare alcuna configurazione, la funzione locale-AS consente ai router dell'ISP-B di diventare membri dell'ISP-A (100) AS. Allo stesso tempo, questi router sembrano ritenere che i propri clienti conservino il numero ISP-B (200) AS.
Nella Figura 2, l'ISP-B appartiene ora a AS 100 e l'ISP-C (cliente) a AS 300. Durante il peering con ISP-C, ISP-B utilizza AS 200 come numero AS con il comando <ISP-C> local-as 200 del router adiacente. Negli aggiornamenti BGP inviati da ISP-B a ISP-C, il valore AS_SEQUENCE nell'attributo AS_PATH contiene "200 100". "200" è preceduto da ISP-B a causa del comando local-as 200 configurato per ISP-C.
Normalmente un ISP-A/B combinato rinumera i router dell'ISP-B in modo che facciano parte di AS 100. Cosa succede se l'ISP-C non è in grado di modificare le proprie configurazioni eBGP con l'ISP-B? Prima della funzione AS locale, l'ISP-A/B combinato deve mantenere due numeri AS. Il comando local-as permette all'ISP-A/B di essere fisicamente un AS mentre sembra essere due AS per l'ISP-C.
Sintassi dei comandi
Nell'elenco viene mostrata la sintassi dei comandi utilizzati dalle configurazioni riportate nel presente documento:
Non è possibile personalizzare l'associazione AS locale per singoli peer in un gruppo peer.
Local-AS non può avere il numero AS del protocollo BGP locale o il numero AS del peer remoto.
Il comando local-as è valido solo se il peer è un vero peer eBGP. Non funziona per due pari in diverse sub-SA in una confederazione.
Configurazione
In questa sezione vengono presentate le informazioni necessarie per configurare le funzionalità descritte nel documento.
Diagrammi di rete
Nel documento vengono usate queste impostazioni di rete.
Figura 1
Figura 2
Configurazioni
In questo documento vengono usate le seguenti configurazioni:
ISP-B (AS 100, local-as 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
!
! |
Verifica
Le informazioni contenute in questa sezione permettono di verificare che la configurazione funzioni correttamente.
Visualizzare la tabella di routing BGP per verificare in che modo il comando local-as ha modificato AS_PATH. Si noti che ISP-B precede AS 200 agli aggiornamenti inviati a e ricevuti da ISP-C. Inoltre, si noti che ISP-B è nel numero AS 100.
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 questo output, si noti che ISP-C vede ISP-B come parte di 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
In questo output si noti che ISP-B precede "200" alle route apprese da ISP-C.
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
Si noti che l'ISP-C vede le route dall'ISP-B con il valore AS_PATH "200 100".
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
Questi comandi mostrano i valori locali come configurati nell'output:
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
Risoluzione dei problemi
Il comando debug ip bgp updates visualizza i prefissi ricevuti con i relativi attributi dal router adiacente. Questo output mostra che il prefisso 192.168.4.0/24 viene ricevuto con AS PATH 200, 100.
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#
Informazioni correlate