Private VLAN 是什么
PVLAN 是 Cisco 的端口级细粒度隔离技术:用一个主 VLAN(primary)加若干二级 VLAN(isolated / community)实现三类关系——isolated 端口之间完全不通、community 组内互通跨组不通、promiscuous 端口可与所有成员通信。典型用途是 IDC 托管机柜:多家客户共享一个网段和网关,彼此却不可见。
基本信息
| 适用平台 | Cisco IOS(PVLAN) |
|---|---|
| 组成 | primary VLAN + isolated / community 二级 VLAN |
| 成员类型 | isolated host / community host / promiscuous |
| 共享资源 | 网关与服务器挂在 promiscuous 端口上 |
| 跨设备扩展 | Trunk 上需专门放行主与二级 VLAN |
典型使用场景
- IDC 托管:多客户共享网段但互相不可见
- 酒店与公寓网络:房间之间隔离、都能上网
- 多租户服务器区:同租户内互通、租户之间隔离
- 访客隔离:访客终端之间不可互访
- 替代 ACL 方案:二层完成隔离,不必逐条维护访问策略
Cisco 配置示例
Cisco 配置示例
vlan 100
private-vlan primary # 定义主 VLAN
vlan 101
private-vlan isolated # 定义隔离型二级 VLAN
vlan 100
private-vlan association 101 # 建立主与二级 VLAN 的关联
interface GigabitEthernet1/0/1
switchport mode private-vlan host # 终端侧端口
switchport private-vlan host-association 100 101
interface GigabitEthernet1/0/24
switchport mode private-vlan promiscuous # 网关/服务器侧端口
switchport private-vlan mapping 100 101
show vlan private-vlan # 核对关联关系与端口类型成员互通关系
| 成员类型 | 同类型之间 | 与其它类型 | 典型位置 |
|---|---|---|---|
| isolated host | 完全不通(含广播) | 只能访问 promiscuous | 需要严格隔离的客户机 |
| community host | 组内互通 | 跨组不通,可访问 promiscuous | 需要小范围互访的客户组 |
| promiscuous | 可访问所有成员 | — | 共享网关、负载均衡或服务器 |
isolated 端口之间连广播都不通:如果客户机之间需要互访,必须放到 community VLAN,而不是靠调整访问控制策略解决。
PVLAN 跨设备部署要在 Trunk 上专门放行主 VLAN 与二级 VLAN,不能按普通 VLAN 的延伸方式处理;两端映射关系不一致时主机会异常放行或不通。
部署与验收清单
- ① 规划主 VLAN 与二级 VLAN 的编号,避免与业务 VLAN 冲突
- ② 明确哪些客户机进 isolated、哪些进 community
- ③ 网关与共享服务器挂在 promiscuous 端口并配好映射
- ④ 跨设备场景在 Trunk 上放行主与二级 VLAN
- ⑤ 验收时逐类成员互测:隔离是否彻底、互访是否符合设计
- ⑥ 把成员分类与端口类型写入台账,便于后续排障
和 MUX VLAN 的取舍
华为 MUX VLAN 与 Cisco PVLAN 解决的模型相近:都有主 VLAN 与两类从 VLAN。差别在于 PVLAN 里需要互访的成员要显式选择 community 类型,而 MUX 的 group 从 VLAN 本身就是互通组。选型时按现有设备厂商与人员熟悉度决定,避免在同一网络里混用两套模型。