Difference between revisions of "Cisco MST"

From HackerNet
Jump to: navigation, search
m
Line 1: Line 1:
Multiple Spanning Tree Protocol, IEEE 802.1s, använder algoritm Rapid ST och konvergerar snabbt. Man kan konfigurera så många topologier som man vill ha. Alla VLAN som inte specificeras i någon instans hamnar i instans 0 som default. Se även [[Cisco_STP|Cisco STP]].
+
Multiple Spanning Tree Protocol, IEEE 802.1s, använder algoritm Rapid ST och konvergerar snabbt. Man kan konfigurera så många topologier som man vill ha. Alla VLAN som inte specificeras i någon instans hamnar i instans 0 som default. Pathcost method behöver inte konfigureras utan operational value är alltid long till skillnad från andra STP-varianter. Se [[Cisco_STP|Cisco STP]]. MST-konfiguration går även att distribuera med hjälp av [[Cisco_VTP#VTPv3|VTPv3]].
  
 
Följande element måste vara identiska på alla switchar:
 
Följande element måste vara identiska på alla switchar:
Line 6: Line 6:
 
* instances
 
* instances
  
=IOS=
+
=Konfiguration=
Konfiguration
+
spanning-tree extend system-id
 
  spanning-tree mode mst
 
  spanning-tree mode mst
spanning-tree extend system-id
 
 
  spanning-tree mst configuration
 
  spanning-tree mst configuration
   name DC1
+
   name Site1
 
   revision 1
 
   revision 1
 
   instance 1 vlan 1-2000
 
   instance 1 vlan 1-2000
Line 23: Line 22:
 
  show spanning-tree mst
 
  show spanning-tree mst
 
  show spanning-tree mst interface
 
  show spanning-tree mst interface
 +
 +
Mappa alla secondary vlan till samma MST-instans som deras primary VLAN befinner sig i, se även [[Cisco_VLAN#Private_VLAN|Private VLAN]].
 +
spanning-tree mst configuration
 +
  private-vlan synchronize
 +
 +
MST började implementeras av tillverkarna innan standarden var helt spikad vilket man bör tänka på om man kör gamla enheter. Dock säger standarden att pre-standard MST-grannar måste kunna upptäckas automatiskt av kompabilitetsskäl. I normalfallet märker man ingenting men om grannen är tyst, t.ex. en root port, kan man slå på det per interface.
 +
interface gi0/7
 +
  spanning-tree mst pre-standard
  
 
=NX-OS=
 
=NX-OS=
Line 37: Line 44:
 
  spanning-tree loopguard default
 
  spanning-tree loopguard default
  
=Tillägg=
+
=Extensions=
Se [[Cisco_STP#Tillägg|STP]].
+
Det finns många tillägg till spanning-tree som kan öka stabilitet och säkerhet. Dessa agerar fristående från varandra förutom att de går att konfigurera ihop. Detta är tillägg för protokoll som kör Rapid ST.
 +
 
 +
===PortFast===
 +
Med PortFast definierar man edge ports, dessa går direkt till forwarding när de kommer upp och inget topology change event genereras. En edge port skickar ut BDPUer men förväntar sig inga tillbaks. Om det kommer in en BPDU slutar porten vara edge port och återgår till normal tills interfacet går down/up. Används för anslutningar ut till servrar och andra end hosts. Ibland är PortFast ett måste pga att DHCP hinner timea ut innan porten blivit forwarding.
 +
 
 +
Globalt, aktiveras på alla portar i operational state: access
 +
spanning-tree portfast default
 +
Per interface, on/off
 +
spanning-tree portfast
 +
spanning-tree portfast disable
 +
Verify
 +
show spanning-tree interface gi0/10 portfast
 +
Vill man ha portfast på en trunk måste man ställa det per interface
 +
spanning-tree portfast trunk
 +
Kör aldrig portfast mot andra switchar! MST och RSTP har tekniker för att vara snabba ändå.
 +
 
 +
===BPDU Guard===
 +
Error disable interface om det kommer en BPDU.
 +
 
 +
Globalt, skyddar alla PortFast-portar
 +
spanning-tree bpduguard default
 +
Per interface, on/off
 +
spanning-tree bpduguard enable
 +
spanning-tree bpduguard disable
 +
Auto recovery
 +
errdisable recovery cause bpduguard
 +
 
 +
===Root Guard===
 +
Skydda så att ingen annan än den enhet man själv har konfigurerat kan bli root genom att ignorera superior BPDUer som kommer in på portar med Root Guard påslaget. Om det kommer in en superior BPDU så hamnar porten i root-inconsistent blocking state och frames varken forwardas eller tas emot. Porten går automatiskt tillbaka när dessa BPDUer slutar att komma in.
 +
 
 +
Per interface
 +
spanning-tree guard root
 +
 
 +
===BPDU Filter===
 +
En edge port skickar BPDUer som vanligt enligt Hello-interval men om det inte finns något som talar STP på andra sidan är detta onödigt. Med BPDU filter påslaget slutar switchen att skicka BPDUer efter 10 obesvarade (det skickas även en BDPU direkt vid link up så 11 totalt). Porten är dock beredd på att behandla BPDUer och BDPU filter inaktiveras ifall det kommer in en BPDU. 
 +
 
 +
Globalt, gäller alla PortFast-portar
 +
spanning-tree portfast bpdufilter default
 +
 
 +
Man kan hårdställa BPDU filter per interface om man t.ex. ska splita ett nätverk i olika STP-domäner. Inga BPDUer kommer att skickas eller behandlas.
 +
 
 +
Per interface, hard on/off
 +
spanning-tree bpdufilter enable
 +
spanning-tree bpdufilter disable
 +
 
 +
===Loop Guard===
 +
Unidirectional links kan ställa till det för en L2-domän. Med Loop Guard stoppar man den vanliga STP-konvergeringen för root och alternate portar. Eftersom det ska komma in BPDUer på vissa portar är det inte normalt att det plötsligt inte gör det längre utan att länken har gått ner. Loop Guard förhindrar dessa portar från att bli designated utan de hamnar istället i loop-inconsistent blocking state. När det kommer BPDUer igen återgår de till normalt. 
 +
 
 +
Globalt, skyddar alla root- och alternate-portar
 +
spanning-tree loopguard default
 +
Per interface
 +
spanning-tree guard loop
 +
 
 +
===Bridge Assurance===
 +
Bridge Assurance är en utökning till Loop Guard och det fungerar med RSTP och MST. Slår man på det skickas det alltid BPDUer oavsett port state och BPDUerna används som en Hello-mekanism för att se om grannen lever. Kommer det inte in någon BPDU hamnar porten i BA-inconsistent blocking state tills BPDU åter mottages. Detta skyddar även vid loopar orsakade av switchar som slutat prata STP men ändå forwarderar frames. Detta är en [[Cisco_Nexus|Nexus]]-feature.
 +
 
 +
Global
 +
spanning-tree bridge assurance
 +
Per interface
 +
spanning-tree portfast network
 +
 
 +
===UplinkFast===
 +
Låt en alternate port gå direkt till forwarding om root port går ner. Är på default och konfigureras globalt.
 +
show spanning-tree uplinkfast
 +
 
 +
===BackboneFast===
 +
Används för att snabba upp konvergens vid indirect link failure. Bör användas på alla enheter.
 +
show spanning-tree backbonefast
 +
 
 +
===PVST Simulation===
 +
MST kan samköras med Rapid PVST+ utan någon speciell konfiguration. Detta är endast en feature på [[Cisco_Nexus|Nexus]]-switchar och slåss på när man konfigurerar MST. Man kan stänga av PVST simulation globalt eller per port, det som händer då är att en port som får in en Rapid PVST+ BPDU hamnar i blocking state tills det slutar komma BPDUer. Rotbryggan för alla VLAN måste finnas på samma sida, antingen i MST eller i PVST+. Om man inte uppfyller detta kommer porten att hamna i PVST simulation-inconsistent state dvs forwarding stängs av.
 +
spanning-tree mst simulate pvst
 +
 
 +
===Others===
 +
Dispute mechanism innebär att role och state hos porten som skickar en BPDU skickas med i BPDUn så andra sidan vet att den inte pratat med en designated port på en designated port. Då hamnar porten i discarding state. Detta är påslaget default och behöver inte konfigureras. Fungerar dock inte med de äldsta varianterna av STP.
  
 +
'''UDLD''' <br/>
 +
Se [[Cisco_UDLD|UDLD]]
 
[[Category:Cisco]]
 
[[Category:Cisco]]

Revision as of 18:28, 29 May 2016

Multiple Spanning Tree Protocol, IEEE 802.1s, använder algoritm Rapid ST och konvergerar snabbt. Man kan konfigurera så många topologier som man vill ha. Alla VLAN som inte specificeras i någon instans hamnar i instans 0 som default. Pathcost method behöver inte konfigureras utan operational value är alltid long till skillnad från andra STP-varianter. Se Cisco STP. MST-konfiguration går även att distribuera med hjälp av VTPv3.

Följande element måste vara identiska på alla switchar:

  • region name
  • revision number
  • instances

Konfiguration

spanning-tree extend system-id
spanning-tree mode mst
spanning-tree mst configuration
 name Site1
 revision 1
 instance 1 vlan 1-2000
 instance 2 vlan 2001-4094
 show current

Root

spanning-tree mst 1 root primary

Verify

show spanning-tree mst
show spanning-tree mst interface

Mappa alla secondary vlan till samma MST-instans som deras primary VLAN befinner sig i, se även Private VLAN.

spanning-tree mst configuration
 private-vlan synchronize

MST började implementeras av tillverkarna innan standarden var helt spikad vilket man bör tänka på om man kör gamla enheter. Dock säger standarden att pre-standard MST-grannar måste kunna upptäckas automatiskt av kompabilitetsskäl. I normalfallet märker man ingenting men om grannen är tyst, t.ex. en root port, kan man slå på det per interface.

interface gi0/7
 spanning-tree mst pre-standard

NX-OS

spanning-tree mode mst
spanning-tree mst configuration
 name DC1
 revision 1
 exit
spanning-tree mst 0 priority 32768
spanning-tree port type edge default
spanning-tree port type edge bpduguard default
spanning-tree port type edge bpdufilter default
spanning-tree pathcost method long
spanning-tree loopguard default

Extensions

Det finns många tillägg till spanning-tree som kan öka stabilitet och säkerhet. Dessa agerar fristående från varandra förutom att de går att konfigurera ihop. Detta är tillägg för protokoll som kör Rapid ST.

PortFast

Med PortFast definierar man edge ports, dessa går direkt till forwarding när de kommer upp och inget topology change event genereras. En edge port skickar ut BDPUer men förväntar sig inga tillbaks. Om det kommer in en BPDU slutar porten vara edge port och återgår till normal tills interfacet går down/up. Används för anslutningar ut till servrar och andra end hosts. Ibland är PortFast ett måste pga att DHCP hinner timea ut innan porten blivit forwarding.

Globalt, aktiveras på alla portar i operational state: access

spanning-tree portfast default

Per interface, on/off

spanning-tree portfast
spanning-tree portfast disable

Verify

show spanning-tree interface gi0/10 portfast

Vill man ha portfast på en trunk måste man ställa det per interface

spanning-tree portfast trunk

Kör aldrig portfast mot andra switchar! MST och RSTP har tekniker för att vara snabba ändå.

BPDU Guard

Error disable interface om det kommer en BPDU.

Globalt, skyddar alla PortFast-portar

spanning-tree bpduguard default

Per interface, on/off

spanning-tree bpduguard enable
spanning-tree bpduguard disable

Auto recovery

errdisable recovery cause bpduguard 

Root Guard

Skydda så att ingen annan än den enhet man själv har konfigurerat kan bli root genom att ignorera superior BPDUer som kommer in på portar med Root Guard påslaget. Om det kommer in en superior BPDU så hamnar porten i root-inconsistent blocking state och frames varken forwardas eller tas emot. Porten går automatiskt tillbaka när dessa BPDUer slutar att komma in.

Per interface

spanning-tree guard root

BPDU Filter

En edge port skickar BPDUer som vanligt enligt Hello-interval men om det inte finns något som talar STP på andra sidan är detta onödigt. Med BPDU filter påslaget slutar switchen att skicka BPDUer efter 10 obesvarade (det skickas även en BDPU direkt vid link up så 11 totalt). Porten är dock beredd på att behandla BPDUer och BDPU filter inaktiveras ifall det kommer in en BPDU.

Globalt, gäller alla PortFast-portar

spanning-tree portfast bpdufilter default

Man kan hårdställa BPDU filter per interface om man t.ex. ska splita ett nätverk i olika STP-domäner. Inga BPDUer kommer att skickas eller behandlas.

Per interface, hard on/off

spanning-tree bpdufilter enable
spanning-tree bpdufilter disable

Loop Guard

Unidirectional links kan ställa till det för en L2-domän. Med Loop Guard stoppar man den vanliga STP-konvergeringen för root och alternate portar. Eftersom det ska komma in BPDUer på vissa portar är det inte normalt att det plötsligt inte gör det längre utan att länken har gått ner. Loop Guard förhindrar dessa portar från att bli designated utan de hamnar istället i loop-inconsistent blocking state. När det kommer BPDUer igen återgår de till normalt.

Globalt, skyddar alla root- och alternate-portar

spanning-tree loopguard default

Per interface

spanning-tree guard loop

Bridge Assurance

Bridge Assurance är en utökning till Loop Guard och det fungerar med RSTP och MST. Slår man på det skickas det alltid BPDUer oavsett port state och BPDUerna används som en Hello-mekanism för att se om grannen lever. Kommer det inte in någon BPDU hamnar porten i BA-inconsistent blocking state tills BPDU åter mottages. Detta skyddar även vid loopar orsakade av switchar som slutat prata STP men ändå forwarderar frames. Detta är en Nexus-feature.

Global

spanning-tree bridge assurance

Per interface

spanning-tree portfast network 

UplinkFast

Låt en alternate port gå direkt till forwarding om root port går ner. Är på default och konfigureras globalt.

show spanning-tree uplinkfast

BackboneFast

Används för att snabba upp konvergens vid indirect link failure. Bör användas på alla enheter.

show spanning-tree backbonefast

PVST Simulation

MST kan samköras med Rapid PVST+ utan någon speciell konfiguration. Detta är endast en feature på Nexus-switchar och slåss på när man konfigurerar MST. Man kan stänga av PVST simulation globalt eller per port, det som händer då är att en port som får in en Rapid PVST+ BPDU hamnar i blocking state tills det slutar komma BPDUer. Rotbryggan för alla VLAN måste finnas på samma sida, antingen i MST eller i PVST+. Om man inte uppfyller detta kommer porten att hamna i PVST simulation-inconsistent state dvs forwarding stängs av.

spanning-tree mst simulate pvst

Others

Dispute mechanism innebär att role och state hos porten som skickar en BPDU skickas med i BPDUn så andra sidan vet att den inte pratat med en designated port på en designated port. Då hamnar porten i discarding state. Detta är påslaget default och behöver inte konfigureras. Fungerar dock inte med de äldsta varianterna av STP.

UDLD
Se UDLD