Hosts in one VLAN cannot reach each other across a trunk, but other VLANs work. What do you check?
Show the answer
Say this first
I walk that VLAN through every filter on both ends of the link: is the link really trunking, does the
VLAN exist and is it active on both switches, is it in the allowed list on both sides, is it pruned, is
spanning tree blocking it on that port only, and do the native VLANs match. Most often the VLAN is
missing on one switch or an allowed list was edited without add.
Go deeper
Order of checks
show interfaces trunkon both ends. Statustrunking, and the VLAN present in all four sections.show vlan id 30on both switches. The VLAN must exist and beactive.act/lshutmeans someone typedshutdownundervlan 30;susmeans suspended.- VTP: a client that never received the VLAN, or a transparent switch where nobody created it.
show spanning-tree vlan 30. Is this port blocking for this VLAN alone? Look for*ROOT_Inc,*LOOP_Incor*PVID_Incin the type column.- Native VLAN mismatch: CDP logs
%CDP-4-NATIVE_VLAN_MISMATCH, and untagged traffic lands in the wrong VLAN. - If the far end is not a switch: the port group VLAN on the hypervisor, the subinterface on the firewall or router.
show mac address-table vlan 30on each switch. Do the hosts' MACs appear on the trunk port at the far end?
Each step tells you which side to look at next, so you never change anything blind.
They will ask next
The trunk shows the VLAN in all four sections on both ends, and it still fails. What next?
Leave the trunk and check the hosts' ports: right access VLAN, port up, MAC learned. Then check anything in the path that filters by VLAN or MAC, such as VLAN ACLs, port security or private VLANs.
Traps
- Checking only one end. The allowed list and the VLAN database are per switch, and either side can drop the VLAN.
How did you do?