• 产品与解决方案
  • 行业解决方案
  • 服务
  • 支持
  • 合作伙伴
  • 新华三人才研学中心
  • 关于我们

03-二层技术配置指导

06-VLAN配置

本章节下载 06-VLAN配置  (391.94 KB)

docurl=/cn/Service/Document_Software/Document_Center/Wlan/WA/WA2200/Configure/Operation_Manual/H3C_WA_CG-6W109/03/201502/855077_30005_0.htm

06-VLAN配置


1 VLAN配置

1.1  VLAN简介

1.1.1  VLAN概述

以太网是一种基于CSMA/CD(Carrier Sense Multiple Access/Collision Detect,载波侦听多路访问/冲突检测)的共享通讯介质的数据网络通讯技术,当主机数目较多时会导致冲突严重、广播泛滥、性能显著下降甚至使网络不可用等问题。通过交换机实现LAN互联虽然可以解决冲突(Collision)严重的问题,但仍然不能隔离广播报文。在这种情况下出现了VLAN(Virtual Local Area Network,虚拟局域网)技术,这种技术可以把一个LAN划分成多个虚拟的LAN——VLAN,每个VLAN是一个广播域,VLAN内的主机间通信就和在一个LAN内一样,而VLAN间则不能直接互通,这样,广播报文被限制在一个VLAN内,如图1-1所示。

图1-1 VLAN示意图

 

VLAN的划分不受物理位置的限制:不在同一物理位置范围的主机可以属于同一个VLAN;一个VLAN包含的用户可以连接在同一个交换机上,也可以跨越交换机,甚至可以跨越路由设备。

VLAN的优点如下:

·     限制广播域。广播域被限制在一个VLAN内,节省了带宽,提高了网络处理能力。

·     增强局域网的安全性。VLAN间的二层报文是相互隔离的,即一个VLAN内的用户不能和其它VLAN内的用户直接通信,如果不同VLAN要进行通信,则需通过路由设备或三层交换机等三层设备。

·     灵活构建虚拟工作组。用VLAN可以划分不同的用户到不同的工作组,同一工作组的用户也不必局限于某一固定的物理范围,网络构建和维护更方便灵活。

1.1.2  VLAN原理

要使网络设备能够分辨不同VLAN的报文,需要在报文中添加标识VLAN的字段。由于普通交换机工作在OSI模型的数据链路层,只能对报文的数据链路层封装进行识别。因此,如果添加识别字段,也需要添加到数据链路层封装中。

IEEE(Institute of Electrical and Electronics Engineers,电气和电子工程师学会)于1999年颁布了用以标准化VLAN实现方案的IEEE 802.1Q协议标准草案,对带有VLAN标识的报文结构进行了统一规定。

传统的以太网数据帧在目的MAC地址和源MAC地址之后封装的是上层协议的类型字段,如图1-2所示。

图1-2 传统以太网帧封装格式

 

其中DA表示目的MAC地址,SA表示源MAC地址,Type表示报文所属协议类型。

IEEE 802.1Q协议规定在目的MAC地址和源MAC地址之后封装4个字节的VLAN Tag,用以标识VLAN的相关信息。

图1-3 VLAN Tag的组成字段

 

图1-3所示,VLAN Tag包含四个字段,分别是TPID(Tag Protocol Identifier,标签协议标识符)、Priority、CFI(Canonical Format Indicator,标准格式指示位)和VLAN ID。

·     TPID用来判断本数据帧是否带有VLAN Tag,长度为16bit,缺省取值为0x8100。

·     Priority表示报文的802.1P优先级,长度为3bit。

·     CFI字段标识MAC地址在不同的传输介质中是否以标准格式进行封装,长度为1bit,取值为0表示MAC地址以标准格式进行封装,为1表示以非标准格式封装,缺省取值为0。

·     VLAN ID标识该报文所属VLAN的编号,长度为12bit,取值范围为0~4095。由于0和4095为协议保留取值,所以VLAN ID的取值范围为1~4094。

网络设备利用VLAN ID来识别报文所属的VLAN,根据报文是否携带VLAN Tag以及携带的VLAN Tag值,来对报文进行处理。详细的处理方式请参见“1.4.1  基于端口的VLAN简介”。

说明

·     这里的帧格式以Ethernet II型封装为例,以太网还支持802.2 LLC和802.3 raw封装格式。对于这些封装格式的报文,也会添加VLAN Tag字段,用来区分不同VLAN的报文。

·     对于多VLAN Tag报文,设备会根据其最外层VLAN Tag进行处理,而内层VLAN Tag会被视为报文的普通数据部分。

 

1.1.3  VLAN划分

VLAN根据划分方式不同可以分为不同类型,下面列出了几种最常见的VLAN类型:

·     基于端口的VLAN

·     基于MAC地址的VLAN

1.1.4  协议规范

与VLAN相关的协议规范有:

·     IEEE 802.1Q:IEEE Standards for Local and Metropolitan Area Networks: Virtual Bridged Local Area Networks

1.2  配置VLAN基本属性

表1-1 配置VLAN基本属性

配置

命令

说明

进入系统视图

system-view

-

创建VLAN

vlan { vlan-id1 [ to vlan-id2 ] }

可选

该命令主要用于批量创建VLAN

进入VLAN视图

vlan vlan-id

必选

如果指定的VLAN不存在,则该命令先完成VLAN的创建,然后再进入该VLAN的视图

缺省情况下,系统只有一个缺省VLAN(VLAN 1)

指定当前VLAN的名称

name text

可选

缺省情况下,VLAN的名称为该VLAN的VLAN ID,如“VLAN 0001”

为VLAN指定一个描述字符串

description text

可选

缺省情况下,VLAN的描述字符串为该VLAN的VLAN ID,如“VLAN 0001”

 

说明

·     VLAN 1为系统缺省VLAN,用户不能手工创建和删除。

·     不能通过undo vlan命令删除设备上动态学习到的VLAN。

 

1.3  配置VLAN接口基本属性

1.3.1  VLAN接口简介

不同VLAN间的主机不能直接通信,需要通过路由设备或三层交换机等网络层设备进行转发,设备提供VLAN接口实现对报文进行三层转发的功能。

VLAN接口是一种三层模式下的虚拟接口,主要用于实现VLAN间的三层互通,它不作为物理实体存在于设备上。每个VLAN对应一个VLAN接口,在为VLAN接口配置了IP地址后,该接口即可作为本VLAN内网络设备的网关,对需要跨网段的报文进行基于IP地址的三层转发。

1.3.2  配置VLAN接口基本属性

表1-2 配置VLAN接口基本属性

配置

命令

说明

进入系统视图

system-view

-

创建VLAN接口并进入VLAN接口视图

interface vlan-interface vlan-interface-id

必选

如果该VLAN接口已经存在,则直接进入该VLAN接口视图

配置VLAN接口的IP地址

ip address ip-address { mask | mask-length } [ sub ]

可选

缺省情况下,没有配置VLAN接口的IP地址

为VLAN接口指定一个描述字符串

description text

可选

缺省情况下,VLAN接口的描述字符串为该VLAN接口的接口名,如“Vlan-interface1 Interface”

配置VLAN接口的MTU值

mtu size

可选

缺省情况下,VLAN接口的MTU值为1500字节

恢复VLAN接口的缺省配置

default

可选

关闭VLAN接口

shutdown

可选

缺省情况下,VLAN接口的状态为打开,此时VLAN接口状态受VLAN中端口状态的影响,即:当VLAN中所有以太网端口和空口的状态为down时,VLAN接口为down状态,即关闭状态;当VLAN中有一个或一个以上的以太网端口处于up状态时,则VLAN接口处于up状态。如果将VLAN接口的状态通过shutdown命令设置为DOWN(Administratively),则VLAN接口的状态始终为DOWN(Administratively),不受VLAN中端口状态的影响

 

说明

在创建VLAN接口之前,对应的VLAN必须已经存在,否则将不能创建指定的VLAN接口。

 

1.3.3  VLAN接口配置举例

1. 组网需求

(1)     如图1-4所示,Client 1、Client 2通过AP接入网络。其中Client 1、 Client 2分别属于VLAN 5、VLAN 10,且处于不同网段,不能直接通信。通过在AP上创建并配置VLAN接口,实现不同网段的Client 之间可以跨VLAN三层互通。

(2)     不同VLAN间互通使用单臂路由器(外部路由器)实现。

2. 组网图

图1-4 通过VLAN接口实现VLAN间互通

 

3. 配置步骤

(1)     配置AP

# 创建WLAN BSS接口。

<AP> system-view

[AP] interface WLAN-BSS 1

[AP-WLAN-BSS1] quit

[AP] interface WLAN-BSS 2

[AP-WLAN-BSS2] quit

# 创建VLAN 5,并向VLAN 5中添加端口WLAN-BSS 1

<AP> system-view

[AP] vlan 5

[AP-vlan5] port WLAN-BSS 1

# 创建VLAN 10,并向VLAN 10中添加端口WLAN-BSS 2

[AP-vlan5] vlan 10

[AP-vlan10] port WLAN-BSS 2

[AP-vlan10] quit

# 对于无线客户端Client 1:配置WLAN服务模板为clear模式,SSIDservice1,认证方式为开放系统认证,使能服务模板。

[AP] wlan service-template 1 clear

[AP-wlan-st-1] ssid service1

[AP-wlan-st-1] authentication-method open-system

[AP-wlan-st-1] service-template enable

[AP-wlan-st-1]quit

# 对于无线客户端Client 2:配置WLAN服务模板为clear模式,SSID为service2,认证方式为开放系统认证,使能服务模板。

[AP] wlan service-template 2 clear

[AP-wlan-st-2] ssid service2

[AP-wlan-st-2] authentication-method open-system

[AP-wlan-st-2] service-template enable

[AP-wlan-st-2]quit

# 在WLAN-Radio 1/0/1上绑定无线服务模板1和WLAN-BSS 1,无线服务模板2和WLAN-BSS 2。

[AP] interface WLAN-Radio 1/0/1

[AP-WLAN-Radio1/0/1] radio-type dot11g

[AP-WLAN-Radio1/0/1] channel 6

[AP-WLAN-Radio1/0/1] service-template 1 interface WLAN-BSS 1

[AP-WLAN-Radio1/0/1] service-template 2 interface WLAN-BSS 2

[AP-WLAN-Radio1/0/1] quit

# 配置接口GigabitEthernet1/0/1链路类型为Trunk类型,并允许VLAN 5和VLAN 10通过。

<AP> system-view

[AP] interface GigabitEthernet 1/0/1

[AP-GigabitEthernet1/0/1] port link-type trunk

[AP-GigabitEthernet1/0/1] port trunk permit vlan 5 10

(2)     配置Router

# 创建接口GigabitEthernet1/0/1的子接口GigabiEthernet1/0/1.1,配置其能够终结VLAN 5的Dot1q报文,IP地址为192.168.0.10/24。

<Router> system-view

[Router] interface GigabitEthernet 1/0/1.1

[Router-GigabitEthernet1/0/1.1] vlan-type dot1q vid 5

[Router-GigabitEthernet1/0/1.1] ip address 192.168.0.100 24

[Router-GigabitEthernet1/0/1.1] quit

# 创建接口GigabitEthernet1/0/1的子接口GigabitEthernet1/0/1.2,配置其能够终结VLAN 10的Dot1q报文,IP地址为192.168.1.20/24。

[Router] interface GigabitEthernet1/0.2

[Router-GigabitEthernet1/0/1.2] vlan-type dot1q vid 10

[Router-GigabitEthernet1/0/1.2] ip address 192.168.1.200 24

(3)     配置Client 1

# 将其默认网关配为192.168.0.10。

(4)     配置Client 2

# 将其默认网关配为192.168.1.20。

4. 显示与验证

(1)     Client 1Client 2可以相互ping通。

(2)     通过查看显示信息验证配置是否成功。

# 在Client 1上ping Client 2,验证以上配置是否生效。

C:\Documents and Settings\Administrator>ping 192.168.1.20

 

Pinging 192.168.1.20 with 32 bytes of data:

 

Reply from 192.168.1.20: bytes=32 time<1ms TTL=128

Reply from 192.168.1.20: bytes=32 time<1ms TTL=128

Reply from 192.168.1.20: bytes=32 time<1ms TTL=128

Reply from 192.168.1.20: bytes=32 time<1ms TTL=128

 

Ping statistics for 192.168.1.20:

    Packets: Sent = 4, Received = 4, Lost = 0 (0

Approximate round trip times in milli-seconds:

    Minimum = 0ms, Maximum = 0ms, Average = 0ms

1.4  配置基于端口的VLAN

1.4.1  基于端口的VLAN简介

基于端口划分VLAN是VLAN最简单、最有效的划分方法。它按照设备端口来定义VLAN成员,将指定端口加入到指定VLAN中之后,端口就可以转发指定VLAN的报文。

1. 端口的链路类型

根据端口在转发报文时对Tag标签的不同处理方式,可将端口的链路类型分为三种:

·     Access连接:端口发出去的报文不带tag标签。一般用于和不能识别VLAN tag的终端设备相连,或者不需要区分不同VLAN成员时使用。如图1-5所示,Device A和普通的PC相连,PC不能识别带VLAN tag的报文,所以需要将Device A和PC相连端口的链路类型设置为Access。

·     Trunk连接:端口发出去的报文,端口缺省VLAN内的报文不带tag,其它VLAN内的报文都必须带tag。通常用于网络传输设备之间的互连。如图1-5所示,Device A和Device B之间需要传输VLAN 2和VLAN 3的报文,所以,需要将Device A和Device B相连端口的链路类型设置为Trunk,并允许VLAN 2和VLAN 3通过。

·     Hybrid连接:端口发出去的报文可根据需要设置某些VLAN内的报文带tag,某些VLAN内的报文不带tag。通常用于相连的设备是否支持VLAN tag不确定的情况。如图1-5所示,Device C与一个小局域网相连,局域网中有些PC属于VLAN 2,有些PC属于VLAN 3,此时需要将Device B与Device C该局域网相连端口的链路类型设置为Hybrid,并允许VLAN 2和VLAN 3的报文不带tag通过。

图1-5 链路类型配置示意图

 

 

2. 缺省VLAN

除了可以设置端口允许通过的VLAN,还可以设置端口的缺省VLAN。在缺省情况下,所有端口的缺省VLAN均为VLAN 1,但用户可以根据需要进行配置。

·     Access端口的缺省VLAN就是它所在的VLAN,修改端口所在的VLAN即可更改端口的缺省VLAN。

·     Trunk端口和Hybrid端口可以允许多个VLAN通过,能够配置缺省VLAN。

·     当执行undo vlan命令删除的VLAN是某个端口的缺省VLAN时,对Access端口,端口的缺省VLAN会恢复到VLAN 1;对Trunk或Hybrid端口,端口的缺省VLAN配置不会改变,即它们可以使用已经不存在的VLAN作为缺省VLAN。

说明

·     建议本端设备端口的缺省VLAN ID和相连的对端设备端口的缺省VLAN ID保持一致。

·     建议保证端口的PVID属于端口所在的VLAN。如果端口不在某VLAN内,但是端口的PVID仍然为该VLAN,当端口收到该VLAN的报文或者不带VLAN Tag的报文(包括MSTP等协议报文)都会被过滤。

 

在配置了端口链路类型和缺省VLAN后,端口对报文的接收和发送的处理有几种不同情况,具体情况请参看表1-3

表1-3 不同链路类型端口收发报文的差异

端口类型

对接收报文的处理

对发送报文的处理

当接收到的报文不带Tag时

当接收到的报文带有Tag时

Access端口

为报文添加缺省VLAN的Tag

·     当VLAN ID与缺省VLAN ID相同时,接收该报文

·     当VLAN ID与缺省VLAN ID不同时,丢弃该报文

去掉Tag,发送该报文

Trunk端口

·     当缺省VLAN ID在端口允许通过的VLAN ID列表里时,接收该报文,给报文添加缺省VLAN的Tag

·     当缺省VLAN ID不在端口允许通过的VLAN ID列表里时,丢弃该报文

·     当VLAN ID在端口允许通过的VLAN ID列表里时,接收该报文

·     当VLAN ID不在端口允许通过的VLAN ID列表里时,丢弃该报文

·     当VLAN ID与缺省VLAN ID相同,且是该端口允许通过的VLAN ID时:去掉Tag,发送该报文

·     当VLAN ID与缺省VLAN ID不同,且是该端口允许通过的VLAN ID时:保持原有Tag,发送该报文

Hybrid端口

当报文中携带的VLAN ID是该端口允许通过的VLAN ID时,发送该报文,并可以通过port hybrid vlan命令配置端口在发送该VLAN(包括缺省VLAN)的报文时是否携带Tag

 

1.4.2  配置基于Access端口的VLAN

配置基于Access端口的VLAN有两种方法:一种是在VLAN视图下进行配置,另一种是在接口视图下进行配置。

表1-4 配置基于Access端口的VLAN(在VLAN视图下)

配置

命令

说明

进入系统视图

system-view

-

进入VLAN视图

vlan vlan-id

必选

如果指定的VLAN不存在,则该命令先完成VLAN的创建,然后再进入该VLAN的视图

向当前VLAN中添加一个或一组Access端口

port interface-list

必选

缺省情况下,系统将所有端口都加入到VLAN 1

 

表1-5 配置基于Access端口的VLAN(在接口视图)

操作

命令

说明

进入系统视图

system-view

-

进入以太网接口视图

interface interface-type interface-number

必选

进入接口视图后,下面进行的配置只在当前端口下生效

配置端口的链路类型为Access类型

port link-type access

可选

缺省情况下,端口的链路类型为Access类型

将当前Access端口加入到指定VLAN

port access vlan vlan-id

可选

缺省情况下,所有Access端口均属于且只属于VLAN 1

 

说明

在将Access端口加入到指定VLAN之前,要加入的VLAN必须已经存在。

 

1.4.3  配置基于Trunk端口的VLAN

Trunk端口可以允许多个VLAN通过,只能在接口视图下进行配置。

表1-6 配置基于Trunk端口的VLAN

操作

命令

说明

进入系统视图

system-view

-

进入以太网接口视图

interface interface-type interface-number

必选

进入接口视图后,下面进行的配置只在当前端口下生效

配置端口的链路类型为Trunk类型

port link-type trunk

必选

允许指定的VLAN通过当前Trunk端口

port trunk permit vlan { vlan-id-list | all }

必选

缺省情况下,Trunk端口只允许VLAN 1的报文通过

设置Trunk端口的缺省VLAN

port trunk pvid vlan vlan-id

可选

缺省情况下,Trunk端口的缺省VLAN为VLAN 1

 

说明

·     Trunk端口和Hybrid端口之间不能直接切换,只能先设为Access端口,再设置为其它类型端口。例如:Trunk端口不能直接被设置为Hybrid端口,只能先设为Access端口,再设置为Hybrid端口。

·     配置缺省VLAN后,必须使用port trunk permit vlan命令配置允许缺省VLAN的报文通过,出接口才能转发缺省VLAN的报文。

 

1.4.4  配置基于Hybrid端口的VLAN

说明

Hybrid端口的支持情况与设备的型号有关,请参见“配置指导导读”中的“特性差异情况”部分的介绍。

 

Hybrid端口可以允许多个VLAN通过,只能在以太网接口和BSS接口视图下进行配置。

表1-7 配置基于Hybrid端口的VLAN

操作

命令

说明

进入系统视图

system-view

-

进入以太网接口视图

interface interface-type interface-number

必选

进入接口视图后,下面进行的配置只在当前端口下生效

配置端口的链路类型为Hybrid类型

port link-type hybrid

必选

允许指定的VLAN通过当前Hybrid端口

port hybrid vlan vlan-id-list { tagged | untagged }

必选

缺省情况下,Hybrid端口只允许VLAN 1的报文以untagged方式通过(即VLAN 1的报文从该端口发送出去后不携带VLAN Tag)

设置Hybrid端口的缺省VLAN

port hybrid pvid vlan vlan-id

可选

缺省情况下,Hybrid端口的缺省VLAN为VLAN 1

 

说明

·     Trunk端口和Hybrid端口之间不能直接切换,只能先设为Access端口,再设置为其它类型端口。例如:Trunk端口不能直接被设置为Hybrid端口,只能先设为Access端口,再设置为Hybrid端口。

·     在设置允许指定的VLAN通过Hybrid端口之前,允许通过的VLAN必须已经存在。

·     配置缺省VLAN后,必须使用port hybrid vlan命令配置允许缺省VLAN的报文通过,出接口才能转发缺省VLAN的报文。

 

1.4.5  基于端口的VLAN典型配置举例

1. 组网需求

·     无线客户端Client 1和Client 3属于部门A,但是通过不同的FAT AP接入公司网络;无线客户端Client 2和 Client 4属于部门B,也通过不同的FAT AP接入公司网络。

·     为了通信的安全性,也为了避免广播报文泛滥,公司网络中使用VLAN技术来隔离部门间的二层流量。其中部门A使用VLAN 100,部门B使用VLAN 200。

·     现要求不管是否使用相同的FAT AP接入公司网络,同一VLAN内的主机能够互通。即Client 1和 Client 3能够互通,Client 2和 Client 4能够互通。

2. 组网图

图1-6 基于端口的VLAN组网图

  

 

3. 配置步骤

(1)     配置AP 1

# 创建WLAN BSS接口。

<AP1> system-view

[AP1] interface WLAN-BSS 1

[AP1-WLAN-BSS1] quit

[AP1] interface WLAN-BSS 2

[AP1-WLAN-BSS2] quit

# 创建VLAN 100,并将WLAN-BSS 1加入VLAN 100。

<AP1> system-view

[AP1] vlan 100

[AP1-vlan100] port WLAN-BSS 1

[AP1-vlan100] quit

# 创建VLAN 200,并将WLAN-BSS 2加入VLAN 200

[AP1] vlan 200

[AP1-vlan200] port WLAN-BSS 2

[AP1-vlan200] quit

# 对于无线客户端Client 1:配置WLAN服务模板为clear模式,SSIDservice1,认证方式为开放系统认证,使能服务模板。

[AP1] wlan service-template 1 clear

[AP1-wlan-st-1] ssid service1

[AP1-wlan-st-1] authentication-method open-system

[AP1-wlan-st-1] service-template enable

[AP1-wlan-st-1]quit

# 对于无线客户端Client 2:配置WLAN服务模板为clear模式,SSID为service2,认证方式为开放系统认证,使能服务模板。

[AP1] wlan service-template 2 clear

[AP1-wlan-st-2] ssid service2

[AP1-wlan-st-2] authentication-method open-system

[AP1-wlan-st-2] service-template enable

[AP1-wlan-st-2]quit

# 在WLAN-Radio 1/0/1上绑定无线服务模板1和WLAN-BSS 1,无线服务模板2和WLAN-BSS 2。

[AP1] interface WLAN-Radio 1/0/1

[AP1-WLAN-Radio1/0/1] radio-type dot11g

[AP1-WLAN-Radio1/0/1] channel 6

[AP1-WLAN-Radio1/0/1] service-template 1 interface WLAN-BSS 1

[AP1-WLAN-Radio1/0/1] service-template 2 interface WLAN-BSS 2

[AP1-WLAN-Radio1/0/1] quit

# 为了使AP 1VLAN 100VLAN 200的报文能发送给AP 2,将GigabitEthernet1/0/1的链路类型配置为Trunk,并允许VLAN 100VLAN 200的报文通过。

[AP1] interface GigabitEthernet 1/0/1

[AP1-GigabitEthernet1/0/1] port link-type trunk

[AP1-GigabitEthernet1/0/1] port trunk permit vlan 100 200

Please wait... Done.

(2)     AP 2上的配置与AP 1上的配置完全一样,不再赘述。

(3)     Device的接口的链路类型配置为Trunk,并允许VLAN 100VLAN 200的报文通过。

(4)     将Client 1和 Client 3配置在一个网段,比如192.168.100.0/24;将Client 2和 Client 4配置在一个网段,比如192.168.200.0/24。

4. 显示与验证

(1)     Client 1和 Client 3能够互相ping通,但是均不能ping通Client 2。 Client 2和 Client 4能够互相ping通,但是均不能ping通Client 1。

(2)     通过查看显示信息验证配置是否成功。

# 查看AP 1上VLAN 100和VLAN 200的配置信息,验证以上配置是否生效。

[AP1-GigabitEthernet1/0/1] display vlan 100

 VLAN ID: 100

 VLAN Type: static

 Route Interface: not configured

 Description: VLAN 0100

 Name: VLAN 0100

Tagged   Ports:

    GigabitEthernet1/0/1

 Untagged Ports:

    WLAN-BSS1

[AP1-GigabitEthernet1/0/1] display vlan 200

 VLAN ID: 200

 VLAN Type: static

 Route Interface: not configured

 Description: VLAN 0200

 Name: VLAN 0200

Tagged   Ports:

    GigabitEthernet1/0/1

 Untagged Ports:

    WLAN-BSS2

1.5  配置基于MAC的VLAN

1.5.1  基于MAC的VLAN简介

基于MAC划分VLAN是VLAN的另一种划分方法。它按照报文的源MAC地址来定义VLAN成员,将指定报文加入该VLAN的Tag后发送。该功能通常会和安全(比如802.1X)技术联合使用,以实现终端的安全、灵活接入。

1. 手动配置静态MAC VLAN

手动配置静态MAC VLAN常用于VLAN中用户相对较少的网络环境。在该方式下,用户需要手动配置MAC VLAN表项,使能基于MAC地址的VLAN功能,并将端口加入MAC VLAN。其原理为:

·     当端口收到的报文为untagged报文时,根据报文的源MAC匹配MAC VLAN表项。首先进行模糊匹配,即查询表中MASK不是全F的表项,将源MAC和MASK相与后与MAC VLAN表项中的MAC地址匹配,如果完全相同,则模糊匹配成功,给报文添加表项中指定的VLAN ID并转发该报文;如果模糊匹配失败,则进行精确匹配,即查询表中MASK为全F的表项,如果报文中的源MAC与MAC VLAN表项中的MAC地址完全相同,则精确匹配成功,给报文添加表项中指定的VLAN ID并转发该报文;如果没有找到匹配MAC VLAN表项,则继续按照其它原则进行匹配(如按照IP地址、协议等),若均失败,则给报文添加端口的缺省VLAN ID并转发该报文。

·     当端口收到的报文为tagged报文时,如果报文的VLAN ID在该端口允许通过的VLAN ID列表里,则转发该报文;如果报文的VLAN ID不在端口允许通过的VLAN ID列表里,则丢弃该报文。

2. 动态MAC VLAN

动态MAC VLAN需要和接入认证(比如基于MAC地址的802.1x认证)配合使用,以实现终端的安全、灵活接入。用户在设备上配置动态MAC VLAN功能以后,还需要在接入认证服务器上配置MAC地址和VLAN的关联关系。

用户访问网络时,接入认证服务器先对用户进行认证,如果认证通过,服务器下发VLAN信息。设备根据用户报文的源MAC地址和下发的VLAN信息生成MAC VLAN表项,并将MAC VLAN添加到端口允许通过的VLAN列表中。用户下线后,设备自动删除MAC VLAN表项,并将对应的VLAN从端口允许通过的VLAN列表中删除。

说明

接入认证的相关内容请参见“安全配置指导”中的“802.1X配置”和“MAC地址认证配置”。

 

1.5.2  配置基于MAC的VLAN

说明

基于MAC的VLAN功能只能在Hybrid端口配置。

 

表1-8 手工配置静态MAC VLAN

操作

命令

说明

进入系统视图

system-view

-

配置MAC地址与VLAN关联

mac-vlan mac-address mac-address [ mask mac-mask ] vlan vlan-id [ priority priority ]

必选

进入接口视图

interface interface-type interface-number

必选

配置端口的链路类型为Hybrid类型

port link-type hybrid

必选

允许基于MAC的VLAN通过当前Hybrid端口

port hybrid vlan vlan-id-list { tagged | untagged }

必选

缺省情况下,所有Hybrid端口只允许VLAN 1通过

使能基于MAC地址划分VLAN的功能

mac-vlan enable

必选

缺省情况下,未使能端口的MAC VLAN功能

 

表1-9 配置动态MAC VLAN

操作

命令

说明

进入系统视图

system-view

-

进入接口视图

interface interface-type interface-numbe

必选

配置端口的链路类型为Hybrid类型

port link-type hybrid

必选

允许基于MAC的VLAN通过当前Hybrid端口

port hybrid vlan vlan-id-list { tagged | untagged }

必选

缺省情况下,所有Hybrid端口只允许VLAN 1通过

使能基于MAC地址划分VLAN的功能

mac-vlan enable

必选

缺省情况下,未使能端口的MAC VLAN功能

配置认证功能

配置802.1X

请参见“安全命令参考”中的“802.1X配置”

二者至少选其一

配置MAC地址认证

请参见“安全命令参考”中的“MAC地址认证配置”

 

1.5.3  基于MAC的VLAN典型配置举例

1. 组网需求

·     如图1-7所示,AP 1和AP 2的WLAN-BSS 1端口分别连接到两个会议室,Client 1和Client 2是会议用笔记本电脑,会在两个会议室间移动使用。

·     Client 1和 Client 2分别属于两个部门,两个部门间使用VLAN 100和VLAN 200进行隔离。现要求这两台笔记本电脑无论在哪个会议室使用,均只能访问自己部门的服务器,即Server1和Server2。

·     Client 1和Client 2的MAC地址分别为000d-88F8-4E71和0014-222C-AA69。

2. 组网图

图1-7 基于MAC的VLAN组网图

  

 

3. 配置思路

·     创建VLAN 100、VLAN 200。

·     配置AP 1和AP 2的上行端口为Trunk端口,并允许VLAN 100和VLAN 200的报文通过。

·     配置 Device  的下行端口为Trunk端口,并允许VLAN 100和VLAN 200的报文通过;上行端口分别加入VLAN 100、VLAN 200。

·     Client 1和Client 2的MAC地址分别与VLAN 100、VLAN 200关联。

4. 配置步骤

(1)     AP 1的配置

# 创建WLAN BSS接口。

<AP1> system-view

[AP1] interface WLAN-BSS 1

# 创建VLAN 100和VLAN 200。

<AP1> system-view

[AP1] vlan 100

[AP1-vlan100] quit

[AP1] vlan 200

[AP1-vlan200] quit

# 将Client 1MAC地址与VLAN 100关联,Client 2MAC地址与VLAN 200关联。

[AP1] mac-vlan mac-address 000d-88f8-4e71 vlan 100

[AP1] mac-vlan mac-address 0014-222c-aa69 vlan 200

# 配置终端的接入端口:Client 1和Client 2均可能从WLAN-BSS 1接入,将WLAN-BSS 1的端口类型配置为Hybrid,并使其在发送VLAN 100和VLAN 200的报文时去掉VLAN Tag;开启WLAN-BSS 1端口的MAC-VLAN功能。

[AP1] interface WLAN-bss 1

[AP1-WLAN-BSS1] port link-type hybrid

[AP1-WLAN-BSS1] port hybrid vlan 100 200 untagged

 Please wait... Done.

[AP1-WLAN-BSS1] mac-vlan enable

[AP1-WLAN-BSS1] quit

# 对于无线客户端Client 1:配置WLAN服务模板为clear模式,SSIDservice1,认证方式为开放系统认证,使能服务模板。

[AP1] wlan service-template 1 clear

[AP1-wlan-st-1] ssid service1

[AP1-wlan-st-1] authentication-method open-system

[AP1-wlan-st-1] service-template enable

[AP1-wlan-st-1]quit

# 在WLAN-Radio 1/0/1上绑定无线服务模板1和WLAN-BSS 1。

[AP1] interface WLAN-Radio 1/0/1

[AP1-WLAN-Radio1/0/1] radio-type dot11g

[AP1-WLAN-Radio1/0/1] channel 6

[AP1-WLAN-Radio1/0/1] service-template 1 interface WLAN-BSS 1

[AP1-WLAN-Radio1/0/1] quit

# 为了终端能够访问Server1和Server2,需要将上行端口GigabitEthernet1/0/1的端口类型配置为Trunk,并允许VLAN 100和VLAN 200的报文通过。

[AP1] interface GigabitEthernet 1/0/1

[AP1-GigabitEthernet1/0/1] port link-type trunk

[AP1-GigabitEthernet1/0/1] port trunk permit vlan 100 200

[AP1-GigabitEthernet1/0/1] quit

(2)     Device的配置

# 创建VLAN 100和VLAN 200,并将GigabitEthernet1/0/13加入VLAN 100,GigabitEthernet1/0/14加入VLAN 200。

<Device> system-view

[Device] vlan 100

[Device-vlan100] port gigabitethernet 1/0/13

[Device-vlan100] quit

[Device] vlan 200

[Device-vlan200] port gigabitethernet 1/0/14

[Device-vlan200] quit

# 配置GigabitEthernet1/0/3和GigabitEthernet1/0/4端口为Trunk端口,均允许VLAN 100VLAN 200的报文通过。

[Device] interface gigabitethernet 1/0/3

[Device-GigabitEthernet1/0/3] port link-type trunk

[Device-GigabitEthernet1/0/3] port trunk permit vlan 100 200

[Device-GigabitEthernet1/0/3] quit

[Device] interface gigabitethernet 1/0/4

[Device-GigabitEthernet1/0/4] port link-type trunk

[Device-GigabitEthernet1/0/4] port trunk permit vlan 100 200

[Device-GigabitEthernet1/0/4] quit

(3)     AP 2的配置

AP 2的配置与AP 1完全一致,这里不再赘述。

5. 显示与验证

(1)     Client 1只能访问Server1,不能访问Server2;Client 2只能访问Server2,不能访问Server1。

(2)     在AP 1和AP 2上可以查看到Client 1和VLAN 100、Client 2和VLAN 200的静态MAC VLAN地址表项已经生成。

[AP1] display mac-vlan all

  The following MAC VLAN addresses exist:

  S:Static  D:Dynamic

  MAC ADDR         MASK             VLAN ID   PRIO   STATE

  --------------------------------------------------------

  000d-88f8-4e71   ffff-ffff-ffff   100       0      S

  0014-222c-aa69   ffff-ffff-ffff   200       0      S

 

  Total MAC VLAN address count:2

6. 配置注意事项

·     基于MAC的VLAN只能在Hybrid端口上配置。

·     基于MAC的VLAN的配置主要用于在用户的接入设备的下行端口上进行配置,因此不能与聚合功能同时使用。

1.6  VLAN显示和维护

在完成上述配置后,在任意视图下执行display命令可以显示配置后VLAN的运行情况,通过查看显示信息验证配置的效果。

在用户视图下执行reset命令可以清除接口统计信息。

表1-10 VLAN显示和维护

操作

命令

显示VLAN相关信息

display vlan [ vlan-id1 [ to vlan-id2 ] | all | dynamic | reserved | static ] [ | { begin | exclude | include } regular-expression ]

显示VLAN接口相关信息

display interface [ vlan-interface ] [ brief [ down ] ] [ | { begin | exclude | include } regular-expression ]

display interface vlan-interface vlan-interface-id [ brief ] [ | { begin | exclude | include } regular-expression ]

显示设备上当前存在的Hybrid或Trunk端口

display port { hybrid | trunk } [ | { begin | exclude | include } regular-expression ]

显示MAC-VLAN表项

display mac-vlan { all | dynamic | mac-address mac-address [ mask mac-mask ] | static | vlan vlan-id } [ | { begin | exclude | include } regular-expression ]

显示所有使能了MAC VLAN功能的接口

display mac-vlan interface [ | { begin | exclude | include } regular-expression ]

清除接口的统计信息

reset counters interface vlan-interface [ vlan-interface-id ]

 

不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!

新华三官网
联系我们