PVALN

10 Jul

二层交换机间处于同一VLAN的端口可以通信(处于不同VLAN的端口肯定不能在二层间通信,要通信只能走三层)。但某些情形下想让处于相同VLAN的端口间也不能通信,就可以用PVLAN(私有VLAN),可以让同一VLAN间的某些端口不能通信。

比如局域网内部希望所有端口都能和网关通信,因此都划入同一个VLAN中。但某些端口间不希望能相互通信,可以将某些端口配置成PVLAN,以实现 相同VLAN间端口隔离。再比如小区用户接入宽带,你肯定不希望你电脑发出的数据被你邻居收到。技术上可以为每个小区用户划分一个VLAN以实现端口隔离,但这不现实,没法分配这么多VLAN,即使可以分配这么多VLAN,每个VLAN相关的STP拓扑都要管理,开销很大。因此就需要用到PVLAN,小 区所有用户处于同一个VLAN,通过PVLAN保证用户间无法通信。

PVLAN分2种:Primary VLAN和Secondary VLAN

Primary VLAN:主VLAN,即普通的VLAN。Primary VLAN可以和Secondary VLAN里任何端口通信。

Secondary VLAN:辅助VLAN。从属于Primary VLAN,因此配置好Secondary VLAN后一定要将其关联到某Primary VLAN上才能生效。分为2种:Isolated VLAN和Community VLAN

Isolated VLAN:孤立VLAN。配置成Isolated VLAN的端口不能和该Secondary VLAN里的任何端口通信。

Community VLAN:团队VLAN。配置成Community VLAN的端口能和该Secondary VLAN里的同属于一个团体内的端口通信。

举个例子下图中DNS的两台服务器和WWW和SMTP的服务器同属于一个VLAN,但不想让它们在二层能相互通信

20160102131153143

可以在交换机上将连接DNS的f0/1 – 2口配成Community VLAN。连接WWW和SMTP口配成Isolated VLAN。连接网关的f0/24口属于主VLAN,因此所有口和f0/24口都能通信:

SW1(config)#vtp transparent             //VTP暂时不支持PVLAN,因此先关闭VTP  
SW1(config)#vlan 201  
SW1(config-vlan)#private-vlan isolated      //将VLAN 201设为Isolated VLAN  
SW1(config)#vlan 202  
SW1(config-vlan)#private-vlan community     //将VLAN 202设为Community VLAN  
SW1(config)#vlan 100  
SW1(config-vlan)#private-vlan primary               //VLAN 100为Primary VLAN  
SW1(config-vlan)#private-vlan association add 201,202       //关联上面两个Secondary VLAN  
SW1(config)#inter f0/24  
SW1(config-if)#switchport mode private-vlan promiscuous         //连接网关的端口配置成Primary VLAN,端口改为混杂模式  
SW1(config-if)#switchport private-vlan mapping 100 201,202  
SW1(config)#inter range f0/1 - 2                                  
SW1(config-if)#switchport mode private-vlan host                //连接DNS的端口配置成Community VLAN,端口为主机模式  
SW1(config-if)#switchport private-vlan host-association 100 202   
SW1(config)#inter range f0/3 - 4                                  
SW1(config-if)#switchport mode private-vlan host                //连接WWW和SMTP的端口配置成Isolated VLAN,端口为主机模式  
SW1(config-if)#switchport private-vlan host-association 100 201   

上面连接网关的端口配置成混杂模式promiscuous,而其他端口配置成主机模式host。host表示该端口只能为某个Secondary VLAN(即Isolated VLAN或Community VLAN)服务。而promiscuous表示该端口可以为所有Secondary VLAN服务。将Primary VLAN的端口设为promiscuous混杂模式,就可以让其和Secondary VLAN里任何端口通信。

PS1:有些注意点:

1.不能在VLAN1,VLAN1002 – 1005上配置PVLAN
2.不能在PVLAN中配置EtherChannel
3.VTP模式不支持PVLAN,需要将VTP设为Transparent

PS2:以前还有一种技术也可以让同一VLAN间不能通信,即保护端口。保护端口只能和非保护端口通信,保护端口间不能通信。但保护端口只能用于一 台交换机上,多台交换机间就不能生效了。因此现在通常用PVLAN技术。PVLAN上,如SW1过来VLAN100的帧,Trunk上打上标记 100,SW2收到帧发现VLAN100是主VLAN,能转发给VLAN100(包括关联的Secondary VLAN)的端口。如SW1过来Isolated VLAN201的帧,Trunk上打上标记201,SW2收到帧发现201是Isolated VLAN,不转发给任何端口。如SW1过来Community VLAN202的帧,Trunk上打上标记202,SW2收到帧发现202是Community VLAN,能转发给VLAN202的端口。所以用PVLAN比用保护端口更多。

Leave a Reply

Your email address will not be published. Required fields are marked *