当前位置:Gxlcms > 数据库问题 > VLAN之access,trunk,hybrid三种模式区别

VLAN之access,trunk,hybrid三种模式区别

时间:2021-07-01 10:21:17 帮助过:55人阅读

收到一个数据包,判断是否有VLAN信息,如果没有则打上端口的Native VLAN ID, 并进行交换转发。

有人问了:如果有VLAN信息呢?一般情况下不应该将access端口与带有vlan的另一端口相连,因为access本来就是为接入普通计算机而设计的,而普通计算机的网卡发送数据包是不带vlan的。如果由于配置错误将其连到了对端trunk端口,或者现在有些计算机的网卡已经可以收发带有VLAN tag数据包,在这两种情况下,我的理解是,如果trunk端口发来的数据的VLAN ID与Access端口的native vlan相同,则交换机转发该数据包。如果trunk端口发来的数据包的VLAN ID与access端口的native vlan不同,则交换机丢弃该数据包。

  • Access 端口发送数据包:

    将数据包的VLAN信息剥离,直接发送出去。

  • Trunk端口接收数据包:

    收到一个数据包,判断是否有VLAN信息,如果没有则打上端口的Native VLAN ID,并进行交换转发。

    如果有VLAN信息,则判断该trunk端口是否允许该VLAN的数据包进入,如果允许则转发,否则丢弃。

  • Trunk端口发送数据包:

    比较端口的Native VLAN和发送数据包的VLAN信息,如果两者相等则剥离VLAN信息,然后发送。如果不相等,则直接发送。

  • Hybrid端口接收数据包:

    收到一个数据包,判断是否有VLAN信息, 如果没有则打上端口的Native VLAN ID, 并进行交换转发。

    如果有VLAN信息,则判断该hybrid端口是否允许该VLAN的数据包进入,如果允许则转发,否则丢弃。

  • Hybrid端口发送数据包:

    判断该VLAN在本端口配置的属性,如果属性是untag, 则剥离VLAN tag再进行转发。如果属性是tag, 则直接发送。


  • 有一点必须清楚,就是交换机内部在处理数据包时,所有的数据包一定是打上VLAN tag的,知道了这一点,那么交换机处理VLAN的具体过程就很容易理解了。


    举例1:

        两台交换机,一台端口配置trunk, native vlan为100, 另一台端口配置access, native vlan 为默认的1.

    问: 连接到两台交换机的PC, 能互通吗? 为毛?


    技术分享


        答案:通。 因为,trunk端口发出去的native vlan数据包中的vlan tag会被剥离,则另一交换机的access口收到的数据包是untag的,它当然能处理, 它收到后只在内部使用native vlan 1, 等一出交换机,由于是access端口,vlan tag就会被剥离掉,并送到trunk端口,而trunk端口再重新打上自己的native vlan 100进行转发。

        这个例子说明,中继端口发送native vlan数据包时是剥离tag的,即使两个链路配置了不同的native vlan, 也能互通。但是这时交换机的console口一般会报错:“Mismatched Native VLAN".  呵呵,是不是很神奇?


    VLAN之access,trunk,hybrid三种模式区别

    标签:vlan   native   trunk   access   hybrid   

    人气教程排行