Introduzione
Questo documento descrive il comportamento del routing nello switch foglia ACI quando riceve la stessa route tramite EIGRP e eBGP.
Prerequisiti
Il lettore deve avere una buona comprensione dei componenti ACI, delle terminologie e delle operazioni insieme ai protocolli di routing (EIGRP & BGP).
Impostazione e topologia
- Questa configurazione è stata eseguita utilizzando 2 fabric ACI diversi collegati come:
- Collegamento diretto tra entrambi gli switch Border Leaf (BGP) DC.
- Esteso tramite rete WAN (EIGRP). SW1 e SW2 sono switch WAN.
2. 192.168.10.0/24 è una subnet ACI interna connessa a Fabric-1 e pubblicizzata a Fabric-2 tramite eBGP e EIGRP.
Dichiarazione di problema
Lo switch Border Leaf Fabric-2 riceve la stessa route tramite EIGRP e eBGP, dove la route eBGP viene installata nella tabella di routing dello switch come previsto. Quando la sessione eBGP termina, le route EIGRP vengono installate nella tabella di routing dello switch. Lo switch conserva la route EIGRP anche quando viene visualizzato eBGP. Ci si aspetta che la route eBGP venga installata nella tabella di routing non appena viene avviata la sessione eBGP, in quanto eBGP ha un valore AD [ 20 ] inferiore a EIGRP [ 90 ].
Riepilogo
- I centri dati Fabric-1 e Fabric-2 sono connessi tramite rete WAN (EIGRP) e collegamento diretto tra entrambi i siti switch BL con eBGP.
- Fabric-1 Border Leaf switch sta pubblicizzando la subnet 192.168.10.0/24 a Fabric-2 tramite eBGP e EIGRP.
- Entrambe le uscite L3 si trovano nello stesso VRF.
- La route BGP viene installata nella tabella di routing dello switch Border Leaf Fabric-2 in base al valore AD.
- Quando una sessione eBGP tra Fabric-1 e Fabric-2 diventa inattiva, il router EIGRP viene installato nella tabella di routing dello switch Fabric-2_BL prevista.
- Quando viene generato eBGP, ci si aspetta che la route eBGP venga reinstallata e che la route EIGRP venga rimossa dalla tabella di routing, il che non si verifica.
- Lo switch Fabric-2 Border Leaf conserva il percorso EIGRP nella relativa tabella di routing.
Risoluzione dei problemi e verifica
- Verificare il vicinato di eBGP tra gli switch Border Leaf Fabric-1 e Fabric-2.
Fabric-2_BL# show bgp sessions vrf snTn:snTn_VRF
Total peers 3, established peers 3
ASN 100
VRF snTn:snTn_VRF, local ASN 100
peers 1, established peers 1, local router-id 172.16.2.100
State: I-Idle, A-Active, O-Open, E-Established, C-Closing, S-Shutdown
Neighbor ASN Flaps LastUpDn|LastRead|LastWrit St Port(L/R) Notif(S/R)
10.10.10.3 65001 2 1d23h |never |never E 179/26051 45/6
- Verificare il vicinato EIGRP a Fabric-2.
Fabric-2_BL# show ip eigrp neighbors vrf snTn:snTn_VRF
EIGRP neighbors for process 500 VRF snTn:snTn_VRF
H Address Interface Hold Uptime SRTT RTO Q Seq
(sec) (ms) Cnt Num
0 10.10.20.3 vlan7 13 2d00h 1 50 0 8
SW-2# show ip eigrp neighbors VRF default
IP-EIGRP neighbors for process 500 VRF default
H Address Interface Hold Uptime SRTT RTO Q Seq
(sec) (ms) Cnt Num
0 10.10.20.2 Vlan776 14 2d00h 6 50 0 9
- Inizialmente, la route BGP viene installata nella tabella di routing e la stessa route è presente nella tabella di topologia EIGRP dello switch Border Leaf Fabric-2.
Fabric-2_BL# show ip route 192.168.10.0/24 vrf snTn:snTn_VRF
IP Route Table for VRF "snTn:snTn_VRF"
'*' denotes best ucast next-hop
'**' denotes best mcast next-hop
'[x/y]' denotes [preference/metric]
'%<string>' in via output denotes VRF <string>
192.168.10.0/24, ubest/mbest: 1/0
*via 10.10.10.3%snTn:snTn_VRF, [20/0], 00:00:17, bgp-100, external, tag 65005
recursive next hop: 10.10.10.3/32%snTn:snTn_VRF
Fabric-2_BL# show ip eigrp topology 192.168.10.0/24 vrf snTn:snTn_VRF
EIGRP (AS 500): VRF: snTn:snTn_VRF , Topology entry for 192.168.10.0/24
State is Passive, Query origin: Local origin, 0 Successor(s), FD is Infinity
Routing Descriptor Blocks:
10.10.20.3(vlan7), from 10.10.20.3
Urib State: in-rib,up-to-date
Composite metric is (128576/128320), Route is Internal
Vector metric:
Minimum bandwidth is 8000000 Kbit
Total delay is 5010 microseconds
Reliability is 255/255
Load is 1/255
Minimum MTU is 1500
Hop count is 1
Internal tag is 0
- Il percorso EIGRP viene installato nella tabella di routing dello switch Border Leaf Fabric-2 quando la sessione eBGP passa tra gli switch Border Leaf Fabric-1 e Fabric-2 e mantiene il percorso EIGRP anche quando viene installato eBGP.
Fabric-2_BL# show ip route 192.168.10.0/24 vrf snTn:snTn_VRF
IP Route Table for VRF "snTn:snTn_VRF
'*' denotes best ucast next-hop
'**' denotes best mcast next-hop
'[x/y]' denotes [preference/metric]
'%<string>' in via output denotes VRF <string>
192.168.10.0/24, ubest/mbest: 1/0
*via 10.10.20.3, vlan7, [90/128576], 2d00h, eigrp-default, internal
- In questo caso ci si aspetta che la route eBGP venga reinstallata nella tabella di routing non appena viene visualizzata la sessione eBGP. Tuttavia, lo switch Fabric-2_BL mantiene solo la route EIGRP.
Perché la route EIGRP è preferita alla route eBGP?
- Quando la sessione eBGP non funziona, lo switch Fabric-2_BL installa la route EIGRP nella tabella di routing e lo stesso viene ridistribuito in MP-BGP per inoltrarlo ad altri switch Leaf di servizio nella Fabric-2.
- Poiché lo switch Fabric-2_BL sta ridistribuendo la route, diventa l'origine della route con il valore di peso predefinito 32768. Mentre, il percorso proveniente da eBGP mantiene il peso 0.
- Poiché si preferisce un peso maggiore, lo switch Fabric-2_BL considera la route ridistribuita come la migliore e non installa la route eBGP.
- L'output mostrato di seguito è quello relativo al riavvio della sessione eBGP.
Fabric-2_BL# show ip bgp 192.168.10.0/24 vrf snTn:snTn_VRF
BGP routing table information for VRF snTn:snTn_VRF, address family IPv4 Unicast
BGP routing table entry for 192.168.10.0/24, version 28 dest ptr 0xa0fe0328
Paths: (2 available, best #1)
Flags: (0x80c0002 00000000) on xmit-list, is not in urib, exported
vpn: version 371, (0x100002) on xmit-list
Multipath: eBGP iBGP
Advertised path-id 1, VPN AF advertised path-id 1
Path type (0xa961d880): redist 0x408 0x1 ref 0 adv path ref 2, path is valid, is best path
AS-Path: NONE, path locally originated
Tx Domain path attribute Flag 0xc0,Code 36, Length 8, segment length 1
domain path: { <1:5345:128>}
0.0.0.0 (metric 0) from 0.0.0.0 (172.16.0.10)
Origin incomplete, MED 128576, localpref 100, weight 32768 tag 0, propagate 0
Extcommunity:
RT:100:2129921
VNID:2129921
COST:pre-bestpath:128:128576
COST:pre-bestpath:162:90
0x8800:32768:0 (Flags = 32768, Tag = 0)
0x8801:500:128256 (ASN = 500, Delay = 128256)
0x8802:65281:320 (Reliability = 255, Hop = 1, Bandwidth = 320)
0x8803:1:1500 (Reserve = 0, Load = 1, MTU = 1500)
0x8804:0:0 (Remote ASN = 0, Remote ID = 0)
0x8805:0:0 (Remote Prot = 0, Remote Metric = 0)
VPN AF advertised path-id 2
Path type (0xa961e0bc): external 0x28 0x0 ref 0 adv path ref 1, path is valid, not best reason: Weight
AS-Path: 65001 , path sourced external to AS
Source Domain: <1:16:128>
Tx Domain path attribute Flag 0xc0,Code 36, Length 15, segment length 2
domain path: { <1:5345:128>,<1:16:128>}
10.10.10.3 (metric 0) from 10.10.10.3 (172.16.1.100)
Origin IGP, MED not set, localpref 100, weight 0 tag 0, propagate 0
Extcommunity:
RT:100:2129921
VNID:2129921
VRF advertise information:
Path-id 1 not advertised to any peer
VPN AF advertise information:
Path-id 1 advertised to peers:
10.0.152.65 10.0.152.66
Path-id 2 not advertised to any peer
Soluzione
Per risolvere il problema, è possibile procedere in due modi:
- LPM è una delle soluzioni disponibili:
- Annunciare la stessa subnet con la maschera /23 in EIGRP e la maschera /24 tramite eBGP in modo che entrambe le route siano presenti nella tabella di routing dello switch Fabric-2_BL.
SW-2# show run interface vlan 776
!Command: show running-config interface Vlan776
!Time: Sun Jun 23 06:30:43 2024
version 7.0(3)I7(5) Bios:version 07.66
interface Vlan776
no shutdown
ip address 10.10.20.3/24
ip router eigrp 500
ip summary-address eigrp 500 192.168.10.0/23 >>>>>> Advertised /23 via EIGRP
Fabric-2_BL# show ip route vrf snTn:snTn_VRF
IP Route Table for VRF "snTn:snTn_VRF"
'*' denotes best ucast next-hop
'**' denotes best mcast next-hop
'[x/y]' denotes [preference/metric]
'%<string>' in via output denotes VRF <string>
192.168.10.0/23, ubest/mbest: 1/0
*via 10.10.20.3, vlan20, [90/128576], 00:24:11, eigrp-default, internal >>>>>>>>> EIGRP Route
192.168.10.0/24, ubest/mbest: 1/0
*via 10.10.10.3%snTn:snTn_VRF, [20/0], 00:04:12, bgp-100, external, tag 65005 >>>>>>>> BGP Route
b. Quando la sessione eBGP non funziona, la route EIGRP è ancora presente nella tabella di routing per la ridondanza.
c. Non appena viene visualizzata la sessione BGP, la route BGP viene reinstallata nella tabella di routing e preferita per l'inoltro del traffico.
- Applicazione del peso sulla route eBGP:
- Se è necessario pubblicizzare la subnet con la stessa subnet mask sia tramite EIGRP che BGP, è possibile applicare un peso maggiore (rispetto a 32768) alla route eBGP in modo che sia sempre la route preferita.
- Come applicare il peso su ACI:
- Creare criteri di route-map.
Tenant —> Policies —> Route Maps for Route Control (Fare clic con il pulsante destro del mouse e creare un nuovo criterio, compilare tutti i dettagli richiesti)—> Create "Set Rule" policy —> Select "Weight" attribute policy and enter value
ii. Applica la mappa del percorso a L3Out:
Tenant —> Networking —> L3Out —> Logical Node Profiles —> Node Profile —> Logical Interface Profile —> Interface Profile —> Peer Profile —> Fare clic su "+" in "Route Control Profile" e selezionare la nuova Route Map creata
Fabric-2_BL# show ip bgp 192.168.10.0/24 vrf snTn:snTn_VRF
BGP routing table information for VRF snTn:snTn_VRF, address family IPv4 Unicast
BGP routing table entry for 192.168.10.0/24, version 61 dest ptr 0xa0fa3f70
Paths: (1 available, best #1)
Flags: (0x80c001a 00000000) on xmit-list, is in urib, is best urib route, is in HW, exported
vpn: version 79, (0x100002) on xmit-list
Multipath: eBGP iBGP
Advertised path-id 1, VPN AF advertised path-id 1
Path type (0xa95a2d5c): external 0x28 0x0 ref 0 adv path ref 2, path is valid, is best path
AS-Path: 65005 65001 , path sourced external to AS
Source Domain: <1:16:128>
Tx Domain path attribute Flag 0xc0,Code 36, Length 15, segment length 2
domain path: { <1:5345:128>,<1:16:128>}
10.10.10.3 (metric 0) from 10.10.10.3 (172.16.0.10)
Origin IGP, MED not set, localpref 100, weight 32769 tag 0, propagate 0
Extcommunity:
RT:100:2129921
VNID:2129921
VRF advertise information:
Path-id 1 not advertised to any peer
VPN AF advertise information:
Path-id 1 advertised to peers:
10.0.152.65 10.0.152.66
c. Il problema è che la route EIGRP ridistribuita non è visibile nella tabella BGP quando la sessione BGP è attiva. Motivo: FD è impostato su Infinito per route esterna EIGRP.
Fabric-2_BL# show ip eigrp topology vrf snTn:snTn_VRF
EIGRP Topology Table for AS(500)/ID(172.16.2.100) VRF snTn:snTn_VRF
Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply,
r - reply Status, s - sia Status
P 192.168.10.0/24, 0 Successors, FD is Infinity
via 10.10.20.3(128576/128320), vlan20
d. Il messaggio "DF è infinito" è in realtà un indicatore all'interno dell'EIGRP che la RIB ha rifiutato la route a causa di una route a distanza di amministrazione inferiore già presente.
e. La route EIGRP viene ridistribuita solo in MP-BGP e installata nella tabella di routing dello switch fabric-2_BL quando la sessione BGP non funziona.
Fabric-2_BL# show ip bgp summary vrf snTn:snTn_VRF
BGP summary information for VRF snTn:snTn_VRF, address family IPv4 Unicast
BGP router identifier 172.16.2.100, local AS number 100
BGP table version is 65, IPv4 Unicast config peers 1, capable peers 0
6 network entries and 6 paths using 1248 bytes of memory
BGP attribute entries [4/704], BGP AS path entries [0/0]
BGP community entries [0/0], BGP clusterlist entries [2/8]
Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd
10.10.10.3 4 65001 18530 18554 0 0 0 00:04:25 Idle
Fabric-2_BL# show ip eigrp topology vrf snTn:snTn_VRF
IP-EIGRP Topology Table for AS(500)/ID(172.16.2.100) VRF snTn:snTn_VRF
Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply,
r - reply Status, s - sia Status
P 192.168.10.0/24, 1 successors, FD is 128576
via 10.10.20.3 (128576/128320), Vlan20
Fabric-2_BL# show ip route vrf snTn:snTn_VRF
IP Route Table for VRF "snTn:snTn_VRF"
'*' denotes best ucast next-hop
'**' denotes best mcast next-hop
'[x/y]' denotes [preference/metric]
'%<string>' in via output denotes VRF <string>
192.168.10.0/24, ubest/mbest: 1/0
*via 10.10.20.3, Vlan20, [90/128576], 02:31:52, eigrp-default, internal >>>>>>> EIGRP Route
Fabric-2_BL# show ip bgp 192.168.10.0/24 vrf snTn:snTn_VRF
BGP routing table information for VRF snTn:snTn_VRF, address family IPv4 Unicast
BGP routing table entry for 192.168.10.0/24, version 65 dest ptr 0xa0fa3f70
Paths: (1 available, best #1)
Flags: (0x80c0002 00000000) on xmit-list, is not in urib, exported
vpn: version 83, (0x100002) on xmit-list
Multipath: eBGP iBGP
Advertised path-id 1, VPN AF advertised path-id 1
Path type (0xa95a2c64): redist 0x408 0x1 ref 0 adv path ref 2, path is valid, is best path
AS-Path: NONE, path locally originated
Tx Domain path attribute Flag 0xc0,Code 36, Length 8, segment length 1
domain path: { <1:5345:128>}
0.0.0.0 (metric 0) from 0.0.0.0 (172.16.0.10)
Origin incomplete, MED 128576, localpref 100, weight 32768 tag 0, propagate 0
Extcommunity:
RT:100:2129921
VNID:2129921
COST:pre-bestpath:128:128576
COST:pre-bestpath:162:90
0x8800:32768:0 (Flags = 32768, Tag = 0)
0x8801:500:128256 (ASN = 500, Delay = 128256)
0x8802:65281:320 (Reliability = 255, Hop = 1, Bandwidth = 320)
0x8803:1:1500 (Reserve = 0, Load = 1, MTU = 1500)
0x8804:0:0 (Remote ASN = 0, Remote ID = 0)
0x8805:0:0 (Remote Prot = 0, Remote Metric = 0)
VRF advertise information:
Path-id 1 not advertised to any peer
VPN AF advertise information:
Path-id 1 advertised to peers:
10.0.152.65 10.0.152.66