标签:native vlan 端口模式 链路类型 pvid vlan
打不打标记Tag,untag以及交换机的各种端口模式是网络工程技术人员调试交换机时接触最多的概念了。标记tag就是指VLAN的标签,数据包属于哪个VLAN的。交换机三种端口模式Access vlan、Trunk vlan和Hybrid vlan三种,即以太网端口有三种链路类型:Access、Hybrid和Trunk。在Trunk和Hybird模式下,存在端口缺省vlan的概念(pvid、native vlan id)。
二、打不打标记(Tag,untag)
三、交换机三种端口模式:Access、Hybrid和Trunk
Access端口只属于1个VLAN,所以它的缺省VLAN就是它所在的VLAN,不用设置;
2.2 pvid
pvid,即端口vlan id号,是非标记端口的vlan id 设定,当非标记数据包进入交换机,交换机将检查vlan设定并决定是否进行转发。一个ip包进入交换机端口的时候,如果没有带tag头,且该端口上配置了pvid,那么,该数据包就会被打上相应的tag头!如果进入的ip包已经带有tag头(vlan数据)的话,那么交换机一般不会再增加tag头,即使是端口上配置了pvid号。
问答:端口的缺省VLAN与pvid的区别???
看了2.1和2.2,有些矛盾,针对于端口在发送和接收打不打标记数据包时,数据包的去向有些矛盾。-----至少我没理解,大侠可以回帖答疑解惑,谢谢。
端口的缺省VLAN与pvid的区别-------应该不是同一个事物。
各端口收发数据的表格
端口类型 | 收发 | 描述 |
Access | 收报文 | 判断是否有VLAN信息:如果没有则打上端口的PVID,并进行交换转发,如果有则直接 丢弃(缺省) |
发报文 | 将报文的VLAN信息剥离,直接发送出去 | |
Trunk | 收报文 | 收到一个报文,判断是否有VLAN信息:如果没有则打上端口的PVID,并进行交换转发, 如果有判断该trunk端口是否允许该 VLAN的数据进入:如果可以则转发,否则丢弃 |
发报文 | 比较端口的PVID和将要发送报文的VLAN信息,如果两者相等则剥离VLAN信息,再发送, 如果不相等则直接发送 | |
Hybrid | 收报文 | 收到一个报文判断是否有VLAN信息:如果没有则打上端口的PVID,并进行交换转发, 如果有则判断该hybrid端口是否允许该VLAN的数据进入:如果可以则转发,否则丢弃 |
发报文 | 判断该VLAN在本端口的属性(disp interface 即可看到该端口对哪些VLAN是untag, 哪些VLAN是tag)如果是untag则剥离VLAN信息,再发送,如果是tag则直接发送 |
若某一端口在vlan设定中被指定为非标记端口untagged port, 所有从此端口转发出的数据包上都没有标记 (untagged)--类似于access口发报文。若有标记的数据包进入交换机,则其经过非标记端口时,标记将被去除----类似于access口收到带标记的报文。因为目前众多设备并不支持标记数据包,其也无法识别标记数据包,因此,需要将与其连接的端口设定为非标记。
若某一端口在vlan设定中被指定为标记端口tagged port, 所有从此端口转发出的数据包上都将有标记 (tagged)。若有非标记的数据包进入交换机,则其经过标记端口时,标记将被加上。此时,其将使用在ingress 端口上的pvid设定作为增加的标记中的vlan id号。
以下案例可以帮助大家深入理解华为交换机的hybrid端口模式
[Switch-Ethernet0/1]int e0/1
[Switch-Ethernet0/1]port link-type hybrid
[Switch-Ethernet0/1]port hybrid pvid vlan 10
[Switch-Ethernet0/1]port hybrid vlan 10 20 untagged
[Switch-Ethernet0/1]int e0/2
[Switch-Ethernet0/2]port link-type hybrid
[Switch-Ethernet0/2]port hybrid pvid vlan 20
[Switch-Ethernet0/2]port hybrid vlan 10 20 untagged
此时inter e0/1和inter e0/2下的所接的PC是可以互通的,但互通时数据所走的往返vlan是不同的。
以下以inter e0/1下的所接的pc1访问inter e0/2下的所接的pc2为例进行说明
pc1所发出的数据,由inter0/1所在的pvid vlan10封装vlan10的标记后送入交换机,交换机发现inter e0/2允许vlan 10的数据通过,于是数据被转发到inter e0/2上,由于inter e0/2上vlan 10是untagged的,于是交换机此时去除数据包上vlan10的标记,以普通包的形式发给pc2,此时pc1->p2走的是vlan10
再来分析pc2给pc1回包的过程,pc2所发出的数据,由inter0/2所在的pvid vlan20封装vlan20的标记后送入交换机,交换机发现inter e0/1允许vlan 20的数据通过,于是数据被转发到inter e0/1上,由于inter e0/1上vlan 20是untagged的,于是交换机此时去除数据包上vlan20的标记,以普通包的形式发给pc1,此时pc2->pc1走的是vlan20。
综上所述,以下列举 Switch收发 Switch对标记的处理 remark
Access (接收) Tagged = PVID 不接收 注:部分高端产品可能接收。
Access (接收) Tagged =/ PVID 不接收 注:部分高端产品可能接收。
Access (接收) Untagged 接收 增加tag=PVID 从PC
Access (发送) Tagged = PVID 转发 删除tag
Access (发送) Tagged =/ PVID 不转发 不处理
Access (发送) Untagged 无此情况 无此情况 无此情况
Trunk (接收) Tagged = PVID 接收 不修改tag
Trunk (接收) Tagged =/ PVID 接收 不修改tag
Trunk (接收) Untagged 接收 增加tag=PVID
Trunk (发送) Tagged = PVID If Passing then 转发 删除tag
Trunk (发送) Tagged =/ PVID If Passing then 转发 不修改tag
Trunk (发送) Untagged 无此情况 无此情况 无此情况(注)
Hybrid (接收) Tagged = PVID 接收 不修改tag 对端是trunk
Hybrid (接收) Tagged =/ PVID 接收 不修改tag 对端是trunk
Hybrid (接收) Untagged 接收 增加tag=PVID 类Trunk
Hybrid (发送) Tagged = PVID Tag 和 untag 中列出的vlan可以passing 看Tag项和untag项
Hybrid (发送) Tagged =/ PVID Tag 和 untag 中列出的vlan可以passing 看Tag项和untag项
Hybrid (发送) Untagged 无此情况 无此情况 无此情况(注)
另外需要注意的是:
(1)Trunk端口不能和isolate-user-vlan同时配置;Hybrid端口可以和isolate-user-vlan同时配置。但如果缺省VLAN是在isolate-user-vlan中建立了映射的VLAN,则不允许修改缺省VLAN ID,只有在解除映射后才能进行修改。
(2) 本Hybrid端口或Trunk端口的缺省VLAN ID和相连的对端交换机的Hybrid端口或Trunk端口的缺省VLAN ID必须一致,否则报文将不能正确传输。
四、参考文献
1.交换机三种端口模式Access、Hybrid和Trunk的理解
2.关于Trunk、Hybrid、Access、Tag、Untag、Pvid的关系
http://blog.sina.com.cn/s/blog_5f70c7060100kbev.html
http://blog.csdn.net/hxg130435477/article/details/5907430
本文出自 “云运维” 博客,请务必保留此出处http://benshitong.blog.51cto.com/5959327/1671040
交换机应用之端口模式(access、trunk和hybird)、是否标记(tag、untag)、端口缺省vlan(pvid、native id)
标签:native vlan 端口模式 链路类型 pvid vlan
原文地址:http://benshitong.blog.51cto.com/5959327/1671040