Dit document beschrijft veel voorkomende problemen die u tegenkomt wanneer u uw huidige Layer 2 (L2) Spanning Tree-netwerken op Cisco IOS®-switches integreert met Cisco Aggregation Services Router (ASR) 9000 Series die Cisco IOS XR uitvoeren.
Cisco IOS-switches die per VLAN Spanning Tree Plus (PVST+)-blokpoorten switch uitvoeren wanneer ze een Bridge Protocol Data Unit (BPDU) met een inconsistente PVID ontvangen. Dit probleem treedt op wanneer een apparaat tussen de switches de IEEE 802.1Q-tags op de PVST+ BPDU's wijzigt of vertaalt.
Wanneer een ASR 9000 L2VPN point-to-point of multipoint service biedt tussen switches die PVST+ gebruiken en de VLAN-tags herschrijft, kunnen deze syslogberichten op de Cisco IOS-gebaseerde switches worden weergegeven:
%SPANTREE-2-RECV_PVID_ERR: Received BPDU with inconsistent
peer vlan id 10 on GigabitEthernet0/10 VLAN20.
%SPANTREE-2-BLOCK_PVID_LOCAL: Blocking GigabitEthernet0/10
on VLAN20. Inconsistent local vlan.
Dit probleem is te wijten aan de PVID-tag die is opgenomen bij de PVST+ BPDU's. Deze tag is ontworpen om foutieve configuraties te detecteren en toevallige loops te voorkomen. Maar in dit scenario wordt elk uiteinde geblokkeerd en kan er geen verkeer passeren.
Hierna volgt een voorbeeld:
Hier vindt u de configuratie voor de ASR 9000 Series (a9k1) configuratie:
2vpn
bridge group bg1
bridge-domain bd1
interface TenGigE0/0/0/0.10
!
interface TenGigE0/0/0/1.20
interface TenGigE0/0/0/0.10 l2transport
encapsulation dot1q 10
rewrite ingress tag pop 1 symmetric
interface TenGigE0/0/0/1.20 l2transport
encapsulation dot1q 20
rewrite ingress tag pop 1 symmetric
Om dit probleem te voorkomen, kunt u de PVST+ BPDU's blokkeren. Deze actie schakelt Spanning Tree uit en kan tot lusvorming leiden als er redundante verbindingen tussen de switches beschikbaar zijn.
De BPDU's zijn geblokkeerd met de BPDU-filterfunctie op de switches. De BPDU filter blokkeert BPDU's in beide richtingen, waardoor Spanning Tree op de poort effectief wordt uitgeschakeld. Het BPDU-filter voorkomt inkomende en uitgaande BPDU. Als u BPDU-filtering op een interface inschakelt, is dit hetzelfde als wanneer u Spanning Tree op de interface uitschakelt, wat kan resulteren in Spanning Tree-loops.
Schakel op switch 1 en switch 2 BPDU-filters in met deze opdracht:
interface TenGigabitEthernet1/2
spanning-tree bpdufilter enable
Dit probleem wordt vermeden als u de ASR9000 configureert om de PVST+ BPDU's te laten vallen. Dit gebeurt met een L2 Ethernet-services toegangslijst om pakketten te weigeren die bestemd zijn voor het PVST+ BPDU MAC-adres.
PVST+ BPDU voor het niet-VLAN 1 (niet-native) VLAN wordt verzonden naar het PVST+ MAC-adres (ook wel het Shared Spanning Tree Protocol [SSTP] MAC-adres, 0100.0cc.cccd genoemd) en getagd met een corresponderende IEEE 802.1Q VLAN-tag.
Deze toegangscontrolelijst (ACL) kan worden gebruikt om de PVST+ BPDU's te blokkeren:
ethernet-services access-list l2acl
10 deny any host 0100.0ccc.cccd
20 permit any any
Pas ACL toe op de interface die als l2transport is geconfigureerd:
interface TenGigE0/0/0/0.10 l2transport
encapsulation dot1q 10
rewrite ingress tag pop 1 symmetric
ethernet-services access-group l2acl ingress
interface TenGigE0/0/0/1.20 l2transport
encapsulation dot1q 20
rewrite ingress tag pop 1 symmetric
ethernet-services access-group l2acl ingress
De ASR 9000 werkt standaard niet met Spanning Tree, zoals de meeste Cisco IOS-switches. In het model Ethernet Virtual Circuit (EVC) is een BPDU gewoon een ander L2 multicast-pakket. Een veel voorkomend probleem is Spanning Tree-inconsistenties als gevolg van meerdere typen STP's die over een ASR 9000-brugdomein lopen. Dit komt op een paar verschillende manieren voor.
Overweeg deze eenvoudige topologie:
Stel dat switch 1 meerdere Spanning Tree (MST) uitvoert en switch 2 PVST+. Als een9k1 geen enkele vorm van Spanning Tree uitvoert, ziet switch 1 dit als een grenspoort. Switch 1 keert terug naar de PVST-modus voor VLAN’s die niet voorkomen in Common Spanning Tree Instance 0 (CST0). Als dit het gewenste ontwerp is, moet u bekend zijn met de MST- en PVST-interactie zoals beschreven in het witboek 802.1s (Understanding Multiple Spanning Tree Protocol).
Ga er nu van uit dat u MST op switch 1 en op de a9k1-interface die naar switch 1 gaat, maar u voert nog steeds PVST+ op switch 2 uit. De PVST+ BPDU's passeren het brugdomein en arriveren bij switch 1. Switch 1 ziet dan zowel MST BPDUs van een9k1 als PVST+ BPDUs van switch 2, die het Overspannen - boom op switch 1 poort veroorzaakt om constant te gaan van het blokkeren naar niet het blokkeren en resulteert in verkeersverlies.
Switch 1 meldt deze syslogs:
%SPANTREE-SP-2-PVSTSIM_FAIL: Superior PVST BPDU received on VLAN 2 port Gi2/13,
claiming root 2:000b.45b7.1100. Invoking root guard to block the port
%SPANTREE-SP-2-ROOTGUARD_BLOCK: Root guard blocking port GigabitEthernet2/13
on MST1.
%SPANTREE-SP-2-ROOTGUARD_UNBLOCK: Root guard unblocking port GigabitEthernet2/13
on MST0.
%SPANTREE-SP-2-PVSTSIM_FAIL: Superior PVST BPDU received on VLAN 2 port Gi2/13,
claiming root 2:000b.45b7.1100. Invoking root guard to block the port
%SPANTREE-SP-2-ROOTGUARD_BLOCK: Root guard blocking port GigabitEthernet2/13
on MST1.
De opdrachtoutput van de show Spanning-Tree Interface toont aan dat de uitvoer voortdurend verandert op het switch 1 Cisco IOS-apparaat:
show spanning-tree interface gig 2/13
Mst Instance Role Sts Cost Prio.Nbr Type
------------------- ---- --- --------- -------- -------
MST0 Desg BKN*20000 128.269 P2p Bound(PVST) *ROOT_Inc
MST1 Desg BKN*20000 128.269 P2p Bound(PVST) *ROOT_Inc
MST2 Desg BKN*20000 128.269 P2p Bound(PVST) *ROOT_Inc
show spanning-tree interface gig 2/13
Mst Instance Role Sts Cost Prio.Nbr Type
------------------- ---- --- --------- -------- ---------
MST0 Desg FWD 20000 128.269 P2p
MST1 Desg FWD 20000 128.269 P2p
MST2 Desg FWD 20000 128.269 P2p
Er zijn drie opties om dit probleem te voorkomen.
Wanneer een switch een Spanning Tree BPDU ontvangt die op dezelfde interface is verzonden, blokkeert het dat VLAN als gevolg van een zelf-loop. Dit is een veel voorkomend probleem wanneer een switch met een trunkpoort is aangesloten op een ASR 9000 router die L2 multipoint services biedt en de ASR 9000 VLAN-tags op de l2transport interfaces in hetzelfde brugdomein niet herschrijft.
Overweeg de zelfde eenvoudige eerder getoonde topologie. Maar nu, om een ontwerpreden op de a9k1, worden meerdere VLAN’s die afkomstig zijn van dezelfde switch-trunkinterface samengevoegd in één brugdomein.
Hier is de a9k1-configuratie:
l2vpn
bridge group bg1
bridge-domain bd1
interface GigabitEthernet0/1/0/31.2
!
interface GigabitEthernet0/1/0/31.3
!
interface GigabitEthernet0/1/0/31.4
!
interface GigabitEthernet0/1/0/32.2
!
interface GigabitEthernet0/1/0/32.3
!
interface GigabitEthernet0/1/0/32.4
interface GigabitEthernet0/1/0/31.2 l2transport
encapsulation dot1q 2
!
interface GigabitEthernet0/1/0/31.3 l2transport
encapsulation dot1q 3
!
interface GigabitEthernet0/1/0/31.4 l2transport
encapsulation dot1q 4
Dit overbrugt VLAN’s 2 tot en met 4 samen in één brugdomein op de a9k1.
Het ASR 9000 EVC model herschrijft geen tags of pop standaard. PVST+ BPDU voor VLAN2 komt binnen op interface gig 0/1/0/31.2 en wordt teruggestuurd op gig 0/1/0/31.3 en gig 0/1/0/31.4. Aangezien de configuratie geen herschrijven van ingress pop actie is, keert de BPDU onveranderd terug. De switch ziet dit als het zijn eigen BPDU terug krijgt, en blokkeert dat VLAN als gevolg van een zelf-lijn.
Het bevel van de show over:spannen-boominterface toont geblokkeerd VLAN:
6504-A#show spanning-tree interface gig 2/13
Vlan Role Sts Cost Prio.Nbr Type
------------------- ---- --- --------- --------
VLAN0002 Desg BLK 4 128.269 self-looped P2p
VLAN0003 Desg BLK 4 128.269 self-looped P2p
VLAN0004 Desg BLK 4 128.269 self-looped P2p
Dit probleem wordt geëlimineerd door het gebruik van de strikte opdracht ethernetegress-filter op de ASR 9000 l2transport interfaces.
Dit is geen aanbevolen ontwerp. Als dit echter het gewenste ontwerp is, kunt u deze oplossing gebruiken om te voorkomen dat de switch de BPDU ontvangt die in dezelfde interface wordt teruggestuurd.
U kunt de ethernetfilter strikte opdracht gebruiken op de a9k1 l2transport interfaces of wereldwijd. Hier is het voorbeeld onder de interface:
interface GigabitEthernet0/1/0/31.2 l2transport
encapsulation dot1q 2
ethernet egress-filter strict
!
interface GigabitEthernet0/1/0/31.3 l2transport
encapsulation dot1q 3
ethernet egress-filter strict
!
interface GigabitEthernet0/1/0/31.4 l2transport
encapsulation dot1q 4
ethernet egress-filter strict
De strikte opdracht ethernetfilter maakt het mogelijk om EFP-filtering (egress Ethernet Flow Point) op de interface toe te passen. Slechts worden de pakketten die de toegang EFP filter op de interface overgaan overgebracht uit deze interface. Andere pakketten worden bij de uitgaande filter gelaten vallen. Dit betekent dat als het pakket dat uitkomt niet het inkapselingsdot 1q etiket aanpast dat op de interface wordt gevormd, dan wordt het niet verzonden.
Revisie | Publicatiedatum | Opmerkingen |
---|---|---|
1.0 |
19-Sep-2013 |
Eerste vrijgave |