最近由于工作的需要学习了一下vlan交换机的配置,但是遇到一个很容易让人迷惑的问题,就是交换机的端口可以配置为tagged和untagged,这个有什么区别呢?
从网上搜了一把,有很多讲解的也很含糊,很难理解。不过通过浏览不同版本的解释还是了解了一些:
1、所谓的Untagged Port和tagged Port不是讲物理端口的状态,而是物理端口所拥有的某一个VID的状态,所以一个物理端口可以在某一个VID上是Untagged Port,在另一个VID上是tagged Port;
2、一个物理端口只能拥有一个PVID,当一个物理端口拥有了一个PVID的时候,必定会拥有和PVID的TAG等同的VID,而且在这个VID上,这个物理端口必定是Untagged Port;
这句话似乎很绕,其实就是说,一个物理端口只能属于一个VID的Untagged Port;而这个端口可以属于多个VID的Tagged Port。一个端口可以属于多个VLAN,而且它有且仅有一个默认VID,就是设置为Untagged Port的那个VID。
3、拥有和数据帧的VID一致的物理端口,不论在这个VID上是Untagged Port或者tagged Port,都可以接受来自交换机内部的标记了这个VID的数据帧;
就是说,属于同一个VID的端口,不论是Untagged Port还是Tagged Port都会收到标记有VID的数据帧。
4、拥有和数据帧的VID一致的物理端口,只有在这个VID上是tagged Port,才可以接受来自交换机外部的标记了这个VID的数据帧;
如果交换机端口收到一个打了VLAN标记VID的数据帧,那么只有该VID在此端口设置为Tagged Port才可以接受。否则丢弃。
Tagged 数据帧 Tagged数据帧 Untagged数据帧 Untagged数据帧
in out in out
Tagged端口 原样接收 原样发送 按端口PVID打 按照PVID打TAG
TAG标记 标记
Untagged端口 丢弃 去掉TAG标记 按端口PVID打TAG标记 原样发送
需要注意的就是一个端口可以有多个VID将此端口设置为Tagged Port。所以不要把Tagged端口看做是某一个VID的端口。也不要把Tagged端口和Untagged端口看做是不同的端口,一个端口必定有一个VID将它设为Untagged Port,也有可能有多个VID将此端口设为Tagged Port。当然这里所说的端口是指设定了Vlan的端口。
部分资料查阅于网络上的共享者们,在此表示感谢!