设为首页收藏本站language 语言切换
查看: 4574|回复: 37
收起左侧

[求助] 求助关于VLAN打上tag标记的问题

[复制链接]
发表于 2016-4-13 15:42:17 | 显示全部楼层 |阅读模式
5鸿鹄币
一  在看视频与书籍的过程中发现对于交换机对VLAN的打tag有这么两种解释-1)在进入交换机access端口时候若该帧没有vlan的tag,则打上PVID。出access端口时候则将该帧与该出端口的PVID比较,若一样则剥离该PVID。然后转发,若不一样则丢弃。对于trunk口打tag也是这样,只不过trunk口是不会丢弃,都可以放行。
-2) 在进入交换机access端口时候不打上tag标记。在出trunk口时候才打上tag标记。

到底哪种说法是对的?进access口时候没有tag时候access因该会打上PVID吧?



二  还是在看视频时候,发现讲师说两边native VLAN不一致不能通信。网上也有些人赞同这种观点。
但我做实验却发现不是这样。如下图。我用两个路由器模拟PC,已经no ip routing。接路由器的口均为access,交换机互联口则为trunk口。封装均为802.1q
发现两边native vlan 不一致,仍然可以通信。照我理解因该是这样的:  如果IOU3(PC)发起,则进入e0/1之后,交换机将该帧打上e0/1的tag标记。然后从e0/0出去。此时查看native vlan。发现native vlan 与帧携带的tag一致,则剥掉tag传递(若不一致则忽略直接传递)。然后进入IOU2(SW2)的e0/0口,此时native vlan 发现一个不带有tag标记的帧,则打上native vlan的tag标记(打上vlan 1),然后在e0/1口出去时候。access口e0/1检查vlan的tag标记。发现与自身pvid一致。则剥离再传递。

不知我理解是否有错?欢迎大家批评。


1.png

最佳答案

查看完整内容

从PC来的数据进入Access Port时不打TAG的。从Trunk出去时才打的。进入时,只是查看TAG而已。IEEE802.1Q的定义你重新查一下。TAG是为Trunk设计的。Access Port不包含在内。
发表于 2016-4-13 15:42:18 | 显示全部楼层
2016xy 发表于 2016-4-14 21:51
假如PC连接switch的access port。那么PC始发进入switch的access port的数据是不会打标的吗?只有trunk口 ...

从PC来的数据进入Access Port时不打TAG的。从Trunk出去时才打的。进入时,只是查看TAG而已。IEEE802.1Q的定义你重新查一下。TAG是为Trunk设计的。Access Port不包含在内。
沙发 2016-4-13 15:42:18 回复 收起回复
回复

使用道具 举报

发表于 2016-4-14 09:59:46 | 显示全部楼层
本帖最后由 sboku 于 2016-4-14 11:02 编辑

不知道你看的是设么视频,所以不好说他的解释正不正确。但是一点,Access Port是不接收TAG的。TAG只在Frame通过Trunk Port传输时才会被添加。当那个Frame进入另一方的trunk接口后,Switch看那个Frame是哪个VLAN,如果MAC Table里有那个Frame的Destination MAC的话,从相关的Port转发那个Frame。出口是Access Port的话,TAG会被删除,出口是Trunk的话,TAG会被保留。

Native VLAN不一致,也不一定不能通信。相接的两个接口都是Access Port的话,可以通信的。如果是Trunk相接的,Native VLAN不同的话,有可能出现麻烦。
板凳 2016-4-14 09:59:46 回复 收起回复
回复

使用道具 举报

 楼主| 发表于 2016-4-14 20:51:56 | 显示全部楼层
sboku 发表于 2016-4-14 09:59
不知道你看的是设么视频,所以不好说他的解释正不正确。但是一点,Access Port是不接收TAG的。TAG只在Frame ...

假如PC连接switch的access port。那么PC始发进入switch的access port的数据是不会打标的吗?只有trunk口才会为数据打上tag?

我一直理解的是这样的:假如PC连接switch的access port ,vlan为10.那么PC在进入该口时候该端口为该数据打上tag 10.此时switch内查找MAC Table和相应的vlan port。如果都能查找到则在相应的vlan port发出,此时因为数据的tag与vlan port 的tag一致,所以剥离。

switch通过vlan划分广播域不就是通过对数据进入时候打上tag,以此来识别各个虚拟的广播域吗?然后出去时候再与port所在的vlan对比,以此去掉tag,完成通信。
地板 2016-4-14 20:51:56 回复 收起回复
回复

使用道具 举报

 楼主| 发表于 2016-4-15 21:18:44 | 显示全部楼层
sboku 发表于 2016-4-13 15:42
从PC来的数据进入Access Port时不打TAG的。从Trunk出去时才打的。进入时,只是查看TAG而已。IEEE802.1Q的 ...

我没找到802.1Q的文档……

不过我自己做了个测试,如果是trunk口打tag的话,那我PC1----1SW2-----PC2。这样连接的话SW的1口设置为access,2口设置为trunk。那么从PC1发出的包进入SW里边都不打tag,那么从PC2出去的包就会被trunk打上tag,那么PC2就不能与PC1通信了。但实验缺是可以互通。
5# 2016-4-15 21:18:44 回复 收起回复
回复

使用道具 举报

 楼主| 发表于 2016-4-15 21:50:22 | 显示全部楼层
sboku 发表于 2016-4-13 15:42
从PC来的数据进入Access Port时不打TAG的。从Trunk出去时才打的。进入时,只是查看TAG而已。IEEE802.1Q的 ...

再者假如只有trunk才打上tag,那么假如是 PC1---SW1-----PC2。PC1在vlan 10,PC2在VLAN 20.两个port都是access模式,那么既然access没有打上tag。那么这样两个vlan只要IP地址在同一网段。10,20不就是可以互通了吗?

我是初学者…………您老别介意哈……
                                                                                      
6# 2016-4-15 21:50:22 回复 收起回复
回复

使用道具 举报

发表于 2016-4-15 22:16:16 | 显示全部楼层
2016xy 发表于 2016-4-15 22:50
再者假如只有trunk才打上tag,那么假如是 PC1---SW1-----PC2。PC1在vlan 10,PC2在VLAN 20.两个port都是a ...

VLAN不同的话,即使PC1和PC2在同一个网段也需要能够路由的设备作为中转。在你这个结构里SW1要能够路由才行。但是同一个网段不能设在Layer3设备的两个端口上,所以你这个结构是不能实现的。还有,我还不老。
7# 2016-4-15 22:16:16 回复 收起回复
回复

使用道具 举报

发表于 2016-4-15 22:20:42 | 显示全部楼层
2016xy 发表于 2016-4-15 22:18
我没找到802.1Q的文档……

不过我自己做了个测试,如果是trunk口打tag的话,那我PC1----1SW2-----PC2 ...

我不知道你的PC是不是真正的电脑,如果是的话我不太相信你的结果。电脑如果不做特定的设定的话是不能理解TAG的。可以的话把你的SW的设定放上来,我可以帮你看看
8# 2016-4-15 22:20:42 回复 收起回复
回复

使用道具 举报

发表于 2016-4-15 22:24:48 | 显示全部楼层
本帖最后由 sboku 于 2016-4-15 23:33 编辑
2016xy 发表于 2016-4-14 21:51
假如PC连接switch的access port。那么PC始发进入switch的access port的数据是不会打标的吗?只有trunk口 ...

从Access port接受的Frame,SW内部是怎么处理的,具体的我不太清楚。我没看都过Cisco,或者其他的厂商发表的关于这方面的资料。但是就TAG的定义来讲,我的理解是为Trunk设计的。如果你说的TAG是指在SW内部识别Frame应属于哪个VLAN的功能的话,那么我觉得你所说的TAG和通常所说的Trunk的TAG在定义上是有区别的。不介意的话,能把你参考的资料名字告诉我吗?
9# 2016-4-15 22:24:48 回复 收起回复
回复

使用道具 举报

 楼主| 发表于 2016-4-15 22:58:16 | 显示全部楼层
sboku 发表于 2016-4-15 22:24
从Access port接受的Frame,SW内部是怎么处理的,具体的我不太清楚。我没看都过Cisco,或者其他的厂商发 ...

我没找到这方面的资料,这些都是看视频时候发现的问题。我发现两个不同观点的视频,自己有想不明白,就跑来请教了。

   只是如果TAG是为了trunk设置的话,如果trunk连接PC,那么此时从trunk出来的数据因该带上tag标记。那么PC因该无法识别才是。但我做实验却发现PC收得到trunk出来的数据。
   难道说我们说的tag不是同一种- - 没看过说vlan的tag有两种定义的啊。 tag不就是Src和Len/Etype中间插入的那4个字节么……
10# 2016-4-15 22:58:16 回复 收起回复
回复

使用道具 举报

 楼主| 发表于 2016-4-15 23:07:44 | 显示全部楼层
sboku 发表于 2016-4-15 22:16
VLAN不同的话,即使PC1和PC2在同一个网段也需要能够路由的设备作为中转。在你这个结构里SW1要能够路由才 ...

哈,大哥最后一句话真是较真啊。我只是个啥都不懂的毛头小子,看到大哥的两个IE吓尿了,就当作是某个老前辈了
11# 2016-4-15 23:07:44 回复 收起回复
回复

使用道具 举报

 楼主| 发表于 2016-4-15 23:14:38 | 显示全部楼层
sboku 发表于 2016-4-15 22:20
我不知道你的PC是不是真正的电脑,如果是的话我不太相信你的结果。电脑如果不做特定的设定的话是不能理解 ...

我确实没用真机做实验,我是用IOU做的实验。明天我去学校实验室用真机试试。PC1----1SW2-----PC2。
SW的1口设置为access,2口设置为trunk。然后vlan跟native vlan都是默认的1。照我猜测这因该是能通的。就是PC1发出不带tag的标记,然后进入SW2的1口,此时1口为数据打上vlan 1的tag,然后从SW2口(trunk口)出去,此时native vlan 1发现该数据带的tag标记与自身的native vlan一致,所以去掉tag标记。然后PC2收到一个不带tag标记的数据,故此能识别。然后PC2回复时候也是如此。

只是这样的话貌似又扭曲了native vlan的意义了……学的有点乱了。
我明天去学校找真机做做实验。
12# 2016-4-15 23:14:38 回复 收起回复
回复

使用道具 举报

发表于 2016-4-15 23:27:14 | 显示全部楼层
本帖最后由 sboku 于 2016-4-16 00:37 编辑
2016xy 发表于 2016-4-16 00:14
我确实没用真机做实验,我是用IOU做的实验。明天我去学校实验室用真机试试。PC1----1SW2-----PC2。
SW的 ...

Native VLAN是不打TAG的,所以从SW的Port2发出去的Native VLAN的Frame也就不会有TAG,所以你这个关于TAG的实验没有意义。用其他的VLAN吧
13# 2016-4-15 23:27:14 回复 收起回复
回复

使用道具 举报

发表于 2016-4-15 23:32:11 | 显示全部楼层
2016xy 发表于 2016-4-16 00:07
哈,大哥最后一句话真是较真啊。我只是个啥都不懂的毛头小子,看到大哥的两个IE吓尿了,就当作是某个老前 ...

图个虚名而已。现在的IE太多了。
14# 2016-4-15 23:32:11 回复 收起回复
回复

使用道具 举报

 楼主| 发表于 2016-4-16 00:25:49 | 显示全部楼层
sboku 发表于 2016-4-15 23:27
Native VLAN是不打TAG的,所以从SW的Port2发出去的Native VLAN的Frame也就不会有TAG,所以你这个关于TAG ...

PC1---F0/1-----SW1----F0/2----SW2----F0/3----PC2

那我要是这样实验。SW1就将FO/2口设置为trunk口。native vlan不做修改。为默认的vlan1,FO/1也是在vlan1里边。而SW2这边呢将SW2的F0/2,F0/3的native vlan 设置为10,并且都设置为trunk port。SW1与SW2的F0/2设置的native vlan不一致。若是只有trunk port会打tag的话,那么PC1发出的数据从SW1的F0/2口出去因该打上了vlan 1的tag,那么SW2的F0/2则不对含有tan id 1的包做操作,而F0/3因为也是trunk port,也不对该包做操作,直接发给PC2。那这样实验因该可以了吧。我刚用IOU做了发现能通。
15# 2016-4-16 00:25:49 回复 收起回复
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 论坛注册

本版积分规则

QQ|Archiver|手机版|小黑屋|sitemap|鸿鹄论坛 ( 京ICP备14027439号 )  

GMT+8, 2025-5-10 16:29 , Processed in 0.075072 second(s), 24 queries , Redis On.  

  Powered by Discuz!

  © 2001-2025 HH010.COM

快速回复 返回顶部 返回列表