4 roteadores, ambiente de laboratório. Tentando filtrar rotas originárias do AS2 (não que alavancem o AS2 como trânsito). O processo que segui é:
Bakers#sh ip bgp regex _2_
BGP table version is 41, local router ID is 33.33.33.33
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete
Network Next Hop Metric LocPrf Weight Path
*> 2.2.2.0/24 192.168.23.2 0 0 2 i
* 4.4.4.0/24 192.168.23.2 0 2 1 i
*> 22.22.22.0/24 192.168.23.2 0 0 2 i
* 44.44.44.0/24 192.168.23.2 0 2 1 i
*> 192.168.12.0 192.168.23.2 0 0 2 i
* 192.168.14.0 192.168.23.2 0 2 1 i
* 192.168.23.0 192.168.23.2 0 0 2 i
Bakers#sh ip bgp regex _2$
BGP table version is 41, local router ID is 33.33.33.33
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete
Network Next Hop Metric LocPrf Weight Path
*> 2.2.2.0/24 192.168.23.2 0 0 2 i
*> 22.22.22.0/24 192.168.23.2 0 0 2 i
*> 192.168.12.0 192.168.23.2 0 0 2 i
* 192.168.23.0 192.168.23.2 0 0 2 i
Neste ponto, estou pensando, OK - tenha o que preciso para criar uma ACL como caminho para filtrar as coisas originárias do AS2, pois a pesquisa de expressões regulares faz check-out de acordo com o acima. Eu crio e aplico o seguinte:
Bakers#sh run | i as-path
ip as-path access-list 10 deny _2$
ip as-path access-list 10 permit .*
router bgp 3
no synchronization
bgp log-neighbor-changes
<truncated>
neighbor 192.168.23.2 remote-as 2
neighbor 192.168.34.4 remote-as 4
neighbor 192.168.34.4 filter-list 10 out
no auto-summary
Eu esperaria que as rotas anunciadas imitassem a saída 'sh ip bgp regex 2 ' da versão anterior (dando-me o resultado desejado), sem as rotas de saída com as rotas 'sh ip bgp regex _2 $'. Infelizmente, recebo isso:
Bakers#sh ip bgp neigh 192.168.34.4 advertised-routes
BGP table version is 41, local router ID is 33.33.33.33
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete
Network Next Hop Metric LocPrf Weight Path
*> 3.3.3.0/24 0.0.0.0 0 32768 i
*> 33.33.33.0/24 0.0.0.0 0 32768 i
*> 192.168.23.0 0.0.0.0 0 32768 i
*> 192.168.34.0 0.0.0.0 0 32768 i
Ele está filtrando todas as rotas originárias do AS1 (o que significa que, a jusante, esse roteador não pode mais usar o AS3 como trânsito para o AS1 - quebrando meu caso de uso). O que estou perdendo aqui?
route-map BLAH permit 10; match as-path 10;
Respostas:
Quais rotas estavam sendo anunciadas antes de adicionar o filtro? Meu BGP está muito enferrujado, mas não me lembro de rotas de publicidade BGP que não estão no FIB (também conhecidas como "melhores".) Assim, as únicas rotas instaladas no AS2 são AS2 de origem ( _2 $ ); as rotas de trânsito ( _2_ ) não estão sendo instaladas e, portanto, não são anunciadas.
fonte