Native VLAN工作原理:

  • 在IEEE 802.1Q trunk 端口上,接收报文时所有不带vlan(untagged)的报文都会加上native vlan,然后转发(查找配置了native vlan的端口转发出去,access 和trunk的形式都可以: native vlan 为10, 如果端口配置access vlan 10,或者allowed vlan 10,就会从这个端口转发出去);

  • 发送报文时:如果要发送的报文有vlan,并且和发送端口的native vlan值一样,交换就会剥掉这个vlan,然后转发出去(转发出去的报文不带vlan

  • 发送报文时:如果要发送的报文有vlan,但是发送端口的native vlan 值不一样,则这个报文会被原封不动的转发出去(前提是这个vlan 要在这个端口allowed vlan的范围内);

  • “no switchport trunk native vlan”这个命令使清除现有的native vlan,使设备恢复默认的native vlan(默认的native vlan 为1)

Allowed VLAN

  • 为了减少网络环路和广播风暴,你可以在某个独立的端口上的allowed vlan列表中删除vlan1(去使能vlan1)

  • “no switchport trunk allowed vlan”命令将会使allowed vlan list 恢复到默认配置: 默认情况下,允许所有的vlan 通过

其他的经验:

  • 交换机端口默认的有native vlan;

  • 交换机端口的默认的native vlan 为1,相当于用命令“switchport trunk native vlan 1”配置

  • 在默认的情况下,带vlan1报文中离开交换机是会被剥掉vlan的

  • 在默认的情况下,任何不带vlan的数据报文在进入交换机时都会被加上vlan1

如果Native Vlan配置为10:

  • 如果一个报文带有VLAN10标识,(此时和Native VLAN一样都是10),那么该报文离开交换机的时候VLAN10 标签会被剥离.

  • 任何不带vlan的报文,在进入交换机时,都会被加上vlan10;

  • 带有vlan1的报文,在离开交换机时,被原封不动的传输(vlan1 在allowed vlan list内)