本帖最后由 碧云天 于 2020-5-27 22:55 编辑 一.测试拓扑总结:1.接口为默认配置,输入下面命令不会显示,说明接口默认为hybrid模式,并且pvid为vlan 1,对vlan1不打标。
port link-type hybrid
port hybrid vlan 1
port hybrid untagged vlan 1
2.
没有tag的数据帧能否从hybrid接口进入交换机的条件是:接口untagged vlan或tagged vlan是否包含pvid对应的vlan。
---没有打Tag的数据帧能从默认配置的接口进入交换机是因为接口下有上面所说的默认配置
3.
有tag的数据帧,能否从hybrid接口
进入交换机,需要该接口明确配置tagged或untagged对应的vlan
4.数据帧进入交换机被打tag后能否被hybrid接口
转发,也需要该接口明确配置tagged或untagged对应的vlan
--如果配置为untagged,去掉tag后出去,tagged,那就保留tag出去。
5.通常情况下,连接PC1的hybrid接口会配置untagged哪些vlan,而交换机的级联hybrid接口会配置tagged哪些vlan。
二.基本配置
1.PC1配置IP地址IP:192.168.1.1/24,只配置IP地址和掩码
2.PC2配置IP地址IP:192.168.1.2/24,只配置IP地址和掩码
3.PC3配置IP地址IP:192.168.1.2/24,只配置IP地址和掩码
4.为了防止抓包干扰,把相关接口的STP关闭[SW1]port-group group-member g0/0/1 to g0/0/2
[SW1-port-group]undo stp enable
[SW2]port-group group-member g0/0/1 to g0/0/3
[SW2-port-group]undo stp enable
5.SW1和SW2提前添加好VLAN10 20 30[SW1]vlan batch 10 20 30
[SW2]vlan batch 10 20 30
6.为了便于后面测试,将SW1和SW2的mac-address老化时间设置成最小值10秒[SW1]mac-address aging-time 10
[SW2]mac-address aging-time 10
备注:因为非二层广播包交换机会根据目标mac地址查询mac-address表找到对应接口进行转发,因此把设置老化时间为最小。三.测试步骤1.默认情况下交换机接口为hybrid模式,交换机不做其他配置,所有PC能互通备注:此时在SW1和SW2的互联端口抓包,数据帧中没有插入vlan信息,因为接口默认配置有port hybrid untagged vlan 1.2.测试一:测试不打tag的数据帧从hybrid接口进入交换机的的条件A.配置SW1的g0/0/1接口pvid为vlan 10,但是不配置untagged vlanint g0/0/1
port hybrid pvid vlan 10
这时PC1无法ping通PC3,查看交换机mac-address表,没有发现条目,说明PC1发出的ARP广播包没有从g0/0/1接口进入SW1。
B.配置SW1的g0/0/1接口untagged vlan 10int g0/0/1
port hybrid untagged vlan 10
这时虽然PC1不能ping通PC3,但是查看交换机mac-address表,有对应条目,说明PC1发出的ARP广播包能从g0/0/1接口进入SW1,这时在SW1的g0/0/2接口抓不到包,说明数据帧没有从该接口出来。
另外,经过测试SW1的g0/0/1接口如果配置tagged vlan 10,没有tag数据帧也能从该接口进入交换机,只是一般接PC的接口不会这样配。
2.测试二:测试数据帧从交换机hybrid接口转发的条件备注:需要确定的是,未打标的数据帧进入交换机的hybrid接口后,会Tag pvid对应vlan。A.配置SW1的g0/0/2接口untagged vlan 10int g0/0/2
port hybrid untagged vlan 10
这时PC1能ping通PC3,并且在SW1的g0/0/2接口抓包,可以看到两个方向的数据包,都没有打tag。
备注:未打标的数据帧能进入SW2的默认配置的g0/0/1端口,并能顺利的转发到默认配置的g0/0/3端口。B.配置SW1的g0/0/2接口tagged vlan 10int g0/0/2
port hybrid tagged vlan 10
这时虽然PC1不能ping通PC3,但是在SW1的g0/0/2接口能抓到arp广播包,tag为vlan10,这时在SW2的mac-address表中没有条目,说明数据帧没有进入SW2
3.测试三:测试有tag的数据帧从hybrid接口进入交换机的条件
A.配置SW1的g0/0/2接口tagged vlan 10--与上面的配置相同,因为SW2的mac-address表中没有条目,说什么有tag的数据帧无法从默认配置的ybrid接口进入交换机。
B.配置SW2的g0/0/1接口untagged vlan 10int g0/0/1
port hybrid untagged vlan 10
这时虽然PC1不能ping通PC3,在SW2的mac-address表中有条目,说明数据帧进入了SW2,这时在PC3上抓包,没有数据.
C. 配置SW2的g0/0/3接口untagged vlan 10int g0/0/3
port hybrid untagged vlan 10
这时PC1能ping通PC3:
可以分析一下去的流量数据帧tag的情况:
①PC1没有tag的数据帧到达SW1的g0/0/1接口时,SW1首先判断该接口配置,因为配置了pvid 为vlan 10,并且untagged vlan 10,数据帧被打上vlan10的tag并从该接口进入交换机SW1
②打了vlan10 tag的数据帧进入交换机SW1后,发现g0/0/2配置了untagged vlan 10,于是数据帧顺利地被SW1的g0/0/2接口转发,并仍然保留vlan10的tag
③打了vlan10 tag的数据帧到达SW2的g0/0/1接口,SW2发现该接口配置了untagged vlan 10,于是数据帧能顺利地从该接口进入SW2(进入交换机不会去tag)
④打了vlan10 tag的数据帧进入SW2后,发现g0/0/3配置了untagged vlan 10,于是数据帧去tag之后顺利地被g0/0/3接口转发,从而到达到PC3.
再分析一下回来的流量数据帧tag的情况:
①因为SW2的g0/0/3默认pvid为vlan1,且默认配置为untagged vlan 1,所以PC3未打tag的数据帧能顺利地从g0/0/3接口进入SW2
②未tag的数据帧从pvid为1的接口进入SW2,估计不会打上vlan1的tag ,但是转发的时候会根据mac-address表找到g0/0/1并判断该接口是否tagged vlan 1还是untagged vlan 1,默认配置为untagged vlan 1,所以数据帧能顺利地被g0/0/1转发,并且未tag。
③因为SW1的g0/0/2接口默认pvid为valn1,并且untagged vlan 1,所以未tag的数据帧能顺利地从该接口进入SW1
④未tag的数据帧从pvid为vlan1的接口进行SW1之后,SW1会根据mac-address表,找到g0/0/1接口,因为该接口隐含配置中包含untagged vlan 1,所以数据帧能顺利被该接口转发给PC1
总结起来,去的时候进入SW1会打上vlan10的tag,直到离开SW2才会去除vlan的tag;回来的时候一直都未tag。
D.配置SW2的g0/0/1接口tagged vlan 10int g0/0/1
port hybrid tagged vlan 10
这时PC1也能ping通PC3,来回流量对tag的情况应该跟前面相同。
4.修改SW1和SW2的配置,使得PC1能ping通PC2和PC3,但是PC2和PC3不能互通A.SW1interface GigabitEthernet0/0/1
port hybrid pvid vlan 10
port hybrid untagged vlan 10 20 30
interface GigabitEthernet0/0/2
port hybrid tagged vlan 10 20 30
B.SW2interface GigabitEthernet0/0/1
port hybrid tagged vlan 10 20 30
interface GigabitEthernet0/0/2
port hybrid pvid vlan 20
port hybrid untagged vlan 10 20
interface GigabitEthernet0/0/3
port hybrid pvid vlan 30
port hybrid untagged vlan 10 30
C.验证