PVLAN

简介

PVLAN(Private VLAN 私有VLAN)通常用于企业内部网,用来防止连接到某些接口或接口组的网络设备之间的相互通信,但却允许与默认网关进行通信。尽管各设备处于不同的PVLAN中,它们可以使用相同的IP子网。在PVLAN中,交换机端口有3种类型:Isolated Port(隔离端口)、Community Port(团体端口)和Promiscuous Port(混杂端口);它们分别对应不同的VLAN类型:Isolated Port属于Isolated PVLAN,Community Port属于Community PVLAN,而代表一个Private VLAN整体的是Primary PVLAN(主私有VLAN),前面两类VLAN也称为Secondary PVLAN(辅助私有VLAN),它们需要和Primary PVLAN绑定在一起,Promiscuous Port属于Primary PVLAN。

传统VLAN的局限性:

随着网络的迅速发展,用户对于网络数据通信的安全性提出了更高的要求,诸如防范******、控制病毒传播等,都要求保证网络用户通信的相对安全性;传统的解决方法是给每个客户分配一个VLAN和相关的IP子网,通过使用VLAN,每个客户被从第2层隔离开,可以防止任何恶意的行为和Ethernet的信息探听。然而,这种分配每个客户单一VLAN和IP子网的模型造成了巨大的可扩展方面的局限。这些局限主要有下述几方面:

1.VLAN的限制:交换机固有的VLAN数目的限制;

2.复杂的STP:对于每个VLAN,每个相关的Spanning Tree的拓扑都需要管理;

3.IP地址的紧缺:IP子网的划分势必造成一些IP地址的浪费;

4.路由的限制:每个子网都需要相应的默认网关的配置。

PVLAN简介

PVLAN的应用对于保证接入网络的数据通信的安全性是非常有效的,用户只需与自己的默认网关连接,一个PVLAN不需要多个VLAN和IP子网就能提供具备二层数据通信安全性的连接,所有的用户都接入PVLAN,从而实现了所有用户与默认网关的连接,而与PVLAN内的其它用户没有任何访问。PVLAN功能可以保证同一个VLAN中的各个端口相互之间不能通信,但可以穿过Trunk端口。这样即使同一VLAN中的用户相互之间也不会受到广播的影响。

PVLAN的2种VLAN:

主要VLAN(Primary VLAN):把流量从混杂端口传送到隔离、团体和同一个VLAN内部的其它主要混杂端口。

辅助VLAN(Secondary VLAN):辅助VLAN包含两种VLAN类型:

隔离VLAN(Isolated VLAN):把流量从隔离端口传送到一个混杂端口。隔离VLAN中的端口,使其不能与PVLAN

(另一个团体VLAN端口或相同隔离VLAN内的端口)内部的任何其它端口进行第2层通信。若要与其它端口通

信,则必须穿越混杂端口。

团体VLAN(Community VLAN):在相同团体VLAN内部的团体端口之间传送流量并传送到混杂端口,团体VLAN内的

端口可以在第2层彼此通信(只是在相同团体VLAN内部),但是不能与其它团体或隔离VLAN的端口进行通信。

若要与其它端口进行通信,则必须穿越混杂端口。

PVLAN的2种端口类型:

混杂端口(Promiscuous Port):隶属于“Primary VLAN”,一个混杂端口可以与所有接口通信,包括PVLAN内的

隔离和团体端口;混杂端口的功能是在团体和隔离的VLAN端口之间传递流量。

主机端口(Host Port):隶属于“Secondary VLAN”,由于“Secondary VLAN”具有两种属性,那么主机端口依

“Secondary VLAN”属性的不同也有两种分类:

隔离端口(Isolated Port):它与PVLAN内的所有其它端口相分离,除混杂端口外;来源于隔离端口的流量仅仅

传送给混杂端口。

团体端口(Community Port):它在逻辑上把相同区域内部的各个端口和混杂端口结合到一起,流量可以在它们

之间传送。

PVLAN的使用规则:

1.一个“Primary PVLAN”当中只能有1个“Promiscuous Port”;

2.一个“Primary PVLAN”当中至少有1个“Secondary PVLAN”,但是没有上限;

3.一个“Primary PVLAN”当中只能有1个“Isolated PVLAN”,可以有多个“Community PVLAN”;

4.不同“Primary PVLAN”之间的任何端口都不能互相通信(这里“互相通信”是指二层连通性);

5.“Isolated Port”只能与“Promiscuous Port”通信,除此之外不能与任何其他端口通信;

6.“Community Port”可以和“Promiscuous Port”通信,也可以和同一“Community PVLAN”中的其它物理端

口进行通信,除此之外不能和其他端口通信。

7.创建PVLAN前,需要配置VTP模式为Transparent,在配置PVLAN后,将不能再把模式转变为Server和Client;

8.在配置PVLAN中,不使用VLAN1,VLAN1002 - 1005;

9.三层的VLAN接口只能分配给主VLAN;

10.不能在PVLAN中配置EtherChannel;

11.假如交换机上一个端口作为SPAN的目的端口,这个端口会在配置PVLAN的后失效;

12.PVLAN的端口可以做SPAN的源端口;

13.假如在PVLAN中删除了一个VLAN,那么属于该VLAN的端口将失效。

受保护的端口(PVLAN边缘)和PVLAN:

这两种技术都可以实现交换机同一VLAN中的接口间不能通信的目的,但这种“不可通信”不是真正的隔离并且只是一种表面现象,通过某些办法是可以打破这种表象的。

受保护的端口要求:

①只限于同一交换机的同一VLAN,它不能隔离位于不同交换机或不同VLAN的两个受保护的端口间通信;

②受保护的端口间若要通信必须通过3层设备,在受保护端口间路由;

③控制流量是一个例外,它将在受保护的端口间进行转发(如路由选择协议更新);

④受保护的端口和非保护端口间的转发一般优于默认行为;

⑤默认情况下端口不配置受保护的端口。

配置命令:SW1(config)#int f0/1

SW1(config-if)#switchitchport protected //开启端口保护

SW1#show int f0/1 switchport //查看交换端口的配置

Catalyst交换机上的VLAN支持:

PVLAN

实验

命令:

SW1(config-vlan)#private-vlan community

SW1(config-vlan)#private-vlan isolated

SW1(config-vlan)#private-vlan primary

SW1(config-vlan)#private-vlan association 101-102

SW1(config-if)#switchport private-vlan host-association 100 101

SW1(config-if)#switchport mode private-vlan host

SW1(config-if)#switchport private-vlan mapping 100 101,102

SW1(config-if)#switchport mode private-vlan promiscuous

SW1(config-if)#private-vlan mapping 101-102
PVLAN

SW1(config)#vtp mode transparent

SW1(config)#vlan 200

SW1(config-vlan)#name VLAN-200

SW1(config)#int f0/23

SW1(config-if)#switchport access vlan 200

SW1(config-if)#switchport mode access //用于接入SW2交换机

SW1(config)#ip routing //配置三层交换,SW1承担Vlan 100和Vlan 200间的路由功能

SW1(config)#int vlan 200

SW1(config-if)#ip add 172.16.2.254 255.255.255.0

SW1(config-if)#no sh

1.创建主要和辅助PVLAN:

SW1(config)#vlan 100

SW1(config-vlan)#name VLAN-100

SW1(config-vlan)#private-vlan primary //配置该VLAN为主VLAN

SW1(config)#vlan 101

SW1(config-vlan)#private-vlan community //配置该VLAN为辅助VLAN的团体VLAN

SW1(config)#vlan 102

SW1(config-vlan)#private-vlan isolated//配置该VLAN为辅助VLAN的隔离VLAN

2.把辅助VLAN与主要VLAN关联:

SW1(config)#vlan 100

SW1(config-vlan)#private-vlan association 101-102//把本主VLAN和辅助VLAN101、102关联

3.把辅助VLAN映射到交换机SVI(虚拟接口):

SW1(config)#int vlan 100

SW1(config-if)#ip add 172.16.1.254 255.255.255.0

SW1(config-if)#private-vlan mapping add 101-102 //将辅助VLAN映射到3层接口,允许PVLAN入口流量

的3层交换;辅助VLAN被映射到主VLAN后就不能起自己的SVI了,也就是说映射时也可以不映射全部的辅助VLAN

SW1(config-if)#no sh

4.配置一个2层端口作为隔离或团体端口,把这个2层端口与初级VLAN和可选辅助对VLAN进行关联:

SW1(config)#int f0/1

SW1(config-if)#switchport private-vlan host-association 100 101

//把本接口配置为团体接口;即本接口属于主Vlan 100,并关联到辅助Vlan 101中

SW1(config-if)#switchport mode private-vlan host //辅助VLAN的接口模式被定义为host

SW1(config)#int f0/2

SW1(config-if)#switchport private-vlan host-association 100 101

SW1(config-if)#switchport mode private-vlan host

SW1(config)#int f0/3

SW1(config-if)#switchport private-vlan host-association 100 102

SW1(config-if)#switchport mode private-vlan host

SW1(config)#int f0/4

SW1(config-if)#switchport private-vlan host-association 100 102

SW1(config-if)#switchport mode private-vlan host

5.配置一个2层端口作为PVLAN混杂端口,并将这个混杂端口映射到初级VLAN端口和可选的辅助VLAN对:

SW1(config)#int f0/13

SW1(config-if)#switchport private-vlan mapping 100 101,102//把本接口属于主Vlan 100,

并实现主VLAN和辅助VLAN间的映射;主VLAN接口也可以不映射所有的辅助VLAN

SW1(config-if)#switchport mode private-vlan promiscuous //把本接口配置为混杂接口,即

本接口可以和Vlan 101、102通信;主VLAN接口的模式一定是Promiscuous

这时PC1/(PC2)能与PC2/(PC1)、Server、Vlan 200(SW2)通信;注意PC1/PC2与PC3和PC4是不通的!PC3/PC4只能与Server、Vlan 200(SW2)通信;注意PC3和PC4是不通的!

说明:

①只有VTP模式为透明模式,才能配置PVLAN。

②host|promiscuous:

host:只能为一个辅助VLAN服务;

promiscuous:可以为多个辅助VLAN服务。

实验调试

SW1#show int f0/1 switchport

SW1#show int private-vlan mapping

SW1#show vlan private-vlan //查看PVLAN信息


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章