号主:老杨丨11年资深网络工程师,更多网工提升干货,请关注公众号:网络工程师俱乐部
这个问题说简单也简单,说绕也真绕。
很多网工在配置 VLAN 的时候,明明加了 VLAN,还是通信不了,结果一查才发现问题出在——你以为是 VLAN 的锅,其实是 Trunk / Access 模式没搞对。
所以今天这篇文章,我们就围绕这个核心问题来讲。
一、VLAN 是怎么“生效”的?
你配置了一个 VLAN 10,这事本身还没什么意义。
它什么时候才“生效”?
→ 当某个接口进入这个 VLAN 并以对应的方式转发时,VLAN 才真正发挥作用。
那关键就在于:接口是 Access 模式还是 Trunk 模式。
这两个模式,不仅决定了 VLAN 能不能生效,还决定了设备之间能不能互通。
二、Access 接口:VLAN 是“唯一身份”
Access 模式下,接口只能属于一个 VLAN。
配置是这样的:
interface GigabitEthernet 0/0/1
port link-type access
port default vlan 10
它的意思是:
-
进出这个端口的所有数据包,都强行打上 VLAN 10 的标签(或直接剥掉)
-
设备连接这口时,看到的是一个“纯净的 VLAN 10 网络”
所以 Access 接口最适合接入普通终端,比如 PC、打印机、摄像头——
终端压根就不懂 VLAN,交换机要帮它搞定一切。
结论:Access 模式是 VLAN 的执行者,VLAN ID 是强制的、排他的。
三、Trunk 接口:VLAN 是“选择权”
Trunk 模式就灵活多了,可以承载多个 VLAN 的流量。
配置如下:
interface GigabitEthernet 0/0/2
port link-type trunk
port trunk allow-pass vlan 10 20 30
这句话翻译成人话就是:
-
这口支持 VLAN 10、20、30 的流量通过
-
包含其他 VLAN 的数据包直接被丢掉
而 Trunk 模式下,数据包保留 VLAN tag,下一跳也能看到。
适合用于:
- 交换机之间传递多个 VLAN
- 汇聚接入三层转发场景
- 无线 AP 或网关下挂多 SSID、业务划分
Trunk 不是 VLAN 的“执行者”,而是“通行证管理者”
你能不能走,还得看你是不是我 Trunk 允许的 VLAN。
四、那到底谁决定 VLAN 生不生效?
你要看你在问哪一层:
对终端设备来说:
★ Access 模式决定了 VLAN 是否生效,因为终端压根不理解 VLAN。
你把某个 PC 插到 VLAN 10 的 Access 口,它就是 VLAN 10 的一员。
你把它改成 VLAN 20,它就换网段了,立刻断线。
对交换机之间来说:
★ Trunk 模式决定了 VLAN 是否能传递成功。
哪怕两台交换机都配置了 VLAN 10, 中间的 Trunk 口没放行 VLAN 10,它也会被直接丢包处理。
这就是为什么你加了 VLAN、设了接口,还是互通不了。——你Trunk口忘放 VLAN!
五、实战判断思路:三问搞清楚
-
这口是 Access 还是 Trunk?
→ 决定了数据包是加 VLAN tag 还是不加。
-
这个 VLAN 是不是被允许通过?
→ Trunk 上要 allow-pass vlan X
-
三层网关有没有在这个 VLAN 上?
→ 否则同 VLAN 内也无法通信(尤其是跨交换机时)
总结一句话
VLAN 是逻辑划分,
Access 是绑定身份,
Trunk 是放行通道,
真正能不能通,接口模式说了算。
原创:老杨丨11年资深网络工程师,更多网工提升干货,请关注公众号:网络工程师俱乐部