Problema de troca de rota interna do BGP

8

Eu tenho multihoming BGP com dois roteadores Cisco. Cada roteador tem seu próprio ISP e anuncia nosso AS com nossa rede / 24 à Internet.

Meu problema é entre esses dois roteadores:

No roteador A, a tabela de roteamento se parece com:

BGP table version is 9622808, local router ID is 10.100.100.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 1.0.0.0/24       10.100.100.3         10041    150      0 175 15169 i
 *                    192.168.200.1              0             0 800 15169 i

Roteador B, a tabela de roteamento se parece com:

roteador # sh ip bgp

BGP table version is 10261936, local router ID is 192.168.1.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
 *>  1.0.0.0/24       192.168.1.1        10041    150      0 175 15169 i

Roteador A

 
    #sh ip bgp 1.0.0.0
    BGP routing table entry for 1.0.0.0/24, version 9124223
    Paths: (2 available, best #1, table default)
    Multipath: eBGP
     Not advertised to any peer
    Refresh Epoch 1
    175 15169
    10.100.100.3 from 10.100.100.3 (192.168.1.1 )
      Origin IGP, metric 10041, localpref 150, valid, internal, best
      rx pathid: 0, tx pathid: 0x0
    Refresh Epoch 1
    8220 15169
    192.168.200.1 from 192.168.200.1 (212.74.90.252)
      Origin IGP, metric 0, localpref 100, valid, external
      Community: 538770940 538771322
      rx pathid: 0, tx pathid: 0

Roteador B


    #sh ip bgp 1.0.0.0
    BGP routing table entry for 1.0.0.0/24, version 9772009
    Paths: (1 available, best #1, table default)
    Multipath: eBGP
    Advertised to update-groups:
     15
    Refresh Epoch 1
    175 15169
    192.168.1.1 from 192.168.1.1 (38.28.4.10)
      Origin IGP, metric 10041, localpref 150, valid, external, best
      Community: 11424364 11425276
      rx pathid: 0, tx pathid: 0x0


Router B
    #sh ip bgp summary
   Neighbor        V           AS MsgRcvd MsgSent   TblVer  InQ OutQ Up/Down  State/PfxRcd
   10.100.100.2    4        48020  748914 2167278 10705132    0    0 2w4d         3350
   192.168.1.1   4          175 2591251   29738 10705000    0    0 2w4d       509418

Meu problema é que o roteador B tem apenas um Next Hop para o 1.0.0.0/24 (este é um exemplo). Espero que o roteador B tenha outro Next Hop para o roteador A.

O roteador A está mostrando o salto seguinte, conforme o esperado.

Esse problema tem um sério impacto: se perdermos o roteador B como o roteador preferido, perdemos a Internet, pois não é possível rotear o tráfego pelo roteador A.

Hugo
fonte
11
Por favor, considere adicionar mais detalhes . As configurações do roteador A e B, bem como um diagrama que mostra os locais dos pontos seguintes em relação a esses roteadores, ajudariam. Eu confio que você configurou o iBGP entre A e B, não?
Mike Pennington
Ok, eu vou fazer isso o mais rápido possível. Sim, há uma sessão iBGP entre os roteadores. espiar entre dois roteadores parece saudável.
Hugo
2
Você também pode fornecer uma saída de sho ip bgp 1.0.0.0? Gostaria de saber se o RouterA está vendo o caminho do RouterB melhor do que o caminho externo (devido ao pref local) e não anunciando seu outro caminho conhecido para o RouterB. Se isso estiver correto, o roteador A anunciará seu caminho automaticamente se o caminho do roteador B desaparecer.
Ct_fink 6/12/12
O roteador B mostra a rota aprendida do eBGP. O roteador A mostra as rotas aprendidas do iBGP. Você tem o iBGP emparelhando entre seus roteadores eBGP?
Página
11
Dois dias depois, essa pergunta ainda precisa das configurações e do diagrama. Nosso objetivo é agradar ,, mas a especulação não é uma competência essencial aqui
Mike Pennington

Respostas:

1

No seu caso, B não deve ter a rota de A porque o próprio B está declarando sua rota aprendida como a melhor rota e divulgando essas informações via iBGP.

O roteador A não pode anunciar seu eBGP aprendido 1.0.0.0/8 para B porque não é o melhor caminho. A melhor rota para A é a que aprendeu via iBGP das rotas B e iBGP não pode ser anunciada novamente.

Ambos os roteadores eBGP estão aprendendo redes com os dois ISPs. Quando o ISP for B falhar, as rotas A eBGP se tornarão elegíveis para serem enviadas para B.

HTH.

Rais
fonte
11
Seu argumento não parece ser inequivocamente apoiado pela documentação na questão
Mike Pennington
1

Por padrão, todo roteador BGP anuncia apenas suas melhores rotas. Como A prefere a rota de B à rota externa (devido a uma preferência local maior), ele não anuncia a rota externa para B.

O failover funcionará, mas pode demorar um pouco porque: * B precisa revogar suas rotas externas * A precisa selecionar novas melhores rotas * A precisa anunciar novas melhores rotas para B * B precisa selecionar novas melhores rotas

Se você deseja um failover mais rápido, use o "BGP best-external" (ou algo parecido com isso - pesquise best-external em cisco.com) em A.

ioshints
fonte
0

O roteador A não está anunciando essa rota para o roteador B.

Multipath: eBGP
 Not advertised to any peer

O roteador B está anunciando esse roteamento para o roteador A.

 Multipath: eBGP
Advertised to update-groups:
 15

Configure A para anunciar 1.0.0.0 para B via ibgp.

user22609
fonte
-3

Esse é um comportamento normal do BGP de 'ocultação de caminho', um dos recursos herdados para aliviar o problema de dimensionamento. O failover deve funcionar como planejado. Se você precisar que a rota aprendida do roteador A eBGP ainda seja exibida em B, use o comando BGP 'melhor externo' no rourterA (assim como em B).

Ganhou
fonte