Access、Hybrid和Trunk三种模式的理解
预备知识: untag就是普通的ethernet报文,普通PC机的网卡是可以识别这样的报文进行通讯; 带802.1Q的帧是在标准以太网帧上插入了4个字节的标识。其中包含: 在这里大家要理解端口的缺省VLAN这个概念
Acess端口收报文: Acess端口发报文: trunk端口收报文:? trunk端口发报文: hybrid端口收报文:? 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 ========================== 再来看看另一篇文章: 表1-2 端口对收发报文的处理 端口类型 对接收报文的处理 发送报文时的处理 当接收到的报文不带Tag时 当接收到的报文带有Tag时 Access端口 接收该报文,并为报文添加缺省VLAN的Tag l????? 当VLAN ID与缺省VLAN ID相同时:接收该报文 l????? 当VLAN ID与缺省VLAN ID不同时:丢弃该报文 由于VLAN ID就是缺省VLAN ID,不用设置,去掉Tag后发送 Trunk端口 l????? 当VLAN ID与缺省VLAN ID不同时,但VLAN ID是该端口允许通过的VLAN ID时:接收该报文 l????? 当VLAN ID与缺省VLAN ID不同时,且VLAN ID是该端口不允许通过的VLAN ID时:丢弃该报文 l????? 当VLAN ID与缺省VLAN ID相同时:去掉Tag,发送该报文 l????? 当VLAN ID与缺省VLAN ID不同时:保持原有Tag,发送该报文 Hybrid端口 当报文中携带的VLAN ID是该端口允许通过的VLAN ID时,发送该报文,并可以通过port hybrid vlan命令配置端口在发送该VLAN(包括缺省VLAN)的报文时是否携带Tag 是不是看糊涂了? hybrid端口在接受数据时处理和Trunk端口一样 如果带了tag并且和端口对应PVID不同,看是否允许通过,是则通过,不是则丢弃 如果带了tag并且和端口对应PVID相同,允许通过 如果不带tag则标记为PVID所在的vlan 注意!如果你不设置PVID对应的vlan是tag还是untag,数据还是无法通过!就算接收到的帧的tag和PVID对应vlan一致 下面是个例子 interface GigabitEthernet1/0/48 port link-type hybrid port hybrid vlan 10 untagged undo port hybrid vlan 1 port hybrid pvid vlan 20 # interface GigabitEthernet1/0/47 port link-type hybrid port hybrid vlan 10 20 untagged undo port hybrid vlan 1 port hybrid pvid vlan 10 看似可以通,是吗?但事实是48口可以收到47发过来的广播,48却无法将数据发送出去,因为你没有允许vlan 20的数据通过!只要port hybrid vlan 20 untagged/tagged就行 配置变成如下 interface GigabitEthernet1/0/48 port link-type hybrid port hybrid vlan 10 20 untagged undo port hybrid vlan 1 port hybrid pvid vlan 20 # interface GigabitEthernet1/0/47 port link-type hybrid port hybrid vlan 10 20 untagged undo port hybrid vlan 1 port hybrid pvid vlan 10 PC ping 路由器,来看看流程,PC接在48口上,路由在47口 1.PC发送ICMP echo request,到了交换机的48口,交换机发现此帧没有tag,打上PVID也就是vlan 20的tag,然后进入交换机内部。 2.交换机发现47口允许带vlan 20 tag的帧出去,就送往47口,47口根据设置,发出此帧,并且剥离了vlan 20的tag。 3.路由器收到icmp echo request,发送icmp echo reply,到交换机的47口,交换机发现此帧没有tag,打上PVID也就是vlan 10的tag,然后进入交换机内部。 4.交换机发现47口允许带vlan 10 tag的帧出去,就送往48口,48口根据设置,发出此帧,并且剥离了vlan 10的tag。 5.PING完成 就是这样,tag与untag的设置只对hybrid口发送数据时起作用 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |