VLAN基本原理
一、基本理论阐述
VLAN(Virtual Local Area Network),即虚拟局域网,是一种将物理上互连的网络节点按逻辑划分成不同广播域的技术。VLAN的划分不是基于物理位置,而是基于网络功能和安全管理需要。其基本原理主要包括以下几点:
逻辑隔离:VLAN通过逻辑的方式将网络划分为多个独立的广播域,每个VLAN内部的数据传输是独立的,不会影响到其他VLAN。这有效地控制了广播风暴的范围,提高了网络的安全性和性能。
灵活配置:VLAN的划分不受物理位置的限制,可以根据实际需要灵活配置。例如,可以将不同楼层的计算机划分到同一个VLAN中,即使它们在物理上分布在不同楼层或不同交换机上。
端口隔离:VLAN通过交换机端口来实现划分,每个端口可以配置为属于一个或多个VLAN。这使得管理员能够方便地管理网络,例如将特定用户或设备隔离到单独的VLAN中,以实现更高级别的安全控制。
标签机制:在VLAN中,数据帧在交换机之间传输时会被打上VLAN标签,以标识其所属的VLAN。这样,交换机就能够根据标签将数据帧转发到正确的目的VLAN中。
二、实验过程
为了深入理解VLAN的基本原理,我们可以进行一个简单的实验。实验环境包括一台具备VLAN功能的交换机、若干台计算机和相应的网络线缆。
实验准备:首先,将交换机和计算机按照实验拓扑图进行连接,确保物理连接正确无误。然后,为每台计算机配置IP地址和子网掩码,确保它们能够在同一网络层上通信。
创建VLAN:在交换机上创建两个VLAN,例如VLAN10和VLAN20。每个VLAN分别代表一个独立的广播域。
配置端口:将交换机的某些端口划分到VLAN10中,将另一些端口划分到VLAN20中。这样,连接到这些端口的计算机将分别属于不同的VLAN。
测试通信:在属于不同VLAN的计算机之间进行通信测试。正常情况下,属于不同VLAN的计算机之间是无法直接通信的,因为它们位于不同的广播域中。如果需要实现跨VLAN通信,可以通过配置三层交换机或路由器来实现。
三、理论与实验结合
通过实验,我们可以更直观地理解VLAN的基本原理。实验中的每个步骤都对应着VLAN理论中的一个关键点。例如,创建VLAN的过程体现了逻辑隔离的原理;配置端口的过程展示了VLAN的灵活配置特性;通信测试则验证了VLAN的广播域隔离效果。
同时,实验也帮助我们发现了理论知识的实际应用价值。通过配置VLAN,我们可以有效地控制网络广播风暴的范围,提高网络的安全性和性能。此外,VLAN的灵活配置特性也使得网络管理变得更加方便和高效。
综上所述,VLAN的基本原理包括逻辑隔离、灵活配置、端口隔离和标签机制等方面。通过实验的方式,我们可以更深入地理解这些原理,并将其应用于实际网络管理中。
VLAN基本原理
一、基本理论阐述
VLAN,即虚拟局域网,是一种在物理网络上通过逻辑划分形成的多个虚拟网络。它的基本原理在于,即使物理上连接在同一个局域网内的设备,也可以通过软件配置的方式,将它们划分到不同的逻辑网络中,实现不同网络之间的隔离和通信控制。
VLAN的划分有多种方式,如基于端口、基于MAC地址、基于协议等。基于端口的划分是最简单的方式,将同一个交换机上的不同端口划分到不同的VLAN中。基于MAC地址的划分则是根据设备的MAC地址来判定其所属的VLAN。基于协议的划分则是根据设备所使用的网络协议来划分VLAN。
VLAN的引入带来了诸多好处。首先,它提高了网络的安全性,通过将不同用户或不同业务划分到不同的VLAN中,可以限制未经授权的访问。其次,VLAN提高了网络的灵活性,可以方便地添加、删除或移动网络设备,而无需改变物理连接。此外,VLAN还有助于简化网络管理,可以将不同地理位置的网络设备划分到同一个VLAN中,便于集中管理。
二、实验过程
本次实验旨在通过实际操作,深入理解VLAN的基本原理和配置方法。实验环境包括一台交换机和若干台计算机。
实验步骤:
配置交换机:首先,通过控制台或远程登录方式进入交换机的管理界面。然后,创建不同的VLAN,并为每个VLAN分配一个唯一的ID。接下来,将交换机的不同端口划分到相应的VLAN中。
配置计算机:将计算机连接到交换机的不同端口上,并为每台计算机配置相应的IP地址和子网掩码。确保每台计算机都属于其所在VLAN的网络段。
测试网络连通性:使用ping命令或其他网络测试工具,测试不同VLAN之间的计算机是否能够相互通信。正常情况下,同一VLAN内的计算机应该能够相互通信,而不同VLAN之间的计算机则无法直接通信。
配置VLAN间路由:为了实现不同VLAN之间的通信,需要在网络中配置VLAN间路由。这可以通过在交换机上启用三层交换功能或使用路由器来实现。配置完成后,再次测试不同VLAN之间的计算机是否能够相互通信。
三、理论与实验结合
通过本次实验,我们深入理解了VLAN的基本原理和配置方法。实验中,我们成功地将物理网络划分为多个逻辑网络(VLAN),并通过配置交换机和计算机,实现了不同VLAN之间的隔离和通信控制。实验结果与VLAN的基本理论相吻合,验证了VLAN技术的有效性和实用性。
在实验过程中,我们还发现了VLAN技术的诸多优点。例如,通过划分VLAN,我们可以方便地实现网络的安全隔离和访问控制;同时,VLAN的灵活性也使我们能够更轻松地管理网络设备和优化网络性能。
综上所述,VLAN技术是现代网络架构中不可或缺的一部分。通过深入理解VLAN的基本原理和配置方法,我们可以更好地设计和维护网络,提高网络的安全性、灵活性和管理效率。
VLAN
以太网是一种基于CSMA/CD(Carrier Sense Multiple Access/Collision Detection)的共享通讯介质的数据网络通讯技术。当主机数目较多时会导致冲突严重、广播泛滥、性能显著下降甚至造成网络不可用等问题。通过交换机实现LAN互连虽然可以解决冲突严重的问题,但仍然不能隔离广播报文和提升网络质量。在这种情况下出现了VLAN技术,这种技术可以把一个LAN划分成多个逻辑的VLAN,每个VLAN是一个广播域,VLAN内的主机间通信就和在一个LAN内一样,而VLAN间则不能直接互通,这样,广播报文就被限制在一个VLAN内。学完本课程后,我们应该能够:
- 了解VLAN技术的产生背景
- 识别数据所属的VLAN
- 掌握不同的VLAN划分方式
- 描述网络中VLAN数据的通信过程
- 掌握VLAN的基本配置
什么是VLAN
VLAN(Virtual Local Area Network)即虚拟局域网,是将一个物理的LAN在逻辑上划分成多个广播域的通信技术。每个VLAN是一个广播域,VLAN内的主机间可以直接通信,而VLAN间则不能直接互通。这样,广播报文就被限制在一个VLAN内。
传统以太网的问题
如图所示,如果PC1向PC2发送了一个单播帧,假如此时SW1、SW3、SW7的MAC地址表中存在关于PC2的MAC地址表项,但SW2和SW5不存在关于PC2的MAC地址表项。那么,SW1和SW3将对该单播帧执行点对点的转发操作,SW7将对该单播帧执行丢弃操作,SW2和SW5将对该单播帧执行泛洪操作。最后的结果是,PC2虽然收到了该单播帧,但网络中的很多其他非目的主机,同样收到了不该接收的数据帧。显然,广播域越大,网络安全问题和垃圾流量问题就越严重。
典型交换组网图
VLAN
为了解决广播域带来的问题,人们引入了VLAN (Virtual Local Area Network),即虚拟局域网技术,这种技术可以把一个LAN划分成多个VLAN,每个VLAN是一个广播域,相同的VLAN之间的设备可以相互通信,不同VLAN之间的设备不能相互通信,这样广播报文就被限制在一个VLAN内。如图所示,黄色图标的设备在同一个VLAN内,所以PC1发送的广播帧只有黄色区域的设备才能收到。
VLAN应用组网图
使用VLAN能给用户带来以下受益:
- 限制广播域:广播域被限制在一个VLAN内,节省了带宽,提高了网络处理能力。
- 增强局域网的安全性:不同VLAN内的报文在传输时是相互隔离的,即一个VLAN内的用户不能和其它VLAN内的用户直接通信。
- 提高了网络的健壮性:故障被限制在一个VLAN内,本VLAN内的故障不会影响其他VLAN的正常工作。
- 灵活构建虚拟工作组:用VLAN可以划分不同的用户到不同的工作组,同一工作组的用户也不必局限于某一固定的物理范围,网络构建和维护更方便灵活。
VLAN的基本原理
交换机内部处理的数据帧都带有VLAN标签。而交换机连接的部分设备(如用户主机、服务器)只会收发不带VLAN tag的传统以太网数据帧。因此,要与这些设备交互,就需要交换机的接口能够识别传统以太网数据帧,并在收发时给帧添加、剥除VLAN标签。添加什么VLAN标签,由接口上的缺省VLAN(Port Default VLAN ID,PVID)决定。
VLAN标签
如图所示,Switch1与Switch2同属一个企业,该企业统一规划了网络中的VLAN。其中VLAN10用于A部门,VLAN20用于B部门。A、B部门的员工在Switch1和Switch2上都有接入。
同VLAN跨设备传输数据图1
PC1发出的数据经过Switch1和Switch2之间的链路到达了Switch2。如果不加处理,后者无法判断该数据所属的VLAN,也不知道应该将这个数据输出到本地哪个VLAN中。Switch1和Switch2之间的链路要承载多个VLAN的数据,需要一种基于VLAN的数据”标记”手段,以便对不同VLAN的数据帧进行区分,如图所示:
同VLAN跨设备传输数据图2
要使交换机能够分辨不同VLAN的报文,需要在报文中添加标识VLAN信息的字段。IEEE 802.1Q协议规定,在以太网数据帧的目的MAC地址和源MAC地址字段之后、协议类型字段之前加入4个字节的VLAN标签(又称VLAN Tag,简称Tag),用以标识VLAN信息。如图所示。
图VLAN数据帧
VLAN标签各字段含义如下:
- TPID:表示数据帧类型,取值为0x8100时表示IEEE 802.1Q的VLAN数据帧。如果不支持802.1Q的设备收到这样的帧,会将其丢弃。
- PRI:表示数据帧的优先级,用于QoS。
- CFI:在以太网中,CFI的值为0。
- VID:表示该数据帧所属VLAN的编号。VLAN ID取值范围是0~4095。
VLAN的划分方式
计算机发出的数据帧不带任何标签。对已支持VLAN特性的交换机来说,当计算机发出的Untagged帧一旦进入交换机后,交换机必须通过某种划分原则把这个帧划分到某个特定的VLAN中去。
VLAN的划分包括如下5种方法:
- 基于接口划分:根据交换机的接口来划分VLAN。
- 基于MAC地址划分:根据数据帧的源MAC地址来划分VLAN。
- 基于IP子网划分:根据数据帧中的源IP地址和子网掩码来划分VLAN。
- 基于协议划分:根据数据帧所属的协议(族)类型及封装格式来划分VLAN。
- 基于策略划分:根据配置的策略划分VLAN,能实现多种组合的划分方式,包括接口、MAC地址、IP地址等。
表列出了它的原理、优缺点和适用场景,读者可以根据场景的需要选择合适的方法。
表 VLAN的划分方式
划分方式 | 原理 | 优缺点 | 适用场景 |
---|---|---|---|
基于接口 | 根据交换机的接口来划分VLAN。网络管理员预先给交换机的每个接口配置不同的PVID,当一个数据帧进入交换机时,如果没有带VLAN标签,该数据帧就会被打上接口指定PVID的Tag。然后数据帧将在指定PVID中传输。 | 优点:定义成员简单。缺点:成员移动需重新配置VLAN。 | 适用于任何大小但位置比较固定的网络。 |
基于接口 | 根据数据帧的源MAC地址来划分VLAN。网络管理员预先配置MAC地址和VLAN ID映射关系表,当交换机收到的是Untagged帧时,就依据该表给数据帧添加指定VLAN的Tag。然后数据帧将在指定VLAN中传输。 | 优点:当用户的物理位置发生改变,不需要重新配置VLAN,提高了用户的安全性和接入的灵活性。缺点:需要预先定义网络中所有成员。 | 适用于位置经常移动但网卡不经常更换的小型网络,如移动PC。 |
基于接口 | 根据数据帧中的源IP地址和子网掩码来划分VLAN。网络管理员预先配置IP地址和VLAN ID映射关系表,当交换机收到的是Untagged帧,就依据该表给数据帧添加指定VLAN的Tag。然后数据帧将在指定VLAN中传输。 | 优点:当用户的物理位置发生改变,不需要重新配置VLAN。可以减少网络通信量,可使广播域跨越多个交换机。缺点:网络中的用户分布需要有规律,且多个用户在同一个网段 | 适用于对安全需求不高、对移动性和简易管理需求较高的场景中。比如,一台PC配置多个IP地址分别访问不同网段的服务器,以及PC切换IP地址后要求VLAN自动切换等场景。 |
基于接口 | 根据数据帧所属的协议(族)类型及封装格式来划分VLAN。网络管理员预先配置以太网帧中的协议域和VLAN ID的映射关系表,如果收到的是Untagged帧,就依据该表给数据帧添加指定VLAN的Tag。然后数据帧将在指定VLAN中传输。 | 优点:将网络中提供的服务类型与VLAN相绑定,方便管理和维护。缺点:要对网络中所有的协议类型和VLAN ID的映射关系表进行初始配置。需要分析各种协议的格式并进行相应的转换,消耗交换机较多的资源,速度上稍具劣势。 | 适用于需要同时运行多协议的网络。 |
基于匹配策略 | 根据配置的策略划分VLAN,能实现多种组合的划分方式,包括接口、MAC地址、IP地址等。网络管理员预先配置策略,如果收到的是Untagged帧,且匹配配置的策略时,给数据帧添加指定VLAN的Tag。然后数据帧将在指定VLAN中传输。 | 优点:安全性高,VLAN划分后,用户不能改变IP地址或MAC地址。网络管理人员可根据自己的管理模式或需求选择划分方式。缺点:针对每一条策略都需要手工配置。 | 适用于需求比较复杂的环境。 |
VLAN的接口链路类型
交换机内部处理的数据帧一律都带有VLAN标签,而现网中交换机连接的设备有些只会收发Untagged帧,要与这些设备交互,就需要接口能够识别Untagged帧并在收发时给帧添加、剥除VLAN标签。同时,现网中属于同一个VLAN的用户可能会被连接在不同的交换机上,且跨越交换机的VLAN可能不止一个,如果需要用户间的互通,就需要交换机间的接口能够同时识别和发送多个VLAN的数据帧。根据接口连接对象以及对收发数据帧处理的不同,华为定义了4种接口的链路类型:Access、Trunk、Hybrid和QinQ,以适应不同的连接和组网。其中Access接口、Trunk接口和Hybrid接口如图所示。
图链路类型和接口类型示意图
- 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)。
access接口
1、实验需求
- 熟悉VLAN的创建;
- 把交换机接口划分到特定VLAN
2、实验拓扑
实验拓扑如图所示。:
图划分VLAN
3、实验步骤
(1)步骤1:配置IP地址
PC1的配置,如图所示:
在ipv4下选择静态配置,输入对应的ip地址以及子网掩码,然后点击应用。PC2、PC3、PC4同理,在这里就不在阐述了PC1的配置
图8-8在PC1上手动添加IP地址
PC2的配置如图8-9所示:
图8-9在PC2上手动添加IP地址
PC3的配置如图8-10所示:
图8-10在PC3上手动添加IP地址
PC4的配置如图8-11所示:
图8-11在PC4上手动添加IP地址
(2)步骤2 创建VLAN
<Huawei>system-view
[Huawei]undo info-center enable
[Huawei]sysname LSW1
[LSW1]vlan batch 10 20 //创建vlan10和vlan20
[LSW1]quit
【提示】
交换机支持的VLAN数为4096,其中0和4095保留。
(3)步骤3 把接口划入到VLAN
[LSW1]interface g0/0/1
[LSW1-GigabitEthernet0/0/1]port link-type access //接口类型为access
[LSW1-GigabitEthernet0/0/1]port default vlan 10 //把接口划入到vlan10
[LSW1-GigabitEthernet0/0/1]quit
[LSW1]interface g0/0/2
[LSW1-GigabitEthernet0/0/2]port link-type access
[LSW1-GigabitEthernet0/0/2]port default vlan 10
[LSW1-GigabitEthernet0/0/2]quit
【提示】读者有没有觉得一个一个接口特别麻烦?
[LSW1]port-group 1 //创建一个端口组,编号为1
[LSW1-port-group-1]group-member g0/0/3 to g0/0/4 //g0/0/3和g0/0/4属于端口组
[LSW1-port-group-1]port link-type access
[LSW1-port-group-1]port default vlan 20
[LSW1-port-group-1]quit
【提示】如果需要对多个以太网接口进行相同的VLAN配置,可以采用端口组批量配置,减少重复配置工作。
(4)步骤4 查看VLAN信息
查看所有已经创建的VLAN的基本信息
[LSW1]display vlan //查看VLAN信息
The total number of vlans is : 3
--------------------------------------------------------------------------------
U: Up; D: Down; TG: Tagged; UT: Untagged;
MP: Vlan-mapping; ST: Vlan-stacking;
#: ProtocolTransparent-vlan; *: Management-vlan;
-------------------------------------------------------------------------------
VID Type Ports
-------------------------------------------------------------------------------
1 common UT:GE0/0/5(D) GE0/0/6(D) GE0/0/7(D) GE0/0/8(D)
GE0/0/9(D) GE0/0/10(D) GE0/0/11(D) GE0/0/12(D)
GE0/0/13(D) GE0/0/14(D) GE0/0/15(D) GE0/0/16(D)
GE0/0/17(D) GE0/0/18(D) GE0/0/19(D) GE0/0/20(D)
GE0/0/21(D) GE0/0/22(D) GE0/0/23(D) GE0/0/24(D)
10 common UT:GE0/0/1(U) GE0/0/2(U)
20 common UT:GE0/0/3(U) GE0/0/4(U)
VID Status Property MAC-LRN Statistics Description
--------------------------------------------------------------------------------
1 enable default enable disable VLAN 0001
10 enable default enable disable VLAN 0010
20 enable default enable disable VLAN 0020
以上输出分别表示;,第一列为vlan id,第二列type表示vlan 的类型,其中common表示普通vlan,*common表示为管理vlan,第三列port表示本交换机上面属于该vlan的接口。端口前的UT表示标识vlan不带tag,TG表示标识vlan带tag。
【提示】
默认所有的接口都属于VLAN1
4、实验调试
(1)PC1访问PC2和PC3结果显示如图8-12所示:
图8-12在PC1上显示的ping程序测试信息
【提示】
实验证明:相同的VLAN可以相互访问,不同的VLAN不能相互访问。
【思考】:PC1访问PC3数据流程?
解析:当用户主机PC1发送报文给用户主机PC3时,报文的发送过程如下(假设交换机Switch上还未建立任何转发表项)。
- PC1判断目的IP地址跟自己的IP地址在同一网段,于是发送ARP广播请求报文获取目的主机PC3的MAC地址,报文目的MAC填写全F,目的IP为PC3的IP地址192.168.1.3。
- 报文到达Switch的接口G0/0/1,发现是Untagged帧,给报文添加VID=10的Tag(Tag的VID=接口的PVID),然后将报文的源MAC地址+VID与接口的对应关系(PC1的MAC, 10, G0/0/1)添加进MAC表。
- 根据报文目的MAC地址+VID查找Switch的MAC表,没有找到,于是在所有允许VLAN10通过的接口(本例中接口为G0/0/3)广播该报文。
- Switch的接口G0/0/3在发出ARP请求报文前,根据接口配置,剥离VID=10的Tag。
- PC3收到该ARP请求报文,将PC1的MAC地址和IP地址对应关系记录ARP表。然后比较目的IP与自己的IP,发现跟自己的相同,就发送ARP响应报文,报文中封装自己的MAC地址,目的IP为PC1的IP地址192.168.1.1。
- Switch的接口G0/0/3收到ARP响应报文后,同样给报文添加VID=10的Tag。
- Switch将报文的源MAC地址+VID与接口的对应关系(PC3的MAC, 10, G0/0/3)添加进MAC表,然后根据报文的目的MAC地址+VID(PC1的MAC, 10)查找MAC地址表,由于前面已记录,查找成功,向出接口G0/0/1转发该ARP响应报文。
- Switch向出接口G0/0/1转发前,同样根据接口配置剥离VID=10的Tag。
- PC1收到PC3的ARP响应报文,将PC3的MAC地址和IP地址对应关系记录ARP表。
后续PC1与PC3的互访,由于彼此已学习到对方的MAC地址,报文中的目的MAC地址直接填写对方的MAC地址。
【技术要点】:
access接口接受和转发转发数据的方式如下:
1、接收数据帧
- Untagged数据帧,打上PVID,接收。
- Tagged数据帧,与PVID比较,相同则接收;不同则丢弃。
2、发送数据帧
- VID与PVID比较,相同则剥离标签发送;不同则丢弃。
trunk接口
1、实验目的
- 配置交换机接口的Trunk
2、实验拓扑
实验拓扑如图8-13所示。
图8-13 trunk的配置
3、实验步骤
(1)步骤1 :PC机的IP地址配置
PC1的配置,如图8-14所示:
在ipv4下选择静态配置,输入对应的ip地址以及子网掩码,然后点击应用。PC2、PC3、PC4同理,在这里就不在阐述了PC1的配置
图8-14在PC1上手动添加IP地址
PC2的配置如图8-15所示:
图8-15在PC2上手动添加IP地址
PC3的配置如图8-16所示:
图8-16在PC3上手动添加IP地址
PC4的配置如图8-17所示:
图8-17在PC4上手动添加IP地址
(2)步骤2 交换机VLAN的配置
LSW1的配置
<Huawei>system-view
[Huawei]undo info-center enable
[Huawei]sysname LSW1
[LSW1]vlan batch 10 20
[LSW1]interface g0/0/1
[LSW1-GigabitEthernet0/0/1]port link-type access
[LSW1-GigabitEthernet0/0/1]port default vlan 10
[LSW1-GigabitEthernet0/0/1]quit
[LSW1]interface g0/0/2
[LSW1-GigabitEthernet0/0/2]port link-type access
[LSW1-GigabitEthernet0/0/2]port default vlan 20
[LSW1-GigabitEthernet0/0/2]quit
LSW2的配置
<Huawei>system-view
[Huawei]undo info-center enable
[Huawei]sysname LSW2
[LSW2]vlan batch 10 20
[LSW2]interface g0/0/3
[LSW2-GigabitEthernet0/0/3]port link-type access
[LSW2-GigabitEthernet0/0/3]port default vlan 10
[LSW2-GigabitEthernet0/0/3]quit
[LSW2]interface g0/0/4
[LSW2-GigabitEthernet0/0/4]port link-type access
[LSW2-GigabitEthernet0/0/4]port default vlan 20
[LSW2-GigabitEthernet0/0/4]quit
(3)步骤3 设置TRUNK
LSW1的配置
[LSW1]interface g0/0/5
[LSW1-GigabitEthernet0/0/5]port link-type trunk //配置端口模式为trunk
[LSW1-GigabitEthernet0/0/5]port trunk allow-pass vlan 10 20 //配置trunk链路只允许vlan 10、20的数据通过
[LSW1-GigabitEthernet0/0/5]port trunk pvid vlan 1 //配置接口的缺省vlan,当接口转发不带标签的帧时,配置此命令会携带对应的缺省vlan标签,由于条命令是将缺省vlan改成1,设备默认所有接口就是vlan1,因此输入后无法看到配置效果,可以不做配置
[LSW1-GigabitEthernet0/0/5]quit
LSW2的配置
[LSW2]interface g0/0/5
[LSW2-GigabitEthernet0/0/5]port link-type trunk
[LSW2-GigabitEthernet0/0/5]port trunk allow-pass vla
[LSW2-GigabitEthernet0/0/5]port trunk allow-pass vlan 10 20
[LSW2-GigabitEthernet0/0/5]port trunk pvid vlan 1
[LSW2-GigabitEthernet0/0/5]quit
查看trunk
[LSW1]display vlan
The total number of vlans is : 3
-------------------------------------------------------------------------------
U: Up; D: Down; TG: Tagged; UT: Untagged;
MP: Vlan-mapping; ST: Vlan-stacking;
#: ProtocolTransparent-vlan; *: Management-vlan;
-------------------------------------------------------------------------------
VID Type Ports
-------------------------------------------------------------------------------
1 common UT:GE0/0/3(D) GE0/0/4(D) GE0/0/5(U) GE0/0/6(D)
GE0/0/7(D) GE0/0/8(D) GE0/0/9(D) GE0/0/10(D)
GE0/0/11(D) GE0/0/12(D) GE0/0/13(D) GE0/0/14(D)
GE0/0/15(D) GE0/0/16(D) GE0/0/17(D) GE0/0/18(D)
GE0/0/19(D) GE0/0/20(D) GE0/0/21(D) GE0/0/22(D)
GE0/0/23(D) GE0/0/24(D)
10 common UT:GE0/0/1(U)
TG:GE0/0/5(U)
20 common UT:GE0/0/2(U)
TG:GE0/0/5(U)
VID Status Property MAC-LRN Statistics Description
-------------------------------------------------------------------------------
1 enable default enable disable VLAN 0001
10 enable default enable disable VLAN 0010
20 enable default enable disable VLAN 0020
以上输出可以看到,G0/0/5分别属于vlan10 和vlan 20,并且端口前面标识为TG,代表G0/0/5口能够转发vlan10和vlan20的数据,并且是以带标签的形式进行转发的。
【思考】:PC1访问PC3数据的流程?
当用户主机PC1发送报文给用户主机PC3时,报文的发送过程如下(假设交换机LSW1和LSW2上还未建立任何转发表项)。
- PC1判断目的IP地址跟自己的IP地址在同一网段,于是发送ARP广播请求报文获取目的主机PC3的MAC地址,报文目的MAC填写全F,目的IP为PC3的IP地址192.168.10.2。
- 报文到达Switch的接口G0/0/1,发现是Untagged帧,给报文添加VID=10的Tag(Tag的VID=接口的PVID),然后将报文的源MAC地址+VID与接口的对应关系(PC1的MAC, 10, G0/0/1)添加进MAC表。
- LSW1的G0/0/5接口在发出ARP请求报文前,因为接口的PVID=1(缺省值),与报文的VID不相等,直接透传该报文到LSW2的G0/0/5接口,不剥除报文的Tag。
- LSW2的g0/0/5接口收到该报文后,判断报文的Tag中的VID=10是接口允许通过的VLAN,接收该报文。
- LSW2的接口G0/0/3在发出ARP请求报文前,根据接口配置,剥离VID=10的Tag。
- PC3收到该ARP请求报文,将PC1的MAC地址和IP地址对应关系记录ARP表。然后比较目的IP与自己的IP,发现跟自己的相同,就发送ARP响应报文,报文封装自己的MAC地址,目的IP为PC1的IP地址192.168.10.1。
- LSW2的接口G0/0/3收到ARP响应报文后,同样给报文添加VID=10的Tag。
- LSW2将报文的源MAC地址+VID与接口的对应关系(PC3的MAC, 10, G0/0/3)添加进MAC表,然后根据报文的目的MAC地址+VID(PC1的MAC, 10)查找MAC地址表,由于前面已记录,查找成功,向出接口G0/0/5转发该ARP响应报文。因为接口G0/0/5为Trunk接口且PVID=1(缺省值),与报文的VID不相等,直接透传报文到LSW1的G0/0/5接口。
- LSW1的G0/0/5接口收到PC3的ARP响应报文后,判断报文的Tag中的VID=10是接口允许通过的VLAN,接收该报文。
- LSW1向出接口G0/0/1转发前,同样根据接口配置剥离VID=10的Tag。
- PC1收到PC3的ARP响应报文,将PC3的MAC地址和IP地址对应关系记录ARP表。
可见,干道链路除可传输多个VLAN的数据帧外,还起到透传VLAN的作用,即干道链路上,数据帧只会转发,不会发生Tag的添加或剥离。
思考2:如果PVID=10 ?
【技术要点】:
trunk接口接受和转发转发数据帖的方式如下:
1、接收数据帧
- Untagged数据帧,打上PVID,且VID在允许列表中,则接收;VID不在允许列表,则丢弃。
- Tagged数据帧,查看VID是否在允许列表中,在允许列表中,则接收;VID不在允许列表,则丢弃。
2、发送数据帧
- VID在允许列表中,且VID与PVID一致,则剥离标签发送。
- VID在允许列表,但VID与PVID不一致,则直接带标签发送。
- 不在允许列表中,则直接丢弃。
hybrid接口
1、实验需求
- 掌握VLAN的创建方法
- 掌握Access、Trunk和Hybrid类型接口的配置方法
- 掌握基于接口划分VLAN的配置方法
3、实验步骤
(1)配置终端设备的IP地址
PC1的配置,在ipv4下选择静态配置,输入对应的ip地址以及子网掩码,然后点击应用。PC2、server1同理,在这里就不在阐述了。
(2)在交换机LSW1和LSW2上创建VLAN
LSW1的配置
<Huawei>system-view
[Huawei]undo info-center enable
[Huawei]sysname LSW1
[LSW1]vlan batch 10 20 30 //创建vlan 10、20、30
LSW2的配置
<Huawei>system-view
[Huawei]undo info-center enable
[Huawei]sysname LSW2
[LSW2]vlan batch 10 20 30 //创建vlan 10、20、30
(3)交换机LSW1和LSW2之间的链路 设置成TRUNK
LSW1的配置
[LSW1]interface g0/0/5
[LSW1-GigabitEthernet0/0/5]port link-type trunk //端口的类型为trunk
[LSW1-GigabitEthernet0/0/5]port trunk allow-pass vlan 10 20 30 //允许VLAN10 、20、30通过
LSW2的配置
[LSW2]interface g0/0/5
[LSW2-GigabitEthernet0/0/5]port link-type trunk
[LSW2-GigabitEthernet0/0/5]port trunk allow-pass vlan 10 20 30
[LSW2-GigabitEthernet0/0/5]quit
(4) 设置hybrid
LSW1的配置
[LSW1]interface g0/0/1
[LSW1-GigabitEthernet0/0/1]port link-type hybrid //配置端口类型为混合端口,华为设备默认的端口类型也为混合端口,此步骤可以省略
[LSW1-GigabitEthernet0/0/1]port hybrid untagged vlan 10 30 //配置Hybrid类型接口加入的VLAN,这些VLAN的帧以Untagged方式通过接口
[LSW1-GigabitEthernet0/0/1]port hybrid pvid vlan 10 //配置端口的pvid为vlan 10
[LSW1-GigabitEthernet0/0/1]quit
[LSW1]interface g0/0/2
[LSW1-GigabitEthernet0/0/2]port link-type hybrid
[LSW1-GigabitEthernet0/0/2]port hybrid pvid vlan 20
[LSW1-GigabitEthernet0/0/2]port hybrid untagged vlan 20 30
[LSW1-GigabitEthernet0/0/2]quit
LSW2的配置
[LSW2]interface g0/0/1
[LSW2-GigabitEthernet0/0/1]port link-type hybrid
[LSW2-GigabitEthernet0/0/1]port hybrid pvid vlan 30
[LSW2-GigabitEthernet0/0/1]port hybrid untagged vlan 10 20 30
[LSW2-GigabitEthernet0/0/1]quit
【技术要点】
①port hybrid untagged vlan10 30的作用为当端口对数据包进行转发的时候,会将对应的vlan10、30标签剥离发送。
②port hybrid pvid vlan 10的作用为当端口接收到数据包时会为此数据打上对应的数据帧。
在上例中以PC1访问sever1为例,PC1的数据帧到达交换机sw1的G0/0/1口后,由于配置了port hybrid pvid vlan 10,此时交换机会为此数据包打上vlan10这个标签。由于sw1和sw2的直连接口配置了trunk并且放行vlan 10的数据通过,此时该数据帧的vlan标签不变会被sw2接收。sw2通过查询mac地址表将此帧发送到G0/0/1口,由于G0/0/1口配置了port hybrid untagged vlan 10 20 30,意味这sw2会把此数据帧的vlan10标签剥离掉发送给sever1,回包过程反之,从而实现不同vlan的数据通信。
【技术要点】
hybrid接口接收和转发数据帧的方式如下:
1、接收数据帧
- Untagged数据帧,打上PVID,且VID在允许列表中,则接收;VID不在允许列表中,则丢弃。
- Tagged数据帧,查看VID是否在允许列表中,在允许列表中,则接收;VID不在允许列表,则丢弃。
2、发送数据帧
- VID不在允许列表中,直接丢弃。
- VID在Untagged列表中,剥离标签发送。
- VID在Tagged列表中,带标签直接发送。
什么是VLAN
VLAN(Virtual Local Area Network)即虚拟局域网,是将一个物理的LAN在逻辑上划分成多个广播域的通信技术。
每个VLAN是一个广播域,VLAN内的主机间可以直接通信,而VLAN间则不能直接互通。这样,广播报文就被限制在一个VLAN内。
目录
更多
为什么需要VLAN
早期以太网是一种基于CSMA/CD(Carrier Sense Multiple Access/Collision Detection)的共享通讯介质的数据网络通讯技术。当主机数目较多时会导致冲突严重、广播泛滥、性能显著下降甚至造成网络不可用等问题。通过二层设备实现LAN互连虽然可以解决冲突严重的问题,但仍然不能隔离广播报文和提升网络质量。
在这种情况下出现了VLAN技术。这种技术可以把一个LAN划分成多个逻辑的VLAN,每个VLAN是一个广播域,VLAN内的主机间通信就和在一个LAN内一样,而VLAN间则不能直接互通,广播报文就被限制在一个VLAN内。如下图所示。
VLAN的作用
因此,VLAN具备以下优点:
- 限制广播域:广播域被限制在一个VLAN内,节省了带宽,提高了网络处理能力。
- 增强局域网的安全性:不同VLAN内的报文在传输时相互隔离,即一个VLAN内的用户不能和其它VLAN内的用户直接通信。
- 提高了网络的健壮性:故障被限制在一个VLAN内,本VLAN内的故障不会影响其他VLAN的正常工作。
- 灵活构建虚拟工作组:用VLAN可以划分不同的用户到不同的工作组,同一工作组的用户也不必局限于某一固定的物理范围,网络构建和维护更方便灵活。
VLAN vs 子网
通过将IP地址的网络部分进一步划分为若干个子网,可以解决IP地址空间利用率低和两级IP地址不够灵活的问题。
与VLAN相类似的是,子网也可以隔离主机间的通信。属于不同VLAN的主机之间不能直接通信,属于不同的子网的主机之间也不能直接通信。但二者没有必然的对应关系。
VLAN vs 子网
VLAN Tag和VLAN ID
要使交换机能够分辨不同VLAN的报文,需要在报文中添加标识VLAN信息的字段。IEEE 802.1Q协议规定,在以太网数据帧中加入4个字节的VLAN标签(又称VLAN Tag,简称Tag),用以标识VLAN信息。
IEEE 802.1Q封装的VLAN数据帧格式
数据帧中的VID字段标识了该数据帧所属的VLAN,数据帧只能在其所属VLAN内进行传输。VID字段代表VLAN ID,VLAN ID取值范围是0~4095。由于0和4095为协议保留取值,所以VLAN ID的有效取值范围是1~4094。
交换机内部处理的数据帧都带有VLAN标签。而交换机连接的部分设备(如用户主机、服务器)只会收发不带VLAN tag的传统以太网数据帧。因此,要与这些设备交互,就需要交换机的接口能够识别传统以太网数据帧,并在收发时给帧添加、剥除VLAN标签。添加什么VLAN标签,由接口上的缺省VLAN(Port Default VLAN ID,PVID)决定。
VLAN的接口类型和VLAN标签的处理机制
现网中属于同一个VLAN的用户可能会被连接在不同的交换机上,且跨越交换机的VLAN可能不止一个,如果需要用户间的互通,就需要交换机间的接口能够同时识别和发送多个VLAN的数据帧。根据接口连接对象以及对收发数据帧处理的不同,当前有VLAN的多种接口类型,以适应不同的连接和组网。
不同厂商对VLAN接口类型的定义可能不同。对于华为设备来说,常见的VLAN接口类型有三种,包括:Access、Trunk和Hybrid。
Access接口
Access接口一般用于和不能识别Tag的用户终端(如用户主机、服务器)相连,或者不需要区分不同VLAN成员时使用。
在一个VLAN交换网络中,以太网数据帧主要有以下两种形式:
- 无标记帧(Untagged帧):原始的、未加入4字节VLAN标签的帧。
- 有标记帧(Tagged帧):加入了4字节VLAN标签的帧。
Access接口大部分情况只能收发Untagged帧,且只能为Untagged帧添加唯一VLAN的Tag。交换机内部只处理Tagged帧,所以Access接口需要给收到的数据帧添加VLAN Tag,也就必须配置缺省VLAN。配置缺省VLAN后,该Access接口也就加入了该VLAN。
当Access接口收到带有Tag的帧,并且帧中VID与PVID相同时,Access接口也能接收并处理该帧。
在发送带有Tag的帧前,Access接口会剥离Tag。
Trunk接口
Trunk接口一般用于连接交换机、路由器、AP以及可同时收发Tagged帧和Untagged帧的语音终端。它可以允许多个VLAN的帧带Tag通过,但只允许属于缺省VLAN的帧从该类接口上发出时不带Tag(即剥除Tag)。
Trunk接口上的缺省VLAN,有的厂商也将它定义为native VLAN。当Trunk接口收到Untagged帧时,会为Untagged帧打上Native VLAN对应的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通过。
VLAN的使用场景
VLAN的常见使用场景包括:VLAN间用户的二层隔离,VLAN间用户的三层互访。
VLAN间用户的二层隔离
如下图所示,某商务楼内有多家公司,为了降低成本,多家公司共用网络资源,各公司分别连接到一台二层交换机的不同接口,并通过统一的出口访问Internet。
基于接口的VLAN划分组网图
为了保证各公司业务的独立和安全,可将每个公司所连接的接口划分到不同的VLAN,实现公司间业务数据的完全隔离。可以认为每个公司拥有独立的“虚拟路由器”,每个VLAN就是一个“虚拟工作组”。
再比如,某公司有两个部门,分别分配了固定的IP网段。为加强员工间的学习与交流,员工的位置有时会相互调动,但公司希望各部门员工访问的网络资源的权限不变。
基于IP的VLAN划分组网图
为了保证部门内员工的位置调整后,访问网络资源的权限不变,可在公司的交换机Switch_1上配置基于IP子网划分VLAN。这样,服务器的不同网段就划分到不同的VLAN,访问服务器不同应用服务的数据流就会隔离,提高了安全性。
VLAN间用户的三层互访
如下图所示,某小型公司的两个部门分别通过二层交换机接入到一台三层交换机Switch_3,所属VLAN分别为VLAN2和VLAN3,部门1和部门2的用户互通时,需要经过三层交换机。
通过VLANIF实现VLAN间用户的三层互访
可在Switch_1和Switch_2上划分VLAN并将VLAN透传到Switch_3上,然后在Switch_3上为每个VLAN配置一个VLANIF接口,实现VLAN2和VLAN3间的路由。
VLAN的相关协议
IEEE 802.1Q
IEEE 802.1Q(也被称为Dot1q)即Virtual Bridged Local Area Networks协议,规定了VLAN的实现标准。与标准的以太网数据帧相比,VLAN数据帧增加了1个4字节的VLAN标签。
LNP
链路类型协商协议(Link-type Negotiation Protocol,LNP)用来动态协商以太网接口的链路类型为Access或者Trunk。
- 以太网接口的链路类型协商为Access,缺省情况下加入VLAN1。
- 以太网接口的链路类型协商为Trunk,缺省情况下加入VLAN1~4094。
QinQ
QinQ(802.1Q-in-802.1Q)协议出自IEEE 802.1ad标准协议,通过在802.1Q标签报文的基础上再增加一层802.1Q的Tag来达到扩展VLAN空间的功能,可以使私网VLAN透传公网。
由于在骨干网中传递的报文有两层802.1Q Tag(一层公网Tag,一层私网Tag),即802.1Q-in-802.1Q,所以称之为QinQ协议。
云化场景下,VLAN存在的问题
随着网络技术的发展,云计算凭借其在系统利用率高、人力和管理成本低、灵活性和可扩展性强等方面表现出的优势,已经成为目前企业IT建设的新趋势。而服务器虚拟化作为云计算的核心技术之一,得到了越来越多的应用。
VLAN作为传统的网络隔离技术,在标准定义中VLAN的数量只有4096个,无法满足大型数据中心的租户间隔离需求。另外,VLAN的二层范围一般较小且固定,无法支持虚拟机大范围的动态迁移。
因此,RFC定义了VLAN扩展方案VXLAN(Virtual eXtensible Local Area Network,虚拟扩展局域网)。VXLAN采用MAC in UDP(User Datagram Protocol)封装方式,是NVO3(Network Virtualization over Layer 3)中的一种网络虚拟化技术。VXLAN完美地弥补了VLAN的上述不足,一方面通过VXLAN中的24比特VNI(VXLAN Network Identifier)字段,提供多达16M租户的标识能力,远大于VLAN的数量;另一方面,VXLAN本质上在两台交换机之间构建了一条穿越数据中心基础IP网络的虚拟隧道,将数据中心网络虚拟成一个巨型“二层交换机”,满足虚拟机大范围动态迁移的需求。
参考资源