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

03 二层技术-以太网交换配置指导

目录

07-VLAN配置

本章节下载 07-VLAN配置  (518.09 KB)

07-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的优点如下:

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

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

l              灵活构建虚拟工作组。用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。

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

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

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

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

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

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

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

 

1.1.3  VLAN划分

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

l              基于端口的VLAN

l              基于MAC地址的VLAN

l              基于协议的VLAN

l              基于IP子网的VLAN

l              基于策略的VLAN

l              其它VLAN

l    对于S5120-SI系列以太网交换机仅支持基于端口的VLAN、基于MAC地址的VLAN、基于协议的VLAN。

l    如果某个端口下同时使能基于端口的VLAN、基于MAC地址的VLAN、基于协议的VLAN,则缺省情况下将按照基于MAC VLAN、协议VLAN、端口VLAN的先后顺序进行匹配。

 

1.2  配置VLAN基本属性

表1-1 配置VLAN基本属性

配置

命令

说明

进入系统视图

system-view

-

创建VLAN

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

可选

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

进入VLAN视图

vlan vlan-id

必选

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

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

指定当前VLAN的名称

name text

可选

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

为VLAN指定一个描述字符串

description text

可选

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

 

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

l          保留VLAN是系统为实现特定功能预留的VLAN,用户也不能手工创建和删除。

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

l          如果某个VLAN有相关的QoS策略配置,则不允许删除该VLAN。

l          如果某个VLAN已经配置为镜像VLAN,则不能通过undo vlan命令删除该VLAN;只有先删除相应的镜像VLAN的配置才能够删除这个VLAN。

 

1.3  配置VLAN接口基本属性

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

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

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

配置

命令

说明

进入系统视图

system-view

-

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

interface vlan-interface vlan-interface-id

必选

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

配置VLAN接口的IP地址

ip address ip-address { mask | mask-length }

可选

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

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

description text

可选

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

打开VLAN接口

undo shutdown

可选

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

 

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

 

1.4  配置基于端口的VLAN

1.4.1  基于端口的VLAN简介

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

1. 端口的链路类型

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

l              Access连接:端口发出去的报文不带tag标签。一般用于和不能识别VLAN tag的终端设备相连,或者不需要区分不同VLAN成员时使用。

l              Trunk连接:端口发出去的报文,端口缺省VLAN内的报文不带tag,其它VLAN内的报文都必须带tag。通常用于网络传输设备之间的互连。

l              Hybrid连接:端口发出去的报文可根据需要设置某些VLAN内的报文带tag,某些VLAN内的报文不带tag。

2. 缺省VLAN

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

l              Access端口的缺省VLAN就是它所在的VLAN,不能配置。

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

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

l          Voice VLAN工作在自动模式的端口,不能将缺省VLAN设置为Voice VLAN。有关Voice VLAN的相关内容,请参见“2 Voice VLAN配置”。

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

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

 

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

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

端口类型

对接收报文的处理

对发送报文的处理

当接收到的报文不带Tag时

当接收到的报文带有Tag时

Access端口

为报文添加缺省VLAN的Tag

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

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

去掉Tag,发送该报文

Trunk端口

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

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

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

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

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

l      当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

必选

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

 

表1-5 配置基于Access端口的VLAN(在端口视图/端口组视图下/二层聚合端口视图)

操作

命令

说明

进入系统视图

system-view

-

进入端口视图/端口组视图/二层聚合端口视图

进入以太网端口视图

interface interface-type interface-number

三者必选其一

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

l      进入端口组视图后,下面进行的配置将在端口组中的所有端口下生效

l      在二层聚合端口视图下执行该命令,则该配置将对二层聚合端口以及相应的所有成员端口生效。在配置过程中,如果某个成员端口配置失败,系统会自动跳过该成员端口继续配置其它成员端口;如果二层聚合端口配置失败,则不会再配置成员端口

进入端口组视图

port-group manual port-group-name

进入二层聚合端口视图

interface bridge-aggregation interface-number

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

port link-type access

可选

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

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

port access vlan vlan-id

可选

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

 

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

l          在VLAN视图下向VLAN中添加端口时,只能添加二层以太网端口。

 

1.4.3  配置基于Trunk端口的VLAN

Trunk端口可以允许多个VLAN通过,只能在端口视图/端口组视图/二层聚合端口视图下进行配置。

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

操作

命令

说明

进入系统视图

system-view

-

进入端口视图/端口组视图/二层聚合端口视图

进入以太网端口视图

interface interface-type interface-number

三者必选其一

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

l      进入端口组视图后,下面进行的配置将在端口组中的所有端口下生效

l      在二层聚合端口视图下执行该命令,则该配置将对二层聚合端口以及相应的所有成员端口生效。在配置过程中,如果某个成员端口配置失败,系统会自动跳过该成员端口继续配置其它成员端口;如果二层聚合端口配置失败,则不会再配置成员端口

进入端口组视图

port-group manual port-group-name

进入二层聚合端口视图

interface bridge-aggregation interface-number

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

port link-type trunk

必选

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

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

必选

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

设置Trunk端口的缺省VLAN

port trunk pvid vlan vlan-id

可选

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

 

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

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

l          当使用port link-type { access | hybrid | trunk }命令修改端口的链路类型后,该端口下的loopback-detection action配置会自动恢复到缺省情况。(loopback-detection action的详细介绍请参见“二层技术-以太网交换命令参考”中的“以太网端口”)

 

1.4.4  配置基于Hybrid端口的VLAN

Hybrid端口可以允许多个VLAN通过,只能在端口视图/端口组视图/二层聚合端口视图下进行配置。

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

操作

命令

说明

进入系统视图

system-view

-

进入端口视图/端口组视图/二层聚合端口视图

进入以太网端口视图

interface interface-type interface-number

三者必选其一

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

l      进入端口组视图后,下面进行的配置将在端口组中的所有端口下生效

l      在二层聚合端口视图下执行该命令,则该配置将对二层聚合端口以及相应的所有成员端口生效。在配置过程中,如果某个成员端口配置失败,系统会自动跳过该成员端口继续配置其它成员端口;如果二层聚合端口配置失败,则不会再配置成员端口

进入端口组视图

port-group manual port-group-name

进入二层聚合端口视图

interface bridge-aggregation interface-number

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

port link-type hybrid

必选

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

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

必选

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

设置Hybrid端口的缺省VLAN

port hybrid pvid vlan vlan-id

可选

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

 

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

l          当使用port link-type { access | hybrid | trunk }命令修改端口的链路类型后,该端口下的loopback-detection action配置会自动恢复到缺省情况。(loopback-detection action的详细介绍请参见“二层技术-以太网交换命令参考”中的“以太网端口”)

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

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

 

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

1. 组网需求

l              Host A和Host C属于部门A,但是通过不同的设备接入公司网络;Host B和Host D属于部门B,也通过不同的设备接入公司网络。

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

l              现要求不管是否使用相同的设备接入公司网络,同一VLAN内的主机能够互通。即Host A和Host C能够互通,Host B和Host D能够互通。

2. 组网图

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

 

3. 配置步骤

(1)        配置Device A

# 创建VLAN 100,并将GigabitEthernet1/0/1加入VLAN 100。

<DeviceA> system-view

[DeviceA] vlan 100

[DeviceA-vlan100] port gigabitethernet 1/0/1

[DeviceA-vlan100] quit

# 创建VLAN 200,并将GigabitEthernet1/0/2加入VLAN 200。

[DeviceA] vlan 200

[DeviceA-vlan200] port gigabitethernet 1/0/2

[DeviceA-vlan200] quit

# 为了使Device A上VLAN 100和VLAN 200的报文能发送给Device B,将GigabitEthernet1/0/3的链路类型配置为Trunk,并允许VLAN 100和VLAN 200的报文通过。

[DeviceA] interface gigabitethernet 1/0/3

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

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

Please wait... Done.

(2)        Device B上的配置与Device A上的配置完全一样,不再赘述。

(3)        将Host A和Host C配置在一个网段,比如192.168.100.0/24;将Host B和Host D配置在一个网段,比如192.168.200.0/24。

4. 显示与验证

(1)        Host A和Host C能够互相ping通,但是均不能ping通Host B。Host B和Host D能够互相ping通,但是均不能ping通Host A。

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

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

[DeviceA-GigabitEthernet1/0/3] display vlan 100

 VLAN ID: 100

 VLAN Type: static

 Route Interface: not configured

 Description: VLAN 0100

 Name: VLAN 0100

 Tagged   Ports:

    GigabitEthernet1/0/3

 Untagged Ports:

    GigabitEthernet1/0/1

[DeviceA-GigabitEthernet1/0/3] display vlan 200

 VLAN ID: 200

 VLAN Type: static

 Route Interface: not configured

 Description: VLAN 0200

 Name: VLAN 0200

 Tagged   Ports:

    GigabitEthernet1/0/3

 Untagged Ports:

    GigabitEthernet1/0/2

1.5  配置基于MAC的VLAN

1.5.1  基于MAC的VLAN简介

基于MAC划分VLAN是VLAN的另一种划分方法,它根据报文的源MAC地址来决定报文从哪个VLAN中转发。根据端口加入MAC VLAN方式,MAC VLAN分为以下几种:

1. 手动配置静态MAC VLAN

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

l              当端口收到的报文为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、协议VLAN、端口VLAN的先后顺序进行匹配。

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

2. 动态触发端口加入静态MAC VLAN

手动配置静态MAC VLAN时,用户需要把端口一一加入相应的MAC VLAN,当用户不能确定交换机从哪些端口收到属于MAC VLAN的报文时,就不能把相应端口加入到MAC VLAN。在这种情况下,手动配置的静态MAC VLAN无法满足用户的需求,此时,可以使用动态触发端口加入静态MAC VLAN功能。在配置MAC VLAN表项以后,用户只需在端口上使能基于MAC的VLAN功能和MAC VLAN动态触发功能,当端口收到与MAC VLAN表项匹配的报文后,可以通过此报文动态触发端口加入MAC VLAN。其原理为:

l              当端口收到的报文为untagged报文时,流程如图1-5

图1-5 动态触发端口加入静态MAC VLAN处理流程

 

l              当收到的报文为tagged报文时,处理方式和基于端口的VLAN一样:如果端口允许携带该VLAN标记的报文通过,则正常转发;如果不允许,则丢弃该报文。

如果用户在同一端口上同时使能了手动配置静态MAC VLAN和动态触发端口加入静态MAC VLAN,此时端口对收到的非精确匹配的报文将做丢弃处理。

 

3. 动态MAC VLAN

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

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

1.5.2  配置基于MAC的VLAN

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

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

 

1. 手动配置静态MAC VLAN

表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

二者必选其一

进入以太网端口视图后,下面进行的配置只在当前端口下生效;进入端口组视图后,下面进行的配置将在端口组中的所有端口下生效

进入端口组视图

port-group manual port-group-name

配置端口的链路类型为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功能

 

2. 动态触发端口加入静态MAC VLAN

l    使能MAC VLAN动态触发功能后,报文会上送CPU处理。由于该处理的优先级最高,会导致MAC地址最大学习数和MAC地址禁止学习功能不生效,因此不建议MAC VLAN动态触发功能和上述两个功能同时使用。

l    基于MAC的VLAN动态触发功能不和802.1X和MAC认证功能同时使用。

l    基于MAC的VLAN动态触发功能要求源MAC所匹配的VLAN必须是静态VLAN才能完成触发功能。

l    配置MSTP多实例情况下,如果要端口加入的VLAN的MSTP实例状态为BLOCK,会丢弃报文,造成MAC地址不能上送,不能完成动态触发功能。基于MAC的动态VLAN的使用场景为接入侧,不建议和多实例MSTP同时使用。

l    当MAC地址老化后,端口将自动离开动态触发VLAN。有关MAC地址老化相关介绍和配置内容,请参见“二层技术-以太网交换配置指导”中的“MAC地址表配置”。

 

表1-9 动态触发端口加入静态MAC VLAN

操作

命令

说明

进入系统视图

system-view

-

配置MAC地址与VLAN的关联

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

必选

进入以太网端口视图或端口组视图

进入以太网端口视图

interface interface-type interface-number

二者必选其一

进入以太网端口视图后,下面进行的配置只在当前端口下生效;进入端口组视图后,下面进行的配置将在端口组中的所有端口下生效

进入端口组视图

port-group manual port-group-name

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

port link-type hybrid

必选

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

mac-vlan enable

必选

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

使能MAC VLAN动态触发功能

mac-vlan trigger enable

可选

缺省情况下,未使能MAC VLAN的动态触发功能

配置PVID禁止功能

port pvid disable

可选

缺省情况下,对于没有匹配到MAC VLAN表项的未知源MAC会在PVID内进行转发通过

 

3. 动态MAC VLAN

用户在交换机上配置MAC VLAN功能以后,还需要配置认证的相关属性及在接入认证服务器上配置相关认证。关于接入认证相关配置请参见“安全配置指导”中的“802.1x配置”。

 

表1-10 动态MAC VLAN

操作

命令

说明

进入系统视图

system-view

-

进入以太网端口视图或端口组视图

进入以太网端口视图

interface interface-type interface-number

二者必选其一

进入以太网端口视图后,下面进行的配置只在当前端口下生效;进入端口组视图后,下面进行的配置将在端口组中的所有端口下生效

进入端口组视图

port-group manual port-group-name

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

port link-type hybrid

必选

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

mac-vlan enable

必选

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

 

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

1. 组网需求

l              Device A和Device C的GigabitEthernet1/0/1端口分别连接到两个会议室,Laptop1和Laptop2是会议用笔记本电脑,会在两个会议室间移动使用。

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

l              Laptop1和Laptop2的MAC地址分别为000d-88f8-4e71和0014-222c-aa69。

2. 组网图

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

 

3. 配置思路

l              创建VLAN 100、VLAN 200。

l              配置Device A和Device C的上行端口为Trunk端口,并允许VLAN 100和VLAN 200的报文通过。

l              Laptop1和Laptop2的MAC地址分别与VLAN 100、VLAN 200关联。

4. 配置步骤

(1)        Device A的配置

# 创建VLAN 100和VLAN 200。

<DeviceA> system-view

[DeviceA] vlan 100

[DeviceA-vlan100] quit

[DeviceA] vlan 200

[DeviceA-vlan200] quit

# 将Laptop1的MAC地址与VLAN 100关联,Laptop2的MAC地址与VLAN 200关联。

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

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

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

[DeviceA] interface gigabitethernet 1/0/1

[DeviceA-GigabitEthernet1/0/1] port link-type hybrid

[DeviceA-GigabitEthernet1/0/1] port hybrid vlan 100 200 untagged

 Please wait... Done.

[DeviceA-GigabitEthernet1/0/1] mac-vlan enable

[DeviceA-GigabitEthernet1/0/1] quit

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

[DeviceA] interface gigabitethernet 1/0/2

[DeviceA-GigabitEthernet1/0/2] port link-type trunk

[DeviceA-GigabitEthernet1/0/2] port trunk permit vlan 100 200

[DeviceA-GigabitEthernet1/0/2] quit

(2)        Device B的配置

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

<DeviceB> system-view

[DeviceB] vlan 100

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

[DeviceB-vlan100] quit

[DeviceB] vlan 200

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

[DeviceB-vlan200] quit

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

[DeviceB] interface gigabitethernet 1/0/3

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

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

[DeviceB-GigabitEthernet1/0/3] quit

[DeviceB] interface gigabitethernet 1/0/4

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

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

[DeviceB-GigabitEthernet1/0/4] quit

(3)        Device C的配置

Device C的配置与Device A完全一致,这里不再赘述。

5. 显示与验证

(1)        Laptop1只能访问Server1,不能访问Server2;Laptop2只能访问Server2,不能访问Server1。

(2)        在Device A和Device C上可以查看到Laptop1和VLAN 100、Laptop2和VLAN 200的静态MAC VLAN地址表项已经生成。

[DeviceA] 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. 配置注意事项

l              基于MAC的VLAN只能在Hybrid端口上配置;

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

1.6  配置基于协议的VLAN

1.6.1  基于协议的VLAN简介

基于协议的VLAN只对Hybrid端口配置才有效。

 

基于协议的VLAN是根据端口接收到的报文所属的协议(族)类型以及封装格式来给报文分配不同的VLAN ID。可用来划分VLAN的协议有IP、IPX、AppleTalk(AT),封装格式有Ethernet II、802.3 raw、802.2 LLC、802.2 SNAP等。

“协议类型 + 封装格式”又称为协议模板,一个协议VLAN下可以绑定多个协议模板,不同的协议模板再用协议索引(protocol-index)来区分。因此,一个协议模板可以用“协议vlan-id + protocol-index”来唯一标识。然后通过命令行将“协议vlan-id + protocol-index”和端口绑定。这样,对于从端口接收到untagged报文(没有携带VLAN标记的报文)会做如下处理:

l              如果携带的协议类型和封装格式与“协议vlan-id + protocol-index”标识的匹配协议模板匹配,则给报文打上协议vlan-id

l              如果报文携带的协议类型和封装格式与“协议vlan-id + protocol-index”标识的协议模板不匹配,则给报文打上端口的缺省VLAN ID。

对于端口接收到的tagged报文(携带VLAN标记的报文),处理方式和基于端口的VLAN一样:如果端口允许携带该VLAN标记的报文通过,则正常转发;如果不允许,则丢弃该报文。

此特性主要应用于将网络中提供的服务类型与VLAN相绑定,方便管理和维护。

1.6.2  配置基于协议的VLAN

表1-11 配置基于协议的VLAN

操作

命令

说明

进入系统视图

system-view

-

进入VLAN视图

vlan vlan-id

必选

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

配置基于协议的VLAN,并指定协议模板

protocol-vlan [ protocol-index ] { at | ipv4 | ipv6 | ipx { ethernetii | llc | raw | snap } | mode { ethernetii etype etype-id | llc { dsap dsap-id [ ssap ssap-id ] | ssap ssap-id } | snap etype etype-id } }

必选

退出VLAN视图

quit

必选

进入端口视图/端口组视图

进入以太网端口视图

interface interface-type interface-number

三者必选其一

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

l      进入端口组视图后,下面进行的配置将在端口组中的所有端口下生效

l      在二层聚合端口视图下执行该命令,则该配置将对二层聚合端口以及相应的所有成员端口生效。在配置过程中,如果某个成员端口配置失败,系统会自动跳过该成员端口继续配置其它成员端口;如果二层聚合端口配置失败,则不会再配置成员端口

进入端口组视图

port-group manual port-group-name

进入二层聚合端口视图

interface bridge-aggregation interface-number

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

port link-type hybrid

必选

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

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

必选

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

配置Hybrid端口与基于协议的VLAN关联

port hybrid protocol-vlan vlan vlan-id { protocol-index [ to protocol-end ] | all }

必选

 

l          protocol-vlan命令中的dsap-idssap-id不能同时设置成0xe0,0xe0对应的是ipx llc协议模板;dsap-idssap-id也不能同时设成0xff,0xff对应的是ipx raw协议模板。

l          在使用mode参数配置协议VLAN时,如果将ethernetii型报文的etype参数值配置为0x0800、0x8137、0x809b、0x86dd,则分别与ipv4、ipx、appletalk和ipv6协议模板相同,因此不允许配置ethernetii报文的etype参数为这四个数值。

l          协议VLAN特性要求Hybrid入端口的报文格式为untagged的,而自动模式下的Voice VLAN只支持Hybrid端口对tagged的语音流进行处理(详情请参见“2 Voice VLAN配置”),因此,不能将某个VLAN同时设置为协议VLAN和Voice VLAN。

 

1.6.3  基于协议的VLAN典型配置举例

1. 组网需求

实验室网络中大部分主机运行IPv4网络协议,另外为了教学需要还布置了IPv6实验局,因此,同时有些主机运行着IPv6网络协议。为了避免互相干扰,现要求基于网络协议将IPv4流量和IPv6流量二层互相隔离。

2. 组网图

图1-7 基于协议的VLAN组网图

 

3. 配置思路

创建VLAN 100及VLAN 200。让VLAN 100与IPv4协议绑定,VLAN 200与IPv6协议绑定,通过协议VLAN来实现IPv4流量和IPv6流量二层互相隔离。

4. 配置步骤

(1)        配置Device

# 创建VLAN100,将端口GigabitEthernet1/0/11加入VLAN 100。

<Device> system-view

[Device] vlan 100

[Device-vlan100] description protocol VLAN for IPv4

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

[Device-vlan100] quit

# 创建VLAN 200,将端口GigabitEthernet1/0/12加入VLAN 200。

[Device] vlan 200

[Device-vlan200] description protocol VLAN for IPv6

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

# 在VLAN 200和VLAN 100视图下,分别为IPv4和IPv6协议创建协议模板。

[Device-vlan200] protocol-vlan 1 ipv6

[Device-vlan200] quit

[Device] vlan 100

[Device-vlan100] protocol-vlan 1 ipv4

[Device-vlan100] quit

# 配置端口GigabitEthernet1/0/1Hybrid端口,并在转发VLAN 100VLAN 200的报文时去掉VLAN Tag

[Device] interface gigabitethernet 1/0/1

[Device-GigabitEthernet1/0/1] port link-type hybrid

[Device-GigabitEthernet1/0/1] port hybrid vlan 100 200 untagged

 Please wait... Done.

# 配置端口GigabitEthernet1/0/1与VLAN 100的协议模板1(即IPv4协议模板)、VLAN 200的协议模板1(即IPv6协议模板)进行绑定。

[Device-GigabitEthernet1/0/1] port hybrid protocol-vlan vlan 100 1

[Device-GigabitEthernet1/0/1] port hybrid protocol-vlan vlan 200 1

[Device-GigabitEthernet1/0/1] quit

# 配置端口GigabitEthernet1/0/2为Hybrid端口,在转发VLAN100和VLAN200的报文时去掉VLAN Tag,与VLAN 100的协议模板1(即IPv4协议模板)、VLAN 200的协议模板1(即IPv6协议模板)进行绑定。

[Device] interface gigabitethernet 1/0/2

[Device-GigabitEthernet1/0/2] port link-type hybrid

[Device-GigabitEthernet1/0/2] port hybrid vlan 100 200 untagged

 Please wait... Done.

[Device-GigabitEthernet1/0/2] port hybrid protocol-vlan vlan 100 1

[Device-GigabitEthernet1/0/2] port hybrid protocol-vlan vlan 200 1

(2)        L2 Switch A和L2 Switch B采用缺省配置。

(3)        将IPv4 Host A、IPv4 Host B和IPv4 Server配置在一个网段,比如192.168.100.0/24;将IPv6 Host A、IPv6 Host B和IPv6 Server配置在一个网段,比如192.168.200.0/24。

5. 显示与验证

(1)        VLAN 100内的主机和服务器能够互相ping通;VLAN 200内的主机和服务器能够互相ping通。但VLAN 100内的主机/服务器和VLAN 200内的主机/服务器会ping失败。

(2)        通过查看Device上的显示信息,验证配置是否生效。

# 查看Device上协议VLAN的配置。

[Device-GigabitEthernet1/0/2] display protocol-vlan vlan all

 VLAN ID:100

    Protocol Index      Protocol Type

 ======================================================

          1              ipv4

 VLAN ID:200

    Protocol Index      Protocol Type

 ======================================================

          1              ipv6

# 查看Device端口上已配置的协议VLAN的相关信息。

[Device-GigabitEthernet1/0/2] display protocol-vlan interface all

 Interface: GigabitEthernet 1/0/1

   VLAN ID   Protocol Index      Protocol Type

 ======================================================

     100          1               ipv4

     200          1               ipv6

 Interface: GigabitEthernet 1/0/2

   VLAN ID   Protocol Index      Protocol Type

 ======================================================

     100          1               ipv4

     200          1               ipv6

6. 配置注意事项

基于协议的VLAN只对Hybrid端口配置才有效。

1.7  VLAN显示和维护

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

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

表1-12 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 ]

显示指定VLAN上配置的协议信息及协议的索引

display protocol-vlan vlan { vlan-id [ to vlan-id ] | all } [ | { begin | exclude | include } regular-expression ]

显示指定端口上已配置的协议VLAN的相关信息

display protocol-vlan interface { interface-type interface-number [ to interface-type interface-number ] | all } [ | { begin | exclude | include } regular-expression ]

清除端口的统计信息

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

 

 


2 Voice VLAN配置

2.1  Voice VLAN简介

随着语音技术的日益发展,语音设备应用越来越广泛,尤其在宽带小区,网络中经常同时存在语音数据和业务数据两种流量。通常,语音数据在传输时需要具有比业务数据更高的优先级,以减少传输过程中可能产生的时延和丢包现象。

Voice VLAN是为用户的语音数据流而专门划分的VLAN。通过划分Voice VLAN并将连接语音设备的端口加入Voice VLAN,系统自动为语音报文修改QoS(Quality of Service,服务质量)参数,来提高语音数据报文优先级、保证通话质量。

常见的语音设备有IP电话、IAD(Integrated Access Device,综合接入设备)等。本文中以IP电话为例进行说明。

 

2.1.1  OUI地址

设备可以根据进入端口的数据报文中的源MAC地址字段来判断该数据流是否为语音数据流。源MAC地址符合系统设置的语音设备OUI(Organizationally Unique Identifier)地址的报文被认为是语音数据流。

用户可以预先设置OUI地址,也可以使用缺省的OUI地址作为判断标准。设备缺省的OUI地址如表2-1所示。

表2-1 设备的缺省OUI地址

序号

OUI地址

生产厂商

1

0001-e300-0000

Siemens phone

2

0003-6b00-0000

Cisco phone

3

0004-0d00-0000

Avaya phone

4

00d0-1e00-0000

Pingtel phone

5

0060-b900-0000

Philips/NEC phone

6

00e0-7500-0000

Polycom phone

7

00e0-bb00-0000

3com phone

 

l          通常意义下,OUI地址指的是MAC地址的前24位(二进制),是IEEE为不同设备供应商分配的一个全球唯一的标识符。本文中的OUI地址有别于通常意义的OUI地址,它是设备判断收到的报文是否为语音报文的依据,是voice vlan mac-address命令中的mac-addressoui-mask参数相与的结果。

l          设备缺省的OUI地址可以手工删除,删除之后也可再次手工添加。

 

2.1.2  Voice VLAN的自动模式和手动模式

Voice VLAN的工作模式包括自动模式和手动模式,这个自动和手动指的是端口加入Voice VLAN的方式。

l              自动模式:系统利用IP电话上电时发出的协议报文(untagged报文),通过识别报文的源MAC,匹配OUI地址。匹配成功后,系统将自动把语音报文的入端口加入Voice VLAN,并下发ACL规则、配置报文的优先级。用户可以在设备上设置Voice VLAN的老化时间,当在老化时间内,系统没有从入端口收到任何语音报文时,系统将把该端口从Voice VLAN中删除。端口的添加/删除到Voice VLAN的过程由系统自动实现。自动模式适用于PC-IP电话串联接入(端口同时传输语音数据和普通业务数据)的组网方式,如图2-1所示。(当Voice VLAN正常工作时,如果遇到设备重新启动的情况,为保证已经建立的语音连接能够正常工作,系统会在重新启动完成后,将配置为自动模式的端口重新加入Voice VLAN,而不需要再次通过语音流触发。)

图2-1 主机与IP电话串联接入组网图

 

l              手动模式下,需要通过手工把IP电话接入端口加入Voice VLAN中。再通过识别报文的源MAC,匹配OUI地址。匹配成功后,系统将下发ACL规则、配置报文的优先级。端口的添加/删除到Voice VLAN的过程由管理员手动实现。手动模式适用于IP电话单独接入(端口仅传输语音报文)的组网方式,如图2-2所示。该组网方式可以使该端口专用于传输语音数据,最大限度避免业务数据对语音数据传输的影响。

图2-2 IP电话单独接入组网图

 

对于IP电话发出的携带Tag标签的报文,两种模式处理方式一致,只根据标签进行转发。

由于IP电话类型较多,因此需要用户保证端口的链路类型与IP电话能够匹配,详细配合关系请见下表:

l              IP电话发送Tagged语音数据

表2-2 不同类型端口支持Tagged语音数据配置要求

端口类型

Voice VLAN工作模式

是否支持Tagged语音数据

配置要求

Access

自动模式

不支持

-

手工模式

Trunk

自动模式

支持

需要配置端口的缺省VLAN以及配置该端口允许缺省VLAN的报文通过,且该缺省VLAN不能是Voice VLAN

手工模式

与自动模式相似,还需要配置端口允许Voice VLAN的报文通过

Hybrid

自动模式

支持

需要配置端口的缺省VLAN以及配置该端口允许该缺省VLAN的报文不带Tag通过,且该缺省VLAN不能是Voice VLAN

手工模式

与自动模式相似,还需要配置端口允许Voice VLAN的报文携带Tag通过

 

l              IP电话发送Untagged语音数据

IP电话发送Untagged语音数据,则端口的Voice VLAN工作模式只能为手工模式,不能为自动模式。

表2-3 不同类型端口支持Untagged语音数据配置要求

端口类型

Voice VLAN工作模式

是否支持Untagged语音数据

配置要求

Access

自动模式

不支持

-

手工模式

支持

将缺省VLAN配置为Voice VLAN

Trunk

自动模式

不支持

-

手工模式

支持

接入端口的缺省VLAN必须是Voice VLAN,且接入端口允许该VLAN通过

Hybrid

自动模式

不支持

-

手工模式

支持

接入端口的缺省VLAN必须是Voice VLAN,且在接入端口允许通过的untagged VLAN列表中

 

l          如果用户的IP Phone发出的是tagged语音流,且接入的端口上使能了802.1X认证和Guest VLAN,为保证各种功能的正常使用,请为Voice VLAN、端口的缺省VLAN和802.1X的Guest VLAN分配不同的VLAN ID。

l          如果用户的IP Phone发出的是untagged语音流,为实现Voice VLAN功能,只能将接入端口的缺省VLAN配置为Voice VLAN,此时将不能实现802.1X认证功能。

 

l          所有端口的缺省VLAN都是VLAN1,用户可以通过命令设置端口的缺省VLAN,也可以通过命令设置允许某个VLAN通过该端口。相关操作请参见“1.4  配置基于端口的VLAN”。

l          可以通过display interface命令来查看端口允许通过的VLAN及缺省VLAN等信息。

 

2.1.3  Voice VLAN的安全模式和普通模式

根据使能了Voice VLAN功能的端口对接收到的数据包的过滤机制又可以将Voice VLAN的工作模式分为普通模式和安全模式:

l              普通模式下,端口加入Voice VLAN后,设备对于接收的语音报文不再一一进行识别,凡是带有Voice VLAN Tag的报文,设备将不再检查其源MAC地址是否为语音设备的OUI地址,均接收并在Voice VLAN中转发。对于缺省VLAN就是Voice VLAN的手工模式端口,会导致任意的untagged报文都可以在Voice VLAN中传输。这样的处理方式很容易使Voice VLAN收到恶意用户的流量攻击。恶意用户可以构造大量带有Voice VLAN Tag的报文,占用Voice VLAN的带宽,影响正常的语音通信。

l              安全模式下,设备将对每一个要进入Voice VLAN传输的报文进行源MAC匹配检查,对于不能匹配OUI地址的报文,则将其丢弃。

对于比较安全的网络,用户可以配置Voice VLAN的普通模式,以减少检查报文的工作对系统资源的占用。

建议用户尽量不要在Voice VLAN中同时传输语音和业务数据。如确有此需要,请确认Voice VLAN的安全模式已关闭。

 

表2-4 Voice VLAN的安全/普通模式对报文的处理

Voice VLAN工作模式

报文类型

处理方式

安全模式

Untagged报文

当该报文源MAC地址是可识别的OUI地址时,允许该报文在Voice VLAN内传输,否则将该报文丢弃

带有Voice VLAN Tag的报文

带有其他VLAN Tag的报文

根据指定端口是否允许该VLAN通过来对报文进行转发和丢弃的处理,不受Voice VLAN安全/普通模式的影响

普通模式

Untagged报文

不对报文的源MAC地址进行检查,所有报文均可以在Voice VLAN内进行传输

带有Voice VLAN Tag的报文

带有其他VLAN Tag的报文

根据指定端口是否允许该VLAN通过来对报文进行转发和丢弃的处理,不受Voice VLAN安全/普通模式的影响

 

2.2  配置Voice VLAN

2.2.1  配置准备

(1)        创建VLAN

配置Voice VLAN之前,须先创建对应的VLAN。

(2)        确定语音报文的QoS优先级

配置语音报文的QoS优先级,需要关闭端口上的Voice VLAN功能。当Voice VLAN使能时,不允许修改语音报文的QoS优先级。语音报文的QoS优先级的配置请参见2.2.2  配置语音报文的QoS优先级

(3)        确定将要配置的Voice VLAN的工作模式

l              配置自动模式的Voice VLAN,请参见2.2.3  配置自动模式下的Voice VLAN

l              配置手动模式的Voice VLAN,请参见2.2.4  配置手动模式下的Voice VLAN

l          一个端口只能加入一个Voice VLAN。

l          如果端口已经使能LACP(Link Aggregation Control Protocol,链路汇聚控制协议),则不能使能Voice VLAN功能。

 

2.2.2  配置语音报文的QoS优先级

Voice VLAN在实现中,通过提高语音报文的QoS优先级(CoS和DSCP值)来保证语音通信的质量。语音报文会自带QoS优先级,通过配置,用户可以选择在语音报文通过设备时修改或者不修改报文的QoS优先级。

表2-5 配置语音报文的QoS优先级

操作

命令

说明

进入系统视图

system-view

-

进入端口视图

interface interface-type interface-number

-

配置端口信任语音报文的优先级,即端口不会修改Voice VLAN内语音报文自带的CoS和DSCP值

voice vlan qos trust

二者任选其一

缺省情况下,端口会将Voice VLAN内语音报文的CoS值修改为6,DSCP值修改为46

在同一端口多次执行这两条命令,则最新配置将覆盖旧配置,最新的配置生效

将Voice VLAN内语音报文的CoS和DSCP修改为指定值

voice vlan qos cos-value dscp-value

 

在Voice VLAN使能的情况下,不允许配置/修改语音报文的QoS优先级。必须禁用Voice VLAN后,才能配置/修改。

 

2.2.3  配置自动模式下的Voice VLAN

表2-6 配置自动模式下的Voice VLAN

操作

命令

说明

进入系统视图

system-view

-

设置Voice VLAN的老化时间

voice vlan aging minutes

可选

缺省情况下,老化时间为1440分钟,老化时间只对自动模式下的端口有效

使能Voice VLAN的安全模式

voice vlan security enable

可选

缺省情况下,Voice VLAN工作在安全模式

设置Voice VLAN识别的OUI地址

voice vlan mac-address oui mask oui-mask [ description text ]

可选

Voice VLAN启动后将有缺省的OUI地址,请参见“表2-1设备的缺省OUI地址

进入以太网端口视图

interface interface-type interface-number

-

设置端口Voice VLAN的工作模式为自动模式

voice vlan mode auto

可选

缺省情况下,Voice VLAN工作在自动模式

各个端口Voice VLAN的工作模式相互独立,不同的端口可以设置成不同的模式

使能端口的Voice VLAN功能

voice vlan vlan-id enable

必选

缺省情况下,端口没有使能Voice VLAN功能

 

自动模式下的Voice VLAN只支持Hybrid端口对tagged的语音流进行处理,而协议VLAN特性要求Hybrid入端口的报文格式为untagged的(详情请参见“1.6.2  配置基于协议的VLAN”),因此,不能将某个VLAN同时设置为Voice VLAN和协议VLAN。

 

2.2.4  配置手动模式下的Voice VLAN

表2-7 配置手动模式下的Voice VLAN

操作

命令

说明

进入系统视图

system-view

-

使能Voice VLAN的安全模式

voice vlan security enable

可选

缺省情况下,Voice VLAN工作在安全模式

设置Voice VLAN识别的OUI地址

voice vlan mac-address oui mask oui-mask [ description text ]

可选

Voice VLAN启动后将有缺省的OUI地址,请参见“表2-1设备的缺省OUI地址

进入以太网端口视图

interface interface-type interface-number

-

配置端口的Voice VLAN工作模式为手动模式

undo voice vlan mode auto

必选

缺省情况下,端口的Voice VLAN工作在自动模式

将手动模式端口加入Voice VLAN

Access端口

请参见“1.4.2  配置基于Access端口的VLAN

三者必选其一

Access端口加入Voice VLAN后,Voice VLAN会自动成为Access端口的缺省VLAN

Trunk端口

请参见“1.4.3  配置基于Trunk端口的VLAN

Hybrid端口

请参见“1.4.4  配置基于Hybrid端口的VLAN

设置Voice VLAN为端口的缺省VLAN

Trunk端口

请参见“1.4.3  配置基于Trunk端口的VLAN

可选

当输入的语音流是untagged语音流时,需要进行该项配置;当输入的语音流是tagged语音流时,不能将Voice VLAN设置为端口的缺省VLAN

Hybrid端口

请参见“1.4.4  配置基于Hybrid端口的VLAN

使能端口的Voice VLAN功能

voice vlan vlan-id enable

必选

 

l          同一设备同一时刻可以给不同的端口配置不同的Voice VLAN,但一个端口只能配置一个Voice VLAN,而且这些VLAN必须是已经存在的静态VLAN。

l          如果端口已经使能LACP(Link Aggregation Control Protocol,链路汇聚控制协议),则不能使能Voice VLAN功能。

l          当端口使能了Voice VLAN并工作在手工模式时,必须手工将端口加入Voice VLAN,才能保证Voice VLAN功能生效。

 

2.3  Voice VLAN显示和维护

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

表2-8 Voice VLAN显示和维护

操作

命令

显示Voice VLAN的状态

display voice vlan state [ | { begin | exclude | include } regular-expression ]

显示系统当前支持的OUI地址

display voice vlan oui [ | { begin | exclude | include } regular-expression ]

 

2.4  Voice VLAN典型配置举例

2.4.1  自动模式下Voice VLAN的配置举例

1. 组网需求

l              IP phone A的MAC地址为0011-1100-0001,下行连接PC A(MAC地址为0022-1100-0002),上行连接到Device A的GigabitEthernet1/0/1端口。

l              IP phone B的MAC地址为0011-2200-0001,下行连接PC B(MAC地址为0022-2200-0002),上行连接到Device A的GigabitEthernet1/0/2端口。

l              Device A使用Voice VLAN 2传输IP phone A和phone B产生的语音报文。

l              GigabitEthernet1/0/1和GigabitEthernet1/0/2工作在自动模式,如果它们在30分钟内没有收到语音流,就将相应的Voice VLAN老化。

2. 组网图

图2-3 配置自动模式下Voice VLAN组网图

 

3. 配置步骤

# 创建VLAN2。

<DeviceA> system-view

[DeviceA] vlan 2

 Please wait... Done.

# 设置Voice VLAN的老化时间为30分钟。

[DeviceA] voice vlan aging 30

# 由于GigabitEthernet1/0/1端口可能会同时收到语音和数据两种流量,为了保证语音报文的质量以及带宽的高效利用,设置Voice VLAN工作在安全模式,即Voice VLAN只用于传输语音报文。(此步骤可省略,缺省情况下,Voice VLAN工作在安全模式)

[DeviceA] voice vlan security enable

# 设置允许通过的OUI地址为MAC地址前缀为0011-1100-0000和0011-2200-0000,即当报文的前缀为0011-1100-0000或0011-2200-0000时,Device A会把它当成语音报文来处理。

[DeviceA] voice vlan mac-address 0011-1100-0001 mask ffff-ff00-0000 description IP phone A

[DeviceA] voice vlan mac-address 0011-2200-0001 mask ffff-ff00-0000 description IP phone B

# 将端口GigabitEthernet1/0/1设定为Hybrid端口。

[DeviceA] interface gigabitethernet 1/0/1

[DeviceA-GigabitEthernet1/0/1] port link-type hybrid

# 将端口GigabitEthernet1/0/1上Voice VLAN的工作模式设置为自动模式。(可选,缺省情况下,端口的Voice VLAN工作在自动模式。)

[DeviceA-GigabitEthernet1/0/1] voice vlan mode auto

# 使能端口Voice VLAN功能。

[DeviceA-GigabitEthernet1/0/1] voice vlan 2 enable

[DeviceA-GigabitEthernet1/0/1] quit

4. 显示和验证

# 显示当前系统支持的OUI地址、OUI地址掩码和描述信息。

<DeviceA> display voice vlan oui

Oui Address     Mask            Description

0001-e300-0000  ffff-ff00-0000  Siemens phone

0003-6b00-0000  ffff-ff00-0000  Cisco phone

0004-0d00-0000  ffff-ff00-0000  Avaya phone

0011-1100-0000  ffff-ff00-0000  IP phone A

0011-2200-0000  ffff-ff00-0000  IP phone B

0060-b900-0000  ffff-ff00-0000  Philips/NEC phone

00d0-1e00-0000  ffff-ff00-0000  Pingtel phone

00e0-7500-0000  ffff-ff00-0000  Polycom phone

00e0-bb00-0000  ffff-ff00-0000  3com phone

# 显示当前Voice VLAN的状态。

<DeviceA> display voice vlan state

 Maximum of Voice VLANs: 1

 Current Voice VLANs: 1

 Voice VLAN security mode: Security

 Voice VLAN aging time: 30 minutes

 Voice VLAN enabled port and its mode:

PORT                        VLAN        MODE        COS        DSCP

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

GigabitEthernet1/0/1        2           AUTO        6          46

GigabitEthernet1/0/2        2           AUTO        6          46

2.4.2  手动模式下Voice VLAN的配置举例

1. 组网需求

l              创建VLAN2为Voice VLAN,只允许语音报文通过。

l              IP Phone类型为untagged,接入端口是Hybrid类型端口GigabitEthernet1/0/1。

l              端口GigabitEthernet1/0/1工作在手动模式,且允许OUI地址是0011-2200-0000、掩码是ffff-ff00-0000的语音报文通过,描述字符为test。

2. 组网图

图2-4 配置手动模式下Voice VLAN组网图

 

3. 配置步骤

# 设置Voice VLAN为安全模式,使得Voice VLAN端口只允许合法的语音报文通过。(可选,系统缺省为安全模式)

<DeviceA> system-view

[DeviceA] voice vlan security enable

# 设置OUI地址0011-2200-0000是Voice VLAN的合法地址。

[DeviceA] voice vlan mac-address 0011-2200-0000 mask ffff-ff00-0000 description test

# 创建VLAN2。

[DeviceA] vlan 2

[DeviceA-vlan2] quit

# 设置端口GigabitEthernet1/0/1工作在手动模式。

[DeviceA] interface gigabitethernet 1/0/1

[DeviceA-GigabitEthernet1/0/1] undo voice vlan mode auto

# 设置端口GigabitEthernet1/0/1为Hybrid类型。

[DeviceA-GigabitEthernet1/0/1] port link-type hybrid

# 设置Voice VLAN是端口GigabitEthernet1/0/1的缺省VLAN,且在该端口允许通过的untagged VLAN列表中。

[DeviceA-GigabitEthernet1/0/1] port hybrid pvid vlan 2

[DeviceA-GigabitEthernet1/0/1] port hybrid vlan 2 untagged

# 使能端口GigabitEthernet1/0/1的Voice VLAN功能。

[DeviceA-GigabitEthernet1/0/1] voice vlan 2 enable

4. 显示与验证

# 显示当前系统支持的OUI地址、OUI地址掩码和描述信息。

<DeviceA> display voice vlan oui

Oui Address     Mask            Description

0001-e300-0000  ffff-ff00-0000  Siemens phone

0003-6b00-0000  ffff-ff00-0000  Cisco phone

0004-0d00-0000  ffff-ff00-0000  Avaya phone

0011-2200-0000  ffff-ff00-0000  test

00d0-1e00-0000  ffff-ff00-0000  Pingtel phone

0060-b900-0000  ffff-ff00-0000  Philips/NEC phone

00e0-7500-0000  ffff-ff00-0000  Polycom phone

00e0-bb00-0000  ffff-ff00-0000  3com phone

# 显示当前Voice VLAN的状态。

<DeviceA> display voice vlan state

Maximum of Voice VLANs: 1

 Current Voice VLANs: 1

 Voice VLAN security mode: Security

 Voice VLAN aging time: 1440 minutes

 Voice VLAN enabled port and its mode:

 PORT                        VLAN        MODE        COS        DSCP

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

 GigabitEthernet1/0/1        2           MANUAL      6          46

 

 

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

新华三官网
联系我们