Introdução
Este documento descreve qual é a falha RIB no BGP (Border Gateway Protocol) e o uso do comando bgp suppress-inactive
.
Pré-requisitos
Requisitos
A Cisco recomenda ter conhecimento deste tópico:
- Protocolo de gateway de borda (BGP)
Componentes Utilizados
As informações neste documento são baseadas em um Cisco Router com Cisco IOS® versão 15.6(2).
As informações neste documento foram criadas a partir de dispositivos em um ambiente de laboratório específico. Todos os dispositivos utilizados neste documento foram iniciados com uma configuração (padrão) inicial. Se a rede estiver ativa, certifique-se de que você entenda o impacto potencial de qualquer comando.
Falha RIB de BGP
Quando um Roteador recebe um pacote BGP UPDATE que contém Network Layer Reachability Information (NLRI) - isto é, uma rota; o pacote é processado na próxima ordem:
Etapa 1. O BGP verifica o NLRI (prefixo recebido) em relação a qualquer filtro de entrada BGP configurado no Roteador.
Etapa 2. Se o NLRI não for filtrado, o prefixo pode ser visto na tabela BGP com o comando show ip bgp
comando.
Etapa 3. Se a tabela de roteamento já tiver a mesma entrada de prefixo/tamanho do prefixo com uma distância administrativa (AD) menor, como visto na show ip bgp
, o BGP marca a rota recebida com RIB-Failure.
Observação: para obter mais detalhes sobre a Etapa 2, consulte a seção "Por que os roteadores ignoram caminhos" no documento Algoritmo de seleção de melhor caminho BGP.
Observação: este documento utiliza os termos NLRI, prefixo e rota de forma intercambiável.
Neste exemplo, as rotas 10.10.1.1/32 e 10.10.3.3/32 são recebidas via BGP e instaladas na Tabela de Roteamento.
As saídas mostram ambas as rotas na tabela BGP com o uso do comando show ip bgp
:
Router |
Router#show ip bgp
BGP table version is 5, local router ID is 10.2.3.2
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter,
x best-external, a additional-path, c RIB-compressed,
Origin codes: i - IGP, e - EGP, ? - incomplete
RPKI validation codes: V valid, I invalid, N Not found
Network Next Hop Metric LocPrf Weight Path
*>i 10.10.1.1/32 10.1.2.1 0 100 0 i
*> 10.10.3.3/32 10.2.3.3 0 0 2 i
Router# |
A tabela de roteamento mostra ambas as rotas com o comando show ip route bgp
:
Router |
Router#show ip route bgp
Codes: L - local, C - connected, S - static, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2, m - OMP
n - NAT, Ni - NAT inside, No - NAT outside, Nd - NAT DIA
i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
ia - IS-IS inter area, * - candidate default, U - per-user static route
H - NHRP, G - NHRP registered, g - NHRP registration summary
o - ODR, P - periodic downloaded static route, l - LISP
a - application route
+ - replicated route, % - next hop override, p - overrides from PfR
& - replicated local route overrides by connected
Gateway of last resort is not set
10.0.0.0/8 is variably subnetted, 6 subnets, 2 masks
B 10.10.1.1/32 [200/0] via 10.1.2.1, 00:05:23
B 10.10.3.3/32 [20/0] via 10.2.3.3, 00:01:46 |
Um exemplo de falha de RIB pode ser visto com as Rotas Estáticas configuradas para os mesmos prefixos, já que elas têm precedência sobre o BGP na Tabela de Roteamento devido a um AD mais baixo.
Observação: a distância administrativa (AD) das rotas estáticas é 1. O AD de rotas iBGP é 200. O AD de rotas eBGP é 20. Em caso de empate, as rotas aprendidas através do protocolo com o menor valor AD são selecionadas e instaladas na Tabela de Roteamento.
As saídas mostram rotas estáticas adicionadas à configuração e como elas substituem as rotas BGP na tabela de roteamento:
Router |
Router#show running-config | include ip route
ip route 10.10.1.1 255.255.255.255 Null0
ip route 10.10.3.3 255.255.255.255 Null0
Router#
Router#show ip route static
Codes: L - local, C - connected, S - static, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2, m - OMP
n - NAT, Ni - NAT inside, No - NAT outside, Nd - NAT DIA
i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
ia - IS-IS inter area, * - candidate default, U - per-user static route
H - NHRP, G - NHRP registered, g - NHRP registration summary
o - ODR, P - periodic downloaded static route, l - LISP
a - application route
+ - replicated route, % - next hop override, p - overrides from PfR
& - replicated local route overrides by connected
Gateway of last resort is not set
10.0.0.0/8 is variably subnetted, 6 subnets, 2 masks
S 10.10.1.1/32 is directly connected, Null0
S 10.10.3.3/32 is directly connected, Null0 Router# |
O BGP marca suas rotas com um r na tabela BGP que mostra que elas estão em estado de falha RIB. Isso ocorre porque as rotas recebidas via BGP não estão na tabela de roteamento.
Router |
Router#show ip bgp
BGP table version is 5, local router ID is 10.2.3.2
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter,
x best-external, a additional-path, c RIB-compressed,
Origin codes: i - IGP, e - EGP, ? - incomplete
RPKI validation codes: V valid, I invalid, N Not found
Network Next Hop Metric LocPrf Weight Path
r>i 10.10.1.1/32 10.1.2.1 0 100 0 i
r> 10.10.3.3/32 10.2.3.3 0 0 2 i
Router#
|
O Comando bgp suppress-inative
É importante mencionar que o BGP ainda anuncia redes no estado RIB-Failure nos Cisco Routers que executam o Cisco IOS.
Observação: o EIGRP não anuncia rotas que não estão instaladas na Tabela de Roteamento. Eles são marcados como Zero Successor na tabela de topologia do EIGRP.
O comando bgp suppress-inactive
modifica esse comportamento para interromper o anúncio dos prefixos que estão no estado RIB-Failure.
Observação: somente as redes na condição RIB-Failure que têm um próximo salto no BGP diferente de sua mesma entrada na tabela de roteamento são suprimidas com o comando bgp suppress-inactive
comando.
Configuração
Diagrama de Topologia de Rede
No Roteador R2, as rotas são mostradas na tabela BGP na condição RIB-Failure:
R2 |
R2#show ip bgp
BGP table version is 14, local router ID is 10.2.3.2
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter,
x best-external, a additional-path, c RIB-compressed,
Origin codes: i - IGP, e - EGP, ? - incomplete
RPKI validation codes: V valid, I invalid, N Not found
Network Next Hop Metric LocPrf Weight Path
r>i 10.10.1.1/32 10.1.2.1 0 100 0 i
r> 10.10.3.3/32 10.2.3.3 0 0 2 i
R2# |
O motivo é que as rotas estáticas estão configuradas:
R2 |
R2#show running-config | include ip route
ip route 10.10.1.1 255.255.255.255 10.1.2.254
ip route 10.10.3.3 255.255.255.255 10.2.3.3
R2# |
- A Rota Estática para 10.10.1.1/32 define um próximo salto para 10.1.2.254, que difere do próximo salto recebido via BGP, que é 10.1.2.1.
- A Rota Estática para 10.10.3.3/32 define um próximo salto que é igual ao próximo salto recebido via BGP, que é 10.2.3.3.
O comando show ip bgp rib-failure
Você pode informar sobre o próximo salto que corresponde ou não entre as rotas em BGP RIB-Failure e Routing Table conforme visto na coluna RIB-NH Matches.
R2 |
R2#show ip bgp rib-failure
Network Next Hop RIB-failure RIB-NH Matches
10.10.1.1/32 10.1.2.1 Higher admin distance No
10.10.3.3/32 10.2.3.3 Higher admin distance Yes
R2# |
Na ausência de bgp suppress-inactive
, mesmo no estado RIB-Failure, o R2 continua a anunciar ambas as redes ao Roteador R4 via BGP, já que esse é o comportamento padrão.
No Roteador R4, você pode ver que ambas as rotas são recebidas via BGP:
R4 |
R4#show ip bgp
BGP table version is 3, local router ID is 10.2.4.4
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter,
x best-external, a additional-path, c RIB-compressed,
Origin codes: i - IGP, e - EGP, ? - incomplete
RPKI validation codes: V valid, I invalid, N Not found
Network Next Hop Metric LocPrf Weight Path
*> 10.10.1.1/32 10.2.4.2 0 1 i
*> 10.10.3.3/32 10.2.4.2 0 1 2 i
R4# |
Com bgp suppress-inactive
adicionado à configuração BGP no roteador R2, as rotas no estado RIB-Failure e com as correspondências RIB-NH definidas como No não são mais anunciadas:
R2 |
R2#show running-config partition router bgp 1
!
router bgp 1
bgp suppress-inactive
. . .
|
A próxima saída mostra que o Roteador R4 não recebe a rota 10.10.1.1/32 via BGP, já que o Roteador R2 não a anuncia mais.
R4 |
R4#show ip bgp BGP table version is 4, local router ID is 10.2.4.4 Status codes: s suppressed, d damped, h history, * valid, > best, i - internal, r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter, x best-external, a additional-path, c RIB-compressed, Origin codes: i - IGP, e - EGP, ? - incomplete RPKI validation codes: V valid, I invalid, N Not found
Network Next Hop Metric LocPrf Weight Path *> 10.10.3.3/32 10.2.4.2 0 1 2 i R4# |
Por meio deste exemplo, foi demonstrado que, por padrão, o BGP continua a anunciar rotas na condição RIB-Failure. Essas são rotas recebidas via BGP e que não estão instaladas na Tabela de Roteamento.
O bgp suppress-inactive
está disponível para modificar esse comportamento.
Informações Relacionadas