STP - Spanning Tree Protocol
Bridging loop
Komunikace PC-1 to PC-4
Uvažujme, že PC-1 zná MAC adresu PC-4 a switche mají prázdné CAM tabulky.
PC-1 pošle rámec s cílovou MAC (PC-4), oba sw ho přijmou na portu 1/1, a uloží si zdrojovou adresu PC-1 do CAM tabulky
Jelikož adresa PC-4 není v CAM tabulkách, musejí sw rámec rozeslat všemi porty, kromě těch, na kterých rámec přijali
Oba switche odešlou rámec z portů 2/1, PC-4 přijme dva rámce, každý switch zároveň přijme rámec od druhého switche.
Oba switche si na základě přijatého rámce od druhého switche upraví záznam v CAM tabulce. Dle zdrojové adresy v rámcích se switche domnívají, že PC-1 je nyní v segmentu B na portech 2/1.
Jelikož switche ještě neví, za kterým portem je PC-4 (PC-4 zatím nic nevysílal), musejí rámec, který přijaly od druhého switche, poslat na všechny porty kromě těch ze kterých jej přijaly. Tzn. ten samý rámec vyšlou z portů 1/1.
Oba zase přijmou rámec odeslaný druhým switchem a opraví záznam v CAM (PC-1 je na portu 1/1).
Tento rámec oba zase vyšlou z portu 2/1. Přijmou rámec vyslaný druhým switchem, opraví záznam v CAM (PC-1 je na portu 2/1).
Dále se celý proces opakuje…
Broadcast storm
BPDU
Dva typy:
Configuration BPDU
Topology Chnage Notification (TCN) BPDU
Hlavička Configuration BPDU:
bytes | field | Poznámka |
2 | Protocol ID | vždy 0 |
1 | Version | vždy 0 |
1 | Message type | Config/TCN |
1 | Flags | |
8 | Root BID | |
4 | Root Path Cost | |
8 | Sender BID | |
2 | Port ID | |
2 | Message Age | násobky 1/256s, tzn. 0-256s |
2 | Max.Age | násobky 1/256s, tzn. 0-256s |
2 | Hello Time | násobky 1/256s, tzn. 0-256s |
2 | Forward Delay | násobky 1/256s, tzn. 0-256s |
Volba Root Bridge
Root Bridge je referčním bodem pro STP topologii
Každý switch má swé Bridge ID, na základě kterého dochází k volbě roota
Bridge ID (8 byte)
Bridge Prority (2 byte) - 0-65535, def.32768 (0x8000)
MAC Addr. (6 byte) - unikátní adr. backplanu nebo supervizoru, nelze měnit
- čím nižší-tím lepší
(formát 32768.aaaabbbbcccc)
Každý switch po zapnutí se domnívá, že je root
Začne rozesílat BPDU, v polích RootBID a SenderBID uvádí své BridgeID
Jakmile získá BPDU jiného switche s nižším RootBID, musí si tuto hodnotu pamatovat a posílat i ve svých BPDU v poli RootBID.
Další BPDU porovnává s nejnižší známou hodnotou, kterou si pamatuje.
Za nějaký čas se switche shodnou na jednom, který má nejnižší BID - ten je root
Voba Root Portu
Děje se jen na nonroot switchích!
root path cost - kumulativní hodnota, celková cena cesty k rootu, přenáší se v BPDU
path cost - jen lokální význam, cena cesty k sousednímu switchi
Path Cost:
Link Bandwidth | Old STP Cost | New STP Cost |
4 Mbps | 250 | 250 |
10 Mbps | 100 | 100 |
16 Mbps | 63 | 62 |
45 Mbps | 22 | 39 |
100 Mbps | 10 | 19 |
155 Mbps | 6 | 14 |
622 Mbps | 2 | 6 |
1 Gbps | 1 | 4 |
10 Gbps | 0 | 2 |
Root Path Cost
Root bride pošle BPDU s root path cost = 0
Jakmile nejbližší sousední switch přijme BPDU, zvedne hodnotu root path cost o cenu linky, na které BPDU přijal.
Jestliže přijde BPDU ještě z jiného portu, děje se to samé.
Porovnají se získané hodnoty, port s nejnižší hodnotou root path cost se stane root portem
Pak se pošle BPDU dál s novou (tou nejnižší) hodnotou root path cost.
Volba Designated portu
Vždy jeden na síťový segment
Designated port je jediný v segmentu, který může forwardovat provoz
Designated portem se stane port switche, který v segmentu posílá BPDU s nejnižší hodnotou root path cost
V případě stejných hodnot rozhoduje:
Nižší Root BID
Nižší Root Path Cost
Nižší Sender BID
Nižší Sender port ID
STP Stavy portů
Disabled
Blocking
Listening
Do tohoto stavu přechází v případě, je pravděpodobné, že se port stane root potem nebo designated portem
nemůže vysílat ani příjmat
Může vysílat a příjmat BPDU
Forward Delay = 15 s
Switch# show spanning interface fa 0/1
Vlan Port ID Designated Port ID
Name Prio.Nbr Cost Sts Cost Bridge ID Prio.Nbr
----------------- ------------- -------------- --------------------------- --------
VLAN0001 128.1 19 LIS 0 32769 000a.f40a.2980 128.1
*Mar 16 14:31:15 UTC: STP SW: Fa0/1 new learning req for 1 vlans
Learning
Switch# show spanning interface fa 0/1
Vlan Port ID Designated Port ID
Name Prio.Nbr Cost Sts Cost Bridge ID Prio.Nbr
----------------- ------------- -------------- --------------------------- --------
VLAN0001 128.1 19 LRN 0 32768 00d0.5849.4100 32.129
*Mar 16 14:31:30 UTC: STP SW: Fa0/1 new forwarding req for 1 vlans
Forwarding
Switch# show spanning interface fa 0/1
Vlan Port ID Designated Port ID
Name Prio.Nbr Cost Sts Cost Bridge ID Prio.Nbr
----------------- ------------- -------------- --------------------------- --------
VLAN0001 128.1 19 FWD 0 32768 00d0.5849.4100 32.129
Jak ručně určit stav STP?
Všem linkám určit cost
Určit Root Bridge - switch s nejnižším Bridge ID
Určit Root porty - 1 per switch, nejnižší root path cost
Učit Designated porty - 1 per segment, nejnižší root path cost, v případě shody použít rozhodovací pravidla pro STP
Určit Blocking porty - všechny porty, které nejsou root nebo designated
STP Timers
Konfigurují se centralizovaně (s vyjímkou TCN BPDU Hello Time) na root bridgi, protože hodnoty timerů jsou přenášeny v BPDU.
Defaultní hodnoty jsou nastaveny na network diameter = 7, počítáno od root bridge (včetně).
Změna těchto hodnot se doporučuje provádět pouze změnou net.diameteru na root bridgi, který si pak hodnoty přepočítá.
Hello Time
Dle 802.1D defaultně 2 s
časový interval mezi Conf.BPDU odesílaných root bridgem
Změna HelloTime na root bridgi se týká všech nonroot switchů, protože nonroot switche Conf.BPDU jen přeposílají.
Hello Time pro TCN BPDU se konfiguruje lokálně na jednotlivých switchích
Forward Delay
Max Age
Topology Changes
TCN BPDU
Switch ho odesílá z root portu při každé změně (link up/down), netýká se změn na portech konfigurovaných jako portfast
Neobsahuje žádné informace, slouží jen k informaci o tom že došlo ke změně
TCN BPDU jsou odesílány v intervalech Hello Time, dokud nejsou potvrzeny sousedním switchem ACK BPDU, který je stejným způsobem propaguje dál směrem k rootu.
Jakmile root přijme TCN také ho potvrdí, následně všem rozešle Config.BPDU s nastaveným flagem Topology Change.
Díky tomu všechny switche zkrátí platnost CAM tabulky z def.300 s na Forward Delay 15 s.
TCN BPDU
byes | field | |
2 | Protocol ID | vždy 0 |
1 | Version | vždy 0 |
1 | Message Type | |
Direct Topology Changes
(link down)
Switch C a switch A detekují na svých portech(1/1 a 1/2) pád linky.
Switch C zahodí “best BPDU”, které měl v paměti, protože BPDU bylo přijato portem, který nyní spadl. Běžně by se switch pokusil odeslat TCN z root portu, v tomto případě však root port spadl. V případě switche A se TCN neodesílá, protože switch je root bridge.
Root bridge, switch A, rozešle Config.BPDU s nastaveným TCN flagem.
Switche B a C po přijetí tohoto BPDU zkrátí platnost CAM tabulek na dobu Forward delay (15s).
Switch C přijal BPDU na portu 1/2, který byl dosud blokován, přijaté BPDU je v tuto chvíli nejlepší ⇒ port se stane novým root portem a přejde do stavu forwarding.
U switchů A a B nedochází během konvergence k žádným změnám stavů portů, změna se týká pouze switche C
Ztráta konektivity hostů switche C, trvá dobu, kterou port 1/2 prochází stavy Listening a Learning, tedy celkem 30 sec.
Indirect Topology Changes
(link up, but no data can pass between switches)
Switch A i C mají linku up, linkou však neprochází data a ani BPDU
Nedošlo k chybě linky, neposílá se žádné TCN.
Switch C má v paměti “best BPDU”, které předtím přijal z portu 1/1. Nyní však tímto portem žádné BPDU nepřichází a po vypršení času Max Age toto “best BPDU” není platné a je z paměti vymazáno.
Dříve nebo později je přijato BPDU na portu 1/2, které je nyní nejlepší přijaté. Port 1/2 se stane root portem a přejde ze stavu Blocking přes Listening a Learning do stavu Forwarding.
Insignificant Topology Changes
(access port up/down)
PC na portu 2/12 někdo vypne, switch detekuje pád linky.
Switch C začne posílat TCN BPDU směrem k rootovi (portem 1/1)
Root bridge jej potvrdí TCN ACK a pak rozešle Config.BPDU s TCN flagem.
Toto BPDU způsobí, že switch B a C zkrátí platnost svých CAM tabulek, v tabulkách zůstanou záznamy jen aktivních spojení. Zkrácená platnost tabulek trvá po dobu Forward delay + Max age.
Jedná se jen o kosmetický problém a je třeba zvážit důsledky ve větší síti s mnoha PC, kde je zapínání a vypínání PC běžné. Časté mazání a zkracování platnosti CAM záznamů způsobuje nárůst broadcastového provozu.
Předejít se tomu dá nastavením portů pro hosty jako Portfast
Typy STP
CST Common Spanning Tree
IEEE 802.1Q - specifikuje jak jsou vlany přenášeny v trunku mezi switchi a zároveň specifikuje single instanci STP, která zahrnuje všechny VLANy.
Tato instance STP je nazývána CST Common Spanning Tree.
CST BPDU jsou přenášena v nativní VLAN a v netagovaných rámcích.
PVST Per-VLAN Spanning Tree
(Cisco)
Pro každou VLAN zvláštní instance STP.
STP pro každou VLAN lze konfigurovat samostatně.
Umožňuje load balancing po záložních linkách (některé vlany jdou jednou cestou a ostaní druhou cestou)
Jelikož se jedná o proprietární prot., vyžaduje na truncích enkapsulaci ISL.
Není kompatibilní s CST, nedochází k výměnám BPDU.
PVST+ Per-VLAN Spanning Tree Plus
(Cisco)
Kompatibilní s CST i PVST.
PVST+ může sloužit jako překladač mezi CST a PVST.
S PVST komunikuje prostřednictvím ISL trunků, s CST si vyměňuje BPDU v netagovaných rámcích v nativní VLAN.
BPDU jiných instancí PVST+ jsou skrz část sítě s CST tunelována. Posílají se se speciální (mcast) cílovou MAC adresou, která CST switche nezajímá, avšak dorazí-li k PVST+ switchi, ten BPDU zpracuje.
Konfigurace STP
Defaultně - STP zapnuto.
Switch(config)# [no] spanning-tree vlan vlan-id
Switch(config-if)# [no] spanning-tree vlan vlan-id
STP Root Bridge
Root Bridge by měl být výkonný switch v centru L2 sítě. Nejlépe v distribuční vrstvě nebo blízko serverové farmy.
Vždy je potřeba ručně nakonfigurovat root bridge a secondary root bridge, aby se předešlo nečekaným stavům.
Bridge ID
Jestliže switch nepodporuje 1024 MAC adres pro vnitřní použití, je defaultně použito rozšířené bridge ID. V opačném případě je def. použito standartní Bridge ID.
Switch(config)# [no] spanning-tree extended system-id
Ručně:
Switch(config)# spanning-tree vlan vlan-list priority bridge-priority
Bridge priority:
Standartně : 0-65535, def.32768
Extended Sysem ID: 0-61440 (násobky 4096), def.32768
Pomocí makra:
Switch(config)# spanning-tree vlan vlan-id root {primary | secondary} [diameter diameter]
makro přihlídne k aktuálním hodnotám v síti ve chvíli kdy je spuštěno, avšak nezaručí, že se switch stane rootem, popř. že si tento status udrží.
jelikož se jedná o makro, není vidět ve výpisu konfigurace switche
primary je-li aktuální priorita roota větší než 24576 switch si nastaví tuto prioritu, jeli priorita roota menší, switch si nastaví o 4096 nižší bridge prioritu (kromě nuly, tu je třeba nastavit ručně).
secondary - bridge priority se nastaví na 28672, spoléhá se to na to, že všechny switche jsou v defaultu, je to z důvodu, že další secondary root nelze zjistit, protože neposílá žádná BPDU.
Switch(config)# spanning-tree vlan 1 root primary
vlan 1 bridge priority set to 24576
vlan 1 bridge max aging time unchanged at 20
vlan 1 bridge hello time unchanged at 2
vlan 1 bridge forward delay unchanged at 15
Příklad:
Switch_B(config)# spanning-tree vlan 100 root primary
Tímto příkazem se nám nepodaří udělat ze switche B roota, protože pokud si má nastavit o 4096 nižší prioritu, musel by si nastavit 104 - což není násobek 4096, jediná zbývající možnost by byla nula, tu ale nelze nastavit pomocí
makra - musí se zadat ručně:
Switch_B(config)# spanning-tree vlan 100 priority 0
Nyní je priorita switche B 0+100=100.
Root Path Cost
Switch(config-if)# spanning-tree [vlan vlan-id] cost cost(1-65535)
Switch# show spanning-tree interface type mod/num [cost]
Vlan Role Sts Cost Prio.Nbr Type
----------------- ---- --- ---------- -------- -----------------------------
VLAN0001 Root FWD 4 128.1 P2p
VLAN0010 Desg FWD 4 128.1 P2p
VLAN0020 Root FWD 4 128.1 P2p
Port ID
16 bitů = 8 bitů priorita + 8 bitů port number
Port priority = 0-255, defaultně 128
Port number = 0-255, na “nemodulárním” switchi odpovídá č.portu (fa 0/10 = 10), na modulárním switchi nebo v portchannelu už není odvoditelné.
Switch(config-if)# spanning-tree [vlan vlan-list] port-priority port-priority
Switch# show spanning-tree interface type mod/num
STP Timers
Manuální konfigurace:
Switch(config)# spanning-tree [vlan vlan-id] hello-time seconds(1-10,def.2)
Switch(config)# spanning-tree [vlan vlan-id] forward-time seconds(4-30,def.15)
Switch(config)# spanning-tree [vlan vlan-id] max-age seconds(6-40,def.20)
Automatická konfigurace pomocí makra:
Switch(config)# spanning-tree vlan vlan-list root {primary | secondary} [diameter diameter [hello-time hello-time]]
PortFast
(Cisco)
zajišťuje rychlou konektivitu pro PC na access layer switchi
Stadartně portu trvá až 50s (30s STP + 20s PaGP) než přejde do stavu Forwarding po připojení PC
Na portech, kde je jen jedno zařízení (PC) je riziko vzniku smyčky malé
PortFast zajistí okamžitý přechod ze stavu Blocking do Forwarding (vynechají se stavy Listening a Learning)
Detekce smyček na portu však nadále probíhá a při vzniku smyčky port přejde do stavu Blocking
TCN BPDU se neposílají při změně stavu portu (up/down)!
Globální konfigurace:
Switch(config)# spanning-tree portfast default
Konfigurace per-interface:
Switch(config-if)# [no] spanning-tree portfast
Makro pro access port:
zapne na portu PortFast
nastaví port jako access
vypne na portu PaGP
Switch(config-if)# switchport host
Switch(config-if)# switchport host
switchport mode will be set to access
spanning-tree portfast will be enabled
channel group will be disabled
Switch# show spanning-tree interface type mod/num portfast
Switch# show spanning-tree interface fastethernet 0/1 portfast
VLAN0010 enabled
UplinkFast
(Cisco)
Slouží ke zrychlení zvednutí záložního uplinku na access switchích
Spadne-li na access switchi uplink (root port), zvednutí záložního běžně trvá až 50s, po celou tuto dobu je switch a jeho klienti odříznut od sítě.
Je-li záložních uplinků více, je okamžitě zvednut ten s nejnižší root path cost
Z principu své funkce nelze použít na Root Bridgi
Po zapnutí funguje pro celý switch a všechny VLANy
Zvednutím bridge priority na 49152 zajišťuje, aby se switch nemohl stát rootem
Port cost všech portů je zvednuta o 3000, tím se zajistí, že porty budou znevýhodněny ve výpočtu root path cost pro níže připojené switche.
UplinkFast poskytuje mechanismus, který zajistí rychlý update CAM tabulky nadřazeného switche po změně uplinku. Posílá rámce s cílovou mcast adresou 0100.0ccd.cdcd a do pole zdrojové adresy dosazuje adresy ze své CAM tabulky. Parametr max-update-rate udává počet paketů (pps) za sekundu. Defaultně je to 150pps, je-li nastavena 0 nic se neposílá.
Switch(config)# spanning-tree uplinkfast [max-update-rate pkts-per-second(0-65535,def.150)]
Switch# show spanning-tree uplinkfast
Switch# show spanning-tree uplinkfast
UplinkFast is enabled
Station update rate set to 150 packets/sec.
UplinkFast statistics
Number of transitions via uplinkFast (all VLANs) : 2
Number of proxy multicast addresses transmitted (all VLANs) : 52
Name Interface List
--------------------- --------------------------------
VLAN0001 Gi0/1(fwd)
VLAN0010 Gi0/1(fwd)
VLAN0100 Gi0/1(fwd)
BackboneFast
(Cisco)
Switch aktivně zjišťuje alternativní cesty k rootovi při detekci indirect link failure
indirect link failure je detekováno přijetím slabšího (inferior) BPDU na root portu nebo Blocked portu
Toto BPDU je rozesláno switchem, který ztratil kontakt s rootem a inzeruje v něm sebe jako roota.
Běžně switch musí čekat po dobu Max Age, než může takové BPDU akceptovat.
Je-li slabší BPDU přijato Blocked portem, je port zvolen rootem a ostatní Blocked porty jsou považovány za alternativní cesty k rootu.
Je-li slabší BPDU přijato Root portem, všechny Blocked porty jsou považovány za alternativní cesty k rootu.
Je-li slabší BPDU přijato Root portem, a na switchi není žádný Blocked port, switch usoudí že ztratil konektivitu s rootem. V tomto případě se switch snaží stát Root Bridgem.
RLQ - Root Link Query protocol
je použit v případě že switch má nějaké Blocked porty
slouží ke zjištění zda upstream switche mají spojení s rootem
switch pošle RLQ Request
RLQ Request, je propagován sítí, je-li příjemcem root bridge nebo switch, který nemá spojení s rootem, odpoví zprávou RLQ Reply.
Jestliže RLQ Reply je přijato na root portu - je spojení s rootem OK.
Jestliže RLQ Reply je přijato nonroot portem, musí být zvolena alternativní cesta k rootu - max age timer okamžitě expiruje, aby mohl být vybrán nový root port.
Celá pointa BackboneFast spočívá jen ve zkrácení doby rekonvergence při zjištění problému s cestou k rootu.
Toho je dosaženo okamžitou expirací max Age timeru při zjištění chyby
Celkově lze tedy rekonvergence dosáhnout během 30s (Listenning + Learnning) místo původních 50s (MaxAge + Listenning + Learning)
Switch(config)# spanning-tree backbonefast
Switch# show spanning-tree backbonefast
Switch# show spanning-tree backbonefast
BackboneFast is enabled
Monitoring STP
Switch# show spanning-tree [detail]
Switch# show spanning-tree vlan vlan-id
Switch# show spanning-tree [vlan vlan-id] summary
Switch# show spanning-tree [vlan vlan-id] root
Switch# show spanning-tree [vlan vlan-id] bridge
Switch# show spanning-tree bridge brief
Switch# show spanning-tree interface type mod/num [detail]
Switch# show spanning-tree uplinkfast
Switch# show spanning-tree backbonefast
Protecting STP topology
Root Guard
slouží k obraně před podvržením roota (připojení switche s nižší bridge priority)
měl by se zapnout na všech portech, kde za žádných okolností nebude root
jakmile jsou na portu se zapnutým Root Guardem přijímána tzv. superior (lepší) BPDU, port přejde do stavu root-inconsistent. Port nepropouští žádná data, může přenášet BPDU, nemůže je však zvenčí přijímat. Port se nemůže stát root portem.
jakmile přestanou přicházet superior BPDU, port přejde běžnými STP stavy do stavu forwarding
Pozor, RootGuard nerozlišuje VLANy, přijde-li superior BPDU, provoz na portu je blokován pro všechny VLANy.
Switch(config-if)# spanning-tree guard root
Switch# show spanning-tree inconsistentports
BPDU Guard
Ochrana před příjmem nežádoucích BPDU
Obvykle se zapíná na PortFast portech na access switchích
po přijetí BPDU port přejde do stavu err-disabled a je vypnut, zvednout ho lze ručně pomocí shut/no shut nebo automaticky pomocí errdisable timeout funkce
BPDU Guard má zabránit potížím s připojením nežádoucího switche (změna topologie STP, možnost vzniku smyčky)
BPDU Guard neumí zabránit vzniku smyčky připojením hubu do dvou různých míst v síti, kde neběží STP
Globální konfigurace:
Switch(config)# spanning-tree portfast bpduguard default
Per-port konfigurace:
Switch(config-if)# [no] spanning-tree bpduguard enable
Switch# show spanning-tree summary
Switch# show spanning-tree summary totals
Loop Guard
Ochrana proti náhlé ztrátě příjmu BPDU
Blocking port setrvává ve stavu Blocking dokud na něj chodí BPDU, jakmile se příjem BPDU přeruší port čeká dobu Max Age pak začne přecházet do stavu Forwarding, protože se domnívá, že vznik smyčky nehrozí a že na protějším konci linky není STP zařízení - toto může být příčinou vzniku smyčky!
LoopGuard sleduje příjem BPDU na nondesignated (blocking/alternate) portech, jakmile je přerušen příjem BPDU, LoopGuard uvede port do stavu loop-inconsistent, provoz je stále blokován.
Jakmile se příjem BPDU obnoví, LoopGuard nechá port projít běžnými STP stavy.
Globální konfigurace:
Switch(config)# spanning-tree loopguard default
Per-port konfigurace:
Switch(config-if)# [no] spanning-tree guard loop
Switch# show spanning-tree summary
UDLD
(Cisco)
UniDirectional Link Detection
Jednosměrný spoj:
nejpravděpodobnější výskyt na optických propojích, chyba GBIC, SFP nebo přerušení vlákna
nebezpečné pro STP, v případě, že Blocking port přestane přijímat BPDU, začne přecházet do stavu Forwarding a vznikne smyčka
UDLD:
sleduje zda je linka opravdu obousměrná
switch posílá svému protějšku speciální L2 UDLD rámce obsahující identifikaci svého portu a očekává odpověď s identifikací protějšího portu
musí být nakonfigurováno na obou koncích sledované linky, jinak nejsou odesílány odpovědi
Porty na obou koncích posílají svá echa nezávisle, na lince běží tedy jakoby dva procesy UDLD
Echa jsou posílána v konfigurovatelných intervalech - def. 15 sec, cílem je, aby UDLD stihlo zasáhnout dříve než port stihne přejít z blocking do forwarding stavu ⇒ celkový čas detekce jednosměrnosti musí být menší než Max Age + 2x Forwarding Delay tedy 50 sec.
UDLD detekuje jednosměrnest až po třetím echu bez odpovědi, defaultně tedy po 45 sec
Jelikož každý switch si posílá vlastní echa, může být message time na obou koncích různý a UDLD bude fungovat normálně!
Normal mode - po detekci jednosměrnosti není funkce portu omezena, port je označen jako undetermined state a je vygenerována syslog zpráva
Aggressive mode - po detekci jednosměrnosti se switch pokusí ještě linku “profouknout”, začne posílat echo každou sekundu po dobu 8s, nepřijde-li ani jedna odpověď, port přejde do stavu errdisabled
Globální konfigurace:
Switch(config)# udld {enable | aggressive | message time seconds(7-90,def.7 or 15)}
Per-port konfigurace:
lze zapnout i na běžných portech
lze použít k vypnutí UDLD na konkrétních optických portech, je-li použita globální konfigurace
Switch(config-if)# udld {enable | aggressive | disable}
První konfigurace:
Je-li UDLD konfigurováno v běžící síti, může vzniknout obava, co se stane když ho zapnu na jednom konci a na druhém ještě není nakonfigurováno.
Tato situace je ošetřena tak, že UDLD při první konfiguraci nemá žádné informace o svém sousedovi, posílá tedy echa a čeká na odpověď
dokud není UDLD zapnuto na protějším konci, odpovědi na echa nepřichází
v tomto případě linka nespadne
UDLD začne řešit stav linky až po té co je nakonfigurováno na obou koncích
UDLD v EtherChannelu:
echa jsou odeílánána v jednolivích linkách channelu
UDLD tedy k portům přistupuje jednotlivě, tzn. neshodí celý EtherChannel, ale jen konkrétní linku
Switch# show udld interface type mod/num
Switch# udld reset
BPDU Filter
Slouží k vypnutí STP na portu
Port nepřijímá a ani nevysílá BPDU
Jakmile na port přijde BPDU, port přestane být portfast
(při zvedání portu pár BPDU odejde = ochrana proti propojení dvou switchů s BPDU Filter)
Lze konfigurovat globálně nebo per-interface
Globální konfigurace zapne BPDU Filter na všech PortFast portech
Switch(config)# spanning-tree bpdufilter default
Switch(config-if)# spanning-tree bpdufilter {enable | disable}
Switch# show spanning-tree summary