Ich habe BGP Multihoming mit zwei Cisco Routern. Jeder Router hat seinen eigenen ISP und meldet unseren AS mit unserem / 24-Netzwerk im Internet an.
Mein Problem liegt zwischen diesen beiden Routern:
Router A, Routing-Tabelle sieht aus wie:
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, Routing-Tabelle sieht aus wie:
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
Mein Problem ist, dass Router B nur einen Next Hop für 1.0.0.0/24 hat (dies ist ein Beispiel). Ich erwarte, dass Router B einen weiteren Next Hop zu Router A hat.
Router A zeigt erwartungsgemäß beide Next Hop an.
Dieses Problem hat schwerwiegende Auswirkungen. Wenn wir Router B als bevorzugten Router verlieren, verlieren wir das Internet, da er den Datenverkehr nicht über Router A weiterleiten kann.
sho ip bgp 1.0.0.0
? Ich frage mich, ob RouterA den Pfad von RouterB als besser als den externen Pfad ansieht (aufgrund lokaler Präferenzen) und seinen anderen bekannten Pfad nicht an RouterB weiterleitet. Wenn dies korrekt ist, gibt RouterA seinen Pfad automatisch bekannt, wenn der RouterB-Pfad nicht mehr angezeigt wird.Antworten:
In Ihrem Fall sollte B keine Route von A haben, da B selbst seine gelernte Route als beste Route deklariert und diese Informationen über iBGP verbreitet.
Router A kann sein eBGP 1.0.0.0/8 nicht an B weitergeben, da dies nicht die beste Route ist. Die beste Route für A ist die, die über iBGP von B gelernt wurde, und iBGP-Routen können nicht erneut angekündigt werden.
Beide eBGP-Router lernen Netzwerke von beiden ISPs. Wenn ISP for B fehlschlägt, können A eBGP-Routen an B gesendet werden.
HTH.
quelle
Standardmäßig kündigt jeder BGP-Router nur seine besten Routen an. Da A die Route von B gegenüber der externen Route bevorzugt (aufgrund höherer lokaler Präferenzen), wird die externe Route nach B nicht angekündigt.
Das Failover funktioniert, kann jedoch eine Weile dauern, weil: * B seine externen Routen widerrufen muss * A neue beste Routen auswählen muss * A neue beste Routen ankündigen muss * B neue neue beste Routen auswählen muss
Wenn Sie ein schnelleres Failover wünschen, verwenden Sie "BGP best-external" (oder etwas in dieser Richtung - suchen Sie auf cisco.com nach best-external) auf A.
quelle
Router A wirbt nicht für diese Route zu Router B.
Router B wirbt für diese Route zu Router A.
Konfigurieren Sie A, um 1.0.0.0 über ibgp für B zu werben.
quelle
Dies ist ein normales BGP-Verhalten beim "Ausblenden von Pfaden", einer der älteren Funktionen, um das Skalierungsproblem zu lösen. Das Failover sollte wie vorgesehen funktionieren. Wenn der Router A eBGP llearned Route weiterhin auf B angezeigt werden soll, verwenden Sie den Befehl 'best-external' BGP auf rourterA (sowie in B).
quelle