vlan实现机制

本文最后更新于 2025年1月24日 上午

VLAN标识符VID

  • VLAN标记的最后12比特称为VLAN标识符VID,唯一标志以太网帧属于哪一个VLAN。
  • VID取值范围是0 ~ 4095 (0 ~ 2^12 - 1)。
  • 0和4095不用来表示VLAN,有效取值范围是1 ~ 4094。

802.1Q帧

  • 在以太网帧基础上,用于实现虚拟局域网(VLAN)功能的一种数据帧格式
  • 结构特点:在普通以太网帧中插入4字节VLAN标记,其最后12比特是VID(有效取值范围1 - 4094)。
  • 处理方式:由交换机处理。收到普通以太网帧时“打标签”转变为802.1Q帧;转发时可能“去标签”变回普通以太网帧。
  • 作用:实现VLAN间通信隔离与管理,将物理局域网划分为多个逻辑独立的虚拟局域网,提高网络安全性、灵活性和管理效率,如企业按部门划分VLAN提升安全性。

交换机端口类型

Access端口

  • 用途:一般用于连接用户计算机。
  • VLAN属性:只能属于一个VLAN。
  • PVID:PVID值与端口所属VLAN的ID相同(默认为1)。
  • 接收处理方法:一般只接受“未打标签”的普通以太网MAC帧,根据接收帧的端口的PVID给帧“打标签”,即插入4字节VLAN标记字段,字段中的VID取值与端口的PVID取值相等。
  • 发送处理方法:若帧中的VID与端口的PVID相等,则“去标签”并转发该帧;否则不转发。

Trunk端口

  • 用途:一般用于交换机之间或交换机与路由器之间的互连。
  • VLAN属性:可以属于多个VLAN。
  • PVID:用户可以设置Trunk端口的PVID值,默认情况下,PVID值为1。
  • 接收处理方法:接收“未打标签”的帧,根据接收帧的端口的PVID给帧“打标签”,即插入4字节VLAN标记字段,字段中的VID取值与端口的PVID取值相等;接收“已打标签的帧”。
  • 发送处理方法:对VID等于PVID的帧,“去标签”再转发。

Hybrid端口(华为)

  • 用途:既可用于交换机之间或交换机与路由器之间的互连(同Trunk端口),也可用于交换机与用户计算机之间的互连(同Access端口)。
  • VLAN属性:可以属于多个VLAN(同Trunk端口)。
  • PVID:用户可以设置Hybrid端口的PVID值,默认情况下,PVID值为1(同Trunk端口)。
  • 接收处理方法:接收“未打标签”的帧,根据接收帧的端口的PVID给帧“打标签”,即插入4字节VLAN标记字段,字段中的VID取值与端口的PVID取值相等;接收“已打标签的帧”。
  • 发送处理方法:查看帧的VID是否在端口的“去标签”列表(即允许通过的vlan列表)中:若存在,则“去标签”后再转发;若不存在,则直接转发。

端口转发总结

端口类型 接收处理方法 发送处理方法
Access 一般只接收未打标签的普通以太网帧,并给其打标签 若帧中的VID等于端口PVID,则去掉标签并转发;否则丢弃
Trunk 接收已打标签的帧;接收未打标签的帧,根据端口的PVID值给帧打标签 帧中VID等于端口PVID,去掉标签再转发;帧中VID不等于端口PVID,直接转发
Hybrid(华为) 接收已打标签的帧;接收未打标签的帧,根据端口的PVID值给帧打标签 查看数据帧中的VID是否在端口的“去标签”列表中:如果存在,则去掉标签再转发;如果不存在,则直接转发


  • 互连的Trunk端口的PVID值不等,可能会造成转发错误。因为发送端口可能会先去标签,接收端口按照自己的PVID打标签。


vlan实现机制
https://xinhaojin.github.io/2025/01/24/vlan实现机制/
作者
xinhaojin
发布于
2025年1月24日
更新于
2025年1月24日
许可协议