总体结构图:
目标:vlan10和vlan20中的主机不能通信,vlan10和vlan30中的主机能够通信,vlan20和vlan30中的主机能够通信。
整个结构的所有接口,我们都使用hybrid接口类型
配置
交换机sw1
[Huawei]vlan batch 10 20 30// 因为PC1可以访问vlan10和vlan30当中的主机,所以E0/0/3接口在接收到带有vlan10和vlan30标签的数据时,剥掉标签发送给PC1[Huawei]interface Eth0/0/3[Huawei-Ethernet0/0/3]port hybrid pvid vlan 10[Huawei-Ethernet0/0/3]port hybrid untagged vlan 10 30[Huawei-Ethernet0/0/3]quit // 因为带有vlan10,vlan20和vlan30标签的数据都要经过此接口,所以设置带有vlan10,vlan20和vlan30标签的数据通过G0/0/1接口发送时带原标签发送[Huawei]interface GigabitEthernet 0/0/1[Huawei-GigabitEthernet0/0/1]port hybrid tagged vlan 10 20 30[Huawei-GigabitEthernet0/0/1]quit // PC6可以访问各个vlan中的主机,所以E0/0/2接口在接收到带有vlan10,vlan20标签的数据时,会剥掉标签发送给PC6(既然只有一个vlan30的主机,那为什么还要设置接收到vlan30的数据时要剥掉标签发送给PC6呢,这个问题我会在最后提出来)[Huawei]interface Eth0/0/2[Huawei-Ethernet0/0/2]port hybrid pvid vlan 30[Huawei-Ethernet0/0/2]port hybrid untagged vlan 10 20 30[Huawei-Ethernet0/0/2]quit [Huawei]interface Eth0/0/4[Huawei-Ethernet0/0/4]port hybrid pvid vlan 10[Huawei-Ethernet0/0/4]port hybrid untagged vlan 10 30[Huawei-Ethernet0/0/4]quit[Huawei]interface Eth0/0/5[Huawei-Ethernet0/0/5]port hybrid pvid vlan 20[Huawei-Ethernet0/0/5]port hybrid untagged vlan 20 30
交换机sw2
[Huawei]vlan batch 10 20 30[Huawei]interface GigabitEthernet 0/0/2[Huawei-GigabitEthernet0/0/2]port hybrid tagged vlan 10 20 30[Huawei-GigabitEthernet0/0/2]quit [Huawei]interface Eth0/0/2[Huawei-Ethernet0/0/2]port hybrid pvid vlan 10[Huawei-Ethernet0/0/2]port hybrid untagged vlan 10 30[Huawei-Ethernet0/0/2]quit[Huawei]interface Eth0/0/3[Huawei-Ethernet0/0/3]port hybrid pvid vlan 20[Huawei-Ethernet0/0/3]port hybrid untagged vlan 20 30
测试结果
PC1访问PC3
PC1访问PC4
PC1访问PC6
PC3访问PC4
PC3访问PC5
PC3访问PC6
还有一个小问题,那就是为什么要在交换机SW1连接PC6的E0/0/2接口上设置port hybrid untagged vlan 30呢?既然只有一个在vlan30中的主机,那为什么还要设置E0/0/2接口在接收到vlan30的数据时,要剥掉标签发送给PC6呢?
我把交换机SW1连接PC6的E0/0/2接口设置为port hybrid tagged vlan 30,这时我再去使用PC6访问不同vlan中的主机一样可以成功访问。
我在交换机SW1连接PC6的E0/0/2接口上不执行port hybrid tagged vlan 30和port hybrid untagged vlan 30这两条命令,此时我再用PC6访问不同vlan中的主机却无法访问。
交换机SW1的E0/0/2接口作为发送数据的接口时没有发送带vlan30标签的数据给PC6,但是交换机SW1的E0/0/2接口作为接收数据的接口时会接收带vlan30标签的数据,使用port hybrid tagged vlan 30和port hybrid untagged vlan 30这两条命令中任意一条就可以完成通信,两者都不使用就无法完成通信,那这样看来,port hybrid tagged vlan和port hybrid untagged vlan这两条命令,影响的可能不只是接口发送数据,对接口接收数据也会有影响。
个人理解,若有不足或错误之处还请指出,如果您有什么想法或见解也可以写在评论区,我们一起学习。