De documentatie van dit product is waar mogelijk geschreven met inclusief taalgebruik. Inclusief taalgebruik wordt in deze documentatie gedefinieerd als taal die geen discriminatie op basis van leeftijd, handicap, gender, etniciteit, seksuele oriëntatie, sociaaleconomische status of combinaties hiervan weerspiegelt. In deze documentatie kunnen uitzonderingen voorkomen vanwege bewoordingen die in de gebruikersinterfaces van de productsoftware zijn gecodeerd, die op het taalgebruik in de RFP-documentatie zijn gebaseerd of die worden gebruikt in een product van een externe partij waarnaar wordt verwezen. Lees meer over hoe Cisco gebruikmaakt van inclusief taalgebruik.
Cisco heeft dit document vertaald via een combinatie van machine- en menselijke technologie om onze gebruikers wereldwijd ondersteuningscontent te bieden in hun eigen taal. Houd er rekening mee dat zelfs de beste machinevertaling niet net zo nauwkeurig is als die van een professionele vertaler. Cisco Systems, Inc. is niet aansprakelijk voor de nauwkeurigheid van deze vertalingen en raadt aan altijd het oorspronkelijke Engelstalige document (link) te raadplegen.
Dit document beschrijft het effect van verkeerd geconfigureerd uitgebreide community-attribuut van Router MAC op een ACI-stof wanneer deze wordt ontvangen van een externe BGP-peer (BGP).
Met BGP is er een optie om community- en uitgebreide community-kenmerken te verzenden met de prefixes die worden geadverteerd naar BGP-peers. Deze communautaire eigenschappen staan ons toe om het routing beleid aan te passen en dynamisch de manier te wijzigen waarop het routed verkeer wordt verwerkt.
Wanneer het uitgebreide community-attribuut van Router MAC met een IPv4 AFI-prefix van een externe BGP-peer naar een ACI-stof wordt verzonden, komen FIB- en HAL-misprogrammering voor op elk blad in de stof dat de route van het (de) grensblad(en) via het interne MP-BGP-proces ontvangt. Dit komt doordat het RMAC extcommunity attribuut behoort tot de BGP L2VPN EVPN adresfamilie, en wanneer het wordt geïnjecteerd in de BGP IPv4 adresfamilie, wordt het afgewezen. Dit is te wijten aan een schending van regel 5.2 (Uniform-Propagation-Mode), die wordt beschreven in het IETF-document met de titel "EVPN Interworking with IPVPN". Op bladzijde 15, punt 4c, wordt de specifieke kwestie genoemd:
4. As discussed, Communities, Extended Communities and Large Communities SHOULD be kept by the gateway PE from the originating SAFI route. Exceptions of Extended Communities that SHOULD NOT be kept are:
C. All the extended communities of type EVPN. The gateway PE SHOULD NOT copy the above extended communities from the originating ISF route to the re-advertised ISF route.
Link naar document: EVPN Interworking met IPVPN
Hier is een voorbeeld van het probleem met iBGP, maar het probleem wordt ook gezien met eBGP.
Topologiediagram:
Configureer routekaart op extern BGP-peer-apparaat (router 1) en stel het kenmerk EVPN RMAC extcommunity in:
Router-1# show run | sec route-map
route-map RMAC permit 10
set extcommunity evpn rmac aaaa.bbbb.cccc
Configureer onder de configuratie van de IPv4-adresfamilie van de BGP-buur de uitgebreide BGP-community’s en configureer de routekaart in de uitgaande richting:
Router-1# show run bgp
<output omitted>
feature bgp
router bgp 65001
vrf example
router-id 192.168.20.20
address-family ipv4 unicast
network 192.168.20.0/24
neighbor 192.168.30.30
remote-as 65001
update-source loopback1
address-family ipv4 unicast
send-community extended
route-map RMAC out
Controleer de BGP-status op BL 101:
leaf-101# show ip bgp 192.168.20.0 vrf example:example
BGP routing table information for VRF example:example, address family IPv4 Unicast
BGP routing table entry for 192.168.20.0/24, version 40 dest ptr 0xa0fec840
Paths: (1 available, best #1)
Flags: (0x80c001a 00000000) on xmit-list, is in urib, is best urib route, is in HW, exported
vpn: version 2725, (0x100002) on xmit-list
Multipath: eBGP iBGP
Advertised path-id 1, VPN AF advertised path-id 1
Path type (0xa96485b8): internal 0x18 0x0 ref 0 adv path ref 2, path is valid, is best path
AS-Path: NONE, path sourced internal to AS
192.168.20.20 (metric 5) from 192.168.20.20 (192.168.20.20)
Origin IGP, MED not set, localpref 100, weight 0 tag 0, propagate 0
Extcommunity:
RT:65001:2162688
COST:pre-bestpath:163:1879048192
Router MAC:aaaa.bbbb.cccc
***Notice that the router mac is present here.***
VNID:2162688
VRF advertise information:
Path-id 1 not advertised to any peer
VPN AF advertise information:
Path-id 1 advertised to peers:
10.0.216.65 10.0.216.66
Controleer RIB op CL 102:
leaf-102# show ip route 192.168.20.0 vrf example:example
IP Route Table for VRF "example:example"
'*' denotes best ucast next-hop
'**' denotes best mcast next-hop
'[x/y]' denotes [preference/metric]
'%<string>' in via output denotes VRF <string>
192.168.20.0/24, ubest/mbest: 1/0
*via 10.0.210.70%overlay-1, [200/0], 00:00:43, bgp-65001, internal, tag 65001, rwVnid: vxlan-2162688
recursive next hop: 10.0.210.70/32%overlay-1
***Notice that we have the route here and our next-hop address is correct (showing the TEP IP of BL 101). Also, notice that there is an rwVnid entry here.***
leaf-102# acidiag fnvread | grep 101
101 1 leaf-101 <output omitted> 10.0.210.70/32 leaf active 0
Controleer FIB op CL 102:
module-1(DBG-elam-insel6)# show forwarding route 192.168.20.0 vrf example:example
ERROR: no longest match in IPv4 table 0xf5df36b0
***No entry is present.***
Controleer de HAL tabel op CL 102:
module-1(DBG-elam-insel6)# show platform internal hal l3 routes | grep 192.168.20.0
***No entry is present.***
Pings van EP (Host 1) om in extern netwerk te ontvangen dat van externe BGP-peer komt (192.168.20.20):
Host-1# ping 192.168.20.20 vrf example
PING 192.168.20.20 (192.168.20.20): 56 data bytes
Request 0 timed out
Request 1 timed out
Request 2 timed out
Request 3 timed out
Request 4 timed out
--- 192.168.20.20 ping statistics ---
5 packets transmitted, 0 packets received, 100.00% packet loss
***No connectivity.***
Controleer ELAM op CL 102:
leaf-102# vsh_lc
module-1# debug platform internal roc elam asic 0
module-1(DBG-elam)# trigger reset
module-1(DBG-elam)# trigger init in-select 6 out-select 0
module-1(DBG-elam-insel6)# set outer ipv4 src_ip 192.168.10.10 dst_ip 192.168.20.20
module-1(DBG-elam-insel6)# start
module-1(DBG-elam-insel6)# stat
ELAM STATUS
===========
Asic 0 Slice 0 Status Armed
Asic 0 Slice 1 Status Triggered
module-1(DBG-elam-insel6)# ereport
Python available. Continue ELAM decode with LC Pkg
ELAM REPORT
<output omitted>
------------------------------------------------------------------------------------------------------------------------------------------------------
Lookup Drop
------------------------------------------------------------------------------------------------------------------------------------------------------
LU drop reason : UC_PC_CFG_TABLE_DROP
***Notice the drop vector here.***
De oplossing is om te stoppen met het verzenden van de router MAC uitgebreide community-attribuut met een IPv4 adresfamilie prefix van een externe BGP peer naar een ACI stof.
Verwijder de eerder geconfigureerde routekaart en stop met het verzenden van uitgebreide gemeenschappen van het externe BGP-peer-apparaat (router 1). Het verwijderen van een van deze configuraties, of beide, werkt:
Router-1# show run bgp
Een andere (minder wenselijke) oplossing is om alle gemeenschappen die van het externe BGP peer-apparaat worden ontvangen, eenvoudig uit te filteren door een routekaart te maken in de geconfigureerde L3Out in ACI.
Navigeer naar uw Tenant > Policies > Protocol > Route Maps for Route Control > Create Route Maps for Route Control
:
Geef uw routekaart een naam, schakel de Route-Map Continue
en voeg vervolgens een context toe. Selecteer de +
pictogram in de tabel Contexten:
Geef uw context een naam en laat de standaardactie van Permit
geselecteerd, maak vervolgens een overeenkomstregel door de +
pictogram in het Associated Matched Rules
tabel, en selecteer Create Match Rule for a Route Map
:
Geef uw overeenkomende regel een naam en voeg vervolgens een nieuw prefix toe door het + pictogram te selecteren in het veld Match Prefix
tabel:
Voeg het gewenste voorvoegsel toe. Dit voorbeeld laat zien hoe u een aggregaat van alle prefixes kunt toevoegen:
Nadat u hebt geselecteerd OK
in het Create Match Route Destination Rule
venster, ziet u dat uw prefix is toegevoegd aan Match Prefix
tabel in de Create Match Rule
venster:
Nadat u hebt geselecteerd Submit
in het Create Match Rule
venster selecteert u Update
in het Associated Matched Rules
tabel in de Create Route Control Context
venster:
Uw gekoppelde matchregel wordt nu toegevoegd aan uw context:
Selecteer vervolgens het vervolgkeuzemenu naast Set Rule
en selecteer Create Set Rules for a Route Map
:
Geef de ingestelde regel een naam en selecteer vervolgens de Set Community
optie en laat de standaardcriteria van No community
geselecteerd:
Nadat u Voltooien in de Create Set Rules for a Route Map
venster ziet u de ingestelde regel geselecteerd in de Create Route Control Context
venster:
Nadat u hebt geselecteerd OK
in het Create Route Control Context
venster, ziet u uw context toegevoegd aan Contexts
tabel in de Create Route Maps for Route Control
venster. Selecteer tot slot Submit
Zo voltooit u de configuratie:
Navigeer naar het connectiviteitsprofiel van BGP-peers in de L3Out en selecteer de +
pictogram in het Route Control Profile
tabel, voeg vervolgens uw routekaart toe met de standaardrichting van Route Import Policy
geselecteerd:
Nadat u Update voor de routekaart selecteert, ziet u uw routekaart toegevoegd aan Route Control Profile
tabel:
*Raadpleeg het ACI Fabric L3Out-witboek voor meer informatie over de routekaartconfiguratieopties in ACI
Controleer na het implementeren van een van de bovenstaande oplossingen of het probleem is opgelost.
Controleer de BGP-status op BL 101:
leaf-101# show ip bgp 192.168.20.0 vrf example:example
BGP routing table information for VRF example:example, address family IPv4 Unicast
BGP routing table entry for 192.168.20.0/24, version 46 dest ptr 0xa0fec840
Paths: (1 available, best #1)
Flags: (0x80c001a 00000000) on xmit-list, is in urib, is best urib route, is in HW, exported
vpn: version 2731, (0x100002) on xmit-list
Multipath: eBGP iBGP
Advertised path-id 1, VPN AF advertised path-id 1
Path type (0xa96485b8): internal 0x18 0x0 ref 0 adv path ref 2, path is valid, is best path
AS-Path: NONE, path sourced internal to AS
192.168.20.20 (metric 5) from 192.168.20.20 (192.168.20.20)
Origin IGP, MED not set, localpref 100, weight 0 tag 0, propagate 0
Extcommunity:
RT:65001:2162688
COST:pre-bestpath:163:1879048192
***Notice that no router mac is present here.***
VNID:2162688
VRF advertise information:
Path-id 1 not advertised to any peer
VPN AF advertise information:
Path-id 1 advertised to peers:
10.0.216.65 10.0.216.66
Controleer RIB op CL 102:
leaf-102# show ip route 192.168.20.0 vrf example:example
IP Route Table for VRF "example:example"
'*' denotes best ucast next-hop
'**' denotes best mcast next-hop
'[x/y]' denotes [preference/metric]
'%<string>' in via output denotes VRF <string>
192.168.20.0/24, ubest/mbest: 1/0
*via 10.0.210.70%overlay-1, [200/0], 00:00:06, bgp-65001, internal, tag 65001
recursive next hop: 10.0.210.70/32%overlay-1
***Notice that no rwVnid entry is present here.***
Opmerking: het ontbreken of de aanwezigheid van de rwVnid-vermelding alleen bepaalt niet of het probleem zich voordoet of niet. In veel gevallen wordt de rwVnid-ingang verwijderd van de route in kwestie zodra het probleem is opgelost. Dit is echter niet altijd het geval. Controleer altijd de tabellen FIB en HAL om te controleren of het probleem is opgelost.
Controleer FIB op CL 102:
module-1(DBG-elam-insel6)# show forwarding route 192.168.20.0 vrf example:example
IPv4 routes for table example:example/base
------------------+------------------+----------------------+------------------------
Prefix | Next-hop | Interface/VRF | Additional Info
------------------+------------------+----------------------+------------------------
*192.168.20.0/24 10.0.210.70 overlay-1
***Notice that we have the route here and our next-hop address is correct (showing the TEP IP of BL 101).***
Route Class-id:0x0
Policy Prefix 0.0.0.0/0
leaf-102# acidiag fnvread | grep 101
101 1 leaf-101 10.0.210.70/32 leaf active 0
HAL-tabel op CL 102:
module-1(DBG-elam-insel6)# show platform internal hal l3 routes | grep 192.168.20.0
| 4662| 192.168.20.0/ 24| UC| 686| 20601| TRIE| a5| 5/ 0| 60a5|A| 8443| 86b6| ef5| 1/ 2| a5| 0| 0| f| 3| 0| 0| 1| sc,spi,dpi
***Notice that we have an entry here and it's in the correct VRF.***
module-1(DBG-elam-insel6)# hex 4662
0x1236
module-1(DBG-elam-insel6)# show platform internal hal l3 vrf pi
============================================================================================================
| -- TOR -- | - Spine - | ACL | |
Vrf Hw I I Vrf | SB NB | Proxy ACI | Ing Egr | vpn |
VrfId Name VrfId I S Vnid | BDId BDId | Ou Bd Enc | Lbl Msk Lbl Msk | lbl |
============================================================================================================
26 example:example 1236 0 0 210000 0 0 0 1 0 0 0 0 0
Pings van EP (Host 1) om in extern netwerk te ontvangen dat van externe BGP-peer komt (192.168.20.20):
Host-1# ping 192.168.20.20 vrf example
PING 192.168.20.20 (192.168.20.20): 56 data bytes
64 bytes from 192.168.20.20: icmp_seq=0 ttl=252 time=1.043 ms
64 bytes from 192.168.20.20: icmp_seq=1 ttl=252 time=1.292 ms
64 bytes from 192.168.20.20: icmp_seq=2 ttl=252 time=1.004 ms
64 bytes from 192.168.20.20: icmp_seq=3 ttl=252 time=0.769 ms
64 bytes from 192.168.20.20: icmp_seq=4 ttl=252 time=1.265 ms
--- 192.168.20.20 ping statistics ---
5 packets transmitted, 5 packets received, 0.00% packet loss
round-trip min/avg/max = 0.769/1.074/1.292 ms
***Connectivity is there.***
ELAM op CL 102:
leaf-102# vsh_lc
module-1# debug platform internal roc elam asic 0
module-1(DBG-elam)# trigger reset
module-1(DBG-elam)# trigger init in-select 6 out-select 0
module-1(DBG-elam-insel6)# set outer ipv4 src_ip 192.168.10.10 dst_ip 192.168.20.20
module-1(DBG-elam-insel6)# start
module-1(DBG-elam-insel6)# stat
ELAM STATUS
===========
Asic 0 Slice 0 Status Armed
Asic 0 Slice 1 Status Triggered
module-1(DBG-elam-insel6)# ereport
Python available. Continue ELAM decode with LC Pkg
ELAM REPORT
<output omitted>
------------------------------------------------------------------------------------------------------------------------------------------------------
Lookup Drop
------------------------------------------------------------------------------------------------------------------------------------------------------
LU drop reason : no drop
***Traffic forwards correctly.***
Revisie | Publicatiedatum | Opmerkingen |
---|---|---|
1.0 |
12-Jun-2023 |
Eerste vrijgave |