Cisco 2960 – Troubleshooting Spanning Tree Root Change

cisco

There is a wireless Ubiquity bridge set up between our main building and this switch in a building across the street. The Ubiquity connection never appears to have any issues, it's just the cisco. Every few days, the Cisco will go offline (and therefore the whole building) and the only way to get it back up is to unplug/replug the trunk port. We've replaced all the cables and tried a different switch port. We're having a recurring issue every few minutes that outputs in the cisco log like this:

Feb 19 14:12:31.200 Pacific: %SPANTREE-5-TOPOTRAP: Topology Change Trap for vlan 2
Feb 19 14:12:32.191 Pacific: %LINEPROTO-5-UPDOWN: Line protocol on Interface Vlan1088, changed state to up
Feb 19 14:14:55.700 Pacific: %LINEPROTO-5-UPDOWN: Line protocol on Interface Vlan1088, changed state to down
Feb 19 14:14:56.644 Pacific: %LINEPROTO-5-UPDOWN: Line protocol on Interface GigabitEthernet1/0/48, changed state to down
Feb 19 14:14:57.666 Pacific: %LINK-3-UPDOWN: Interface GigabitEthernet1/0/48, changed state to down
Feb 19 14:15:00.162 Pacific: %LINK-3-UPDOWN: Interface GigabitEthernet1/0/48, changed state to up
Feb 19 14:15:01.164 Pacific: %LINEPROTO-5-UPDOWN: Line protocol on Interface GigabitEthernet1/0/48, changed state to up
Feb 19 14:15:16.217 Pacific: %SPANTREE-5-ROOTCHANGE: Root Changed for vlan 10: New Root Port is GigabitEthernet1/0/48. New Root Mac Address is 442b.0387.5180
Feb 19 14:15:16.223 Pacific: %SPANTREE-5-TOPOTRAP: Topology Change Trap for vlan 10
Feb 19 14:15:17.250 Pacific: %SPANTREE-5-ROOTCHANGE: Root Changed for vlan 2: New Root Port is GigabitEthernet1/0/48. New Root Mac Address is 442b.0387.5180
Feb 19 14:15:17.256 Pacific: %SPANTREE-5-TOPOTRAP: Topology Change Trap for vlan 2
Feb 19 14:15:17.303 Pacific: %LINEPROTO-5-UPDOWN: Line protocol on Interface Vlan1088, changed state to up
Feb 19 14:26:48.075 Pacific: %SPANTREE-5-ROOTCHANGE: Root Changed for vlan 20: New Root Port is GigabitEthernet1/0/48. New Root Mac Address is 442b.0387.5180
Feb 19 14:26:53.569 Pacific: %SPANTREE-5-ROOTCHANGE: Root Changed for vlan 20: New Root Port is GigabitEthernet1/0/48. New Root Mac Address is 442b.0387.5180
Feb 19 14:36:43.014 Pacific: %LINEPROTO-5-UPDOWN: Line protocol on Interface Vlan1088, changed state to down
Feb 19 14:36:43.958 Pacific: %LINEPROTO-5-UPDOWN: Line protocol on Interface GigabitEthernet1/0/48, changed state to down
Feb 19 14:36:44.980 Pacific: %LINK-3-UPDOWN: Interface GigabitEthernet1/0/48, changed state to down
Feb 19 14:36:47.476 Pacific: %LINK-3-UPDOWN: Interface GigabitEthernet1/0/48, changed state to up
Feb 19 14:36:48.477 Pacific: %LINEPROTO-5-UPDOWN: Line protocol on Interface GigabitEthernet1/0/48, changed state to up
Feb 19 14:37:15.505 Pacific: %SPANTREE-5-TOPOTRAP: Topology Change Trap for vlan 2
Feb 19 14:37:15.532 Pacific: %LINEPROTO-5-UPDOWN: Line protocol on Interface Vlan1088, changed state to up
Feb 19 14:37:18.122 Pacific: %SPANTREE-5-TOPOTRAP: Topology Change Trap for vlan 10
Feb 19 14:37:18.122 Pacific: %SPANTREE-5-ROOTCHANGE: Root Changed for vlan 10: New Root Port is GigabitEthernet1/0/48. New Root Mac Address is 442b.0387.5180
Feb 19 14:37:19.165 Pacific: %SPANTREE-5-TOPOTRAP: Topology Change Trap for vlan 7
Feb 19 14:37:19.165 Pacific: %SPANTREE-5-ROOTCHANGE: Root Changed for vlan 7: New Root Port is GigabitEthernet1/0/48. New Root Mac Address is 442b.0387.5180

The port is configured like this:

interface GigabitEthernet1/0/48
switchport trunk native vlan 10
switchport trunk allowed vlan 2-1088
switchport mode trunk
switchport nonegotiate
mls qos trust dscp

UPDATE
Diagram:
enter image description here

Spanning tree is still a new concept to me, so I am hoping someone may be able to help. Please let me know if you need any more information.

UPDATE:
I just found these messages today in the log from the switch in our main building (Cisco 3750), during the time when the switch across the street was down:

Feb 20 02:29:42.386 Pacific: %CDP-4-DUPLEX_MISMATCH: duplex mismatch discovered on GigabitEthernet1/0/45 (not half duplex), with 222-core-2960 GigabitEthernet1/0/48 (half duplex).
Feb 20 02:30:42.420 Pacific: %CDP-4-DUPLEX_MISMATCH: duplex mismatch discovered on GigabitEthernet1/0/45 (not half duplex), with 222-core-2960 GigabitEthernet1/0/48 (half duplex).
Feb 20 02:31:42.412 Pacific: %CDP-4-DUPLEX_MISMATCH: duplex mismatch discovered on GigabitEthernet1/0/45 (not half duplex), with 222-core-2960 GigabitEthernet1/0/48 (half duplex).
Feb 20 02:32:42.421 Pacific: %CDP-4-DUPLEX_MISMATCH: duplex mismatch discovered on GigabitEthernet1/0/45 (not half duplex), with 222-core-2960 GigabitEthernet1/0/48 (half duplex).
Feb 20 02:33:42.430 Pacific: %CDP-4-DUPLEX_MISMATCH: duplex mismatch discovered on GigabitEthernet1/0/45 (not half duplex), with 222-core-2960 GigabitEthernet1/0/48 (half duplex).
Feb 20 02:34:42.431 Pacific: %CDP-4-DUPLEX_MISMATCH: duplex mismatch discovered on GigabitEthernet1/0/45 (not half duplex), with 222-core-2960 GigabitEthernet1/0/48 (half duplex).
Feb 20 02:35:42.440 Pacific: %CDP-4-DUPLEX_MISMATCH: duplex mismatch discovered on GigabitEthernet1/0/45 (not half duplex), with 222-core-2960 GigabitEthernet1/0/48 (half duplex).

UPDATE 2/24
We've made some changes to the config and tested/replaced all the physical hardware and cables (Except for the port on the wireless bridge…) and are still getting issues. It seems that a LOOPGUARD_BLOCK often preceeds the short outages we're having. Here's another example from the logs

Feb 24 10:13:22.819 Pacific: %SPANTREE-2-LOOPGUARD_BLOCK: Loop guard blocking port GigabitEthernet1/0/48 on VLAN0002.
Feb 24 10:13:22.867 Pacific: %LINEPROTO-5-UPDOWN: Line protocol on Interface Vlan1088, changed state to down
Feb 24 10:13:23.852 Pacific: %SPANTREE-2-LOOPGUARD_BLOCK: Loop guard blocking port GigabitEthernet1/0/48 on VLAN0010.
Feb 24 10:13:37.291 Pacific: %SPANTREE-2-LOOPGUARD_UNBLOCK: Loop guard unblocking port GigabitEthernet1/0/48 on VLAN0002.
Feb 24 10:13:37.291 Pacific: %SPANTREE-5-ROOTCHANGE: Root Changed for vlan 2: New Root Port is GigabitEthernet1/0/48. New Root Mac Address is 442b.0387.5180
Feb 24 10:13:37.296 Pacific: %SPANTREE-5-TOPOTRAP: Topology Change Trap for vlan 2
Feb 24 10:13:37.348 Pacific: %LINEPROTO-5-UPDOWN: Line protocol on Interface Vlan1088, changed state to up
Feb 24 10:13:38.334 Pacific: %SPANTREE-2-LOOPGUARD_UNBLOCK: Loop guard unblocking port GigabitEthernet1/0/48 on VLAN0010.
Feb 24 10:13:38.339 Pacific: %SPANTREE-5-ROOTCHANGE: Root Changed for vlan 10: New Root Port is GigabitEthernet1/0/48. New Root Mac Address is 442b.0387.5180
Feb 24 10:13:38.339 Pacific: %SPANTREE-5-TOPOTRAP: Topology Change Trap for vlan 10

Best Answer

As it seems, the physical link is simply failing. Check cabling and connectors.

STP requires that you select the root bridge - it should be (one of) your most central switch(es). If you don't configure a root bridge it will be the switch with the lowest MAC address - essentially random.

A random root bridge that gets disconnected from the rest triggers a root re-election, completely rebuilding the spanning tree and temporarily disrupting all network traffic - you don't want that.

And while you're at it, also configure a designated bridge (close to the root) that takes over when the root fails.

The root bridge is the switch with the lowest STP priority value. The designated bridge is the one with the second lowest value.