Introduzione
Questo documento descrive come utilizzare le espressioni regolari con Border Gateway Protocol (BGP).
Prerequisiti
Requisiti
Cisco raccomanda la conoscenza di questo argomento:
Componenti usati
Il riferimento delle informazioni contenute in questo documento è il software Cisco IOS® versione 12.0.
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
È possibile utilizzare le espressioni regolari nella ip as-path access-list
Border Gateway Protocol (BGP). Per informazioni più generali sulle espressioni regolari, vedere la documentazione di Cisco sulle espressioni regolari. Per ulteriori informazioni sulla configurazione BGP di base, vedere i casi di studio di BGP e configurare una rete BGP di base.
Scenari di rete
Questo è il diagramma di rete a cui si fa riferimento nel presente documento.
Consenti solo alle reti con origine AS 4 di accedere al router 1
Se si desidera che il router 1 riceva solo le route originate da AS 4 (e non le route Internet), è possibile applicare un elenco degli accessi in entrata nel router 1:
ip as-path access-list 1 permit ^4$
router bgp 1
neighbor 10.4.4.4 remote-as 4
neighbor 10.4.4.4 route-map foo in
route-map foo permit 10
match as-path 1
In questo modo, solo le reti originate dall'AS 4 sono consentite nel router 1.
Consenti solo alle reti che hanno superato AS 4 di accedere a AS 3
Se si desidera che solo le reti che hanno attraversato l'AS 4 entrino in AS 3 dal router 3, è possibile applicare un filtro in entrata sul router 3:
ip as-path access-list 1 permit _4_
router bgp 3
neighbor 10.2.2.2 remote-as 1
neighbor 10.2.2.2 route-map foo in
route-map foo permit 10
match as-path 1
È possibile usare un carattere di sottolineatura (_) come stringa di input e come stringa di output nel comando ip as-path access-list.
Nota: in questo esempio, l'ancoraggio (ad esempio, non c'è ^) non viene utilizzato, quindi non importa quali sistemi autonomi arrivano prima e dopo AS 4.
Impedisci a tutte le reti originate in AS 4 di accedere a AS 3 e di consentire a tutte le altre reti
Se si desidera negare tutte le reti che hanno avuto origine in AS 4 e consentire a tutte le altre route di accedere a AS 3 dal router 3, è possibile applicare un filtro in entrata nel router 3:
ip as-path access-list 1 deny _4$
ip as-path access-list 1 permit .*
router bgp 3
neighbor 10.2.2.2 remote-as 1
neighbor 10.2.2.2 route-map foo in
route-map foo permit 10
match as-path 1
Consenti solo alle reti originate da AS 4 e agli AS direttamente collegati a AS 4 di accedere al router 1
Se si desidera che AS 1 ottenga le reti originate da AS 4 e tutte le AS collegate direttamente da AS 4, applicare il filtro in ingresso successivo sul router 1.
ip as-path access-list 1 permit ^4_[0-9]*$
router bgp 1
neighbor 10.4.4.4 remote-as 4
neighbor 10.4.4.4 route-map foo in
route-map foo permit 10
match as-path 1
Nella scheda ip as-path access-list
, il carattere accento circonflesso (^) avvia la stringa di input e designa AS" Il carattere di sottolineatura (_) indica che nella stringa è presente una stringa null che segue AS 4". [0-9]* specifica che qualsiasi AS connesso con un numero AS valido può passare il filtro. Il vantaggio offerto dalla sintassi [0-9]* consiste nella possibilità di aggiungere un numero qualsiasi di AS senza modificare la stringa di comando. Per ulteriori informazioni, vedere Espressione regolare AS.
Informazioni correlate