通过实例理解access trunk hybrid 端口特性和区别

2020-06-29

文章涉及的交换机配置均为华为S5720交换机上配置

开始

注意方向,在理解这3种端口时,时,一定要分清端口接收,端口发送这2个方向! 直白理解: (端口接收:数据从外面进入交换机) (端口发送:数据从交换机里出来)

access

GigabitEthernet0/0/1端口配置如下   

#
interface GigabitEthernet0/0/1

 port link-type access

 port default vlan 20
#

port default vlan 20 配置后,该端口的pvid就是20

access端口接收

收到以太帧,判断是否有VLAN信息:如果没有则打上端口的PVID,并进行交换转发,如果有则直接丢弃(缺省)

实例: 对于GigabitEthernet0/0/1端口

  • 普通以太帧(不带vlan标记),进入交换机内部根据该端口 pvid 20 打 tag ,成为带vlan20标记的以太帧后进行交换转发
  • 带vlan20标记的以太帧 直接通过(这个是华为文档中看来的,实际上access口一般都是连接普通电脑,端口接收不带vlan标记的普通以太帧)后进行交换转发
  • 其他带vlan标记的以太帧, 丢弃

access端口发送

将以太帧的VLAN信息剥离,直接发送出去

实例: 对于GigabitEthernet0/0/1端口

  • 带vlan20标记的以太帧,剥离标签后发送,发送出的数据帧已被剥离vlan标记成为普通的以太帧
  • 其他以太帧 ,丢弃

trunk

GigabitEthernet0/0/2端口配置如下 

#
interface GigabitEthernet0/0/2

 port link-type trunk

 port trunk pvid vlan 30

 port trunk allow-pass vlan 20 40 50
#

trunk端口接收

收到以太帧,判断是否有VLAN信息,如果没有则打上端口的PVID,并进行交换转发。如果有,判断该trunk端口是否允许该VLAN的数据进入(根据allow-pass vlan列表判断),如果可以则转发,否则丢弃

实例: 对于GigabitEthernet0/0/2端口

  • 普通以太帧(不带vlan标记),进入交换机内部根据该端口 pvid 30 打 tag ,成为带vlan30标记的以太帧 进行交换转发
  •  带 vlan 20 40 50 标记的以太帧, 直接通过端口进入后进行交换转发
  • 带其他vlan标记的以太帧 , 丢弃

    trunk端口发送

比较端口的PVID和将要发送报文的VLAN信息,如果两者相等则剥离VLAN信息,再发送,如果不相等则直接发送

实例: 对于GigabitEthernet0/0/2端口

  • 带 vlan 20 40 50 标记的以太帧 ,直接发送,发送出的数据帧仍然带有vlan标记
  • 带vlan 30 标记的以太帧, 剥离标签后发送, 发送出的数据帧已被剥离vlan标记成为普通的以太帧
  • 其他以太帧, 丢弃

hybrid

GigabitEthernet0/0/3端口配置如下         

#
interface GigabitEthernet0/0/3

 port hybrid pvid vlan 10

 port hybrid tagged vlan 20 30

 port hybrid untagged vlan 40 50
#

GigabitEthernet0/0/3端口配置port hybrid pvid vlan 10时, 默认配置了 port hybrid untagged  vlan 10

此时对于该端口,pvid 10 , tagged vlan 20 30 ,untagged vlan 10 40 50

hybrid端口接收

在收到数据的时候,先看它是否带VLAN标签和是否允许通过(在untagged和tagged列表中的都算允许通过) 如果以太帧已经有标签且可以通过,则让以太帧带着标签通过; 如果以太帧没标签且可以通过,则打上PVID,再让带着PVID标签的以太帧通过; 如果不在untagged或tagged列表,则表示不允许通过,丢弃此以太帧。

实例: 对于GigabitEthernet0/0/3端口

  • 普通以太帧(不带vlan标记),进入交换机内部根据 该端口 pvid 10 打 tag ,成为带vlan10标记 的以太帧后进行交换转发
  • 带 vlan 10 20 30 40 50 标记的以太帧,直接通过端口进入后进行交换转发
  • 带其他vlan标记的以太帧,  丢弃

hybrid端口发送

如果以太帧在untagged或tagged列表,则表示可以从此端口通过, 对于untagged列表中的以太帧,在发送的时候去掉vlan标签后再从端口发送出去; 对于tagged列表中的以太帧,在发送的时候带着vlan标签从端口发送出去。 如果以太帧不在untagged或tagged列表,表示不从此端口通过。

实例: 对于GigabitEthernet0/0/3端口

  • 带vlan 20 30 标记的以太帧, 直接发送,发送出的数据帧仍然带有vlan标记
  • 带vlan 10 40 50 标记的以太帧 ,剥离标签后发送,  发送出的数据帧已被剥离vlan标记成为普通的以太帧
  • 其他以太帧 ,丢弃

hybrid总结

端口接收的时候,untagged(去标签)和tagged(带标签)只是做到了是否放行vlan的需要,和实际打不打标没有半毛钱关系。untagged(去标签)和tagged(带标签)只对从端口发送出去的数据帧起作用(保留标签或去掉标签再发送出去)。在untagged或tagged列表的vlan表示可以从本端口发送或者接收;不在untagged或tagged列表的vlan表示不可以从本端口发送或接收。