I suspect a rogue root bridge has pulled the root port to an end-node port and any extra VLANs lose connectivity.
I'm afraid to locate that device you'd need to physically follow the cable...
- run
show spanning-tree detail
- check for actually received BPDUs on the relevant port
- run
show spanning-tree root-history
- check for any rogue root bridge
- double check the logs (
show log | i port
) for relevant events
- run a debug (
debug mstp event
& debug destination session
) while connecting the suspect port
debug destination buffer
allows you to debug for a more extended time period, run show debug buffer
on the next day or so
Additionally, there are a number of configuration options preventing any STP abuse, including:
spanning-tree <port> root-guard tcn-guard
for end-node ports in general
spanning-tree <port> bpdu-guard
for end-node ports to be disabled when a rogue bridge is connected
spanning-tree <port> bpdu-filter
for end-node ports that you want to ignore BPDUs on - caution: disables STP and should be combined with loop protection
And of course: choose your root bridge wisely (spanning-tree priority 0
), select a backup root bridge (spanning-tree priority 1
) and do not accept roots on any other ports (see root-guard
above).
If you run multiple MSTP instances, you define your (backup) root for each instance individually.