1、彻底搞懂交换机TAG和UNTAG实验环境:1、SW1上创建VLAN 10 20 G1G3口加入VLAN1,属于ACCESS,状态为UNTAGE,PVID为1 G4口加入VLAN10,属于ACCESS,状态为UNTAGE,PVID为10 G6口加入VLAN20,属于ACCESS,状态为UNTAGE,PVID为20 G2口为TRUNK口,允许VLAN10,20及VLAN1数据通过,PVID为1 SW2上创建VLAN10 20 30 G1口加入VLAN1,属于ACCESS,状态为UNTAGE,PVID为1 G4口加入VLAN10,属于ACCESS,状态为UNTAGE,PVID为10 G6口加入VLA
2、N20,属于ACCESS,状态为UNTAGE,PVID为20 G3口为TRUNK口,允许VLAN10,20,30及VLAN1数据通过,PVID为1SW1 VLAN配置如图:SW2VLAN配置如图实验1:在SW1上为G2配置一个没有的PVID看效果?失败实验2:SW1不变,在SW2上将G2口PVID由1改为20,在SW2的G2口抓包看效果?1.1.1.1无法PING通1.1.1.3, SW2上G2口抓包情况如上2图数据转发过程说明:当1.1.1.1数据包从SW1的G1口发出时,交换机发现是未打VLAN标签的数据,此时会为数据包打上VLAN1标签。交换机检查与VLAN1关联的端口有G2/G3口,将
3、会在2个口进行防洪,如下图:当SW1 G2口收到数据包时,拿数据包中的PVID 【VLAN1ID号】与自己的PVID相比较,发现相同,此时商品在VLAN1中的状态是UNTAGE,所以将剥离VLANID后进行转发,如下图:当数据包到达SW G2口,也就是G2口收到数据后,发现是未带标签的数据包,此时将对数据包打上PVID 20,也就是将数据转发至VLAN20中,SW2查询后发现与VLAN20关联端口有UT:G2 G6 G7 TG:G3,如下图:所以此时SW2会将此数据包在G2 G6 G7【UT】口去标签后转发,如下图:在G3【TG】口含标签转发,如下图:在G3口抓包,看数据包是否被打上PVID为
4、20并转发到VLAN20关联【TAG】的G3口?是,如上图。结论:接收:1、 当普通数据包进入端口时,如果物理接口ACCESS模式,交换机将对数据帧打上与PVID相同的VLIANID号,变802.11Q格式后,进入交换机内部等待转发【如ACCESS-连接-PC】。若收到802.11Q的数据帧,将直接丢弃【如TRUNK口-连接交换机-ACCESS口,且两端PVID不同时】。要是两边PVID相同,是什么情况?实验证明是可以PING通。如下2图:SW4执行以下两条命令,将G2口改为TRUNK模式:Huawei-GigabitEthernet0/0/2port link-type trunkHuawe
5、i-GigabitEthernet0/0/2port trunk allow-pass vlan all2、 当数据包进入端口时,如果物理接口TRUNK模式,交换机将比较本端口的PVID和数据的VLANID,如果相同,剥离数据帧中VLANID使用变为普通数据帧后,进入交换机内部等待转发。如果不相同,保持数据帧原始形态,进入交换机内部等待转发。查询:1、 当交换机以接收1的方式接收到带VLANID的数据帧时,在交换机内部以VLANID号进行查询,确认具体哪些接口与本VLAN关联。将数据在这些接口进行泛洪。转发:1、当端口在此VLAN中处于TAG状态时,保持数据帧原始形态,直接转发。2、当端口在此
6、VLAN中处于UNTAG状态时,剥离数据帧中VLANID使用变为普通数据帧后再执行转发。从此图可以得出以下数据在出方向的信息:1、 VLAN数据在通过G0/0/2转发时,将被剥离VLANID。2、 VLAN10数据在通过G0/0/4和G0/0/5时,将被剥离VLANID。3、 VLAN10数据在通过G0/0/2进,将保留VLANID 。进方向:1、 普通数据进入ACCESS口,打上PVID,使之成为802.11Q数据后,等待转发。2、普通数据进入TRUNK时,在PVID相同的接口上,两端PC可以PING通。如下4图:2、 当802.11Q数据进入TRUNK口后,首先比较VLANID是否与PVI
7、D相同,若相同,剥离VLANID后等待转发。若不同,就拿VLANID与关联的VLANID号比较,若是允许通过的VLANID相同,就保持802.11Q形态等待转发,或不是,则进接丢弃。SW2上G2口抓包看到VLANID为30的数据已转发出去,如下图:在SW1的G2上抓包看,同样可以接收到SW1的G0/0/2是如何丢弃的呢?没有找到查看的办法交换机有没有又是ACCESS口又是TAG状态的情况呢?没有找到答案。实验1:交换机配置:将E1 E2配置上port hybrid tagged vlan 10代表当收到带有VLAN10标签的数据时,保持802.11Q格式不变,直接转发出去。普通数据帧进入时,打
8、上PVID为1。通信正常。将E1的PVID改为VLAN 10看效果:无法通信原因:当数到达E1时,被打上VLAN10标签,交换机查询关联E2口与VLAN10关联,故将数据转发至E2口,此时E2口针对VLAN10的数据将保持802.11Q【TAG状态】转发,故无法通信。此时可以将E2的PVID设置为VLAN10原因同上将E2配置为:在E2口抓包:此时数据从E1过来后,E2也给了回包,但为什么还是TIME OUT呢?因为回包时E2以PVID为依据,给数据包打上VLAN10标签,交换机经过查询后,发现E1与VLAN10关联,将数据包转到至E1,E1在VLAN10中为TAG状态,此时将保持数据帧为80
9、2.11Q格式发给PC,PC无法识别。在E1口抓包:抓包证明了以上说法。将E1配置为:恢复正常HYBRID应用:PCA PING PCC,G3口抓包有去有回,通信正常。PCA PING PCC,G2口抓包PCC给PCA的回包【只有回包】也在G2口进行了泛洪,此时PCB是可以收到这个数据包的,只是目标地址不是自己,将会把数据进行丢弃。PCA PING PCC,G1口抓包通信正常PCA PING PCB,G2口抓包没有数据包。PCA PING PCB,G3口抓包有二层ARP请求包,但VLANID已经被剥离。PCC PING PCA,在G2口抓包:只有请求包PCC PING PCA,在G1口抓包:通
10、信正常PCC PING PCA全过程:1、PCC数据帧进入G3口,G3为其打上PVID为30的VLANID号。交换机查询与VLAN30关联接口有G1G2和自己G3,将数据帧转发到G1G2。G1和G2将同时执行UNTAGE操作剥离后转发给PCA和PCB。PCB数据帧发现目标IP1.1.1.1自己1.1.1.2不符,故丢弃。PCA发现1.1.1.1IP正是自己,故进行回包。2、PCA数据帧进入G1口,G1为其打上PVID为10的VLANID号。交换机查询与VLAN10关联接口有G3和自己G1,将数据帧转发到G3。G3执行UNTAGE操作剥离VLANID后转发给PCC,PCA发现1.1.1.1IP正是自己,故接收,完成通信。这也是为什么在G2口抓包里只有请求包,而没有回包的原因,因为回包时数据根本没有进入G2口去。
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1