免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 10003 | 回复: 5
打印 上一主题 下一主题

交换机VLAN access模式加tag剥tag是什么过程 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2016-11-27 20:27 |只看该作者 |倒序浏览
交换机VLAN 的access模式,说从端口进来的包如果没有tag就打上端口所带的tag,出去的时候剥除tag,我想问下这个过程需不需要协议栈处理啊?从端口进来后报文是进到哪里去了?这个加tag的过程是在以太网里加上VLAN ID吗?既然出去的时候要剥除Tag,为什么进来的时候又要打上tag,这样不显得多此一举吗?

论坛徽章:
0
2 [报告]
发表于 2016-11-29 11:48 |只看该作者
请注意出与入的方向.....

论坛徽章:
0
3 [报告]
发表于 2017-01-22 08:01 |只看该作者
vsv1020 发表于 2016-11-29 11:48
请注意出与入的方向.....

请注意理论知识的积累

论坛徽章:
3
狮子座
日期:2013-11-08 20:54:51酉鸡
日期:2013-11-28 13:44:39IT运维版块每日发帖之星
日期:2015-12-18 06:20:00
4 [报告]
发表于 2017-01-25 18:27 |只看该作者
都说VLAN了。如果是单纯的LAN.那么传播是广播,用MAC地址,不过路由。
如果划分了VLAN(如最简单的端口属于某个VLAN),那么物理上一个或者多个串联的交换机(可以看成1个,在同一个广播域)将会在逻辑上变成多个互相隔离的交换机(如果是3层那么就是通过路由相连的多个交换机)。
虽说是逻辑上,但是别忘了以上是建立在物理交换机上的逻辑划分,所以需要给数据包打标签。
标准的802。3未必全支持带VLAN的ID数据帧。所以数据包在进入接口后为了让交换机分得清楚这个帧属于那个VLAN,转发到那些端口。所以需要对其打个tag。
在通过MAC等转发到目的端口后,要将里面的tag剥离。使得端口连接的设备能正确识别。
如果按照你最后的疑问,进出不打任何标签。那么交换机(本机或者其他交换机)如何识别这个帧属于那个vlan?
所以其实是很简单的概念。注意物理与逻辑层的差别很容易理解。

论坛徽章:
24
天蝎座
日期:2014-05-13 18:05:59IT运维版块每日发帖之星
日期:2015-11-26 06:20:00操作系统版块每月发帖之星
日期:2015-12-02 14:57:54IT运维版块每月发帖之星
日期:2016-01-07 23:01:56IT运维版块每周发帖之星
日期:2016-01-07 23:04:2615-16赛季CBA联赛之青岛
日期:2016-01-23 07:58:272016猴年福章徽章
日期:2016-02-18 15:30:3415-16赛季CBA联赛之北控
日期:2016-03-23 14:20:06IT运维版块每日发帖之星
日期:2016-04-01 06:20:0015-16赛季CBA联赛之吉林
日期:2016-06-28 13:51:54IT运维版块每日发帖之星
日期:2016-07-01 06:20:00IT运维版块每日发帖之星
日期:2015-11-23 06:20:00
5 [报告]
发表于 2017-03-28 14:02 |只看该作者
哈哈这个属于基础知识,一般大神都懒得解释,因为三言两语也说不清楚。你其实要了解下access trunk 和hybrid三种模式

access:如把接口设定为access类型,那么这个接口只能划分一个VLAN
它接收数据包时候,如果数据包没有VLAN(即普通数据包)信息,则打上该接口的pvid(pvid就是在该接口上所划分的VLAN 号,默认是VLAN 1),并转发数据包,如果数据包有VLAN(即802.1q定义的4个字节的VLAN标签)信息,则直接丢弃该数据包。

它发送数据包的时候,将数据包的vlan信息进行剥离,直接发送出去。
所以该模式接口一般用于直接连接PC电脑。
通俗说:该模式下这个交换机接口主要用于直接连接PC电脑或在同一个VLAN下的其他交换机接口。


上门虽然你看懂了,其实还只是入门,来笔者带你更加深入点
举例hybrid模式,;理解了他 trunk和access都不是问题,不过这个模式很少用到,除了一些特别需求。

它接收数据包时候,如果数据包没有VLAN信息,则打上该接口的pvid(pvid就是在该接口上所划分的VLAN,默认是VLAN 1) 并转发数据包,如果数据包有VLAN信息,则判断该数据包所在的VLAN属于允许通过的不,是的则转发数据包,不是则直接丢弃该数据包。
所以这个模式接收数据包是通TRUNK模式一模一样。


它发送数据包的时候
判断将要发送的数据包VLAN在本接口的属性。
(进入接口模式,使用display interface就可以看到该接口当中的哪些VLAN被配置成了untagged,哪些配置成了tagged。
tagged:是指对数据包加上vlan
untagged:就是指对带vlan信息的数据包进行剥离,让其变成没有VLAN信息的普通数据包。)
如果该VLAN是untagged,则直接剥离VLAN信息,再发送,如果是tagged,则直接发送。
该模式很多人容易把他和Trunk模式混淆,不知道什么时候用Trunk模式,什么时候用Hybrid模式。
Trunk模式一般是经常用的,就是用来让多个VLAN通过交换机。
而Hybrid模式,由于可以配置untagged和tagged,不仅可以让多个VLAN通过该交换机,还可以直接让2个PC电脑接在同一个交换机上的不同VLAN数据包直接相通,而不必再去走路由的方式。
范例:
交换机的1号接口接的是电脑PC1,2号接口接的电脑PC2
1号接口和2号接口的VLAN不在同一个网段,即假设1号接口我们配VLAN ID 是100 ,2号接口我们配的VLAN ID是200。
Interface ethernet 0/1        进入接口1
Port link-type hybride        配置接口类型为hybride
Port hybrid pvid vlan 100    设置该接口为VLAN 100
port hybrid untagged vlan 100 200 设定该接口允许VLAN 100和VLAN 200这2个VLAN通过,并且设定这2个VLAN为untagged。


Interface ethernet 0/2        进入接口2
Port link-type hybride        配置接口类型为hybride
Port hybrid pvid vlan 200    设置该接口为VLAN 200
Port hybrid untagged vlan 100 200   设定该接口允许VLAN 100和VLAN 200这2个VLAN通过,并且设定这2个VLAN为untagged。
(H3C 3100的命令是Port hybrede vlan 100 200 untagged  )


当PC1发送数据包给PC2时候,首先PC1会将数据包发送到交换机的接口1,交换机的接口1给该数据包封装VLAN(封装VLAN 100)信息后,发给交换机处理,交换机发现接口2允许VLAN 100通过,于是转发给接口2,由于接口2配置VLAN 100为untagged状态,所以接口2会剥离该数据包的VLAN信息,然后将数据包直接发送给PC2了。
反过来当PC2发送数据包给PC1时候,就是通过VLAN 200。所以这2台PC电脑往返数据的VLAN是不同的。

总所上述:接口的Trunk模式只能让发送的数据包所携带的VLAN信息和它的PVID是一致的情况下,才剥离VLAN信息(untagged),如果不一致直接传送VLAN(tagged)信息,而Hybride模式则可以自定义所有通过它的VLAN是剥离VLAN信息发送还是直接传送VLAN信息。

论坛徽章:
0
6 [报告]
发表于 2017-04-12 22:22 |只看该作者
回复 5# woxizishen

666,谢谢版主的耐心解答
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP