Sommario

Introduzione

Prerequisiti

Requisiti

Componenti usati

Configurazione generale BGP

Configurazione peer BGP

Esempio di configurazione peer

Criterio annuncio route BGP

Reti BGP

Configurazione aggregata BGP

Ridistribuzione protocollo di routing IP

Ridistribuzione delle route statiche in BGP

Configurazione mappa route BGP

Regole mapping routing BGP

Riepilogo del processo di selezione delle route BGP

Filtri delle route IP e BGP

Comandi della console BGP

Mostra conteggio risultati BGP

Mostra route BGP

Mostra peer BGP

Mostra reti BGP

Mostra stati BGP

Mostra timer BGP

Mostra Mem BGP

Mostra configurazione BGP

Mostra aggregazioni BGP

Disabilitazione BGP

Reimposta peer BGP

Guida rapida BGP

Opzioni di debug BGP

Riferimenti RFC BGP

Informazioni correlate

Introduzione

Il Border Gateway Protocol (BGP) è un protocollo gateway esterno che consente ai sistemi autonomi di scambiare informazioni di routing tra loro. Un sistema autonomo è un insieme di router sottoposti a un'unica amministrazione tecnica.

I numeri del sistema autonomo (AS) sono assegnati dall'American Registry for Internet Numbers. Per ulteriori informazioni, visitare il relativo sito Web. Comprende un elenco completo di tutti i numeri AS assegnati nella sezione Documentazione.

American Registry for Internet Numbers

È possibile, ma non incoraggiato, richiedere un numero AS per eseguire BGP se un'installazione è a home singolo. Tuttavia, è necessario un numero AS separato per un sito multi-homed in cui viene utilizzato più di un ISP. Ciò è dovuto al fatto che un'installazione con un solo server potrebbe essere considerata interna all'ISP, mentre un sito con più server non potrebbe esserlo.

I router che si scambiano informazioni BGP sono chiamati peer BGP. Un router può avere sia peer esterni in altre appliance ASA sia peer interni all'interno della propria appliance ASA. Un peer è considerato esterno se il suo numero AS è diverso dal numero AS del router.

I router stabiliscono sessioni BGP utilizzando il protocollo TCP. All'avvio di una nuova sessione BGP, i peer BGP si scambiano le tabelle di routing complete e quindi, quando la tabella di routing cambia, vengono inviati solo gli aggiornamenti incrementali.

In questa guida alla configurazione vengono descritte le opzioni di configurazione disponibili con BGP in esecuzione su router di sistemi compatibili.

Prerequisiti

Requisiti

Nessun requisito specifico previsto per questo documento.

Componenti usati

Il documento è limitato ai Cisco Compatible Micro Series Router.

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.

Configurazione generale BGP

Il protocollo BGP è abilitato nella sezione di configurazione generale BGP. Il protocollo BGP è abilitato a livello globale per il router anziché per interfaccia, come avviene per RIP e OSPF. BGP è disattivato per impostazione predefinita. Per abilitare BGP, è necessario impostare il parametro BGPEnabled su On.

[ BGP General ]

BGPEnabled     = Off     Enable or disable the BGP protocol

BGPAS          = ""      Autonomous system number of this router

BGPLocPref     = 100     BGP local preference, default is 100

BGPUseIPRFltrs = False   Use IP Route Filters, default is False

In questa sezione viene impostato il numero AS (Autonomous System) di questo router. è necessario indicare il numero BGPAS; in caso contrario, BGP non verrà abilitato.

L'attributo di preferenza locale BGPLocPref viene scambiato tra i router dello stesso SA e indica il percorso preferibile per uscire dall'AS; un percorso con una preferenza locale più alta è preferibile. Se non si specifica alcun BGPLocPref, verrà utilizzato il valore predefinito 100.

BGP utilizza le route map BGP per filtrare le route e impostare gli attributi. Ulteriori informazioni su questi parametri sono disponibili nelle sezioni BGP Peer Config e BGP Route Map di questo documento. L'utente può scegliere di utilizzare i filtri di route IP anziché le route map BGP. Il valore di BGPUseIPRFltrs verrà controllato per ogni peer per cui non sono state definite route map BGP e, se è TRUE, i filtri di route IP verranno controllati per tale peer. I filtri di route IP sono globali per il router, mentre le route map BGP possono essere rese specifiche per ogni peer.

Configurazione peer BGP

L'elenco dei peer BGP contiene l'elenco dei peer configurati per questo router. Il router non stabilirà una connessione BGP con alcun router non presente nell'elenco. Se non è presente un elenco di peer BGP, BGP non verrà abilitato anche se BGPnabled è impostato su On nella sezione Generale di BGP.

[ BGP Peer List ]

BGPPeer  =  On/Off  IPAddress  ASNumber  PeerConfigID

Il parametro On|Off configura lo stato di avvio del router rispetto al peer; determina se il router tenterà automaticamente di stabilire una sessione BGP con il peer all'avvio. Se questo parametro è impostato su Off, il router non stabilirà una sessione BGP con il peer finché non si esegue il comando BGP Enable. Si noti che ciò non modificherà lo stato di avvio; al successivo avvio del router, il peer verrà attivato nello stato Off finché non viene attivato.

È possibile configurare BGP in modo che tutti i peer siano disattivati all'avvio. Se BGPEnabled = On nella sezione BGP General, sarà possibile abilitare in modo dinamico i peer selezionati dopo l'avvio del router.

Il router contatterà il peer utilizzando l'indirizzo IP indicato nell'elenco di configurazione. È necessario specificare IPaddress e ASNnumber del peer. Affinché la sessione venga stabilita, la rete dell'indirizzo IP fornito deve essere presente nella tabella di routing del router. Il router determina se un peer è interno o esterno rispetto al numero AS del peer, in quanto i peer interni hanno lo stesso numero AS del router stesso.

Ogni voce dell'elenco di peer BGP può contenere un PeerConfigID opzionale, che specifica il numero della sezione BGP Peer Config in cui è possibile impostare vari elementi di configurazione BGP specifici del peer. Una sezione BGP Peer Config può essere utilizzata per più peer solo se si desidera utilizzare tutti gli stessi parametri.

[ BGP Peer Config "SectionID" ]    Section ID is a character string

InputRouteMap    = ""     Name of input Route Map to be used for this peer

OutputRouteMap   = ""     Name of output Route Map to be used for this peer

NextHopSelf      = False  Next hop is this router

EBGPMultihop     = False  External peer not directly connected

PeerWeight       = 100    Neighbor weight

PeerRetryTime    = 30     Retry time in seconds

PeerHoldTime     = 180    Configured hold time in seconds

BGPUseLoopback   = False  Use router LoopbackAddress with this peer

AdvertiseDefault = False  Advertise default route to this peer

InputRouteMap e OutputRouteMap vengono specificati separatamente. I parametri che possono essere impostati e controllati sono diversi per le route di input e di output (per i dettagli, vedere la sezione BGP Route Map).

Se NextHopSelf è impostato su TRUE, il router si annuncerà come hop successivo alle route annunciate al peer.

I peer esterni devono essere connessi direttamente, a meno che EBGPMultihop non sia impostato su TRUE. Se questo parametro è impostato su TRUE, il router deve disporre di una route al peer esterno non connesso direttamente per stabilire una connessione.

Il parametro PeerWeight è una valutazione interna assegnata al peer dall'amministratore; non viene pubblicizzato su altri router. I peer con un peso maggiore sono preferiti quando esistono più route verso la stessa destinazione.

Il tempo di ripetizione dei tentativi BGP consente all'amministratore di impostare l'intervallo di tempo tra i tentativi per stabilire una connessione ai peer configurati che per qualche motivo non sono più disponibili. Se un peer è inattivo ma il suo stato è impostato su On, il router tenterà continuamente di contattare il peer ogni secondi di PeerRetryTime. Il valore minimo accettato per PeerRetryTime è 10 secondi.

Il tempo di attesa viene negoziato con il peer, pertanto il PeerHoldTime configurato non sarà necessariamente il tempo di attesa effettivo utilizzato dai peer. I peer utilizzeranno il più piccolo dei due tempi di attesa proposti. Il tempo di attesa deve essere zero o almeno 3 secondi. Se l'intervallo di tempo di attesa negoziato è zero, i messaggi KEEPALIVE periodici non verranno inviati.

Se non si specifica PeerWeight, PeerHoldTime o PeerRetryTime, verranno utilizzati i valori predefiniti. Il valore predefinito di PeerWeight è 100, il valore predefinito di PeerHoldTime è 180 secondi e il valore predefinito di PeerRetryTime è 30 secondi.

Se nella sezione Loopback IP viene specificato un indirizzo di loopback, è possibile impostare BGPUseLoopback su TRUE. In questo caso, il router userà il proprio indirizzo di loopback come origine IP nei pacchetti TCP per il peer anziché un indirizzo IP specifico di una delle proprie interfacce. Tuttavia, il peer deve sapere come inviare i pacchetti a quell'indirizzo tramite le normali procedure di routing IP. Se l'indirizzo non si trova in una subnet già nota al peer, deve essere aggiunto tramite una route statica. L'indirizzo di loopback viene in genere utilizzato solo per i peer interni, poiché i peer esterni sono in genere connessi direttamente.

La route predefinita del router non viene annunciata a un peer a meno che il parametro AdvertiseDefault non sia impostato su TRUE per tale peer.

Esempio di configurazione peer

Di seguito è riportato un esempio di configurazione peer:

[ BGP Peer List ]

BGPPeer = On   198.41.11.213   100   Peer1

BGPPeer = On   205.14.128.1    110   Peer2

[ BGP Peer Config "Peer1" ]

InputRouteMap            = bgpin1

OutputRouteMap           = bgpout1

PeerHoldTime             = 180

PeerRetryTime            = 65

PeerWeight               = 1000

[ BGP Peer Config "Peer2" ]

InputRouteMap            = bgpin2

OutputRouteMap           = bgpout1

PeerHoldTime             = 180

PeerRetryTime            = 45

PeerWeight               = 2000

Nell'elenco dei peer BGP e nei peer della configurazione peer BGP 198.41.11.213 e 206.14.128.2 utilizzare la configurazione peer BGP 1, mentre nel peer 205.14.128.1 viene utilizzata la configurazione peer BGP 2.

Criterio annuncio route BGP

Per impostazione predefinita, BGP non annuncia le route. In questo modo si evita che vengano inavvertitamente annunciate le route in uscita su Internet.

Per ottenere l'annuncio delle route, è necessario configurare un elemento: L'elenco delle reti BGP, la ridistribuzione delle route IP, le route map BGP o i filtri delle route IP.

Per ottenere l'annuncio delle route esterne, utilizzare le route map BGP o i filtri di route IP. Per ottenere l'annuncio delle route interne, utilizzare l'elenco delle reti BGP o la ridistribuzione delle route IP.

Ciascuna di queste sezioni di configurazione è descritta di seguito.

Reti BGP

La sezione BGP Networks definisce un elenco di route che l'amministratore desidera pubblicizzare come originate all'interno dell'ASA. Queste possono essere route connesse direttamente, route statiche, route RIP o route OSPF.

Il router confronta le voci dell'elenco delle reti BGP con la relativa tabella di routing IP e non annuncia nell'elenco delle reti un percorso che non è possibile trovare nella relativa tabella di routing IP. Pertanto, se si desidera annunciare reti locali che non sono incluse nella tabella di routing IP del router, è necessario aggiungere route statiche.

Notare che l'unico modo per ottenere le route con connessione diretta annunciate in BGP è includerle nell'elenco delle reti. Le route OSPF o RIP possono essere annunciate in BGP utilizzando la sezione IP Route Redistribution. Le route statiche possono essere annunciate in BGP utilizzando il flag di ridistribuzione su ciascuna route statica configurata.

Il parametro opzionale mask indica al router il numero di bit della voce della tabella di routing IP che devono corrispondere all'indirizzo LocalNet. Non si tratta necessariamente della maschera della rete che si desidera pubblicizzare. Si supponga, ad esempio, che il router disponga delle subnet 198.41.9.32, 198.41.9.64 e 198.41.9.96, tutte con maschera 255.255.255.224. Per fare in modo che BGP pubblicizzi una rete 198.41.9.0/24, le reti BGP avranno questo aspetto:

[ BGP Networks ]

LocalNet = IP address [mask]

[ BGP Networks ]

LocalNet = 198.41.9.32 255.255.255.255

Il router corrisponderà solo alla voce 198.41.9.32 a causa della maschera fornita con la rete locale. La rete verrà pubblicizzata come 198.41.9.0/24, poiché troncerà automaticamente le subnet mask più specifiche della Classe C. Tuttavia, se si specifica una maschera di 255.255.255.0, si finirà per pubblicizzare la rete 198.41.9.0/24 tre volte, poiché tutte e tre le subnet corrisponderanno alla voce LocalNet. Questo troncamento non equivale all'aggregazione e si applica solo alle reti interne e solo alle maschere più specifiche della Classe C. Per ottenere l'aggregazione delle route, utilizzare la sezione Aggregazioni BGP.

Configurazione aggregata BGP

La sezione BGP Aggregates contiene le reti da aggregare prima di essere annunciate ai peer esterni. La tabella di routing IP del router deve contenere reti che siano un sottoinsieme dell'aggregato per poter essere pubblicizzato; solo le route aggregate, e non le singole, verranno pubblicizzate ai peer esterni. I peer interni riceveranno le singole rotte se originati al di fuori del SA; i peer interni non si scambiano le route interne tramite BGP.

Non è necessario avere un elenco aggregato per le subnet interne delle reti di classe C (vedere la sezione Reti BGP di cui sopra). Tuttavia, se si dispone di diverse classi C (o superiori) che possono essere combinate con una singola maschera a una supernet, è possibile utilizzare l'aggregazione.

[ BGP Aggregates ]

AddrAndMask = [IPAddr] [IPMask]

IP Routing Table Entries

198.41.8.0     255.255.255.0

198.41.9.0     255.255.255.0

198.41.10.0    255.255.255.0

198.41.11.0    255.255.255.0

[ BGP Networks ]

LocalNet = 198.41.8.0 255.255.252.0

[ BGP Aggregates ]

AddrAndMask = 198.41.8.0 255.255.252.0

L'unica route 198.41.8.0/22 verrà pubblicizzata sui peer esterni BGP. Senza la voce BGP Aggregates, le quattro reti verrebbero pubblicizzate separatamente. Le quattro reti corrisponderebbero alla maschera fornita nella sezione Reti BGP, ma non verrebbero aggregate automaticamente.

Ridistribuzione protocollo di routing IP

Un altro modo per specificare le route RIP e OSPF da importare in BGP è tramite la ridistribuzione delle route. L'impostazione predefinita prevede che tutte le ridistribuzioni di routing siano disabilitate.

È possibile ridistribuire le route BGP in RIP e OSPF, ma non è consigliabile a meno che non si accetti solo un numero ridotto di route BGP. Fare attenzione con i filtri appropriati quando si eseguono operazioni quali l'importazione di route BGP in OSPF e l'esportazione di route OSPF in BGP.

Nota: il numero di route supportate dipende anche dalla quantità di memoria del router.

[ IP Route Redistribution ]

BGPtoOSPF                  Redistribute BGP routes to OSPF

Syntax: [True|False] [Metric]

BGPtoRIP                   Redistribute BGP routes to RIP

Syntax: [True|False] [Metric]

RIPtoBGP                   Redistribute RIP routes into BGP

OSPFtoBGP                  Redistribute OSPF routes into BGP

Ridistribuzione delle route statiche in BGP

Una route statica può essere ridistribuita in BGP utilizzando il flag di ridistribuzione durante la configurazione della route nella sezione IP Static:

[ IP Static ]

198.41.16.0 255.255.255.0 198.41.9.65 1 Redist=BGP

Configurazione mappa route BGP

Le route map BGP sono molto simili ai filtri delle route IP, con la differenza che:

- Sono specifici di BGP

- Possono essere specificati per peer

- Consentono l'impostazione degli attributi BGP sulle route in ingresso e in uscita oltre a filtrare le route

Le route map vengono utilizzate solo dal protocollo BGP e non sono associate a un'interfaccia specifica. La sezione BGP Peer Config specifica le mappe di route, se presenti, da applicare al peer. Le mappe delle route di input e di output vengono specificate separatamente.

Le route BGP note al router verranno annunciate a meno che non vengano negate da una mappa delle route o da un filtro delle route. Le route statiche, IGP e con connessione diretta non verranno annunciate a meno che non sia specificato nella sezione Reti BGP o tramite ridistribuzione delle route.

Il router non accetterà route di input a meno che non sia stata definita una route BGP o un filtro route IP. Se volete davvero tutto, un "permesso 0.0.0.0" lo farà. Il router controlla prima le mappe delle route BGP e, se la route viene negata, i filtri delle route IP non verranno controllati anche se BGPUseIPRFltrs è True.

[ BGP Peer Config 2 ]

InputRouteMap            = bgpin2

OutputRouteMap           = bgpout2

I filtri di route IP possono essere utilizzati con BGP anziché con le route map BGP. Le condizioni di corrispondenza sono più limitate e non è possibile impostare vari parametri, ad esempio community, preferenze locali e weight, con i filtri di route IP.

Il nome BGP Route Map è una sezione speciale della configurazione, ossia non ci sono parole chiave da documentare. Ogni sezione contiene un set di filtri completo identificato in modo univoco dalla parte Name del nome della sezione. Possono esistere più sezioni, ognuna con un nome univoco. Il nome non può contenere più di 15 caratteri.

Regole mapping routing BGP

In questa sezione vengono descritti in dettaglio i parametri e i modificatori relativi alle regole di mapping delle route BGP.

action route [direction] [out | in modifiers]

permit | deny IP Address out | in

L'azione, il percorso e la direzione sono parametri obbligatori. I modificatori In e Out sono facoltativi.

Azione - Autorizza o Nega

Specifica l'azione da eseguire quando una route soddisfa la condizione della regola.

Route - Indirizzo IP della rete

L'indirizzo IP viene specificato nello stesso modo descritto per i filtri di route IP; ovvero, nella normale notazione decimale puntata, come indirizzo in cui è stato effettuato il factoring, un numero esadecimale o con un campo facoltativo /bits. Per ulteriori informazioni, vedere la pagina del manuale IP Route Filter.

[Direzione]

È necessario specificare un parametro in o out. Specifica la direzione in base alla quale viene applicata la regola.

Questi modificatori si applicano se la direzione è in:

- ipaddr: indirizzo IP del peer

- srcas: la route ha questo numero AS di origine

- hasas — questo numero AS è contenuto nel percorso AS

- nhop: il percorso ha l'hop successivo

- comm - questa community è inclusa nell'elenco attributi

- setpref — imposta la preferenza su questo valore

- setwt — imposta lo spessore su questo valore

Il parametro ipaddr | ha | srca | comunicazione | I modificatori nhop limitano le regole di input alle route provenienti dall'indirizzo IP, dal numero AS, dalla community o dall'hop successivo designato. Solo uno di questi cinque argomenti è atteso. hasas indica che la regola verrà applicata se il percorso AS contiene il numero AS specificato in un punto qualsiasi del percorso AS; srcas indica che la regola verrà applicata solo se la route ha origine nel server AS specificato.

Il modificatore setpref consente di impostare la preferenza sulle route in ingresso. Se si specifica un parametro ipaddr, hasas, srcas, comm o nhop, la preferenza verrà impostata solo per le route che soddisfano la condizione specificata.

Il modificatore setwt consente di impostare il peso sulle route in ingresso. Se si specifica un ipaddr, hasas, srcas, comm o nhop, il peso verrà impostato solo per le route che soddisfano la condizione specificata.

I seguenti modificatori si applicano se la direzione è esterna:

- ipaddr: indirizzo IP del peer

- toas — numero AS di peer

- srcas — numero AS di origine della rotta

- origine: protocollo da cui proviene la route

- snenthop — imposta l'attributo dell'hop successivo

- setmed — imposta attributo discriminatore a più uscite

- setasp — anteporre un percorso AS al percorso corrente

- setcomm — imposta un nuovo elenco community, eliminando il vecchio

- addcomm — anteporre un elenco community a uno esistente

Il parametro ipaddr | i modificatori toas limitano le regole di output alle route verso l'indirizzo IP o il numero AS designato. È previsto un solo argomento. Se il router ha solo un peer in un determinato AS, ipaddr o toas otterranno lo stesso risultato. Se il router ha più peer all'interno di un'appliance ASA adiacente, utilizzare l'indirizzo IP del peer per limitare la regola solo a tale peer oppure utilizzare il numero AS per applicare la regola a ogni peer nell'appliance ASA.

Il modificatore srcas limita le regole di output alle route originate dal numero AS designato.

Il modificatore del protocollo di origine limita le regole di output alle route provenienti dal protocollo designato. BGP può annunciare route dirette, statiche, RIP, OSPF o altre route BGP dalla propria tabella di routing IP ai peer.

Il modificatore endpoint consente di impostare l'hop successivo sul percorso in uscita.

Il modificatore setmed consente di impostare il discriminatore a più uscite sul percorso in uscita.

Il modificatore setasp consente di anteporre l'elenco AS specificato all'attributo path dell'AS in uscita. È possibile immettere fino a 6 numeri AS.

Il modificatore setcomm consente di impostare un elenco community sul percorso in uscita. I parametri possono essere costituiti da un massimo di 6 numeri di comunità oppure da una delle comunità speciali: "noexport", "noadv" o "noexpsub". Queste sono le tre comunità "conosciute" definite nella RFC 1997, BGP Communities Attribute: NO_EXPORT, NO_ADVERTISE e NO_EXPORT_SUBCONFED.

Il modificatore addcomm consente di anteporre un elenco della community al percorso in uscita. I parametri possono contenere fino a 6 numeri di comunità.

Esempi

Nella mappa della route BGP mymapin, la route 192.61.5.0 sarà consentita se l'attributo community contiene la community 200 e la preferenza verrà impostata su 100. Nella seconda riga, verranno accettate anche tutte le altre route dalla community 200, ma la preferenza verrà impostata su 300. Le route che non contengono la community 200 verranno rifiutate.

In BGP Route Map mymapout, tutte le route dirette specificate nella sezione BGP Networks saranno consentite fino al numero AS 200 e il MED sarà impostato su 10. Nella seconda linea, tutte le route saranno consentite fino al numero AS 300, ma il valore Community sarà impostato su noadv (NO_ADVERTISE).

[ BGP Route Map "mymapin" ]

permit 192.61.5.0 in comm 200 setpref 100

permit 0.0.0.0 in comm 200 setpref 300

[ BGP Route Map "mymapout" ]

permit 0.0.0.0 out toas 200 origin direct setmed 10

permit 0.0.0.0 out toas 300 setcomm noadv

Riepilogo del processo di selezione delle route BGP

Le route map consentono all'amministratore di influenzare il processo di selezione delle route, poiché BGP utilizza, tra le altre cose, il peso, la preferenza e il MED. BGP utilizza i seguenti criteri, nell'ordine presentato, per selezionare la route migliore per una destinazione:

- Il percorso preferito è il percorso con il peso maggiore.

- Se i pesi sono gli stessi, selezionate il tracciato con la preferenza locale più grande.

- Se le preferenze sono le stesse, selezionare il percorso con la lunghezza del percorso AS più breve.

- Se tutti i tracciati hanno la stessa lunghezza del tracciato AS, selezionate il tracciato con il tracciato MED più basso.

- Se i percorsi hanno lo stesso MED, selezionare il percorso dal peer BGP con l'ID router più basso.

Filtri delle route IP e BGP

l'utente ha la possibilità di usare i filtri delle route IP con BGP anziché con le route map BGP; tuttavia, i filtri di route IP non consentono di impostare gli attributi BGP come descritto nella sezione Mappa route BGP. Se è stato definito un InputRouteMap per un peer, i filtri di route IP verranno ignorati per le route di input anche se il parametro BGPUseIPRFltrs è stato impostato su TRUE nella sezione Generale di BGP. Analogamente, se è stato definito un OutputRouteMap per un peer, i filtri di route IP verranno ignorati per le route di output.

Per BGP, è stato aggiunto un parametro aggiuntivo al filtro route IP, che è il filtro basato sul percorso AS. Una route BGP contiene informazioni relative a ciascun sistema autonomo (AS) attraversato. La route 199.41.13.0, con origine in AS 500, avrebbe due percorsi AS per raggiungere R1: [200,300,500] e [400,600,500].

Nell'esempio seguente, il comando IP Route Filter bgpin viene applicato al router R1. Tutte le route provenienti dall'AS 300 verranno escluse e tutte le route provenienti dall'AS 400 verranno autorizzate.

Il bgpout del filtro route IP consente di annunciare 192.62.16.0 a R2 e di annunciare 192.62.17.0 a R4. È possibile usare gli indirizzi IP di R2 e R4 al posto dei numeri AS nel bgpout.

Il filtro di routing IP bgp600 illustra l'utilizzo della parola chiave contains. Questo filtro nega tutte le route in ingresso che contengono AS 600 in qualsiasi punto del percorso AS.

Prendere nota della riga finale nei filtri route per impedire il filtraggio non intenzionale delle route RIP e OSPF:

[ IP Route Filter "bgpin" ]

deny 0.0.0.0 in via bgp from 300

permit 0.0.0.0 in via bgp from 400

permit 0.0.0.0 in via rip ospf

[ IP Route Filter "bgpout" ]

permit 192.62.16.0 out via bgp to 200

permit 192.62.17.0 out via bgp to 400

permit 0.0.0.0 out via rip ospf

[ IP Route Filter "bgp600" ]

deny 0.0.0.0 in via bgp contains 600

permit 0.0.0.0 in via rip ospf

---------           ---------          ---------

192.62.16.0  | R1    |___________| R2    |__________| R3    |

192.62.17.0  | AS100 |           | AS200 |          | AS300 |

---------           ---------          ---------

|                                       |

|                                       |

---------          ---------          ---------

| R4    |__________| R6    |__________| R5    | 199.41.13.0

| AS400 |          | AS600 |          | AS500 |

---------          ---------          ---------

Non è tuttavia possibile eseguire le operazioni seguenti con il filtro AS, poiché il filtro AS viene applicato all'origine della route. Si supponga che il router R1 riceva una pubblicità relativa alla route 199.41.13.0 da entrambi i peer R2 e R4 e che la route abbia origine nell'AS 500. Il percorso AS per la route da R2 è quindi [200,300,500] e il percorso AS per la stessa route da R4 è [400,600,500].

[ IP Route Filter "does not work as intended" ]

deny 199.41.13.0 in via bgp from 200

permit 199.41.13.0 in via bgp from 400

Anche se la sintassi è corretta, il filtro precedente provocherebbe solo il rifiuto della route; non corrisponde al filtro della riga 2 perché il relativo numero AS di origine è 500, non 400. Per raggiungere lo scopo indicato in precedenza, è possibile utilizzare gli indirizzi IP dei peer R2 e R4:

[ IP Route Filter "bgpin" ]

deny 199.41.13.0 in via BGP from "R2's IP address"

permit 199.41.13.0 in via BGP from "R4's IP address"

Comandi della console BGP

Sono disponibili diversi comandi show per BGP e comandi per abilitare/disabilitare BGP o ripristinare le connessioni BGP:

show bgp rtcount     BGP Routing Entry Counts

show bgp routes      Display BGP Routing Entries

show bgp peers       Display the list of BGP Peers and current status

show bgp timers      BGP Peer timer information

show bgp mem         BGP Database Memory Allocation

show bgp config      BGP configuration information

show bgp stats       BGP peer uptime and packet exchange statistics

show bgp networks    Display list of internal networks to be advertised

show bgp aggregates  Display BGP routes to be aggregated

bgp disable          Disable BGP connection to all peers or 1 specified peer

Usage: { ALL | IP Address }

bgp enable           Enable BGP connection to all peers or 1 specified peer

Usage: { ALL | IP Address }

bgp reset peer       Reset BGP connection to all peers or 1 specified peer

Usage: { ALL | IP Address }

Mostra conteggio risultati BGP

Questo comando visualizza un riepilogo del numero di route nel database di routing BGP. Con BGP, questo è utile se il numero di percorsi è molto elevato e si desidera conoscere il numero, ma non stamparlo.

BGP Test> sho bgp rt

BGP Routing Database Entries       In Use    Added     Removed

In IP routing table:               51548     78694     27146

BGP route heads:                   51548     78702     27154

IP Routing Table Entries: 51561

Mostra route BGP

Il comando show bgp route, senza argomenti, visualizza la route migliore nel database di routing BGP per ciascuna destinazione. Di seguito è riportato un estratto di esempio.

Il database di routing BGP può contenere route non incluse nella tabella di routing IP del router; una route BGP non è presente nella tabella di routing IP se il router non dispone di una voce per l'hop successivo della route.

bgptest>sho bgp ro

BGP Best Routes List

Network/Mask Bits   Pref  Weight  Next Hop         AS Path

1  128.128.0.0    /16  100   100     199.45.133.101   3404 1 1

2  129.129.0.0    /16  100   100     199.45.133.101   3404 1 1239 1673 1133 559

3  130.130.0.0    /16  100   100     199.45.133.101   3404 1 1 5727 7474 7570

4  131.131.0.0    /16  100   100     199.45.133.101   3404 1 1 1236

5  134.134.0.0    /16  100   100     199.45.133.101   3404 1 1239 1760 4983

6  135.135.0.0    /16  100   100     199.45.133.101   3404 3561 3561 4293

7  139.139.0.0    /16  100   100     199.45.133.101   3404 1 1239 568 1913 1569

8  140.140.0.0    /16  100   100     199.45.133.101   3404 1 1239 7170 374

9  141.141.0.0    /16  100   100     199.45.133.101   3404 1 1239 3739 3739 3739

10  142.142.0.0    /16  100   100     199.45.133.101   3404 3561 3561 577 549 808

11  147.147.0.0    /16  100   100     199.45.133.101   3404 3561 3561 5400 2856

12  149.149.0.0    /16  100   100     199.45.133.101   3404 1 1 3749

13  150.150.0.0    /16  100   100     199.45.133.101   3404 3561 3561 3786 6068

14  151.151.0.0    /16  100   100     199.45.133.101   3404 1 1239 174

15  152.152.0.0    /16  100   100     199.45.133.101   3404 1 1 286 1891

16  155.155.0.0    /16  100   100     199.45.133.101   3404 1 701 702 8413 1913 1564

17  158.158.0.0    /16  100   100     199.45.133.101   3404 3561 3561

18  161.161.0.0    /16  100   100     199.45.133.101   3404 1 1239 174

19  164.164.0.0    /16  100   100     199.45.133.101   3404 1 701 7633

20  165.165.0.0    /16  100   100     199.45.133.101   3404 1 701 5713

il comando show può essere richiamato anche con una route specifica, nel qual caso visualizzerà tutti i percorsi di tale route.

BGP 2600>sho bgp ro 129.129.0.0

BGP routing table entry for 129.129.0.0/16

Paths: (in order of preference, best first)

AS path 11129 3404 1239 1673 1133 559

Next hop 198.41.11.1 from peer 198.41.11.17 (RtrID 198.41.11.17)

Origin IGP, localpref 100, weight 100

AS path 12345 11129 3404 1239 1673 1133 559

Next hop 198.41.11.1 from peer 198.41.11.201 (RtrID 198.41.11.201)

Origin IGP, localpref 100, weight 100

Se si immette solo un indirizzo IP, verrà visualizzato il percorso più specifico. Per visualizzare una route meno specifica con lo stesso indirizzo IP, immettere anche la maschera.

Le route BGP vengono visualizzate utilizzando la notazione CIDR: Bit di rete/maschera anziché route/maschera.

La preferenza e il peso possono essere impostati usando le route map BGP. In caso contrario, verranno utilizzati i valori predefiniti di Preferenza locale e Peso.

Viene visualizzato il percorso completo dell'AS, dove l'AS di origine è quello più a destra. Ogni AS che passa il percorso anteporrà il proprio AS all'attributo del percorso AS.

Di seguito è riportato un estratto della tabella di routing IP per il comando show ip routing con route BGP. Per BGP, la metrica è la lunghezza del percorso, come per RIP. La maggior parte delle route BGP è IGP, ovvero ha origine in un protocollo gateway interno. Le altre possibilità sono EGP (exterior gateway protocol) o Incomplete (di solito indica un percorso statico).

bgptest> sho ip ro dynamic bgp

Dynamic Routes:

Destination      Mask     Gateway     Metric   Uses  Type  Src/TTL Interface

3.0.0.0          FF000000 198.41.11.1      5      0   BGP    INC     Ether0

6.0.0.0          FF000000 198.41.11.1      6      0   BGP    INC     Ether0

9.2.0.0          FFFF0000 198.41.11.1      6      0   BGP    IGP     Ether0

9.20.0.0         FFFF8000 198.41.11.1      6      0   BGP    INC     Ether0

12.0.0.0         FF000000 198.41.11.1      5      0   BGP    IGP     Ether0

12.2.97.0        FFFFFF00 198.41.11.1      6      0   BGP    IGP     Ether0

12.2.183.0       FFFFFF00 198.41.11.1      4      0   BGP    IGP     Ether0

12.4.164.0       FFFFFF00 198.41.11.1      5      0   BGP    IGP     Ether0

12.5.164.0       FFFFFF00 198.41.11.1      5      0   BGP    IGP     Ether0

12.5.252.0       FFFFFE00 198.41.11.1      6      0   BGP    IGP     Ether0

12.6.42.0        FFFFFE00 198.41.11.1      6      0   BGP    IGP     Ether0

12.7.214.0       FFFFFE00 198.41.11.1     11      0   BGP    IGP     Ether0

12.8.188.0       FFFFFC00 198.41.11.1      5      0   BGP    IGP     Ether0

12.8.188.0       FFFFFF00 198.41.11.1      5      0   BGP    INC     Ether0

12.8.189.0       FFFFFF00 198.41.11.1      5      0   BGP    INC     Ether0

12.8.191.0       FFFFFF00 198.41.11.1      5      0   BGP    INC     Ether0

12.10.14.0       FFFFFE00 198.41.11.1      5      0   BGP    INC     Ether0

12.10.152.0      FFFFF800 198.41.11.1      5      0   BGP    IGP     Ether0

12.10.231.0      FFFFFF00 198.41.11.1      6      0   BGP    IGP     Ether0

12.11.134.0      FFFFFE00 198.41.11.1      5      0   BGP    IGP     Ether0

Mostra peer BGP

Il comando show bgp peers visualizza i peer BGP configurati del router, con informazioni sul numero AS del peer, l'ID del router, l'indirizzo IP, il numero di socket TCP, lo stato di abilitazione e lo stato di connessione BGP.

bgptest>sho bgp peers

==========================================================================

BGP PEER STATUS

--------------------------------------------------------------------------

Int  AS      Router           IP               TCP     Enable  BGP

Ext  Number  ID               Address          Socket  Status  State

--------------------------------------------------------------------------

Ext  23456   0.0.0.0          198.14.13.18     0       Off     IDLE

Ext  34567   198.41.11.6      198.14.12.6      82      On      ESTABLISHED

Int  11129   0.0.0.0          198.41.11.17     0       Off     IDLE

Int  11129   0.0.0.0          198.41.11.2      0       On      ACTIVE

==========================================================================

Int/Ext indica se si tratta di un peer interno o esterno. (Un peer interno ha lo stesso numero AS del router stesso). Il numero AS del peer è configurato nell'elenco dei peer BGP.

L'ID router non è noto finché il peer non contatta il router, quindi se lo stato di connessione è IDLE, ACTIVE o CONNECT, questo parametro potrebbe essere 0. L'ID router è in genere l'indirizzo IP di una delle interfacce del peer e può essere o non essere lo stesso dell'indirizzo IP.

Lo stato di abilitazione indica se il router accetterà una richiesta di connessione da questo peer. È possibile attivare il peer impostandolo su On nell'elenco dei peer BGP. Inoltre, il peer può essere abilitato o disabilitato dinamicamente dai comandi BGP Peer Enable e BGP Peer Disable. Quando lo stato di abilitazione è Off, lo stato BGP è sempre IDLE.

Gli stati di connessione BGP sono: IDLE, ACTIVE, CONNECT, OPENSENT, OPENCONFIRM e DEFINED. Lo stato di connessione viene stabilito tramite negoziazioni attive tra peer. In stato IDLE, il router non accetterà connessioni dal peer. Questo stato viene immesso per breve tempo dopo il timeout di una connessione, per evitare transizioni verso l'alto e verso il basso troppo rapide dei peer. Nello stato ACTIVE , il router è in ascolto sulla porta del server per le richieste di connessione dal peer. In stato CONNECT, il router ha inviato una richiesta di connessione TCP attiva al peer. Negli stati OPENSENT e OPENCONFIRM, i due peer si scambiano i pacchetti preliminari per stabilire la propria sessione BGP. Se gli scambi avranno successo, i pari entreranno nello stato STABILITO. I peer devono continuare a scambiarsi pacchetti KEEPALIVE periodici per rimanere nello stato stabilito, a meno che il tempo di attesa negoziato sia pari a 0.

BGP comunica con i suoi peer tramite TCP. Pertanto, è possibile ottenere ulteriori informazioni sulle sessioni BGP con il comando "show os tcp". Gli stati TCP non sono gli stessi degli stati BGP, ma sono gli stati TCP standard (LISTEN, SYNSENT, SYNRCVD, DEFINED, FINWAIT1, FINWAIT2, CLOSEWAIT, LASTACK, CLOSING, TIMEWAIT). BGP utilizza la porta 179 per l'ascolto dei tentativi di connessione BGP.

bgptest>sho os tcp

==========================================================================

TCP SESSION INFORMATION

--------------------------------------------------------------------------

Local   Remote  Remote

Num  Session Type      State       Socket  Port    Port    IP Address

--------------------------------------------------------------------------

1  SERVER (TELNET)   LISTEN      80      23      0       0.0.0.0

2  SERVER (BGP)      LISTEN      81      179     0       0.0.0.0

3  ACTIVE (BGP)      ESTABLISH   82      20001   179     198.41.9.2

--------------------------------------------------------------------------

13 free TCBs out of 16.

==========================================================================

Mostra reti BGP

Il comando show bgp networks visualizza l'elenco delle reti interne da annunciare ai peer BGP esterni.

bgptest>sho bgp networks

BGP NETWORKS:  2

Address              Mask

198.41.11.0          255.255.255.0

209.14.128.0         255.255.255.0

Mostra stati BGP

Il comando show bgp stats visualizza le statistiche sui tipi di pacchetto ricevuti e inviati ai peer BGP e il tempo di attività corrente del peer.

BGP Test>sho bgp stats

Received    Sent

Open messages:                         8         58

Keepalive messages:                 4069       4124

Notify messages:                       0          0

BGP External Peer 198.41.11.6 state ESTABLISHED

6 peer sessions, current uptime 2 days 16 hours 40 minutes 19 secs

0 updates received

78791 updates sent, last at 6 secs

BGP Internal Peer 198.41.9.2 state ESTABLISHED

1 peer sessions, current uptime 2 days 20 hours 42 minutes 28 secs

88791 updates received, last at 7 secs

0 updates sent

Mostra timer BGP

Il comando show bgp timers visualizza l'ora corrente in secondi rimasta su ciascun timer associato a ciascun peer. Se il peer è nello stato STABILITO, si tratta del timer KEEPALIVE e del timer HOLD. Se il peer è nello stato ACTIVE, sarà il timer CONNECT. Se il peer è nello stato IDLE ma è abilitato, il timer di abilitazione automatica verrà attivato. Se il peer è INATTIVO e disabilitato, non sarà attivo alcun timer fino all'esecuzione del comando bgp peer enable.

BGP Test>sho bgp timers

======================================================================

BGP TIMERS

----------------------------------------------------------------------

Peer Address     Status    State        Timers

----------------------------------------------------------------------

198.41.9.2       Enabled   ESTABLISHED  Send KEEPALIVE pkt:   2   secs

HOLD timer expires:   121 secs

198.14.13.2      Enabled   ACTIVE       Next CONNECT attempt: 16  secs

199.13.12.3      Enabled   IDLE         AUTO ENABLE:          112 secs

198.41.9.3       Disabled  IDLE         No timers active

======================================================================

Quando un peer è nello stato STABILITO, il timer Keepalive indica per quanti secondi il router invierà un altro pacchetto KEEPALIVE al peer. Il timer di attesa indica quanti secondi mancano alla scadenza del timer di attesa per il peer. Il timer di attesa viene impostato ogni volta che il router riceve un pacchetto UPDATE o KEEPALIVE dal peer. Se il timer di attesa scade, il router dichiara il peer inattivo, passa il peer allo stato IDLE e imposta il timer di abilitazione automatica.

I timer di connessione e abilitazione automatica indicano entrambi quanti secondi rimangono finché il router non tenta nuovamente di contattare il peer. Il timer Connect viene utilizzato quando il peer è nello stato ACTIVE; in questo stato, il router accetterà una richiesta di connessione in ingresso dal peer prima della scadenza del tempo di connessione. Il timer di abilitazione automatica viene utilizzato quando il peer è nello stato IDLE; in questo stato, il router NON accetterà una richiesta di connessione dal peer fino alla scadenza del tempo di abilitazione automatica. Alla scadenza del tempo di abilitazione automatica, il peer tornerà allo stato ATTIVO.

Lo scopo del timer di abilitazione automatica è quello di impedire alle sessioni peer di salire e scendere a una velocità eccessiva. Una volta che una sessione peer è stata interrotta per qualche motivo, il peer viene trattenuto per un breve periodo prima che una nuova sessione sia consentita.

Mostra Mem BGP

Il comando show bgp mem visualizza informazioni dettagliate sull'utilizzo della memoria dinamica per BGP.

BGP Test>sho bgp mem

ROUTING DATABASE DYNAMIC MEMORY USAGE

------------------------------------------------------------

Memory Block        Allocs      Deallocs        Size (bytes)

------------------------------------------------------------

ip radix nodes                                  1976180

ip routing entries                              4332132

bgp ip routes       78709       27149

bgp routes          78717       27157           2062400

bgp int change      0           0               0

bgp aggregates      0           0               0

bgp agg paths       0           0               0

bgp timers          12          0               384

-------------------------------------------------------

Peer 198.41.9.2

bgp path entries    78728       27168           1443680

bgp transmit queues 0           0               0

bgp PA strings      28151       21181           1784320

bgp PA hdr entries  28151       21181           529720

bgp rejected routes 0           0               0

bgp rej entries     0           0               0

bgp history entries 0           0               0

------------------------------------------------------------

Total Size                                      12128816

------------------------------------------------------------

Mostra configurazione BGP

Con questo comando vengono visualizzati l'ID del router, i parametri impostati nella sezione Generale BGP, lo stato di ridistribuzione della route e i parametri di configurazione peer. Notare che l'ID del router per BGP è lo stesso di OSPF, l'indirizzo IP più grande delle interfacce IP del router.

bgptest>sho bgp config

BGPEnabled             Yes

Router ID              205.14.128.2

BGP AS Number          100

BGP Local Preference   100

Use IP Route Filters   Yes

Route Relector Server  No

Redistribute RIP routes into BGP is disabled

Redistribute OSPF routes into BGP is disabled

Redistribute BGP routes into OSPF is disabled

Redistribute BGP routes into RIP is disabled

BGP Peer 205.14.128.1

Configuration ID   1

Startup State      Inactive

AS Number          110

Peer Weight        2000

Next Hop Self      No

Cfg Hold Time      180

Retry Time         45

Use Loopback       No

Advertise Default  Yes

Input Route Map    rmapin

Output Route Map   rmapout

BGP Peer 198.41.11.213

Configuration ID   2

Startup State      Active

AS Number          100

Peer Weight        1000

Next Hop Self      No

Cfg Hold Time      180

Retry Time         65

Use Loopback       No

Advertise Default  No

Input Route Map    None

Output Route Map   None

Lo stato di avvio del peer indica se il router tenterà di stabilire una sessione con il peer all'accensione. Se l'opzione è impostata su Inactive, il peer può essere abilitato con il comando BGP Enable. Tuttavia, il peer sarà nuovamente inattivo al successivo riavvio del router.

Si noti che per il primo peer sono definite route map BGP, a differenza del secondo peer. Poiché Usa filtri route IP è stato impostato su Sì, verranno utilizzati per il secondo peer, ma non per il primo.

Mostra aggregazioni BGP

Il comando show bgp aggregates visualizza le route configurate dall'amministratore per l'aggregazione ai peer esterni. L'aggregazione viene eseguita solo quando un'istanza della route viene visualizzata nella tabella di routing IP.

bgptest>sho bgp agg

BGP AGGREGATES:

195.41.0.0/16

Disabilitazione BGP

Questo comando interrompe una sessione BGP con un peer selezionato o con tutti i peer.

BGP disable all

OR

BGP disable 205.14.128.1

Reimposta peer BGP

Questo comando reimposta una sessione con un peer BGP selezionato o con tutti i peer.

Reset BGP Peer all

OR

Reset BGP Peer 205.14.128.1

Guida rapida BGP

Ecco una configurazione molto semplice per rendere BGP operativo. Si presume che il sistema abbia un solo punto di uscita e che pertanto venga utilizzato un percorso statico predefinito per i pacchetti in uscita.

1. Abilitare BGP e specificare il numero AS nella sezione generale di BGP.

[ BGP General ]

BGPEnabled = On

BGPAS = your AS number

2. Specificare l'indirizzo IP e il numero AS del peer BGP, in questo caso il router BGP dell'ISP.

[ BGP Peer List ]

BGPPeer = On peer IP address peer AS number

3. Specificare un elenco di reti per le reti interne che si desidera annunciare all'esterno dell'AS.

[ BGP Networks ]

LocalNet = first IP address mask

LocalNet = second IP address mask

Opzioni di debug BGP

Per le versioni di codice con debug disponibile, sono disponibili cinque comandi di debug BGP: BGPKT, BGPDB, BGPCON, BGPKEEP e BGPTXQ. BGPPKT fornisce informazioni sullo scambio di pacchetti di aggiornamento BGP. BGPFDB fornisce informazioni sull'aggiornamento del database. BGPCON fornisce informazioni sullo stato delle sessioni BGP con peer. BGPKEEP fornisce informazioni su quando i pacchetti KEEPALIVE sono stati inviati o ricevuti. BGPTXQ fornisce informazioni sull'invio di pacchetti di aggiornamento ai peer in stato STABILITO.

sys debug flags BGPPKT

sys debug flags BGPCON

sys debug flags BGPFDB

sys debug flags BGPKEEP

sys debug flags BGPTXQ

Riferimenti RFC BGP

rfc2283 -- Multiprotocol Extensions for BGP-4.

T. Bates, R. Chandra, D. Katz, Y. Rekhter.

February 1998. (Status: PROPOSED STANDARD)

rfc2042 -- Registering New BGP Attribute Types.

B. Manning.

January 1997. (Status: INFORMATIONAL)

rfc1998 -- An Application of the BGP Community Attribute in

Multi-home Routing.

E. Chen & T. Bates.

August 1996. (Status: INFORMATIONAL)

rfc1997 -- BGP Communities Attribute.

R. Chandra, P. Traina & T. Li.

August 1996. (Status: PROPOSED STANDARD)

rfc1965 -- Autonomous System Confederations for BGP.

P. Traina.

June 1996. (Status: EXPERIMENTAL)

rfc1863 -- A BGP/IDRP Route Server alternative to a full mesh routing.

D. Haskin.

October 1995.   (Status: EXPERIMENTAL)

rfc1774 -- BGP-4 Protocol Analysis.

P. Traina, Editor.

March 1995.   (Status: INFORMATIONAL)

rfc1773 -- Experience with the BGP-4 protocol.

P. Traina.

March 1995.   (Status: INFORMATIONAL)

rfc1771 -- A Border Gateway Protocol 4 (BGP-4).

Y. Rekhter & T. Li.

March 1995. (Status: DRAFT STANDARD)

rfc1745 -- BGP4/IDRP for IP---OSPF Interaction.

K. Varadhan, S. Hares, Y. Rekhter.

December 1994. (Status: PROPOSED STANDARD)

Informazioni correlate

- Documentazione e supporto tecnico – Cisco Systems

- Documentazione di supporto tecnico legacy di Compatible Systems Corporation