作者:范军 (Frank Fan) 新浪微博:@frankfan7   微信:frankfan

架构师有创意的设计方案,有时可以节省大量的硬件成本和后期的维护成本。有些情况下用好PVLAN,可以简化网络管理,而又满足安全隔离的需要。


概念

PVLAN的概念早就在物理网络中就有,vSphere Distributed Switchhyperviosor层实现了这个概念。

【虚拟化实战】网络设计之三PVLAN_第1张图片

Private  Primary PVLAN5 就是我们传统的VLAN,它自己是primary在它的下面又分出了很多个Secondary PVLAN。每个seconary PVLAN 都有一个ID

三种Secondary PVLAN的类型是:

Promiscuous

属于Promiscuous的虚拟机EF 可以和同属于一个PrimaryVLAN的任何设备通讯。  PromiscuousPVLAN  ID Primary VLAN ID 是一样的。在上图中都是5

Community

同属于Community PVLAN的虚拟机AB之间可以通讯,可是他们不能和除了Promiscuous  PVLAN之外的设备通讯

Isolated

同属于Isolated  PVLAN的虚拟机CD之间不可以通讯,可是他们不能和除了Promiscuous PVLAN之外的设备通讯


情景一:

某公司的DMZ内有很多虚拟机和物理设备,担心某个设备被***后会危及其他设备。

PVLAN是一个很合适的解决方案。

下图摘自PVLAN– A Widely Underutilized Feature  fromvXpertise.net

【虚拟化实战】网络设计之三PVLAN_第2张图片

VM2VM3是同一个应用的两个虚拟机。把它们放入Community PVLAN可以保证它们之间的通讯。在物理交换机上也设置好PVLAN,并把相关路由器或者防火墙也接入属于同一个Primary VLANPromiscuousPVLAN.   这样VM2VM3可以和路由器、防火墙通讯,从而可以和DMZ之外的设备通讯。但是它们不可以和同属于DMZ内的VM1通讯。

好处在于一旦VM2VM3被***,不会以此为跳板轻易访问到VM1。另一个好处是每次在该PrimaryVLAN内增加虚拟机,只需在vSphere中设置SecondaryPVLAN ID无需每次都更改物理交换机的设置。


情景二:

此情景摘自vSpherePrivate VLANs – Dev Environment Use Case fromhttp://virtuallybright.com


某公司需要搭建一个测试环境,希望与实际生产环境的设置一致。这难免需要相对复杂的VLAN隔离。

通过PVLAN方案,在Primary VLAN 70下面分出三个Private VLAN  10,20 30.  也可以实现隔离的目的。模拟了生产环境中的SecureZoneproductionZone WorkstationZone.

【虚拟化实战】网络设计之三PVLAN_第3张图片


注意如果在ESXi2 上也有同样的PVLAN设置,那么ESXi1Community V LAN 10 内的虚拟机 ESXi 2  Community V LAN 10 内的虚拟机可以通讯么?可以。前提是物理交换机支持PVLAN并且已经作好相应设置。可参考

ConfiguringPrivate VLANs

UnderstandingPrivate VLANs

UnderstandingvSphere Private VLANs For Fun and Profit


你还能想出其他PVLAN可以发挥长处的的情景么?