二层VLAN隔离技术详解一基本概念
1、 VLAN 的帧格式
传统的以太网数据帧在目的 MAC地址和源 MAC 地址之后封装的是上层协议的类型字段。传统的以太网数据帧格式
802.1q 帧格式
每台支持 802.1q 协议的交换机发送的数据包都会包含VLAN ID,以指明交换机属于哪一个 VLAN。因此,在一个VLAN交换网络中,以太网帧有以下两种形式:
·有标记帧(tagged frame):加入了4 字节 802.1qTag 的帧
·无标记帧(untagged frame):原始的、未加入4 字节 802.1qTag 的帧
2、 链路类型
VLAN 中有以下两种链路类型:
·接入链路(Access Link):用于连接用户主机和交换机的链路。
通常情况下,主机并不需要知道自己属于哪个 VLAN,主机硬件通常也不能识别带有VLAN 标记的帧。因此,主机发送和接收的帧都是 untagged帧。
·干道链路(Trunk Link):用于交换机间的互连或交换机与路由器之间的连接。
干道链路可以承载多个不同 VLAN数据,数据帧在干道链路传输时,干道链路的两端设备需要能够识别数据帧属于哪个VLAN,所以在干道链路上传输的帧都是Tagged 帧。
说明:
-
对于主机来说,它不需要知道 VLAN 的存在。主机发出的是untagged 报文。
-
交换设备接收到报文后,根据配置规则(如接口信息)判断出报文所属的 VLAN后,再进行处理。
-
如果报文需要通过另一台交换机转发,则该报文必须通过干道链路透传到对端交换设备上。
为了保证其它交换设备能够正确处理报文中的 VLAN信息,在干道链路上传输的报文必须都打上了 VLAN 标记。
-
·当交换设备最终确定报文出接口后,将报文发送给主机前,需要将 VLAN标记从帧中删除,这样主机接收到的报文都是不带 VLAN标记的以太网帧。
所以,一般情况下,干道链路上传输的都是tagged 帧,接入链路上传送到的都是 untagged帧。这样处理的好处是:网络中配置的 VLAN信息可以被所有交换设备正确处理,而主机不需要了解VLAN信息。
3、接口类型
在 802.1Q 中定义VLAN 帧后,设备的有些接口可以识别 VLAN帧,有些接口则不能识别 VLAN帧。
根据对VLAN 帧的识别情况,将接口分为 4类:
· Access 接口:
Access 接口是交换机上用来连接用户主机的接口,它只能连接接入链路。
仅仅允许唯一的 VLAN ID 通过本接口,这个VLAN ID 与接口的缺省 VLANID 相同,Access 接口发往对端设备的以太网帧永远是不带标签的帧。
· Trunk 接口
Trunk 接口是交换机上用来和其他交换机连接的接口,它只能连接干道链路,允许多个VLAN 的帧(带 Tag标记)通过。
· Hybrid 接口
Hybrid 接口是交换机上既可以连接用户主机,又可以连接其他交换机的接口
Hybrid 接口既可以连接接入链路又可以连接干道链路。Hybrid接口允许多个 VLAN 的帧通过,并可以在出接口方向将某些VLAN 帧的 Tag剥掉。
· QinQ 接口
QinQ(802.1Q-in-802.1Q)接口是使用QinQ 协议的接口。QinQ接口可以给帧加上双重 Tag,即在原来Tag 的基础上,给帧加上一个新的 Tag,从而可以支持多达4094× 4094个 VLAN(不同的产品支持不同的规格),满足网络对VLAN数量的需求。
QinQ 帧的格式如图所示。外层的标签通常被称作公网Tag,用来存放公网的 VLANID。内层标签通常被称作私网 Tag,用来存放私网的VLAN ID。
4、缺省 VLAN
每种类型的接口都可以配置一个缺省 VLAN,对应的VLAN ID 为 PVID(PortDefault VLAN ID)。接口类型不同,缺省VLAN的含义也有所不同。