400-035-6699
当前位置: 首页 » 技术支持 » 博文资讯 »

VLAN通信原理与实践:深入探讨网络隔离与数据传输细节

VLAN(Virtual Local Area network虚拟局域网)技术是网络管理中常用的一种技术,它允许我们在物理网络上创建多个逻辑网络,以提高网络性能安全性。以下是一些关于VLAN的基础知识和应用。
不同VLAN之间默认情况下是无法通信的,如果需要通信,必须借助三层设备,如路由器三层交换机。然而,VLAN标签技术提供了一种在不同VLAN之间通信的方式。IEEE 802.1Q协议规定,在以太网数据帧中加入4个字节的VLAN标签,用以标识不同VLAN的数据流量
计算机网络中,数据帧分为两种:有标记帧(Tagged Frame)和无标记帧(Untagged Frame)。大多数计算机设备,如PC、服务器、Hub和傻瓜交换机,只能处理无标记帧。而交换机、路由器等网络设备既能处理有标记帧也能处理无标记帧。语音终端、无线接入点(AP)等设备则可以同时处理一个有标记帧和一个无标记帧。
VLAN网络的链路类型主要有两种:接入链路和干道链路。接入链路通常连接用户主机和交换机,传输的是无标记的VLAN数据帧。干道链路则是连接交换机之间的链路,传输的是带标记的VLAN帧。
PVID(Port VLAN ID)是端口的默认VLAN,用于将无标记帧映射到特定的VLAN。当交换机的端口收到无标记帧时,会自动为其添加PVID。这一机制确保了无标记帧在干道链路中的正确传输。
交换机端口类型方面,思科交换机主要有AccessTrunk两种类型,而华为设备除了这两种类型外,还有一种Hybrid类型。Access端口主要处理无标记帧,而Trunk端口可以处理带标记和无标记的帧。Hybrid端口则更为灵活,可以处理接入链路和干道链路的帧,并根据配置决定是否剥离VLAN标签。
例如,当SWA和SWB两台交换机之间的链路是Trunk链路时,如果链路的PVID设置为1,并允许所有VLAN通过,那么交换机在处理主机A的数据帧时,会检查PVID是否与端口的PVID相同。如果相同,则会剥离标签后转发;如果不同,但数据帧的VLAN ID在允许列表中,则会保持标签不变。
VLAN的划分方法有很多,包括基于端口、MAC地址、IP子网、协议和策略等。其中,基于端口的划分最为常见,它通过为每个端口配置不同的PVID来实现。
以下是一些常用的VLAN配置命令
- `vlan 10`:创建单个VLAN。 - `vlanbatch 10 to 20`:创建多个VLAN。 - `portlink-type access/trunk/hybrid`:配置接口类型。 - `portdefault vlan 10`:配置Access关联VLAN/PVID。 - `porttrunk allow-pass vlan 10`:配置Trunk允许VLAN。 - `porttrunk pvid vlan 10`:配置Trunk的PVID。 - `porthybrid tagged/untagged vlan 10`:配置Hybrid标记VLAN。 - `porthybrid pvid vlan 10`:配置Hybrid的PVID。 - `display vlan`:验证vlan配置。 - `display portvlan`:验证端口与VLAN的关联。
通过合理配置VLAN,我们可以优化网络结构,提高网络效率,同时确保数据安全。掌握VLAN的基础知识和应用,对于网络管理员来说至关重要。

1. VLAN标签

VLAN通信原理与实践:深入探讨网络隔离与数据传输细节

一般不同VLAN之间是无法通信的,如果想要通信需要借助三层设备实现,当然,VLAN标签技术也能实现不同VLAN之间的通信。

73af8e74-43a6-11ee-a2ef-92fbcf53809c.png

VLAN标签技术通过对数据流量进行打标签来区分不同VLAN的流量,IEEE 802.1Q协议规定以太网数据帧中加入4个字节的VLAN标签(又称VLAN Tag,简称Tag),用以标识VLAN信息。通过Tag字段中的标识来区分不同VLAN的流量,也就是说,在一个VLAN的交换网络中以太网数据帧的形式一般会有以下两种形式:

有标记帧(Tagged Frame)

无标记帧(Untagged Frame)

在常见的计算机设备,网络设备中:

PC主机、服务器、Hub、傻瓜交换机只能收发Untagged帧

交换机、路由器、 AC既能收发Tagged帧也能收发Untagged帧

语音终端、AP等设备可以同时收发一个Tagged帧和一个Untagged帧

2. 链路类型

73d25eb8-43a6-11ee-a2ef-92fbcf53809c.png

VLAN网络的链路分别为接入链路和干道链路:

接入链路(Access Link):通常是连接用户主机和交换机之间的链路,接入链路上传输的是不带标签的VLAN数据帧,也就是Untagged帧。

干道链路(Trunk Link):连接交换机与交换机之间的链路,在干道链路上传输的一般都是带标签的VLAN帧,即Tagged帧。

3. 什么是PVID

PVID英文为Port VLAN ID,代表端口的默认VLAN,为什么需要PVID?

接入链路一般都是处理不带标签的Untagged数据帧,而干道链路都是处理带标签的tagged数据帧,通过在交换机的端口配置默认的VLAN,当交换机的端口收到不带标签的Untagged数据帧时,交换机将给会加上默认VLAN的PVID(即VLAN标签)。

4. 端口类型

学过思科的同学知道,思科交换机的端口只有Access和Trunk两种类型,华为设备除了这两种端口类型外,还有一种Hybrid端口类型。

4.1 Acccess端口

Access端口是接入链路上的端口类型,即交换机连接主机的端口,该端口只处理唯一默认的VLAN数据流量(一般是不带标签)。

73eb3a64-43a6-11ee-a2ef-92fbcf53809c.png

Access端口处理数据过程如上图所示,当端口收到不带标签的VLAN帧时则会强制加上PVID。如果是带标签的数据帧则判断VLAN ID(这里的VLAN ID其实就是PVID)和默认的VLAN ID是否相同,如果不相同则丢弃报文,如果相同则接收报文,等待下一步处理。

Access端口在发送报文时会先剥离VLAN帧的标签,然后再发送。

4.2 Trunk端口

Trunk端口是Trunk链路上的端口,是交换机与交换机之间连接的端口,也可以连接路由器,AP等设备,这意味着Trunk端口可以处理带标签和不带标签的数据帧。

73ffaf4e-43a6-11ee-a2ef-92fbcf53809c.png

Trunk端口收到不带标签的数据帧时,会添加该端口的PVID并检查PVID是否在允许通过的VLAN ID列表中,如果在的话则会接收报文,反之则会丢弃报文。如果接收到的是带标签的数据帧时,会检查标签中的VLAN ID是否在允许通过的VLAN ID列表中,如果在就接收报文,如果不在就丢弃报文。

Trunk端口在发送数据帧时,会先检查数据帧的VLAN ID是否与端口的PVID是否相同,并且是该端口允许通过的VLAN ID时则去掉标签;如果数据帧的VLAN ID与端口的PVID不相同,但是该端口允许通过的VLAN ID的话,则保持原有的标签不变,然后发送报文。

举个栗子:

74146952-43a6-11ee-a2ef-92fbcf53809c.png

SWA和SWB两台交换机之间的链路是Trunk链路,并且该链路的PVID是1(即默认VLAN 1),并且允许所有的VLAN通过。

当主机A发送数据帧时,由于SWA交换机的Trunk端口给数据帧加了PVID1的“标签”,SWA交换机在处理主机A的数据帧时,检查PVID和该端口的PVID是相同的,就会剥离标签然后转发到Trunk链路上。

主机B发送数据时,SWA交换机的Trunk端口给数据帧加上了VPID20的“标签”,SWA交换机在处理主机B的数据帧时,检查PVID和该端口的PVID不相同,并且数据帧的VLAN ID是端口允许通过的VLAN ID,则会原封不动的转发到Trunk链路上。

4.3 Hybrid端口

Hybrid端口既可以连接接入链路又可以连接干道链路,还可以在出端口方向将某些VLAN帧的标签剥离,一般华为设备的端口默认就是Hybrid类型。

Hybrid端口在接收报文时同Trunk端口的过程是相同的,但是Hybrid端口在发送报文的过程时,如果数据帧的VLAN ID是该端口允许通过的VLAN ID时则发送该报文,还能通过配置命令决定发送报文时是否携带标签:

port hybrid tagged vlan vlan-id :表示当前端口发送该vlan-id的数据帧时直接发送报文,不剥离VLAN标签,该命令通常配置在交换机连接交换机的端口上。

port hybrid untagged vlan vlan-id :表示当前端口发送该vlan-id的数据帧时会将VLAN标签先剥离掉再转发出去,该命令一般配置在交换机连接主机上的端口。

我们再来看个栗子:

7429f4c0-43a6-11ee-a2ef-92fbcf53809c.png

主机A和主机B都能访问服务器,但是它们之间不能互相访问。此时交换机连接主机和服务器的端口,以及交换机互连的端口都配置为Hybrid类型。交换机连接主机A的端口的PVID是2,连接主机B的端口的PVID是3,连接服务器的端口的PVID是100。

在SWA和SWB交换机之间连接的接口上配置port hybrid tagged vlan 2 3 100命令后,这条链路上传输的就都是带标签的数据帧了。

在SWB和服务器连接的接口上配置port hybrid untagged vlan 2 3命令后,这条链路上发送的数据就会剥离VLAN标签再转发给服务器。

5. VLAN的划分

VLAN的划分有以下几种方法:

基于端口的划分

基于MAC地址的划分

基于IP子网划分

基于协议划分

基于策略划分

在以上几种VLAN划分的方法中,基于策略划分VLAN最为复杂,基于端口划分VLAN在工作中最为常用。其主要是根据交换机的端口来划分,为每个端口配置不同的PVID,将不同的端口划分到VLAN中,默认情况下交换机的所有端口都划分在VLAN 1中。

6. VLAN常用命令

vlan10//创建单个VLAN
vlanbatch10to20//创建多个VLAN
portlink-typeaccess/trunk/hybird//配置接口类型
portdefaultvlan10//配置Access关联VLAN/PVID
porttrunkallow-passvlan10//配置Trunk允许VLAN
porttrunkpvidvlan10//配置Trunk的PVID
porthybirdtagged/untaggedvlan10//配置Hybird标记VLAN
porthybridpvidvlan10//配置Hybird的PVID
displayvlan//验证VLAN
displayportvlan//验证VLAN







审核编辑:刘清

【限时免费】一键获取网络规划系统模板+传输架构设计+连通性评估方案

VLAN相关文章

服务电话:
400-035-6699
企服商城