

嘿!兄弟们!
不少同学配置 VLAN 时都有过这样的困惑:
明明敲了创建 VLAN 的命令,结果不同 VLAN 的设备还能 ping 通,同一 VLAN 的端口反而不通。
这问题就出在 ——
你只学会了搭框架,却没弄明白 VLAN 是怎么实现隔离的。
今天咱们就把这层逻辑拆开揉碎了讲。
今日文章阅读福利:《网工入门安装包》
扫码添加小助理微信,备注【入门】,即可获取。
一、VLAN是如何隔离的
从物理连接来看,所有设备都接在同一台交换机上,本可以自由通信。但 VLAN 就像在交换机内部建起了一道道看不见的墙,把不同端口划分到不同的虚拟区域。
每个 VLAN 都是一个独立的二层广播空间,数据帧只会在所属的区域内流转。也就是说,VLAN 隔离的核心是广播域。
当你创建 VLAN10 和 VLAN20 后,交换机就会遵循这样的规则:
• VLAN10 的广播帧不会闯入 VLAN20 的区域
• VLAN20 的设备不会回应 VLAN10 的 ARP 查询
• 像 DHCPDiscover 这类广播报文,也只能在本 VLAN 内传播
但有个大前提不能忽略:必须让每个端口明确自己属于哪个 VLAN,否则这些虚拟隔墙就形同虚设。
二、端口模式
很多时候 VLAN 配置不生效,不是 VLAN 本身有问题,而是端口模式没配置对,导致数据帧的 VLAN 标识混乱。
Access 端口:专属通道
port link-type access
port default vlan 10
这种模式适合连接终端设备,比如电脑、打印机、监控摄像头。这些设备不懂 VLAN 技术,交换机会自动给经过该端口的数据帧打上对应 VLAN 的标签。
简单说,Access 端口是一人一证:只要从这个端口进入,就只能属于指定的 VLAN。
Trunk 端口:多车道通道
port link-type trunk
port trunk allow-pass vlan 10 20 30
用于交换机之间的连接,能同时传输多个 VLAN 的数据。如果不配置允许通过的 VLAN 列表,即便创建了 VLAN,数据也传不过去。
最容易出错的地方就在这:创建了 VLAN 却没在 Trunk 端口放行,就好比建了路却设了关卡,数据帧根本进不来。
所以记住这几点:
• 端口模式决定 VLAN 隔离是否生效
• Trunk 端口不放行某 VLAN,该 VLAN 就成了 "孤岛"
• Access 端口不指定 VLAN,就会和其他端口混在一起
三、三层网关
正常情况下不同 VLAN 无法通信,但配置了三层网关后,情况就变了。当你在交换机上配置 VLANIF 接口,或者通过路由器、防火墙实现三层互联时:
interface Vlanif10
ip address 192.168.10.1
interface Vlanif20
ip address 192.168.20.1
不同 VLAN 的设备就能跨区域通信了。
这时候你以为 VLAN 没起作用,其实是VLAN 只完成了二层隔离,而三层配置又把它们连通了。
四、关键总结
VLAN 的隔离效果,取决于三个关键点:
• 端口是否正确加入目标 VLAN
• Trunk 端口是否放行所需 VLAN
• 三层是否配置了跨 VLAN 路由
掌握了这几点,就能避开大多数 VLAN 配置的坑。如果在实际操作中遇到特殊情况,欢迎在评论区分享你的经历~