如何在交换机上不支持 PVLAN 的情况下实现专用 VLAN (PVLAN) 隔离

网络工程 VLAN 私有VLAN
2021-07-23 11:54:33

我正在我们的公共 IPv4 VLAN 上寻找一些有线客户端隔离。由于我们有一个/23块,隔离是一种非常有用的功能。

但是我们没有能够支持 PVLAN 的交换机。为了规避该问题并避免使用 /30 链接浪费公共 IPv4 地址,我遇到了一个通过网络查看的解决方案,该解决方案涉及将给定交换机上的端口设置为具有一些未标记 VLAN 的“上行链路端口”,并且只是接入端口上的单个 VLAN。

例如:

Port 24: VLAN 100,101,102,103,104 => Untagged
Port 01: VLAN 101                 => Untagged
Port 02: VLAN 102                 => Untagged
Port 03: VLAN 103                 => Untagged
Port 04: VLAN 104                 => Untagged

最后一个问题:这真的会按预期工作吗?如果是,我如何使用这种方法级联交换机?

1个回答

简短的回答是否定的 - PVLAN 功能的存在是有原因的 - 它改变了默认泛洪和学习机制的工作方式,以确保 VLAN 中的主机彼此不可见,同时能够看到它们的网关设备和其他“公共”资源。

话虽如此,您可以在交换机上(在 L2 或 L3 上,具体取决于硬件功能)或在主机本身 (L3) 上使用大量 ACL 重新创建功能等效的东西,以限制所有公共主机之间的流量。

根据您的要求/规则集,这可能非常简单(禁止到同一子网上除网关外的任何其他主机的流量),或者非常繁琐(允许某些主机间流量,但每个主机不同)。

如果您沿着这条路走下去,请研究一些自动化工具(Ansible 等)以使其更容易。