3. VLAN设计与二层分段实践
VLAN 是二层分段最基础也最容易被“配得能用、却设计得不好”的一环。它的本质是把一台物理交换机在逻辑上切成多个广播域:同一 VLAN 内的终端处于同一广播域,可直接二层通信;不同 VLAN 之间必须经过三层设备(SVI、路由器或防火墙)才能互通。因此 VLAN 规划不是“随手编号”,而是把业务、安全域、地址段、网关位置和策略执行点绑定在一起的设计动作。
VLAN 规划原则
规划时建议遵循几条硬性原则。第一,一号一义、全局唯一:VLAN ID 在整个二层域内必须唯一,且与业务含义一一对应,例如 10=管理、20=办公数据、30=语音、40=服务器、99=未使用端口隔离。第二,按功能而非按物理位置划分:同一部门跨楼层应保持同一 VLAN,避免“按楼层编号”导致策略随搬迁失效。第三,预留连续区间:如 10–49 给用户、50–79 给服务器、80–99 给网络设备与保留,便于后续扩展和 ACL 汇总。第四,网关与 VLAN 一一对应:每个 VLAN 对应一个子网和一个 SVI 网关,子网大小按终端数预留 30%–50% 余量。
一个可直接参考的规划表如下(示例参数,非实测):
| VLAN ID | 名称 | 用途 | 示例子网 | 网关 |
|---|---|---|---|---|
| 10 | MGMT | 设备管理 | 10.10.10.0/24 | 10.10.10.1 |
| 20 | DATA | 办公数据 | 10.10.20.0/23 | 10.10.20.1 |
| 30 | VOICE | IP 电话语音 | 10.10.30.0/24 | 10.10.30.1 |
| 40 | SERVER | 服务器区 | 10.10.40.0/24 | 10.10.40.1 |
| 99 | PARKING | 未使用端口隔离 | — | — |
Trunk 与 Native VLAN
接入交换机与汇聚/核心之间承载多个 VLAN,需要配置 802.1Q Trunk。Trunk 链路会在每个帧中插入 4 字节标签,其中 12 位 VID 标识所属 VLAN。关键点是 Native VLAN:它是不打标签传输的 VLAN,两端必须一致,否则会出现 VLAN 跳变和流量串扰。安全实践中建议把 Native VLAN 改为一个专用且不承载业务的 VLAN(如 999),并显式配置,避免默认 VLAN 1 被利用。
interface GigabitEthernet1/0/24
description Uplink-to-Core
switchport mode trunk
switchport trunk native vlan 999
switchport trunk allowed vlan 10,20,30,40
switchport nonegotiate
其中 switchport nonegotiate 关闭 DTP 协商,防止对端被诱导形成 Trunk;allowed vlan 显式放行,避免“全放行”扩大二层攻击面。验证时用 show interfaces trunk 查看 Native VLAN、允许列表和转发状态,若 Native VLAN 不匹配,通常会看到 “native vlan mismatch” 告警。
VTP 模式选择
VTP 用于在二层域内同步 VLAN 数据库,但它的风险在于“一台配置错误的 Server 可覆盖全网 VLAN”。现代设计中更推荐 Transparent 或 Off:Transparent 只转发 VTP 通告、本地独立维护 VLAN;Off 则完全不参与 VTP。若必须使用 Server/Client 模式,应设置高版本号保护、配置 VTP 密码,并严格控制 Server 数量。对 Catalyst 体系,建议在接入层统一使用 Transparent,由网管系统或模板下发 VLAN,避免依赖 VTP 自动同步。
私有 VLAN(PVLAN)
当同一 VLAN 内需要进一步隔离(如服务器区、酒店客房、运营商共享接入),可使用私有 VLAN。它把二层域细分为 Primary VLAN、Isolated VLAN 和 Community VLAN:Isolated 端口之间完全不能互通,只能与 Promiscuous 端口通信;Community 内可互通,但与其他 Community 隔离。典型应用是服务器区:多台服务器同处一个子网,但彼此不能横向访问,只允许与网关/负载均衡器通信,从而抑制横向移动。
语音 VLAN 与数据 VLAN 分离
IP 电话通常自带 PC 口,形成“电话+PC”串接。推荐做法是:交换机接入端口配置为 Voice VLAN + Data VLAN 双 VLAN 模式,电话通过 CDP/LLDP-MED 自动获取语音 VLAN,PC 流量进入数据 VLAN。这样语音流量可被标记为 EF(DSCP 46)并优先转发,数据流量保持尽力而为,同时两者处于不同子网,便于 QoS 和 ACL 分别控制。
interface GigabitEthernet1/0/10
switchport mode access
switchport access vlan 20
switchport voice vlan 30
spanning-tree portfast
mls qos trust cos
验证时用 show interfaces switchport 确认 access vlan=20、voice vlan=30;用 show cdp neighbors 或 show lldp neighbors 确认电话已识别。若电话未获取到语音 VLAN,常见原因是 CDP/LLDP-MED 被关闭或语音 VLAN 未在 Trunk 上放行。
实践要点与验证
落地时建议按“先规划、再建库、后配口、终验证”的顺序推进。先在核心与接入上统一创建 VLAN 并命名,再配置 Trunk 与 Native VLAN,最后配置接入端口。验证清单可包括:show vlan brief 确认 VLAN 存在且端口归属正确;show interfaces trunk 确认 Native VLAN 一致、允许列表正确;show interfaces switchport 确认语音/数据双 VLAN;show cdp neighbors detail 确认电话识别。若出现跨 VLAN 不通,优先检查网关 SVI 是否 up、Trunk 是否放行该 VLAN、Native VLAN 是否匹配,而不是先怀疑路由。