Lesson 3 — Trunks, 802.1Q, and Native VLAN
Week 3 outline
- Week 3 overview
- Lesson 1Switch MAC Learning and Forwarding
- Lesson 2VLANs and Broadcast Domains
- QuizSwitching & VLAN Fundamentals
- Lesson 3Trunks, 802.1Q, and Native VLAN (current step)
- Lesson 4Voice VLANs
- QuizTrunking & Voice VLANs
- Lesson 5STP and Rapid PVST+ Basics
- Lesson 6EtherChannel and LACP Basics
- QuizRedundancy: STP & EtherChannel
- LabVLAN and Trunk Lab (progressive)
- Lesson 7CDP and LLDP Neighbor Discovery
- CheckpointWeek 3 Checkpoint
Trunks, 802.1Q, and Native VLAN
Configure and verify an 802.1Q trunk, explain native VLAN behaviour, stay aware of DTP, and diagnose a native-VLAN mismatch and an allowed-list mismatch from show interfaces trunk.
Lesson orientation
What you'll learn (5 objectives)~44 min: video → lesson → check → apply → lab prep
Learning objectives
- Explain why a switch-to-switch link must be a trunk and how 802.1Q carries many VLANs on one port
- Describe the 802.1Q tag as a 4-byte field carrying a 12-bit VLAN ID, and state when the switch strips it
- Explain native VLAN behaviour, the default-VLAN security exposure, and the native-VLAN-mismatch failure
- Stay aware of DTP modes and justify configuring trunks statically with nonegotiate
- Diagnose an allowed-VLAN-list mismatch and a native-VLAN mismatch from show interfaces trunk and apply the fix
Terms you will see
Time breakdown
- Read the notes20 min
- Encapsulation Lab — locate the tag6 min
- Mismatch diagnosis practice8 min
- Lab stage — trunk, native VLAN, DTP10 min
Assigned video

VLANs Part 2 — Trunks & 802.1Q (Day 17)
By Jeremy's IT Lab · Opens externally on YouTube
- Assigned watch
- ~12 min
The link opens in a new browser tab. Return here when you finish watching.
Watch for these concepts
- Where the 4-byte 802.1Q tag is inserted in the frame
- The native VLAN travelling untagged while every other VLAN is tagged
- show interfaces trunk confirming mode, native VLAN, and allowed/forwarding VLANs
Go beyond the video
The assigned video introduces the idea. CCNA Practice Labs completes the learning path: clarify core concepts, explore how each device behaves, visualize the communication path, check your understanding, and prepare for hands-on lab work.
Watch the concept → understand it → visualize it → practice it → apply it.
Why a trunk is needed
An access port belongs to one VLAN, so a single access link between two switches could only ever carry one VLAN across. A trunk is a switch-to-switch — or switch-to-router — link that carries many VLANs at once. The problem it has to solve is identity: when a frame arrives over a link shared by VLANs 10, 20 and 30, the receiving switch must know which VLAN it came from, so that its MAC table and its flooding stay per-VLAN exactly as the previous lesson requires.
Untagged: [ Dest MAC | Src MAC | EtherType | Payload | FCS ]
Tagged: [ Dest MAC | Src MAC | 802.1Q | EtherType | Payload | FCS ]
|
4 bytes: TPID 0x8100 + PCP/DEI + 12-bit VLAN IDThe native VLAN is the untagged one
802.1Q leaves exactly one VLAN on the trunk untagged: the native VLAN, which defaults to VLAN 1. Any untagged frame arriving on a trunk is treated as native-VLAN traffic. Two consequences follow, and they are the reason this lesson is the longest of the week.
The allowed-VLAN list is a separate control. By default a trunk carries every VLAN; switchport trunk allowed vlan restricts which may cross, limiting both the security surface and unnecessary broadcast flooding. If a VLAN is allowed on one end but omitted on the other, that one VLAN loses connectivity across the link while everything else works — a different symptom from a native mismatch, with no CDP log to help you.
DTP — know it, then turn it off
The Dynamic Trunking Protocol is a Cisco-proprietary protocol that lets two switch ports negotiate whether their link becomes a trunk. For CCNA you need awareness rather than mastery: know the modes and the resulting link type, then disable it on known uplinks. The exam-relevant point is that leaving DTP enabled produces unpredictable, negotiable trunks, which is both a reliability and a security problem.
| Local mode | Behaviour | With trunk / desirable neighbour | With auto neighbour |
|---|---|---|---|
| switchport mode trunk (+ nonegotiate) | Forces a trunk; DTP off | Trunk | Trunk |
| switchport mode dynamic desirable | Actively asks to trunk | Trunk | Trunk |
| switchport mode dynamic auto | Trunks only if asked | Trunk | Access — two autos never trunk |
The single fact worth memorising is the last cell: two dynamic auto ends never form a trunk, because neither side initiates. The correct production habit is switchport mode trunk plus switchport nonegotiate, which pins the trunk and stops DTP frames entirely. VTP, a separate protocol that synchronises the VLAN database, is out of scope here.
Configure and verify a static trunk
Switch(config)# interface GigabitEthernet0/1
Switch(config-if)# switchport mode trunk
Switch(config-if)# switchport trunk native vlan 99
Switch(config-if)# switchport trunk allowed vlan 10,20,30
Switch(config-if)# switchport nonegotiate
Switch# show interfaces trunkPort Mode Encapsulation Status Native vlan
Gi0/1 on 802.1q trunking 99
Port Vlans allowed on trunk
Gi0/1 10,20,30
Port Vlans allowed and active in management domain
Gi0/1 10,20,30
Port Vlans in spanning tree forwarding state and not pruned
Gi0/1 10,20,30Read it as four separate answers. Mode and Status confirm the port is actually trunking rather than merely configured to. Native vlan is the column you compare against the far end — differing values are the fingerprint of a native mismatch. The allowed block shows what you permitted; the forwarding block shows what is genuinely passing, and a VLAN present on one switch but missing from the other's forwarding block is the fingerprint of an allowed-list mismatch. On ISL-capable platforms switchport trunk encapsulation dot1q is set first; many modern switches are 802.1Q-only and skip it.
Two faults, two fingerprints
| Native VLAN mismatch | Allowed-list mismatch | |
|---|---|---|
| Symptom | Tagged VLANs all work; untagged traffic crosses into the wrong VLAN | One specific VLAN loses connectivity; every other VLAN is fine |
| Where it shows | The Native vlan columns differ between the two ends | The VLAN is missing from one end's allowed/forwarding block |
| CDP log | Yes — CDP reports a native VLAN mismatch | No log at all |
| Fix | Set both ends to the same native VLAN | switchport trunk allowed vlan add <id> on the end that is missing it |
What you should retain
- A trunk carries many VLANs on one link; 802.1Q inserts a 4-byte tag holding a 12-bit VLAN ID.
- The native VLAN travels untagged and defaults to VLAN 1; harden it to a dedicated unused VLAN.
- A native mismatch hides behind working tagged VLANs — compare the Native vlan columns on both ends.
- An allowed-list mismatch breaks exactly one VLAN and produces no CDP log.
- Two dynamic auto ends never form a trunk; prefer switchport mode trunk plus nonegotiate.
- show interfaces trunk answers mode, native VLAN, allowed VLANs, and forwarding VLANs in one command.
Before you read on
SW1 and SW2 are joined by a working trunk. Tagged VLANs 10 and 20 pass fine. Two faults exist: SW1 shows native vlan 1 while SW2 was set to native vlan 99, and separately VLAN 20 is absent from SW2's allowed list. (1) Why do the tagged VLANs still work? (2) Which output reveals each fault? (3) What are the two fixes, and where?
See it happen
Encapsulation Lab
Open the frame header stack and locate the 802.1Q tag relative to the source MAC, then find the 12-bit VLAN ID inside it. Seeing the tag as a real insertion into a real frame is what stops it being an abstract four bytes.
Prepare for the lab
Week 3 Lab — VLAN and Trunk (stage 2 of 4)
Continue the same SW1/SW2 topology from Lesson 2. You configure a static 802.1Q trunk carrying VLANs 10 and 20, harden the native VLAN to 99 on both ends, pin the port with nonegotiate, then diagnose a deliberately broken trunk carrying both faults at once.
This lesson prepares you to:
- • Configuring switchport mode trunk and an allowed VLAN list on both ends
- • Setting a matching non-default native VLAN and reading the CDP mismatch log
- • Observing that two dynamic-auto ends never form a trunk
- • Separating an allowed-list omission from a native mismatch in CLI output
The redundant links you build here are what the STP and EtherChannel lessons operate on — keep the topology.
Open the labStudy deeper
Topic guides extend this lesson — they do not replace the first-party walkthrough above.
VLANs & Trunks
For the full trunking reference — tag format detail, ISL history, and the complete verification command set
