前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >安全基础知识 | VLAN基础知识详细介绍

安全基础知识 | VLAN基础知识详细介绍

作者头像
Power7089
发布2021-12-10 09:49:52
7630
发布2021-12-10 09:49:52
举报

前言

VLAN(Virtual Local Area Network)即虚拟局域网,是将一个物理的LAN在逻辑上划分成多个广播域的通信术。

01 VLAN简介

早期以太网是一种基于CSMA/CD(Carrier Sense Multiple Access/Collision Detection)的共享通讯介质的数据网络通讯技术。当主机数目较多时会导致冲突严重、广播泛滥、性能显著下降甚至造成网络不可用等问题。通过交换机实现LAN互连虽然可以解决冲突严重的问题,但仍然不能隔离广播报文和提升网络质量。

在这种情况下出现了VLAN技术,这种技术可以把一个LAN划分成多个逻辑的VLAN,每个VLAN是一个广播域,VLAN内的主机间通信就和在一个LAN内一样,而VLAN间则不能直接互通,这样,广播报文就被限制在一个VLAN内。

图 1-1 VLAN示意图

图 1-1 是一个典型的VLAN应用组网图。两台交换机放置在不同的地点,比如写字楼的不同楼层。每台交换机分别连接两台计算机,他们分别属于两个不同的VLAN,比如不同的企业客户。

受益

使用VLAN能给用户带来以下受益。

  • 限制广播域:广播域被限制在一个VLAN内,节省了带宽,提高了网络处理能力。
  • 增强局域网的安全性:不同VLAN内的报文在传输时是相互隔离的,即一个VLAN内的用户不能和其它VLAN内的用户直接通信。
  • 提高了网络的健壮性:故障被限制在一个VLAN内,本VLAN内的故障不会影响其他VLAN的正常工作。
  • 灵活构建虚拟工作组:用VLAN可以划分不同的用户到不同的工作组,同一工作组的用户也不必局限于某一固定的物理范围,网络构建和维护更方便灵活。

02 VLAN 原理

2.1 VLAN标签

定义和作用

要使交换机能够分辨不同VLAN的报文,需要在报文中添加标识VLAN信息的字段。IEEE 802.1Q协议规定,在以太网数据帧的目的MAC地址和源MAC地址字段之后、协议类型字段之前加入4个字节的VLAN标签(又称VLAN Tag,简称Tag),用以标识VLAN信息。如图 1-2所示。

图 1-2 IEEE 802.1Q封装的VLAN数据帧格式

2.2 接口类型

交换机内部处理的数据帧一律都带有VLAN标签,而现网中交换机连接的设备有些只会收发Untagged帧,要与这些设备交互,就需要接口能够识别Untagged帧并在收发时给帧添加、剥除VLAN标签。同时,现网中属于同一个VLAN的用户可能会被连接在不同的交换机上,且跨越交换机的VLAN可能不止一个,如果需要用户间的互通,就需要交换机间的接口能够同时识别和发送多个VLAN的数据帧。

根据接口连接对象以及对收发数据帧处理的不同,华为定义了4种接口的链路类型:Access、Trunk、Hybrid和QinQ,以适应不同的连接和组网。其中Access接口、Trunk接口和Hybrid接口如图 1-3所示。

图 1-3 链路类型和接口类型示意图

Access接口

Access接口一般用于和不能识别Tag的用户终端(如用户主机、服务器等)相连,或者不需要区分不同VLAN成员时使用。Access接口大部分情况只能收发Untagged帧,且只能为Untagged帧添加唯一VLAN的Tag。交换机内部只处理Tagged帧,所以Access接口需要给收到的数据帧添加VLAN Tag,也就必须配置缺省VLAN。配置缺省VLAN后,该Access接口也就加入了该VLAN。当Access接口收到带有Tag的帧,并且帧中VID与PVID相同时,Access接口也能接收并处理该帧。为了防止用户私自更改接口用途,接入其他交换设备,可以配置接口丢弃入方向带Tag的报文。

Trunk接口

Trunk接口一般用于连接交换机、路由器、AP以及可同时收发Tagged帧和Untagged帧的语音终端。它可以允许多个VLAN的帧带Tag通过,但只允许一个VLAN的帧从该类接口上发出时不带Tag(即剥除Tag)。

Hybrid接口

Hybrid接口既可以用于连接不能识别Tag的用户终端(如用户主机、服务器等)和网络设备(如Hub、傻瓜交换机),也可以用于连接交换机、路由器以及可同时收发Tagged帧和Untagged帧的语音终端、AP。它可以允许多个VLAN的帧带Tag通过,且允许从该类接口发出的帧根据需要配置某些VLAN的帧带Tag(即不剥除Tag)、某些VLAN的帧不带Tag(即剥除Tag)。

Hybrid接口和Trunk接口在很多应用场景下可以通用,但在某些应用场景下,必须使用Hybrid接口。比如在灵活QinQ中,服务提供商网络的多个VLAN的报文在进入用户网络前,需要剥离外层VLAN Tag,此时Trunk接口不能实现该功能,因为Trunk接口只能使该接口缺省VLAN的报文不带VLAN Tag通过。

QinQ接口

QinQ接口(802.1Q-in-802.1Q)使用QinQ协议,一般用于私网与公网之间的连接。它可以给帧加上双层Tag,即在原来Tag的基础上,给帧加上一个新的Tag,从而可以支持多达4094×4094个VLAN,满足网络对VLAN数量的需求。外层的Tag通常被称作公网Tag,用来标识公网的VLAN;内层Tag通常被称作私网Tag,用来标识私网的VLAN。QinQ接口也被称为Dot1q-tunnel接口。

以太网链路包括接入链路(Access Link)和干道链路(Trunk Link)。接入链路用于连接交换机和用户终端(如用户主机、服务器、傻瓜交换机等),只可以承载1个VLAN的数据帧。干道链路用于交换机间互连或连接交换机与路由器,可以承载多个不同VLAN的数据帧。在接入链路上传输的帧都是Untagged帧,在干道链路上传输的数据帧必须都打上Tag。

2.3 缺省VALN

缺省VLAN又称PVID(Port Default VLAN ID)。前面提到,交换机处理的数据帧都带Tag,当交换机收到Untagged帧时,就需要给该帧添加Tag,添加什么Tag,就由接口上的缺省VLAN决定。它的具体作用是:

  • 当接口接收数据帧时,如果接口收到一个Untagged帧,交换机会根据PVID给此数据帧添加等于PVID的Tag,然后再交给交换机内部处理;如果接口收到一个Tagged帧,交换机则不会再给该帧添加接口上PVID对应的Tag。
  • 当接口发送数据帧时,如果发现此数据帧的Tag的VID值与PVID相同,则交换机会将Tag去掉,然后再从此接口发送出去。

每个接口都有一个缺省VLAN。缺省情况下,所有接口的缺省VLAN均为VLAN1,但用户可以根据需要进行配置:

  • 对于Access接口,缺省VLAN就是它允许通过的VLAN,修改接口允许通过的VLAN即可更改接口的缺省VLAN。
  • 对于Trunk接口和Hybrid接口,一个接口可以允许多个VLAN通过,但是只能有一个缺省VLAN,修改接口允许通过的VLAN不会更改接口的缺省VLAN。

2.4 VLAN标签的添加和剥除

接口对收发的以太网数据帧添加或剥除VLAN标签的处理依据接口的接口类型和缺省VLAN。下面分别介绍Access接口、Trunk接口、Hybrid接口对收发数据帧的处理过程。

Access接口

Access接口添加和剥除VLAN标签的处理如图 1-4和图 1-5所示。

图 1-4 Access接口添加VLAN标签的处理过程

图 1-5 Access接口剥除VLAN标签的处理过程

Trunk接口

Trunk接口添加和剥除VLAN标签的处理如图1-6和图1-7所示。

图1-6 Trunk接口添加VLAN标签的处理过程

图4-7 Trunk接口剥除VLAN标签的处理过程

Hybrid接口

Hybrid接口添加和剥除VLAN标签的处理如图1-8和图1-9所示。

图1-8 Hybrid接口添加VLAN标签的处理过程

图4-9 Hybrid接口剥除VLAN标签的处理过程

03VLAN划分

3.1 VLAN划分方式

可以基于接口、MAC地址、子网、网络层协议、匹配策略方式来划分VLAN。不同方式的VLAN划分比较如表3-1所示。

表3-1 VLAN划分方式差异表

3.2 VLAN划分方式的匹配优先级

如果入方向Untagged帧同时匹配多种划分VLAN的方式,则优先级顺序从高至低依次是:基于匹配策略划分VLAN->基于MAC地址划分VLAN或基于子网划分VLAN->基于协议划分VLAN->基于接口划分VLAN。

如果报文同时匹配了基于MAC地址划分VLAN和基于子网划分VLAN,缺省情况下,优先基于MAC地址划分VLAN。可以通过命令改变基于MAC地址划分VLAN和基于子网划分VLAN的优先级,从而决定优先划分VLAN的方式。

基于接口划分VLAN的优先级最低,但是最常用的VLAN划分方式。

划分VLAN方式的匹配顺序如图 3-1所示。

图 3-1 VLAN划分方式的匹配顺序图

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2021-12-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 程序员阿甘 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档