对于Trunk接口,除了要配置PVID外,还必须配置允许通过的VLAN ID列表,其中VLAN 1是默认存在的。 Trunk接口特点: Trunk接口仅允许VLAN ID在允许通过列表中的数据帧通过。 Trunk接口可以允许多个VLAN的帧带Tag通过,但只允许一个VLAN的帧从该类接口上发出时不带Tag(即剥除Tag)。 Trunk接口接收数据帧: 当Trunk接口从链路上收到一个Untagged帧,交换机会在这个帧中添加上VID为PVID的Tag,然后查看PVID是否在允许通过的VLAN ID列表中。如果在,则对得到的Tagged帧进行转发操作;如果不在,则直接丢弃得到的Tagged帧。 当Trunk接口从链路上收到一个Tagged帧,交换机会检查这个帧的Tag中的VID是否在允许通过的VLAN ID列表中。如果在,则对这个Tagged帧进行转发操作;如果不在,则直接丢弃这个Tagged帧。 Trunk接口发送数据帧: 当一个Tagged帧从本交换机的其他接口到达一个Trunk接口后,如果这个帧的Tag中的VID不在允许通过的VLAN ID列表中,则该Tagged帧会被直接丢弃。 当一个Tagged帧从本交换机的其他接口到达一个Trunk接口后,如果这个帧的Tag中的VID在允许通过的VLAN ID列表中,则会比较该Tag中的VID是否与接口的PVID相同: 如果相同,则交换机会对这个Tagged帧的Tag进行剥离,然后将得到的Untagged帧从链路上发送出去; 如果不同,则交换机不会对这个Tagged帧的Tag进行剥离,而是直接将它从链路上发送出去。 对于Trunk接口,除了要配置PVID外,还必须配置允许通过的VLAN ID列表,其中VLAN 1是默认存在的。 Trunk接口仅允许VLAN ID在允许通过列表中的数据帧通过。 Trunk接口可以允许多个VLAN的帧带Tag通过,但只允许一个VLAN的帧从该类接口上发出时不带Tag(即剥除Tag)。因为一个端口只有一个PVID,所以在发送的时候,只能剥离一种标签 [S1-GigabitEthernete/0/3]port link-type trunk
[s1-GigabitEthernete/0/3]port trunk allow-pass vlan 10 20 30 40(允许列表默认有一个vlan 1) [s1-GigabitEthernet0/0/3]port trunk pvid vlan 123 1. 接收报文 1. 接收到untag(空白帧),打上PVID的标签,默认为1,可以修改 还有一个需要注意的点,是自己之前缺少的 如果端口的PVID的值,不在自己的放行标签列表当中的话,也是会丢弃的, 只有在自己有端口能放行这个标签帧的时候,自己才会接收 2. 接收tag数据帧(有标签的帧) 1. 数据帧携带的tag是否在放行列表当中 1. 如果在,则保留tag接收 2. 如果不在,则直接丢弃 2. 发送报文 1. PVID是否在允许列表当中 1. 在,报文携带的VLAN ID是否和PVID相同 1. 相同,则剥离标签转发 2. 如果不同,判断报文携带的VLAN ID是否在允许列表当中 1. 如果在,则保留标签转发 2. 如果不在,不转发 2. 不在,则不转发
Hybrid混合接口[S1-GigabitEthernet0/0/3]port link-type hybrid 接口配置为hybrid类型,该类型为默认类型[S1-GigabitEthernet0/0/3]port hybrid vlan 1 接口配置从属vlan,只能配置vlan 1,默认操作[S1-GigabitEthernet0/0/3]port hybrid tagged vlan 10 20 30 配置tag的放行列表[S1-GigabitEthernet0/0/1]port hybrid untagged vlan 30 40 50 60 配置untag的放行列表[S1-GigabitEthernet0/0/1]port hybrid pvid vlan 10 接口配置PVID值,为接收untag数据帧打上标签[S1-vlan10] description 命令描述在这里hybrid相当于是有两个表格,一个是taagged表格,相当于是Trunk当中的放行列表,还有一个untagged表格,这个表格就是hybrid的特有使用原因了 Access 接口在发送数据时可以剥离标签(只能匹配一个)Trunk 接口在发送数据时 如果只匹配发行列表,则直接将数据发送 不剥离标签 如果匹配PVID 同时匹配了放行列表,则将数据剥离标签发送 hybird 接口存在两个放行列表(tag列表、untag列表) tag列表相当于trunk的放行列表 untag列表相当于access可以匹配多个 也存在PVID,只是为了收到untag数据帧 打上一个标签 **根据实验验证,在发送数据时匹配PVID不会执行剥离标签 Hybird按照个人的理解上,感觉是使用在二层的vlan互联上的,就是以往要使用到跨vlan通讯的话,肯定是使用到单臂路由的办法,但是在hybird上,就可以实现Hybird有两个表格Tag列表和untag列表,一个代表有标签,一个代表没有标签也就是说,在接收操作上,hybird的操作和Trunk的操作是一样的,在发送的操作的时候,trunk只能剥离和自己PVID匹配的Tag帧的标签,但是Hybird却可以使用自己的untag表格来匹配数据帧,操作来剥离那些标签,相当于是有多个虚拟的PVID一样,所以Hybird就是一个混合性质的端口接收报文操作:和Trunk一样,只是Trunk是使用allow-pass:允许通行证,Hybird是使用tag表格来匹配发送报文操作:和Access操作一样,就是剥离掉和自己vlan类型一致的数据帧,这样在发送的时候就会进行剥离操作当然tag和untag表格的之间要是有数据重复的话,这两个也是不冲突的,一个是会放行,一个是会操作剥离因为终端一般是不处理带tag的数据帧的,所以一般Hybird是部署在对接终端的端口上的,在正常的链路当中,还是使用Access+Trunk多一些使用Hybird来实现同网段跨VLAN 的原理就是,在最后的接口上部署Hybird端口,确定untag表格的数据之后,就可以将标签剥离掉,这样只需要路由器在对接其他路由器的端口上配置Trunk,带标签的数据帧会进入到交换机内部之后,再通过Hybird接口发出的时候剥离掉数据帧,就可以实现了,另外Hybird的PVID的作用只是将unTag数据帧打上VLAN,数据需要通讯的话,那在路由器上,也要有其他的端口可以发送
|