Problema di scambio di rotta BGP interno


8

Ho il multihoming BGP con due router Cisco. Ogni router ha il proprio ISP e annuncia il nostro AS con la nostra rete / 24 a Internet.

Il mio problema è tra quei due router:

Router A, la tabella di routing è simile a:

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

Router B, la tabella di routing è simile a:

router # 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

Router 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

Router 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

Il mio problema è che il router B ha un solo hop successivo per 1.0.0.0/24 (questo è un esempio). Mi aspetto che il router B abbia un altro hop successivo al router A.

Il router A mostra entrambi l'hop successivo come previsto.

Questo problema ha un grave impatto, se perdiamo il router B come router preferito perdiamo Internet, poiché non è in grado di instradare il traffico attraverso il router A.


1
Si prega di considerare l'aggiunta di maggiori dettagli . Le configurazioni del router A e B, così come un diagramma che mostra le posizioni dei nexthops relative a quei router sarebbe di aiuto. Confido che tu abbia installato iBGP tra A e B, no?
Mike Pennington,

Ok lo farò al più presto. Sì, esiste una sessione iBGP tra i router. il peering tra due router sembra comunque salutare.
Hugo,

2
Potresti fornire anche un output di sho ip bgp 1.0.0.0? Mi chiedo se RouterA sta vedendo il percorso di RouterB migliore del suo percorso esterno (a causa del pref locale) e non pubblicizzando l'altro percorso noto su RouterB. Se questo è corretto, RouterA pubblicizzerà automaticamente il suo percorso se il percorso RouterB scompare.
cpt_fink,

Il router B mostra il percorso appreso di eBGP. Il router A mostra i percorsi appresi iBGP. Hai il peering iBGP tra i tuoi router eBGP?
Rais,

1
2 giorni dopo, questa domanda ha ancora bisogno delle configurazioni e del diagramma. Il nostro obiettivo è di piacere, ma la speculazione non è una competenza fondamentale qui
Mike Pennington

Risposte:


1

Nel tuo caso, B non dovrebbe avere un percorso da A perché B stesso sta dichiarando il suo percorso appreso come il percorso migliore e diffondendo queste informazioni tramite iBGP.

Il router A non può pubblicizzare la sua eBGP appresa 1.0.0.0/8 su B perché non è il percorso migliore. Il percorso migliore per A è quello che ha appreso tramite iBGP da B e i percorsi iBGP non possono essere ripubblicati.

Entrambi i router eBGP stanno imparando reti da entrambi gli ISP. Quando l'ISP per B fallisce, le rotte A eBGP potranno essere inviate a B.

HTH.


1
La tua tesi non sembra essere sostenuta in modo inequivocabile dalla documentazione nella domanda
Mike Pennington,

1

Per impostazione predefinita, ogni router BGP pubblicizza solo i percorsi migliori. Poiché A preferisce il percorso da B rispetto al percorso esterno (a causa di una preferenza locale più elevata), non pubblicizza il percorso esterno verso B.

Il failover funzionerà, ma potrebbe richiedere del tempo perché: * B deve revocare i suoi percorsi esterni * A deve selezionare i nuovi percorsi migliori * A deve pubblicizzare i nuovi percorsi migliori verso B * B deve selezionare i nuovi percorsi migliori

Se si desidera un failover più veloce, utilizzare "BGP best-external" (o qualcosa del genere - cercare best-external su cisco.com) su A.


0

Il router A non sta pubblicizzando quel percorso verso il router B.

Multipath: eBGP
 Not advertised to any peer

Il router B sta pubblicizzando quel percorso verso il router A.

 Multipath: eBGP
Advertised to update-groups:
 15

Configurare A per pubblicizzare 1.0.0.0 su B tramite ibgp.


-3

Questo è un normale comportamento BGP di "nascondere il percorso", una delle funzionalità legacy per allentare il problema del ridimensionamento. Il failover dovrebbe funzionare come previsto. Se hai bisogno che il routerIl percorso imparato eBGP sia ancora visualizzato su B, usa il comando BGP "best-external" su rourterA (così come in B).

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.