“我明明划了 VLAN,怎么设备之间还是能 ping 通?” “不是说 VLAN 是隔离的吗?”
真相是:VLAN 本质上没你想的那么‘隔’。
这篇咱就一次说清楚:VLAN 到底隔离了什么,为什么它有时候“假隔离”。
一、别被字面意思带偏了,VLAN ≠ 安全隔离
VLAN,虚拟局域网,英文名Virtual LAN。 它的核心目的不是“安全”,而是逻辑划分广播域,换句话说,就是:
★ VLAN 是把原本一个大广播域的二层网络,拆成多个小的广播域。
也就是说:
- 同 VLAN 的设备可以互相广播(比如 ARP、DHCP 报文能到彼此那儿)
- 不同 VLAN 的设备,广播是收不到的(互相不在一个“喊话圈”里)
但你发现没——上面一句话只说了“广播隔离”,没说不能互通!
所以问题来了👇
二、为啥你明明配了 VLAN,还是能互相 ping?
你遇到的这种情况,十有八九是因为 —— 上层设备已经帮你“转发”了。
最典型的几个原因:
1. 路由器/三层交换机做了 VLAN 间转发(就是俗称的三层打通)
只要设备的网关在三层设备上,并且它们的 VLANIF 接口都开了,IP 地址也在正确的网段,结果就是:
VLAN10 → VLANIF10 → 路由 → VLANIF20 → VLAN20
表面上你看着设备 A 和设备 B 是两个 VLAN,但它们走了一圈路由,照样能互 ping。
2. 防火墙 / 核心网关做了策略允许
你可能没注意,防火墙里其实开了策略允许 VLAN 之间互通。 比如:
allow vlan10 → vlan20 any any permit
这种时候,不管你 VLAN 多分得清,防火墙就是能让它们通。
3. 用了同一个 DHCP 地址池
如果你图方便,直接让 VLAN10 和 VLAN20 用了同一个地址池(192.168.1.0/24), 设备虽然在不同 VLAN,但地址在一个网段,结果:
- ARP 层互可见
- 三层设备默认可以互转
这种配置非常容易让人以为 VLAN 隔离失败,其实是你地址规划和网关策略没理清楚。
三、那 VLAN 到底能隔离啥?
我们重新定义一下 VLAN 的“隔离能力”,别再对它有过高期待:
所以你要搞安全,不能靠 VLAN 本身,得搭配 ACL、VRF、Zone、东西向防火墙等手段去管控。
四、怎么才能让 VLAN 真正隔离?
实战中,你要让 VLAN 隔离得彻底,要从以下几个维度下手:
1. 关闭 VLAN 间路由 / VLANIF 接口不要随便开
- 别图省事 VLAN10 VLAN20 都开了 VLANIF 接口
- 如果要隔离就让它没有默认网关,互通靠你手动加策略
2. 规划子网,不要 VLAN 都用一个网段
- 每个 VLAN 配独立网段
- 防止“伪隔离”现象,比如 VLAN10 和 VLAN20 设备都是 192.168.1.X
3. 用 ACL / 防火墙 控制 VLAN 间流量
- 哪些 VLAN 能互通,哪些不能,写成白名单策略明确控制
- 建议加日志,方便排查误通
4. 考虑安全隔离级别更高的方式
- 如果你是多租户/不同业务系统之间,要考虑用 VRF 或物理隔离
- VLAN 不是万能钥匙,它只是最轻量的“分组方法”而已
五、说到底:VLAN 是“分组”不是“防火墙”
一句话总结:
★ VLAN 是把二层网络切成不同的逻辑组,隔离的是广播,不是通信权限。
所以千万别误会 VLAN 自带“封锁功能”,你想让它隔,得配合其它安全手段。
原创:老杨丨11年资深网络工程师,更多网工提升干货,请关注公众号:网络工程师俱乐部