1. VLAN产生原因
早期的局域网LAN技术是基于总线型结构,它存在以下主要问题:
若某时刻有多个节点同时试图发送消息,那么它们将产生冲突。
从任意节点发出的消息都会被发送到其他节点,形成广播。
所有主机共享一条传输通道,无法保证网络中的信息安全。
这种网络构成了一个冲突域,网络中计算机数量越多冲突越严重,网络效率越低。同时,该网络也是一个广播域,当网络中发送信息的计算机数量越多时,广播流量将会耗费大量带宽。
因此,传统网络不仅面临冲突域和广播域两大难题,而且无法保障传输信息的安全。
为减少广播,需要在没有互访需求的主机之间进行隔离。ME设备是基于三层IP地址信息来选择路由,其连接两个网段时可以有效抑制广播报文的转发,但成本较高。因此人们设想在物理局域网上构建多个逻辑局域网,即VLAN(Virtual Local Area Network)。
VLAN将一个物理的LAN在逻辑上划分成多个广播域(多个VLAN)。VLAN内的主机间可以直接通信,而VLAN间不能直接互通。这样,广播报文被限制在一个VLAN内,同时提高了网络安全性
2. VLAN定义
VLAN(Virtual Local Area Network)即虚拟局域网,是将一个物理的LAN在逻辑上划分成多个广播域(多个VLAN)的通信技术。每一个VLAN都包含一组拥有相同需求的计算机,与物理上形成的LAN具有相同的属性。但是由于VLAN是在逻辑划分而不是在物理上划分,所有同一个VLAN内的各个工作站无需放置在同一个物理空间。VLAN内的主机间可以直接通信,而VLAN间不能直接互通,即使两台计算机有着同样的网段,但是它们不属于同一个VLAN,它们各自的广播流不会互相转发,从而将广播报文限制在一个VLAN内。由于VLAN间不能直接互访,因此提高了网络安全性。
图2-1是一个典型的VLAN应用组网图。3台设备A、B和C分别放置在不同的地点,比如写字楼的不同楼层。每台设备分别连接3台计算机,分别属于3个不同的VLAN,比如不同的企业客户。在图中,一个虚线框内表示一个VLAN。采用VLAN,可以实现各企业客户共享LAN设施,同时保证各自的网络信息安全,即不同的企业客户属于不同的VLAN,它们各自的广播报文不会互相转发,从而实现了控制流量、减少设备投资、简化网络管理、提高网络的安全性。
图2-1 VLAN的典型应用示意图
从上述应用可以看出VLAN具有以下优势:
限制广播域。广播域被限制在一个VLAN内,节省了带宽,提高了网络处理能力。增强局域网的安全性。不同VLAN内的报文在传输时是相互隔离的,即一个VLAN内的用户不能和其它VLAN内的用户直接通信。提高了网络的健壮性。故障被限制在一个VLAN内,本VLAN内的故障不会影响其他VLAN的正常工作。灵活构建虚拟工作组。用VLAN可以划分不同的用户到不同的工作组,同一工作组的用户也不必局限于某一固定的物理范围,网络构建和维护更方便灵活。
3. VLAN相关术语和基本原理
3.1. 802.1q简介和VLAN帧格式
传统的以太网数据帧在目的MAC地址和源MAC地址之后封装的是上层协议的类型字段,如图3-1所示。
图3-1 传统的以太网数据帧格式
IEEE 802.1Q标准对Ethernet帧格式进行了修改,在源MAC地址字段和协议类型字段之间加入4字节的802.1Q Tag,如图3-2所示。
图3-2 基于802.1Q的VLAN帧格式
802.1Q Tag包含4个字段,其含义如下:
EType
长度为2字节,表示帧类型。取值为0x8100时表示802.1Q Tag帧。如果不支持802.1Q的设备收到这样的帧,会将其丢弃。
PRI
Priority,长度为3比特,表示帧的优先级,值越大优先级越高。用于当交换机阻塞时,优先发送优先级高的数据帧。
CFI
Canonical Format Indicator,长度为1比特,表示MAC地址是否是经典格式。CFI为0说明是经典格式,CFI为1表示为非经典格式。用于区分以太网帧、FDDI(Fiber Distributed Digital Interface)帧和令牌环网帧。在以太网中,CFI的值为0。
VID
VLAN ID,长度为12比特,表示该帧所属的VLAN。VLAN ID取值范围是0~4095。由于0和4095为协议保留取值,所以VLAN ID的有效取值范围是1~4094。
每台支持802.1q协议的交换机发送的数据包都会包含VLAN ID,以指明自己属于哪一个VLAN。因此,在一个VLAN交换网络中,以太网帧有以下两种形式:
有标记帧(tagged frame):加入了4字节802.1q Tag的帧无标记帧(untagged frame):原始的、未加入4字节802.1q Tag的帧
3.2. VLAN基于端口划分
VLAN基于端口进行划分。原理是:根据交换设备的端口编号来划分VLAN。网络管理员给交换机的每个端口配置不同的PVID(Port Default VLAN ID,端口缺省的VLAN ID),即一个端口缺省属于的VLAN。当一个数据帧进入交换机端口时,如果没有带VLAN标签,且该端口上配置了PVID,那么,该数据帧就会被打上端口的PVID。如果进入的帧已经带有VLAN标签,那么交换机不会再增加VLAN标签,即使端口已经配置了PVID。对VLAN帧的处理由端口类型决定。
3.3. VLAN内的链路类型
图3-3 VLAN中的链路类型示意图
如图3-3所示,VLAN中有以下两种链路类型:
接入链路(Access Link):连接用户主机和交换机的链路为接入链路。通常情况下,主机并不需要知道自己属于哪个VLAN,主机硬件通常也不能识别带有VLAN标记的帧。因此,主机发送和接收的帧都是untagged帧。
干道链路(Trunk Link):连接交换机和交换机的链路称为干道链路。干道链路可以承载多个不同VLAN数据,数据帧在干道链路传输时,干道链路的两端设备需要能够识别数据帧属于哪个VLAN,所以在干道链路上传输的帧都是Tagged帧。
3.4. 端口属性
端口属性如表3-4所示。
表-24 端口属性
端口属性
对接收不带Tag的报文处理
对接收带Tag的报文处理
对发送报文的处理
用途
Access端口
接收该报文,并打上缺省VLAN的Tag。
当VLAN ID与缺省VLAN ID相同时,接收该报文。当VLAN ID与缺省VLAN ID不同时,丢弃该报文。 去掉Tag,发送该报文。
端口只能属于1个VLAN,用于交换机与计算机直接连接。
Trunk端口
丢弃该报文。
当VLAN ID在接口允许通过的VLAN ID列表里时,接收该报文。当VLAN ID不在接口允许通过的VLAN ID列表里时,丢弃该报文。
当VLAN ID在允许通过的VLAN ID列表里时,保持原有Tag,发送该报文。当VLAN ID不在允许通过的VLAN ID列表里时,直接丢弃该报文。 端口可以允许多个VLAN通过,可以接收和发送多个VLAN的报文,一般用于网络设备之间连接。
Hybrid端口
如果Hybrid端口上仅配置port default vlan命令,Hybrid端口接收该报文,并打上缺省VLAN的Tag。如果Hybrid端口上仅配置port trunk allow-pass命令,Hybrid端口直接丢弃该报文。如果Hybrid端口上同时配置port default vlan和port trunk allow-pass命令,Hybrid端口接收该报文,并打上port default vlan配置的缺省VLAN的Tag。
如果Hybrid端口上仅配置port default vlan命令:
当VLAN ID与缺省VLAN ID相同时,接收该报文。当VLAN ID与缺省VLAN ID不同时,丢弃该报文。如果Hybrid端口上仅配置port trunk allow-pass命令:
当VLAN ID在接口允许通过的VLAN ID列表里时,接收该报文。当VLAN ID不在接口允许通过的VLAN ID列表里时,丢弃该报文。如果Hybrid端口上同时配置port default vlan和port trunk allow-pass命令:
当VLAN ID在接口配置的port trunk allow-pass允许通过的VLAN ID列表里,或与port default vlan配置的VLAN ID相同时,接收该报文。当VLAN ID不在接口配置的port trunk allow-pass允许通过的VLAN ID列表里,也与port default vlan配置的VLAN ID不相同时,丢弃该报文。
如果Hybrid端口上仅配置port default vlan命令,当VLAN ID与缺省VLAN ID相同时,Hybrid端口去掉Tag,发送该报文。否则会丢弃报文。
如果Hybrid端口上仅配置port trunk allow-pass命令:
当VLAN ID在允许通过的VLAN ID列表里时,保持原有Tag,发送该报文。当VLAN ID不在允许通过的VLAN ID列表里时,直接丢弃该报文。如果Hybrid端口上同时配置port default vlan和port trunk allow-pass命令,
当VLAN ID与缺省VLAN ID相同时,Hybrid端口去掉Tag,发送该报文。当VLAN ID与缺省VLAN ID不相同时,如果VLAN ID在接口配置的port trunk allow-pass允许通过的VLAN ID列表里,则直接发送该报文。否则丢弃该报文。 说明: 如果port default vlan配置的VLAN ID在port trunk allow-pass配置的VLAN列表里,则当报文的VLAN ID与该VLAN ID相同时,Hybrid端口会去掉Tag,发送该报文。
端口可以允许多个VLAN通过,可以接收和发送多个VLAN的报文,可以用于网络设备之间连接,也可以用于连接用户设备。
QinQ端口
QinQ端口是使用QinQ协议的端口。QinQ端口可以给帧加上双重Tag,即在原来Tag的基础上,给帧加上一个新的Tag,从而可以支持多达4094 x 4094个VLAN,满足城域网对VLAN数量的需求。
3.5. VLAN中的数据交换原理
如图3-3所示,VLAN2中的PC1发送数据到目的地PC2,转发过程如下:
CE1的Access类型端口收到PC1发送的untagged帧,在帧上打上标记PVID(VLAN 2)形成tagged帧。通过MAC地址表,找到对应的出接口,将此tagged帧发送出去。
PE的Trunk类型端口接收到帧后,先检查此帧携带的VLAN ID是否与自身已配置的VLAN ID一致。如果一致,直接将此数据帧透传到对端。否则,直接丢弃该帧。
CE2的Trunk类型端口接收到帧后,通过MAC地址表,找到对应的出接口,即CE2与PC2相连的Access端口。
CE2的Access类型端口收到帧后,确定帧中携带的VLAN ID和端口支持的VLAN ID一致,将帧中的标记剥掉,形成untagged帧,转发给目的主机PC2。
3.6. VLANIF接口
VLANIF接口是三层逻辑接口,可以部署在三层交换机上,也可以部署在路由器上。
三层交换技术是将路由技术与交换技术合二为一的技术,在交换机内部实现了路由,提高了网络的整体性能。三层交换机通过路由表传输第一个数据流后,会产生一个MAC地址与IP地址的映射表。当同样的数据流再次通过时,将根据此表直接从二层通过而不是通过三层,从而消除了路由器进行路由选择而造成的网络延迟,提高了数据包转发效率。
为了保证第一次数据流通过路由表正常转发,路由表中必须有正确的路由表项。因此必须在三层交换机上部署三层接口并部署路由协议,实现三层路由可达。VLANIF接口由此而产生。
3.7. VLAN配置举例
3.7.1. 配置基于端口划分VLAN示例
本示例中组网特点是配置过程简单,VLAN划分后,属于不同VLAN的用户不能直接进行二层通信,同一VLAN内的用户可以直接互相通信。
组网需求
如图3-7-1所示,某部门拥有多个项目组,为了提升项目组业务的安全性,现需要实现同一项目组中的员工可以相互访问,不同项目组中的员工不可以互相访问。
图3-7-1 基于端口划分VLAN组网图
配置思路
采用如下的思路配置VLAN:
创建VLAN,规划员工所属的VLAN。配置端口属性,确定设备连接对象。关联端口和VLAN,将连接项目组1的CE设备端口划分到VLAN2,将连接项目组2的CE设备端口划分到VLAN3,隔离项目组1和项目组2间的访问
数据准备
为完成此配置例,需准备如下的数据。
CE连接用户的接口编号。划分的VLAN ID。
操作步骤
1. 创建VLAN
[~HUAWEI] sysname CE
[*HUAWEI] commit
[~CE] vlan batch 2 3
2. 配置端口属性
[*CE] interface gigabitethernet 1/0/1
[*CE-GigabitEthernet1/0/1] portswitch
[*CE-GigabitEthernet1/0/1] undo shutdown
[*CE-GigabitEthernet1/0/1] port link-type access
[*CE-GigabitEthernet1/0/1] quit
[*CE] interface gigabitethernet 1/0/2
[*CE-GigabitEthernet1/0/2] portswitch
[*CE-GigabitEthernet1/0/2] undo shutdown
[*CE-GigabitEthernet1/0/2] port link-type access
[*CE-GigabitEthernet1/0/2] quit
[*CE] interface GigabitEthernet 1/0/3
[*CE-GigabitEthernet1/0/3] portswitch
[*CE-GigabitEthernet1/0/3] undo shutdown
[*CE-GigabitEthernet1/0/3] port link-type access
[*CE-GigabitEthernet1/0/3] quit
[*CE] interface GigabitEthernet 1/0/4
[*CE-GigabitEthernet1/0/4] portswitch
[*CE-GigabitEthernet1/0/4] undo shutdown
[*CE-GigabitEthernet1/0/4] port link-type access
[*CE-GigabitEthernet1/0/4] quit
3. 关联端口和VLAN
# 向VLAN2中加入端口GE1/0/1和GE1/0/2。
[*CE] vlan 2
[*CE-vlan2] port gigabitethernet 1/0/1 to 1/0/2
[*CE-vlan2] quit
# 向VLAN3中加入端口GE1/0/3和GE1/0/4。
[*CE] vlan 3
[*CE-vlan3] port gigabitethernet 1/0/3 to 1/0/4
[*CE-vlan3]quit
[*CE] commit
4. 验证配置结果
上述配置完成后,执行display vlan命令可以查看VLAN状态。
[~CE] display vlan
The total number of vlans is : 2
VID Type Status Property MAC-LRN STAT BC MC UC Description
--------------------------------------------------------------------------
2 common enable default enable disable FWD FWD FWD VLAN 0002
3 common enable default enable disable FWD FWD FWD VLAN 0003
从项目组1内的任一台主机Ping项目组2内的任一台主机,无法Ping通。但是同一项目组内的主机可以互相Ping通。
配置文件
#
sysname CE
#
vlan batch 2 3
#
interface GigabitEthernet1/0/1
port link-type access
port default vlan 2
#
interface GigabitEthernet1/0/2
port link-type access
port default vlan 2
#
interface GigabitEthernet1/0/3
port link-type access
port default vlan 3
#
interface GigabitEthernet1/0/4
port link-type access
port default vlan 3
#
return
3.7.2. 配置VLAN内通过Trunk链路通信示例
该组网主要应用于部门需要跨越不同的商务楼宇,可通过Trunk链路连接不同楼宇的中心设备,实现同一部门内业务数据互通。
组网需求
某公司拥有多个部门且位于不同的商务楼宇中,为了提升业务安全性,要求同一部门内员工可以相互访问,而不同部门间员工不能互相访问。
如图3-7-2所示,财务部门和市场部门分布在不同的楼宇,现需要部门内员工可以相互访问,但部门间的员工不可以相互访问。
图3-7-2 VLAN内通过Trunk链路通信组网图
配置思路
采用如下的思路配置VLAN内通过Trunk链路通信:
将连接财务部的设备端口划分到VLAN5,将连接市场部的设备端口划分到VLAN9,隔离财务部和市场部间的访问。 将CE与PE互连的链路配置为Trunk类型链路,并允许VLAN5和VLAN9通过,以实现跨楼宇的部门内员工互相访问。
数据准备
为完成此配置例,需准备如下的数据:
CE连接用户的接口编号。CE连接PE的接口编号。PE连接CE的接口编号。划分的VLAN ID。
操作步骤
1. 将CE的下行口划分到指定VLAN
# 配置CE1。
[~HUAWEI] sysname CE1
[*HUAWEI] commit
[~CE1] vlan batch 5 9
[*CE1] interface gigabitethernet 1/0/1
[*CE1-GigabitEthernet1/0/1] portswitch
[*CE1-GigabitEthernet1/0/1] undo shutdown
[*CE1-GigabitEthernet1/0/1] port link-type access
[*CE1-GigabitEthernet1/0/1] port default vlan 5
[*CE1-GigabitEthernet1/0/1] quit
[*CE1] interface gigabitethernet 1/0/2
[*CE1-GigabitEthernet1/0/2] portswitch
[*CE1-GigabitEthernet1/0/2] undo shutdown
[*CE1-GigabitEthernet1/0/2] port link-type access
[*CE1-GigabitEthernet1/0/2] port default vlan 5
[*CE1-GigabitEthernet1/0/2] quit
[*CE1] interface gigabitethernet 1/0/3
[*CE1-GigabitEthernet1/0/3] portswitch
[*CE1-GigabitEthernet1/0/3] undo shutdown
[*CE1-GigabitEthernet1/0/3] port link-type access
[*CE1-GigabitEthernet1/0/3] port default vlan 9
[*CE1-GigabitEthernet1/0/3] quit
[*CE1] interface gigabitethernet 1/0/4
[*CE1-GigabitEthernet1/0/4] portswitch
[*CE1-GigabitEthernet1/0/4] undo shutdown
[*CE1-GigabitEthernet1/0/4] port link-type access
[*CE1-GigabitEthernet1/0/4] port default vlan 9
[*CE1-GigabitEthernet1/0/4] commit
[~CE1-GigabitEthernet1/0/4] quit
# 配置CE2。
[~HUAWEI] sysname CE2
[*HUAWEI] commit
[~CE2] vlan batch 5 9
[*CE2] interface gigabitethernet 1/0/1
[*CE2-GigabitEthernet1/0/1] portswitch
[*CE2-GigabitEthernet1/0/1] undo shutdown
[*CE2-GigabitEthernet1/0/1] port link-type access
[*CE2-GigabitEthernet1/0/1] port default vlan 5
[*CE2-GigabitEthernet1/0/1] quit
[*CE2] interface gigabitethernet 1/0/2
[*CE2-GigabitEthernet1/0/2] portswitch
[*CE2-GigabitEthernet1/0/2] undo shutdown
[*CE2-GigabitEthernet1/0/2] port link-type access
[*CE2-GigabitEthernet1/0/2] port default vlan 5
[*CE2-GigabitEthernet1/0/2] quit
[*CE2] interface gigabitethernet 1/0/3
[*CE2-GigabitEthernet1/0/3] portswitch
[*CE2-GigabitEthernet1/0/3] undo shutdown
[*CE2-GigabitEthernet1/0/3] port link-type access
[*CE2-GigabitEthernet1/0/3] port default vlan 9
[*CE2-GigabitEthernet1/0/3] quit
[*CE2] interface gigabitethernet 1/0/4
[*CE2-GigabitEthernet1/0/4] portswitch
[*CE2-GigabitEthernet1/0/4] undo shutdown
[*CE2-GigabitEthernet1/0/4] port link-type access
[*CE2-GigabitEthernet1/0/4] port default vlan 9
[*CE2-GigabitEthernet1/0/4] commit
[~CE2-GigabitEthernet1/0/4] quit
2. 配置CE与PE互连的链路为干道链路
# 配置CE1。
[*CE1] interface gigabitethernet 1/0/5
[*CE1-GigabitEthernet1/0/5] portswitch
[*CE1-GigabitEthernet1/0/5] undo shutdown
[*CE1-GigabitEthernet1/0/5] port link-type trunk
[*CE1-GigabitEthernet1/0/5] port trunk allow-pass vlan 5 9
[*CE1-GigabitEthernet1/0/5] quit
[*CE1] commit
# 配置CE2。
[*CE2] interface gigabitethernet 1/0/5
[*CE2-GigabitEthernet1/0/5] portswitch
[*CE2-GigabitEthernet1/0/5] undo shutdown
[*CE2-GigabitEthernet1/0/5] port link-type trunk
[*CE2-GigabitEthernet1/0/5] port trunk allow-pass vlan 5 9
[*CE2-GigabitEthernet1/0/5] quit
[*CE2] commit
3. 配置PE
[~HUAWEI] sysname PE
[*HUAWEI] commit
[~PE] interface gigabitethernet 1/0/1
[*PE-GigabitEthernet1/0/1] portswitch
[*PE-GigabitEthernet1/0/1] undo shutdown
[*PE-GigabitEthernet1/0/1] port link-type trunk
[*PE-GigabitEthernet1/0/1] port trunk allow-pass vlan 5 9
[*PE-GigabitEthernet1/0/1] quit
[*PE] interface gigabitethernet 1/0/2
[*PE-GigabitEthernet1/0/2] portswitch
[*PE-GigabitEthernet1/0/2] undo shutdown
[*PE-GigabitEthernet1/0/2] port link-type trunk
[*PE-GigabitEthernet1/0/2] port trunk allow-pass vlan 5 9
[*PE-GigabitEthernet1/0/2] quit
[*PE] commit
4. 检查配置结果
上述配置完成后,执行display vlan命令可以查看VLAN状态,以CE1为例:
[~CE1] display vlan 5
------------------------------------------------------------------------------
U: Up; D: Down; TG: Tagged; UT: Untagged;
MP: Vlan-mapping; ST: Vlan-stacking;
#: ProtocolTransparent-vlan; *: Management-vlan;
------------------------------------------------------------------------------
VID Type Ports
------------------------------------------------------------------------------
5 common UT:1/0/1(U) 1/0/2(U) TG:1/0/5(U)
VID Status Property MAC-LRN Statistics Description
------------------------------------------------------------------------------
5 enable default enable disable VLAN 0005
用display port vlan查看Trunk端口上可以通过的VLAN信息,以CE1为例:
[*CE1] display port vlan gigabitethernet1/0/5
Port Link Type PVID Trunk VLAN List
--------------------------------------------------------------
GigabitEthernet1/0/5 trunk 0 5 9
在不同CE下,属于相同VLAN内的主机之间能够互相通信。
配置文件
# CE1的配置文件
#
sysname CE1
#
vlan batch 5 9
#
interface GigabitEthernet1/0/1
portswitch
undo shutdown
port link-type access
port default vlan 5
#
interface GigabitEthernet1/0/2
portswitch
undo shutdown
port link-type access
port default vlan 5
#
interface GigabitEthernet1/0/3
portswitch
undo shutdown
port link-type access
port default vlan 9
#
interface GigabitEthernet1/0/4
portswitch
undo shutdown
port link-type access
port default vlan 9
#
interface GigabitEthernet1/0/5
portswitch
undo shutdown
port link-type trunk
port trunk allow-pass vlan 5 9
#
return
# CE2的配置文件
#
sysname CE2
#
vlan batch 5 9
#
interface GigabitEthernet1/0/1
portswitch
undo shutdown
port link-type access
port default vlan 5
#
interface GigabitEthernet1/0/2
portswitch
undo shutdown
port link-type access
port default vlan 5
#
interface GigabitEthernet1/0/3
portswitch
undo shutdown
port link-type access
port default vlan 9
#
interface GigabitEthernet1/0/4
portswitch
undo shutdown
port link-type access
port default vlan 9
#
interface GigabitEthernet1/0/5
portswitch
undo shutdown
port link-type trunk
port trunk allow-pass vlan 5 9
#
return
# PE的配置文件
#
sysname PE
#
vlan batch 5 9
#
interface GigabitEthernet1/0/1
portswitch
undo shutdown
port link-type trunk
port trunk allow-pass vlan 5 9
#
interface GigabitEthernet1/0/2
portswitch
undo shutdown
port link-type trunk
port trunk allow-pass vlan 5 9
#
return
3.7.3. 配置VLAN间通过子接口通信示例
该示例适用于不同网段且位于不同VLAN中的用户互通。
组网需求
不同的小区拥有相同的业务,如上网、IPTV、VoIP等业务,且各个小区中的用户位于不同的网段。为了便于管理,各个小区的网络管理者将不同的业务划分到不同的VLAN中,相同的业务划分到同一个VLAN中。目前存在不同的小区中相同的业务所属的VLAN不相同,现需要实现不同VLAN中的用户相互通信。
如图3-7-3所示,小区1~小区4中拥有相同的业务上网业务,但是属于不同的VLAN且位于不同的网段。现需要实现小区1~小区4的用户互通。
图3-7-3 VLAN间通过子接口通信组网图
配置思路
采用如下的思路配置VLAN间通过子接口通信:
在CE上创建VLAN,确定用户所属的VLAN。在CE上配置允许用户所属的VLAN通过当前二层端口。在PE上创建子接口,并关联VLAN。在子接口上配置IP地址,实现网络层互通。
数据准备
为完成此配置例,需准备如下的数据:
用户所属的VLAN ID。用户的IP地址。CE连接用户的接口编号。PE与CE相连的接口编号。PE上子接口编号、IP地址。
操作步骤
分别在CE1、CE2上创建VLAN # 配置CE1。
[~HUAWEI] sysname CE1
[*HUAWEI] commit
[~CE1] vlan batch 30 40
[*CE1] interface gigabitethernet 1/0/1
[*CE1-GigabitEthernet1/0/1] portswitch
[*CE1-GigabitEthernet1/0/1] undo shutdown
[*CE1-GigabitEthernet1/0/1] port link-type access
[*CE1-GigabitEthernet1/0/1] port default vlan 30
[*CE1-GigabitEthernet1/0/1] quit
[*CE1] interface gigabitethernet 1/0/2
[*CE1-GigabitEthernet1/0/2] portswitch
[*CE1-GigabitEthernet1/0/2] undo shutdown
[*CE1-GigabitEthernet1/0/2] port link-type access
[*CE1-GigabitEthernet1/0/2] port default vlan 40
[*CE1-GigabitEthernet1/0/2] quit
# 配置CE2。
[~HUAWEI] sysname CE2
[*HUAWEI] commit
[~CE2] vlan batch 10 20
[*CE2] interface gigabitethernet 1/0/1
[*CE2-GigabitEthernet1/0/1] portswitch
[*CE2-GigabitEthernet1/0/1] undo shutdown
[*CE2-GigabitEthernet1/0/1] port link-type access
[*CE2-GigabitEthernet1/0/1] port default vlan 10
[*CE2-GigabitEthernet1/0/1] quit
[*CE2] interface gigabitethernet 1/0/2
[*CE2-GigabitEthernet1/0/2] portswitch
[*CE2-GigabitEthernet1/0/2] undo shutdown
[*CE2-GigabitEthernet1/0/2] port link-type access
[*CE2-GigabitEthernet1/0/2] port default vlan 20
[*CE2-GigabitEthernet1/0/2] quit
2. 分别在CE1、CE2上配置允许用户所属的VLAN通过当前二层端口
# 配置CE1。
[*CE1] interface gigabitethernet 1/0/3
[*CE1-GigabitEthernet1/0/3] portswitch
[*CE1-GigabitEthernet1/0/3] undo shutdown
[*CE1-GigabitEthernet1/0/3] port link-type trunk
[*CE1-GigabitEthernet1/0/3] port trunk allow-pass vlan 30 40
[*CE1-GigabitEthernet1/0/3] quit
[*CE1] commit
# 配置CE2。
[*CE2] interface gigabitethernet 1/0/3
[*CE2-GigabitEthernet1/0/3] portswitch
[*CE2-GigabitEthernet1/0/3] undo shutdown
[*CE2-GigabitEthernet1/0/3] port link-type trunk
[*CE2-GigabitEthernet1/0/3] port trunk allow-pass vlan 10 20
[*CE2-GigabitEthernet1/0/3] quit
[*CE2] commit
3. 在PE上创建子接口并关联VLAN
[~HUAWEI] sysname PE
[*HUAWEI] commit
[~PE] interface gigabitethernet 1/0/1
[*PE-GigabitEthernet1/0/1] undo shutdown
[*PE-GigabitEthernet1/0/1] quit
[*PE] interface gigabitethernet 1/0/1.1
[*PE-GigabitEthernet1/0/1.1] vlan-type dot1q 10
[*PE-GigabitEthernet1/0/1.1] quit
[*PE] interface gigabitethernet 1/0/1.2
[*PE-GigabitEthernet1/0/1.2] vlan-type dot1q 20
[*PE-GigabitEthernet1/0/1.2] quit
[*PE] interface gigabitethernet 1/0/2
[*PE-GigabitEthernet1/0/2] undo shutdown
[*PE-GigabitEthernet1/0/2] quit
[*PE] interface gigabitethernet 1/0/2.1
[*PE-GigabitEthernet1/0/2.1] vlan-type dot1q 30
[*PE-GigabitEthernet1/0/2.1] quit
[*PE] interface gigabitethernet 1/0/2.2
[*PE-GigabitEthernet1/0/2.2] vlan-type dot1q 40
[*PE-GigabitEthernet1/0/2.2] quit
4. 配置IP地址
[*PE] interface gigabitethernet 1/0/1.1
[*PE-GigabitEthernet1/0/1.1] ip address 10.110.6.3 24
[*PE-GigabitEthernet1/0/1.1] quit
[*PE] interface gigabitethernet 1/0/1.2
[*PE-GigabitEthernet1/0/1.2] ip address 10.110.5.3 24
[*PE-GigabitEthernet1/0/1.2] quit
[*PE] interface gigabitethernet 1/0/2.1
[*PE-GigabitEthernet1/0/2.1] ip address 10.110.4.3 24
[*PE-GigabitEthernet1/0/2.1] quit
[*PE] interface gigabitethernet 1/0/2.2
[*PE-GigabitEthernet1/0/2.2] ip address 10.110.3.3 24
[*PE-GigabitEthernet1/0/2.2] quit
[*PE] commit
5. 检查配置结果
在VLAN10中的主机上配置缺省网关为GE1/0/1.1接口的IP地址10.110.6.3/24。
在VLAN20中的主机上配置缺省网关为GE1/0/1.2接口的IP地址10.110.5.3/24。
在VLAN30中的主机上配置缺省网关为GE1/0/2.1接口的IP地址10.110.4.3/24。
在VLAN40中的主机上配置缺省网关为GE1/0/2.2接口的IP地址10.110.3.3/24。
配置完成后,VLAN10、20、30及40之间的主机能够相互Ping通。
配置文件
#CE1的配置文件。
#
sysname CE1
#
vlan batch 30 40
#
interface GigabitEthernet1/0/1
portswitch
undo shutdown
port link-type access
port default vlan 30
#
interface GigabitEthernet1/0/2
portswitch
undo shutdown
port link-type access
port default vlan 40
#
interface GigabitEthernet1/0/3
portswitch
undo shutdown
port link-type trunk
port trunk allow-pass vlan 30 40
#
return
#CE2的配置文件。
#
sysname CE2
#
vlan batch 10 20
#
interface GigabitEthernet1/0/1
portswitch
undo shutdown
port link-type access
port default vlan 10
#
interface GigabitEthernet1/0/2
portswitch
undo shutdown
port link-type access
port default vlan 20
#
interface GigabitEthernet1/0/3
portswitch
undo shutdown
port link-type trunk
port trunk allow-pass vlan 10 20
#
return
#PE的配置文件。
#
sysname PE
#
interface GigabitEthernet1/0/1
undo shutdown
#
interface GigabitEthernet1/0/1.1
vlan-type dot1q 10
ip address 10.110.6.3 255.255.255.0
#
interface GigabitEthernet1/0/1.2
vlan-type dot1q 20
ip address 10.110.5.3 255.255.255.0
#
interface GigabitEthernet1/0/2
undo shutdown
#
interface GigabitEthernet1/0/2.1
vlan-type dot1q 30
ip address 10.110.4.3 255.255.255.0
#
interface GigabitEthernet1/0/2.2
vlan-type dot1q 40
ip address 10.110.3.3 255.255.255.0
#
return
3.7.4. 配置VLAN间通过VLANIF接口通信示例
该组网的特点是将三层转发的设备由路由器替换为三层交换机,以低廉的成本实现了VLAN间互通。
组网需求
不同的小区拥有相同的业务,如上网、IPTV、VoIP等业务,且各个小区中的用户位于不同的网段。为了便于管理,各个小区的网络管理者将不同的业务划分到不同的VLAN中,相同的业务划分到同一个VLAN中。目前存在不同的小区中相同的业务所属的VLAN不相同,现需要实现不同VLAN中的用户相互通信。
如图3-7-4所示,小区1~小区4中拥有相同的业务上网业务,但是属于不同的VLAN且位于不同的网段。现需要以低廉的成本实现小区1~小区4的用户互通。
图3-7-4 VLAN间通过VLANIF接口通信组网图
配置思路
采用如下的思路配置VLAN间通过VLANIF接口通信:
在CE上创建VLAN,确定用户所属的VLAN。在CE上配置允许用户所属的VLAN通过当前二层端口。在PE上创建VLANIF接口并配置IP地址,实现三层互通。
数据准备
为完成此配置例,需准备如下的数据:
用户所属的VLAN ID。用户的IP地址。CE连接用户的接口编号。 CE之间互连的接口编号。
PE上VLANIF接口编号及IP地址。
操作步骤
分别在CE1、CE2上创建VLAN # 配置CE1。
[~HUAWEI] sysname CE1
[*HUAWEI] commit
[~CE1] vlan batch 30 40
[*CE1] interface gigabitethernet 1/0/1
[*CE1-GigabitEthernet1/0/1] portswitch
[*CE1-GigabitEthernet1/0/1] undo shutdown
[*CE1-GigabitEthernet1/0/1] port link-type access
[*CE1-GigabitEthernet1/0/1] port default vlan 30
[*CE1-GigabitEthernet1/0/1] quit
[*CE1] interface gigabitethernet 1/0/2
[*CE1-GigabitEthernet1/0/2] portswitch
[*CE1-GigabitEthernet1/0/2] undo shutdown
[*CE1-GigabitEthernet1/0/2] port link-type access
[*CE1-GigabitEthernet1/0/2] port default vlan 40
[*CE1-GigabitEthernet1/0/2] quit
# 配置CE2。
[~HUAWEI] sysname CE2
[*HUAWEI] commit
[~CE2] vlan batch 10 20
[*CE2] interface gigabitethernet 1/0/1
[*CE2-GigabitEthernet1/0/1] portswitch
[*CE2-GigabitEthernet1/0/1] undo shutdown
[*CE2-GigabitEthernet1/0/1] port link-type access
[*CE2-GigabitEthernet1/0/1] port default vlan 10
[*CE2-GigabitEthernet1/0/1] quit
[*CE2] interface gigabitethernet 1/0/2
[*CE2-GigabitEthernet1/0/2] portswitch
[*CE2-GigabitEthernet1/0/2] undo shutdown
[*CE2-GigabitEthernet1/0/2] port link-type access
[*CE2-GigabitEthernet1/0/2] port default vlan 20
[*CE2-GigabitEthernet1/0/2] quit
2. 分别在CE1、CE2上配置允许用户所属的VLAN通过当前二层端口
# 配置CE1。
[*CE1] interface gigabitethernet 1/0/3
[*CE1-GigabitEthernet1/0/3] portswitch
[*CE1-GigabitEthernet1/0/3] undo shutdown
[*CE1-GigabitEthernet1/0/3] port link-type trunk
[*CE1-GigabitEthernet1/0/3] port trunk allow-pass vlan 30 40
[*CE1-GigabitEthernet1/0/3] quit
[*CE1] commit
# 配置CE2。
[*CE2] interface gigabitethernet 1/0/3
[*CE2-GigabitEthernet1/0/3] portswitch
[*CE2-GigabitEthernet1/0/3] undo shutdown
[*CE2-GigabitEthernet1/0/3] port link-type trunk
[*CE2-GigabitEthernet1/0/3] port trunk allow-pass vlan 10 20
[*CE2-GigabitEthernet1/0/3] quit
[*CE2] commit
3. 在PE上创建VLANIF接口并配置IP地址
[~HUAWEI] sysname PE
[*HUAWEI] commit
[~PE] vlan batch 10 to 40
[*PE] interface gigabitethernet 1/0/1
[*PE-GigabitEthernet1/0/1] portswitch
[*PE-GigabitEthernet1/0/1] undo shutdown
[*PE-GigabitEthernet1/0/1] port link-type trunk
[*PE-GigabitEthernet1/0/1] port trunk allow-pass vlan 30 40
[*PE-GigabitEthernet1/0/1] quit
[*PE] interface gigabitethernet 1/0/2
[*PE-GigabitEthernet1/0/2] portswitch
[*PE-GigabitEthernet1/0/2] undo shutdown
[*PE-GigabitEthernet1/0/2] port link-type trunk
[*PE-GigabitEthernet1/0/2] port trunk allow-pass vlan 10 20
[*PE-GigabitEthernet1/0/2] quit
[*PE] interface Vlanif 10
[*PE-Vlanif10] ip address 10.110.6.3 24
[*PE-Vlanif10] quit
[*PE] interface Vlanif 20
[*PE-Vlanif20] ip address 10.110.5.3 24
[*PE-Vlanif20] quit
[*PE] interface Vlanif 30
[*PE-Vlanif30] ip address 10.110.4.3 24
[*PE-Vlanif30] quit
[*PE] interface Vlanif 40
[*PE-Vlanif40] ip address 10.110.3.3 24
[*PE-Vlanif40] quit
[*PE] commit
4. 检查配置结果
在VLAN10中的主机上配置缺省网关为VLANIF10接口的IP地址10.110.6.3/24。
在VLAN20中的主机上配置缺省网关为VLANIF20接口的IP地址10.110.5.3/24。
在VLAN30中的主机上配置缺省网关为VLANIF30接口的IP地址10.110.4.3/24。
在VLAN40中的主机上配置缺省网关为VLANIF40接口的IP地址10.110.3.3/24。
配置完成后,VLAN10、20、30及40之间的主机能够相互Ping通。
5. 配置文件
#CE1的配置文件。
#
sysname CE1
#
vlan batch 30 40
#
interface GigabitEthernet1/0/1
portswitch
undo shutdown
port link-type access
port default vlan 30
#
interface GigabitEthernet1/0/2
portswitch
undo shutdown
port link-type access
port default vlan 40
#
interface GigabitEthernet1/0/3
portswitch
undo shutdown
port link-type trunk
port trunk allow-pass vlan 30 40
#
return
#CE2的配置文件。
#
sysname CE2
#
vlan batch 10 20
#
interface GigabitEthernet1/0/1
portswitch
undo shutdown
port link-type access
port default vlan 10
#
interface GigabitEthernet1/0/2
portswitch
undo shutdown
port link-type access
port default vlan 20
#
interface GigabitEthernet1/0/3
portswitch
undo shutdown
port link-type trunk
port trunk allow-pass vlan 10 20
#
return
#PE的配置文件。
#
sysname PE
#
vlan batch 10 to 40
#
interface Vlanif10
ip address 10.110.6.3 255.255.255.0
#
interface Vlanif20
ip address 10.110.5.3 255.255.255.0
#
interface Vlanif30
ip address 10.110.4.3 255.255.255.0
#
interface Vlanif40
ip address 10.110.3.3 255.255.255.0
#
interface GigabitEthernet1/0/1
portswitch
undo shutdown
port link-type trunk
port trunk allow-pass vlan 30 40
#
interface GigabitEthernet1/0/2
portswitch
undo shutdown
port link-type trunk
port trunk allow-pass vlan 10 20
#
return