vlan access trunk

来源:互联网 发布:用友时空软件 编辑:程序博客网 时间:2024/05/18 03:53
    一直没搞明白access和trunk怎么收发包,看了好多文档都不详细。烦了,自己搭个思科设备的环境测试了一下,记之。

    access:只能指定一个VLAN,此VLAN=PVID,不指定情况下,默认为 1 。
        入:有VLAN,VLAN ID与缺省VLAN ID相同时,接收该报文,否则丢弃;
            无VLAN,用端口VLAN标记,然后转发;
        出:有VLAN,与端口VLAN比较,相同则剥离转发,不同丢弃;
            无VLAN,无此情况;

     trunk:可以指定多个VLAN,不指定情况下,默认为所有VLAN;但PVID(native vlan)只能指定一个VLAN,不指定情况下,默认为 1 。
        入:有VLAN,与端口指定VLAN比较,允许则转发,不允许则丢弃;
            无VLAN,用PVID标记,然后与端口指定VLAN比较,允许则转发,不允许则丢弃;
        出:有VLAN,先与端口指定VLAN比较,允许则继续,不允许则丢弃,然后再与PVID比较,相同则剥离转发,不同则直接转发。
            无VLAN,无此情况。

    举个例子哈,假设交换机就是会场,此次会议是三个部门人员参加(编号分别是2008、2012、2046),会议要求,每个与会人员(数据包)都必须佩带带有自己部门编号的胸牌(VLAN)。会场有两个门,access和trunk,门口都有人检查是否佩戴胸牌。

    access门,因为此门比较小,检查人员就死板规定,只让2046部门而且没胸牌的人进出,然后他会给你发个2046的胸牌让你带上进去(因为开会要求必须佩带)。
    出门的时候,你要把2046的胸牌再还给他,预备下次使用,要是没有或不对,对不起,哪凉快哪待着去,出门?没门!
       
    trunk门,此门较大,哪个部门的人都可以进出,人多,就把检查工作也分给两个人,一个门外(pvid),收发胸牌的,一个门里(allow),检查胸牌的。要进会场,门外的先看看有没有胸牌,只要有就可以向里走,没有就发给你一个,不过此人也挺死板,每次开会都只拿一个编号的胸牌,还不一定对。到门里那位,一检查胸牌,不是三个部门的,对不起,请出去。什么?没胸牌,怎么可能,门外那位可是很认真的。

    开完会出去时候,自然是门里那位先检查,没2008、2012、2046三个编号胸牌的,甚至没胸牌的,一律退回。到门外,那位还等着回收呢,不过,也分不清哪个是他发的,哪个是人家自己带进去的,只要是他拿的那种编号,一律扣下。抗议?没等你说句话,一脚就把你踹到下个会场了。

  


端口类型

对接收报文的处理

对发送报文的处理

当接收到的报文不带Tag

当接收到的报文带有Tag

Access端口

为报文添加缺省VLANTag

l     VLAN ID与缺省VLAN ID相同时,接收该报文

l     VLAN ID与缺省VLAN ID不同时,丢弃该报文

去掉Tag,发送该报文

Trunk端口

l     当缺省VLAN ID在端口允许通过的VLAN ID列表里时,接收该报文,给报文添加缺省VLANTag

l     当缺省VLAN ID不在端口允许通过的VLAN ID列表里时,丢弃该报文

l     VLAN ID在端口允许通过的VLAN ID列表里时,接收该报文

l     VLAN ID不在端口允许通过的VLAN ID列表里时,,丢弃该报文

l     VLAN ID与缺省VLAN ID相同,且是该端口允许通过的VLAN ID时:去掉Tag,发送该报文

l     VLAN ID与缺省VLAN ID不同,且是该端口允许通过的VLAN ID时:保持原有Tag,发送该报文

Hybrid端口

当报文中携带的VLAN ID是该端口允许通过的VLAN ID时,发送该报文,并可以通过port hybrid vlan命令配置端口在发送该VLAN(包括缺省VLAN)的报文时是否携带Tag




原创粉丝点击