12-VLAN映射配置
本章节下载: 12-VLAN映射配置 (426.77 KB)
目 录
VLAN映射(VLAN Mapping)功能可以修改报文携带的VLAN Tag,提供下面3种映射关系:
· 1:1 VLAN映射:将来自某一特定VLAN的报文所携带的VLAN Tag替换为新的VLAN Tag。
· N:1 VLAN映射:将来自两个或多个VLAN的报文所携带的不同VLAN Tag替换为相同的VLAN Tag。
· 2:2 VLAN映射:将携带有两层VLAN Tag的报文的内、外层VLAN Tag都替换为新的VLAN Tag。
下面将详细介绍这几种映射关系的应用以及工作原理。
如图1-1所示,是1:1和N:1 VLAN映射的应用环境,其中用不同的VLAN来承载各家庭用户不同类型的业务(包括PC、VoD和VoIP)。
图1-1 1:1和N:1 VLAN映射应用示意图
为了区分不同的用户,需要在楼道交换机处用不同的VLAN来承载不同用户的相同业务,即进行1:1 VLAN映射,这就要用到大量的VLAN。但汇聚层网络接入设备可提供的VLAN数量有限,因此需要在园区交换机上来进行VLAN的汇聚,用一个VLAN来承载原本由多个VLAN承载的不同用户的相同业务,即进行N:1 VLAN映射。
如图1-2所示,是2:2 VLAN映射的应用环境,VPN A中处于不同地理位置(Site 1和Site 2)的用户跨越了两个SP(Service Provider,服务提供商)——SP 1和SP 2的网络进行互通。
图1-2 2:2 VLAN映射应用示意图
在图1-2中,Site 1和Site 2中的用户所在的VLAN分别为VLAN 2和VLAN 3,SP 1和SP 2分配给VPN A的VLAN分别为VLAN 10和VLAN 20。当Site 1中的报文进入SP 1的网络后,SP1通过QinQ或灵活QinQ功能,在报文外层封装上了VLAN 10的VLAN Tag。这样,VPN用户就可以自由规划自己网络中的VLAN ID,而不用担心与SP的VLAN ID相冲突,同时也缓解了SP的网络中VLAN ID紧缺的问题。
当上述报文继续由SP 1的网络进入SP 2的网络后,由于SP 2分配给VPN A的VLAN与SP 1不同,因此需将该报文的外层VLAN Tag替换为VLAN 20的VLAN Tag,同时为了与Site 2中的用户互通,还需将其内层VLAN Tag替换为VLAN 3的VLAN Tag。这种同时修改内、外两层VLAN Tag的过程就是2:2 VLAN映射。
QinQ和灵活QinQ的具体介绍及配置过程请参见“二层技术-以太网交换配置指导”中的“QinQ”。
图1-3 VLAN映射基本概念示意图
如图1-3所示,为了更好的理解后面的配置过程,此处定义几个概念:
· 上行数据流:从用户网络发往汇聚层网络或SP网络的数据流,都称为上行数据流。
· 下行数据流:从汇聚层网络或SP网络发往用户网络的数据流,都称为下行数据流。
· 上行端口:发送上行数据流和接收下行数据流的端口称为上行端口。
· 下行端口:发送下行数据流和接收上行数据流的端口称为下行端口。
· 上行策略:负责上行数据流VLAN映射规则的QoS策略。
· 下行策略:负责下行数据流VLAN映射规则的QoS策略。
图1-4 1:1 VLAN映射实现方式示意图
如图1-4所示,1:1 VLAN映射的实现方式如下:
· 对于上行数据流,通过在下行端口上应用上行策略,将报文中CVLAN的VLAN Tag替换为SVLAN的VLAN Tag。
· 对于下行数据流,通过在下行端口上应用下行策略,将报文中SVLAN的VLAN Tag替换为CVLAN的VLAN Tag。
图1-5 N:1 VLAN映射实现方式示意图
如图1-5所示,N:1 VLAN映射的实现方式如下:
· 对于上行数据流,通过在下行端口上应用上行策略,将来自两个或多个CVLAN的报文所携带的不同VLAN Tag都替换为SVLAN的VLAN Tag。
· 对于下行数据流,通过查找SVLAN对应的DHCP Snooping表项中DHCP客户端的IP地址、MAC地址和CVLAN的绑定表项,将报文中SVLAN的VLAN Tag替换为CVLAN的VLAN Tag。
图1-6 2:2 VLAN映射实现方式示意图
如图1-6所示,2:2 VLAN映射的实现方式如下:
· 对于上行数据流,通过在下行端口上应用上行策略,将报文的外层VLAN Tag替换为新的VLAN Tag;通过在上行端口上应用上行策略,将报文的内层VLAN Tag替换为新的VLAN Tag。
· 对于下行数据流,通过在下行端口上应用下行策略,将报文的内、外层VLAN Tag都替换为各自的原始VLAN Tag。
· 在2:2 VLAN映射的实现中,根据实际的组网需要,也可以只替换外层VLAN Tag,或只替换内层VLAN Tag。
· 有关DHCP Snooping的详细介绍,请参见“三层技术-IP业务配置指导/DHCP”中的“DHCP Snooping”。
· 有关QoS策略的详细介绍,请参见“ACL和QoS配置指导/QoS”中的“QoS配置方式”。
用户需要根据网络规划,在不同的设备上进行不同的VLAN映射配置。
表1-1 VLAN映射配置任务简介
配置任务 |
说明 |
详细配置 |
配置1:1 VLAN映射 |
在图1-1所示的组网中,需要在楼道交换机上进行此配置 |
|
配置N:1 VLAN映射 |
在图1-1所示的组网中,需要在园区交换机上进行此配置 |
|
配置2:2 VLAN映射 |
在图1-2所示的组网中,需要在SP 2网络的边缘设备PE 3上进行此配置 |
在图1-1所示的组网中,需要在楼道交换机上进行1:1 VLAN映射的配置,以便将不同用户的不同业务用不同的VLAN进行隔离。
表1-2 1:1 VLAN映射配置任务简介
配置任务 |
说明 |
详细配置 |
配置上行策略 |
必选 |
|
配置下行策略 |
必选 |
|
配置下行端口 |
必选 |
|
配置上行端口 |
必选 |
在配置1:1 VLAN映射之前,需完成以下任务:
· 创建好CVLAN和SVLAN,并规划好CVLAN和SVLAN的映射关系。
通过配置上行策略,将不同用户的不同业务VLAN(CVLAN)映射到不同的VLAN(SVLAN)上。
表1-3 配置上行策略
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
定义类,并进入类视图 |
traffic classifier tcl-name [ operator { and | or } ] |
必选 |
定义匹配用户不同业务VLAN(CVLAN)的规则 |
if-match customer-vlan-id vlan-id |
必选 |
退回系统视图 |
quit |
- |
定义流行为,并进入流行为视图 |
traffic behavior behavior-name |
必选 |
配置重标记报文的SVLAN |
remark service-vlan-id vlan-id |
必选 |
退回系统视图 |
quit |
- |
定义QoS策略,并进入QoS策略视图 |
qos policy policy-name |
必选 |
为类指定采用的流行为 |
classifier tcl-name behavior behavior-name |
必选 |
通过配置下行策略,将SVLAN映射回原来的CVLAN上。
表1-4 配置下行策略
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
定义类,并进入类视图 |
traffic classifier tcl-name [ operator { and | or } ] |
必选 |
定义匹配SVLAN的规则 |
if-match service-vlan-id vlan-id |
必选 |
退回系统视图 |
quit |
- |
定义流行为,并进入流行为视图 |
traffic behavior behavior-name |
必选 |
配置重标记报文的CVLAN |
remark customer-vlan-id vlan-id |
必选 |
退回系统视图 |
quit |
- |
定义QoS策略,并进入QoS策略视图 |
qos policy policy-name |
必选 |
为类指定采用的流行为 |
classifier tcl-name behavior behavior-name |
必选 |
表1-5 配置下行端口
操作 |
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
|
进入相应视图 |
进入二层以太网端口视图 |
interface interface-type interface-number |
- |
进入端口组视图 |
port-group manual port-group-name |
||
配置端口链路类型 |
配置端口的链路类型为Trunk类型 |
port link-type trunk |
二者必选其一 缺省情况下,所有端口的链路类型均为Access类型 |
配置端口的链路类型为Hybrid类型 |
port link-type hybrid |
||
允许CVLAN和SVLAN通过当前端口 |
允许CVLAN和SVLAN通过当前Trunk端口 |
port trunk permit vlan { vlan-list | all } |
二者必选其一 缺省情况下,Trunk端口只允许VLAN 1通过;Hybrid端口只允许VLAN 1的报文以Untagged方式通过 |
允许CVLAN和SVLAN以Tagged方式通过当前Hybrid端口 |
port hybrid vlan vlan-list tagged |
||
使能端口的基本QinQ功能 |
qinq enable |
必选 缺省情况下,端口的基本QinQ功能处于关闭状态 |
|
在端口的入方向上应用上行策略 |
qos apply policy policy-name inbound |
必选 |
|
在端口的出方向上应用下行策略 |
qos apply policy policy-name outbound |
必选 |
表1-6 配置上行端口
操作 |
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
|
进入相应视图 |
进入二层以太网端口视图 |
interface interface-type interface-number |
- |
进入端口组视图 |
port-group manual port-group-name |
||
进入二层聚合接口视图 |
interface bridge-aggregation interface-number |
||
配置端口链路类型 |
配置端口的链路类型为Trunk类型 |
port link-type trunk |
二者必选其一 缺省情况下,所有端口的链路类型均为Access类型 |
配置端口的链路类型为Hybrid类型 |
port link-type hybrid |
||
允许SVLAN通过当前端口 |
允许SVLAN通过当前Trunk端口 |
port trunk permit vlan { vlan-list | all } |
二者必选其一 缺省情况下,Trunk端口只允许VLAN 1通过;Hybrid端口只允许VLAN 1的报文以Untagged方式通过 |
允许SVLAN以Tagged方式通过当前Hybrid端口 |
port hybrid vlan vlan-list tagged |
在图1-1所示的组网中,需要在园区交换机上进行N:1 VLAN映射的配置,以便将不同用户的相同业务用同一个VLAN进行发送,从而节省VLAN资源。
表1-7 N:1 VLAN映射配置任务简介
配置任务 |
说明 |
详细配置 |
使能DHCP Snooping功能 |
必选 |
|
使能ARP Detection功能 |
必选 |
|
配置上行策略 |
必选 |
|
配置下行端口 |
必选 |
|
配置上行端口 |
必选 |
如果用户想改变VLAN映射关系,必须先用reset dhcp-snooping命令(请参见“三层技术-IP业务命令参考/DHCP”中的“DHCP Snooping”)清除DHCP Snooping表项,然后再修改QoS策略中的VLAN映射关系。
在配置N:1 VLAN映射之前,需完成以下任务:
· 要求家庭用户中不同的业务终端都通过DHCP方式获取IP地址。有关通过DHCP方式获取IP地址的方法,请参见“三层技术-IP业务配置指导/DHCP”中的“DHCP概述”。
· 创建好CVLAN和SVLAN,并规划好CVLAN和SVLAN的映射关系。
表1-8 使能DHCP Snooping功能
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
使能DHCP Snooping功能 |
dhcp-snooping |
必选 缺省情况下,DHCP Snooping功能处于关闭状态 |
正常的ARP报文处理流程无法修改ARP报文所属的VLAN,因此需要使用ARP Detection功能将ARP报文上送CPU进行处理,这样就可以对ARP报文进行VLAN映射。有关ARP Detection功能的详细介绍,请参见“安全配置指导”中的“ARP攻击防御”。
请在所有SVLAN上都使能ARP Detection功能。
表1-9 使能ARP Detection功能
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入VLAN视图 |
vlan vlan-id |
- |
使能ARP Detection功能 |
arp detection enable |
必选 缺省情况下,ARP Detection功能处于关闭状态 |
建议在所有CVLAN上也都使能ARP Detection功能,以起到防攻击的作用。
通过配置上行策略,将不同用户的相同业务VLAN(CVLAN)映射到同一个VLAN(SVLAN)上。
表1-10 配置上行策略
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
定义类,并进入类视图 |
traffic classifier tcl-name [ operator or ] |
必选 |
定义匹配不同用户相同业务VLAN(CVLAN)的规则 |
if-match customer-vlan-id { vlan-list | vlan-id1 to vlan-id2 } |
必选 |
退回系统视图 |
quit |
- |
定义流行为,并进入流行为视图 |
traffic behavior behavior-name |
必选 |
配置重标记报文的SVLAN |
remark service-vlan-id vlan-id |
必选 |
退回系统视图 |
quit |
- |
定义QoS策略,并进入QoS策略视图 |
qos policy policy-name |
必选 |
为类指定采用的流行为和绑定模式 |
classifier tcl-name behavior behavior-name mode dot1q-tag-manipulation |
必选 |
表1-11 配置下行端口
操作 |
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
|
进入相应视图 |
进入二层以太网端口视图 |
interface interface-type interface-number |
- |
进入端口组视图 |
port-group manual port-group-name |
||
配置端口的链路类型 |
配置端口的链路类型为Trunk类型 |
port link-type trunk |
二者必选其一 缺省情况下,所有端口的链路类型均为Access类型 |
配置端口的链路类型为Hybrid类型 |
port link-type hybrid |
||
允许CVLAN和SVLAN通过当前端口 |
允许CVLAN和SVLAN通过当前Trunk端口 |
port trunk permit vlan { vlan-list | all } |
二者必选其一 缺省情况下,Trunk端口只允许VLAN 1通过;Hybrid端口只允许VLAN 1的报文以Untagged方式通过 |
允许CVLAN和SVLAN以Tagged方式通过当前Hybrid端口 |
port hybrid vlan vlan-list tagged |
||
使能端口的用户侧QinQ功能 |
qinq enable downlink |
必选 缺省情况下,端口的用户侧QinQ功能处于关闭状态 |
|
在端口的入方向上应用上行策略 |
qos apply policy policy-name inbound |
必选 |
在下行端口上应用QoS策略之前,需要先使能端口的用户侧QinQ功能;在下行端口上关闭用户侧QinQ功能之前,需要先解除QoS策略与该端口的绑定。
表1-12 配置上行端口
操作 |
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
|
进入相应视图 |
进入二层以太网端口视图 |
interface interface-type interface-number |
- |
进入二层聚合接口视图 |
interface bridge-aggregation interface-number |
||
配置端口的链路类型 |
配置端口的链路类型为Trunk类型 |
port link-type trunk |
二者必选其一 缺省情况下,所有端口的链路类型均为Access类型 |
配置端口的链路类型为Hybrid类型 |
port link-type hybrid |
||
允许SVLAN通过当前端口 |
允许SVLAN通过当前Trunk端口 |
port trunk permit vlan { vlan-list | all } |
二者必选其一 缺省情况下,Trunk端口只允许VLAN 1通过;Hybrid端口只允许VLAN 1的报文以Untagged方式通过 |
允许SVLAN以Tagged方式通过当前Hybrid端口 |
port hybrid vlan vlan-list tagged |
||
配置端口为DHCP Snooping信任端口 |
dhcp-snooping trust |
必选 缺省情况下,端口为DHCP Snooping非信任端口 |
|
配置端口为ARP信任端口 |
arp detection trust |
必选 缺省情况下,端口为ARP非信任端口 |
|
使能端口的网络侧QinQ功能 |
qinq enable uplink |
必选 缺省情况下,端口的网络侧QinQ功能处于关闭状态 |
在图1-2所示的组网中,需要在SP 2网络的边缘设备PE 3上进行2:2 VLAN映射的配置,以便使得报文外层VLAN Tag为新SP网络分配给用户的VLAN,而内层的VLAN Tag可以和不同VLAN的同一VPN用户进行互通。
表1-13 2:2 VLAN映射配置任务简介
配置任务 |
说明 |
详细配置 |
配置下行端口的上行策略 |
必选 |
|
配置下行端口的下行策略 |
必选 |
|
配置上行端口的上行策略 |
必选 |
|
配置下行端口 |
必选 |
|
配置上行端口 |
必选 |
通过配置下行端口的上行策略,来修改SVLAN的值。
根据实际的组网需要,如果只需要修改CVLAN的值,不需要修改SVLAN的值,可以不配置此策略。
表1-14 配置下行端口的上行策略
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
定义类,并进入类视图 |
traffic classifier tcl-name [ operator and ] |
必选 |
定义匹配CVLAN的规则 |
if-match customer-vlan-id vlan-id |
必选 |
定义匹配SVLAN的规则 |
if-match service-vlan-id vlan-id |
必选 |
退回系统视图 |
quit |
- |
定义流行为,并进入流行为视图 |
traffic behavior behavior-name |
必选 |
配置重标记报文的SVLAN |
remark service-vlan-id vlan-id |
必选 |
退回系统视图 |
quit |
- |
定义QoS策略,并进入QoS策略视图 |
qos policy policy-name |
必选 |
为类指定采用的流行为 |
classifier tcl-name behavior behavior-name |
必选 |
通过配置下行端口的下行策略,来将SVLAN和CVLAN的值都修改为原来的值。
如果上行策略中只修改了CVLAN的值,没有修改SVLAN的值,则不需要配置重标记报文的SVLAN这一步。
如果上行策略中只修改了SVLAN的值,没有修改CVLAN的值,则不需要配置重标记报文的CVLAN这一步。
表1-15 配置下行端口的下行策略
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
定义类,并进入类视图 |
traffic classifier tcl-name [ operator and ] |
必选 |
定义匹配CVLAN的规则 |
if-match customer-vlan-id vlan-id |
必选 |
定义匹配SVLAN的规则 |
if-match service-vlan-id vlan-id |
必选 |
退回系统视图 |
quit |
- |
定义流行为,并进入流行为视图 |
traffic behavior behavior-name |
必选 |
配置重标记报文的CVLAN |
remark customer-vlan-id vlan-id |
必选 |
配置重标记报文的SVLAN |
remark service-vlan-id vlan-id |
必选 |
退回系统视图 |
quit |
- |
定义QoS策略,并进入QoS策略视图 |
qos policy policy-name |
必选 |
为类指定采用的流行为 |
classifier tcl-name behavior behavior-name |
必选 |
通过配置上行端口的上行策略,来修改CVLAN的值。
根据实际的组网需要,如果只需要修改SVLAN的值,不需要修改CVLAN的值,可以不配置此策略。
表1-16 配置上行端口的上行策略
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
定义类,并进入类视图 |
traffic classifier tcl-name [ operator and ] |
必选 |
定义匹配CVLAN的规则 |
if-match customer-vlan-id vlan-id |
必选 |
定义匹配SVLAN的规则 |
if-match service-vlan-id vlan-id |
必选 |
退回系统视图 |
quit |
- |
定义流行为,并进入流行为视图 |
traffic behavior behavior-name |
必选 |
配置重标记报文的CVLAN |
remark customer-vlan-id vlan-id |
必选 |
退回系统视图 |
quit |
- |
定义QoS策略,并进入QoS策略视图 |
qos policy policy-name |
必选 |
为类指定采用的流行为 |
classifier tcl-name behavior behavior-name |
必选 |
表1-17 配置下行端口
操作 |
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
|
进入相应视图 |
进入二层以太网端口视图 |
interface interface-type interface-number |
- |
进入端口组视图 |
port-group manual port-group-name |
||
配置端口的链路类型 |
配置端口的链路类型为Trunk类型 |
port link-type trunk |
二者必选其一 缺省情况下,所有端口的链路类型均为Access类型 |
配置端口的链路类型为Hybrid类型 |
port link-type hybrid |
||
允许SVLAN通过当前端口 |
允许SVLAN通过当前Trunk端口 |
port trunk permit vlan { vlan-list | all } |
二者必选其一 缺省情况下,Trunk端口只允许VLAN 1通过;Hybrid端口只允许VLAN 1的报文以Untagged方式通过 |
允许SVLAN以Tagged方式通过当前Hybrid端口 |
port hybrid vlan vlan-list tagged |
||
在端口的入方向上应用上行策略 |
qos apply policy policy-name inbound |
可选 如果没有配置修改SVLAN Tag的上行策略,则不需要这一步 |
|
在端口的出方向上应用下行策略 |
qos apply policy policy-name outbound |
必选 |
表1-18 配置上行端口
操作 |
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
|
进入相应视图 |
进入二层以太网端口视图 |
interface interface-type interface-number |
- |
进入端口组视图 |
port-group manual port-group-name |
||
配置端口的链路类型 |
配置端口的链路类型为Trunk类型 |
port link-type trunk |
二者必选其一 缺省情况下,所有端口的链路类型均为Access类型 |
配置端口的链路类型为Hybrid类型 |
port link-type hybrid |
||
允许SVLAN通过当前端口 |
允许SVLAN通过当前Trunk端口 |
port trunk permit vlan { vlan-list | all } |
二者必选其一 缺省情况下,Trunk端口只允许VLAN 1通过;Hybrid端口只允许VLAN 1的报文以Untagged方式通过 |
允许SVLAN以Tagged方式通过当前Hybrid端口 |
port hybrid vlan vlan-list tagged |
||
在端口的出方向上应用上行策略 |
qos apply policy policy-name outbound |
可选 如果没有配置修改CVLAN Tag的上行策略,则不需要这一步 |
· 在某小区,服务提供商为每个家庭都提供了电脑上网(PC)、视频点播(VoD)和语音电话(VoIP)这三种数据服务,每个家庭都通过各自的家庭网关接入楼道交换机,并通过DHCP方式自动获取IP地址。
· 服务提供商希望实现以下网络规划:在家庭网关上,分别将PC、VoD和VoIP业务依次划分到VLAN 1~3;在楼道交换机上,为了隔离不同家庭的同类业务,将每个家庭的每种业务都划分到不同的VLAN;而在园区交换机上,为了节省VLAN资源,将所有家庭的同类业务都划分到相同的VLAN,即分别将PC、VoD和VoIP业务依次划分到VLAN 501~503。
图1-7 1:1和N:1 VLAN映射配置组网图(方式二)
(1) 配置Switch A
# 创建CVLAN和SVLAN。
<SwitchA> system-view
[SwitchA] vlan 2 to 3
[SwitchA] vlan 101 to 102
[SwitchA] vlan 201 to 202
[SwitchA] vlan 301 to 302
# 配置上行策略p1和p2:将不同用户的不同业务CVLAN映射到不同的SVLAN上。
[SwitchA] traffic classifier c1
[SwitchA-classifier-c1] if-match customer-vlan-id 1
[SwitchA-classifier-c1] traffic classifier c2
[SwitchA-classifier-c2] if-match customer-vlan-id 2
[SwitchA-classifier-c2] traffic classifier c3
[SwitchA-classifier-c3] if-match customer-vlan-id 3
[SwitchA-classifier-c3] quit
[SwitchA] traffic behavior b1
[SwitchA-behavior-b1] remark service-vlan-id 101
[SwitchA-behavior-b1] traffic behavior b2
[SwitchA-behavior-b2] remark service-vlan-id 201
[SwitchA-behavior-b2] traffic behavior b3
[SwitchA-behavior-b3] remark service-vlan-id 301
[SwitchA-behavior-b3] traffic behavior b4
[SwitchA-behavior-b4] remark service-vlan-id 102
[SwitchA-behavior-b4] traffic behavior b5
[SwitchA-behavior-b5] remark service-vlan-id 202
[SwitchA-behavior-b5] traffic behavior b6
[SwitchA-behavior-b6] remark service-vlan-id 302
[SwitchA-behavior-b6] quit
[SwitchA] qos policy p1
[SwitchA-policy-p1] classifier c1 behavior b1
[SwitchA-policy-p1] classifier c2 behavior b2
[SwitchA-policy-p1] classifier c3 behavior b3
[SwitchA-policy-p1] quit
[SwitchA] qos policy p2
[SwitchA-policy-p2] classifier c1 behavior b4
[SwitchA-policy-p2] classifier c2 behavior b5
[SwitchA-policy-p2] classifier c3 behavior b6
[SwitchA-policy-p2] quit
# 配置下行策略p11和p22:将SVLAN映射回原来的CVLAN上。
[SwitchA] traffic classifier c11
[SwitchA-classifier-c11] if-match service-vlan-id 101
[SwitchA-classifier-c11] traffic classifier c22
[SwitchA-classifier-c22] if-match service-vlan-id 201
[SwitchA-classifier-c22] traffic classifier c33
[SwitchA-classifier-c33] if-match service-vlan-id 301
[SwitchA-classifier-c33] traffic classifier c44
[SwitchA-classifier-c44] if-match service-vlan-id 102
[SwitchA-classifier-c44] traffic classifier c55
[SwitchA-classifier-c55] if-match service-vlan-id 202
[SwitchA-classifier-c55] traffic classifier c66
[SwitchA-classifier-c66] if-match service-vlan-id 302
[SwitchA-classifier-c66] quit
[SwitchA] traffic behavior b11
[SwitchA-behavior-b11] remark customer-vlan-id 1
[SwitchA-behavior-b11] traffic behavior b22
[SwitchA-behavior-b22] remark customer-vlan-id 2
[SwitchA-behavior-b22] traffic behavior b33
[SwitchA-behavior-b33] remark customer-vlan-id 3
[SwitchA-behavior-b33] quit
[SwitchA] qos policy p11
[SwitchA-policy-p11] classifier c11 behavior b11
[SwitchA-policy-p11] classifier c22 behavior b22
[SwitchA-policy-p11] classifier c33 behavior b33
[SwitchA-policy-p11] quit
[SwitchA] qos policy p22
[SwitchA-policy-p22] classifier c44 behavior b11
[SwitchA-policy-p22] classifier c55 behavior b22
[SwitchA-policy-p22] classifier c66 behavior b33
[SwitchA-policy-p22] quit
# 配置下行端口GigabitEthernet1/0/1为Trunk端口且允许CVLAN和SVLAN通过,使能该端口的基本QinQ功能,在该端口的入方向上应用上行策略p1,并在该端口的出方向上应用下行策略p11。
[SwitchA] interface gigabitethernet 1/0/1
[SwitchA-GigabitEthernet1/0/1] port link-type trunk
[SwitchA-GigabitEthernet1/0/1] port trunk permit vlan 1 2 3 101 201 301
[SwitchA-GigabitEthernet1/0/1] qinq enable
[SwitchA-GigabitEthernet1/0/1] qos apply policy p1 inbound
[SwitchA-GigabitEthernet1/0/1] qos apply policy p11 outbound
[SwitchA-GigabitEthernet1/0/1] quit
# 配置下行端口GigabitEthernet1/0/2为Trunk端口且允许CVLAN和SVLAN通过,使能该端口的基本QinQ功能,在该端口的入方向上应用上行策略p2,并在该端口的出方向上应用下行策略p22。
[SwitchA] interface gigabitethernet 1/0/2
[SwitchA-GigabitEthernet1/0/2] port link-type trunk
[SwitchA-GigabitEthernet1/0/2] port trunk permit vlan 1 2 3 102 202 302
[SwitchA-GigabitEthernet1/0/2] qinq enable
[SwitchA-GigabitEthernet1/0/2] qos apply policy p2 inbound
[SwitchA-GigabitEthernet1/0/2] qos apply policy p22 outbound
[SwitchA-GigabitEthernet1/0/2] quit
# 配置上行端口GigabitEthernet1/0/3为Trunk端口且允许SVLAN通过。
[SwitchA] interface gigabitethernet 1/0/3
[SwitchA-GigabitEthernet1/0/3] port link-type trunk
[SwitchA-GigabitEthernet1/0/3] port trunk permit vlan 101 201 301 102 202 302
如果PC(发送不带VLAN Tag的报文)直接连接在楼道交换机上,则需把楼道交换机连接PC的端口配置成Access端口或者Trunk端口:
当配置成Access端口时,要把端口加入到SVLAN;
当配置成Trunk端口时,要把端口的缺省VLAN配置成SVLAN。
(2) 配置Switch B
Switch B的配置与Switch A相似,配置过程略。
(3) 配置Switch C
# 使能DHCP Snooping功能。
<SwitchC> system-view
[SwitchC] dhcp-snooping
# 创建CVLAN和SVLAN,并在这些VLAN上分别使能ARP Detection功能。
[SwitchC] vlan 101
[SwitchC-vlan101] arp detection enable
[SwitchC-vlan101] vlan 201
[SwitchC-vlan201] arp detection enable
[SwitchC-vlan201] vlan 301
[SwitchC-vlan301] arp detection enable
[SwitchC-vlan301] vlan 102
[SwitchC-vlan102] arp detection enable
[SwitchC-vlan102] vlan 202
[SwitchC-vlan202] arp detection enable
[SwitchC-vlan202] vlan 302
[SwitchC-vlan302] arp detection enable
[SwitchC-vlan302] vlan 103
[SwitchC-vlan103] arp detection enable
[SwitchC-vlan103] vlan 203
[SwitchC-vlan203] arp detection enable
[SwitchC-vlan203] vlan 303
[SwitchC-vlan303] arp detection enable
[SwitchC-vlan303] vlan 104
[SwitchC-vlan104] arp detection enable
[SwitchC-vlan104] vlan 204
[SwitchC-vlan204] arp detection enable
[SwitchC-vlan204] vlan 304
[SwitchC-vlan304] arp detection enable
[SwitchC-vlan304] vlan 501
[SwitchC-vlan501] arp detection enable
[SwitchC-vlan501] vlan 502
[SwitchC-vlan502] arp detection enable
[SwitchC-vlan502] vlan 503
[SwitchC-vlan503] arp detection enable
[SwitchC-vlan503] quit
# 配置上行策略p1和p2:将不同用户的相同业务VLAN(CVLAN)映射到同一个VLAN(SVLAN)上。
[SwitchC] traffic classifier c1
[SwitchC-classifier-c1] if-match customer-vlan-id 101 to 102
[SwitchC-classifier-c1] traffic classifier c2
[SwitchC-classifier-c2] if-match customer-vlan-id 201 to 202
[SwitchC-classifier-c2] traffic classifier c3
[SwitchC-classifier-c3] if-match customer-vlan-id 301 to 302
[SwitchC-classifier-c3] traffic classifier c4
[SwitchC-classifier-c4] if-match customer-vlan-id 103 to 104
[SwitchC-classifier-c4] traffic classifier c5
[SwitchC-classifier-c5] if-match customer-vlan-id 203 to 204
[SwitchC-classifier-c5] traffic classifier c6
[SwitchC-classifier-c6] if-match customer-vlan-id 303 to 304
[SwitchC-classifier-c6] quit
[SwitchC] traffic behavior b1
[SwitchC-behavior-b1] remark service-vlan-id 501
[SwitchC-behavior-b1] traffic behavior b2
[SwitchC-behavior-b2] remark service-vlan-id 502
[SwitchC-behavior-b2] traffic behavior b3
[SwitchC-behavior-b3] remark service-vlan-id 503
[SwitchC-behavior-b3] quit
[SwitchC] qos policy p1
[SwitchC-policy-p1] classifier c1 behavior b1 mode dot1q-tag-manipulation
[SwitchC-policy-p1] classifier c2 behavior b2 mode dot1q-tag-manipulation
[SwitchC-policy-p1] classifier c3 behavior b3 mode dot1q-tag-manipulation
[SwitchC-policy-p1] quit
[SwitchC] qos policy p2
[SwitchC-policy-p2] classifier c4 behavior b1 mode dot1q-tag-manipulation
[SwitchC-policy-p2] classifier c5 behavior b2 mode dot1q-tag-manipulation
[SwitchC-policy-p2] classifier c6 behavior b3 mode dot1q-tag-manipulation
[SwitchC-policy-p2] quit
# 配置下行端口GigabitEthernet1/0/1为Trunk端口且允许CVLAN和SVLAN通过,使能该端口的用户侧QinQ功能,并在该端口的入方向上应用上行策略p1。
[SwitchC] interface gigabitethernet 1/0/1
[SwitchC-GigabitEthernet1/0/1] port link-type trunk
[SwitchC-GigabitEthernet1/0/1] port trunk permit vlan 101 201 301 102 202 302 501 502 503
[SwitchC-GigabitEthernet1/0/1] qinq enable downlink
[SwitchC-GigabitEthernet1/0/1] qos apply policy p1 inbound
[SwitchC-GigabitEthernet1/0/1] quit
# 配置下行端口GigabitEthernet1/0/2为Trunk端口且允许CVLAN和SVLAN通过,使能该端口的用户侧QinQ功能,并在该端口的入方向上应用上行策略p2。
[SwitchC] interface gigabitethernet 1/0/2
[SwitchC-GigabitEthernet1/0/2] port link-type trunk
[SwitchC-GigabitEthernet1/0/2] port trunk permit vlan 103 203 303 104 204 304 501 502 503
[SwitchC-GigabitEthernet1/0/2] qinq enable downlink
[SwitchC-GigabitEthernet1/0/2] qos apply policy p2 inbound
[SwitchC-GigabitEthernet1/0/2] quit
# 配置上行端口GigabitEthernet1/0/3为Trunk端口且允许SVLAN通过,配置该端口为DHCP Snooping信任端口和ARP信任端口,并使能该端口的网络侧QinQ功能。
[SwitchC] interface gigabitethernet 1/0/3
[SwitchC-GigabitEthernet1/0/3] port link-type trunk
[SwitchC-GigabitEthernet1/0/3] port trunk permit vlan 501 502 503
[SwitchC-GigabitEthernet1/0/3] dhcp-snooping trust
[SwitchC-GigabitEthernet1/0/3] arp detection trust
[SwitchC-GigabitEthernet1/0/3] qinq enable uplink
(4) 配置Switch D
# 配置端口GigabitEthernet1/0/1为Trunk端口且允许SVLAN通过。
<SwitchD> system-view
[SwitchD] interface gigabitethernet 1/0/1
[SwitchD-GigabitEthernet1/0/1] port link-type trunk
[SwitchD-GigabitEthernet1/0/1] port trunk permit vlan 501 502 503
· VPN A中的站点1和站点2是某公司的两个分支机构,且分别利用VLAN 10和VLAN 30承载业务。由于分处不同地域,这两个分支机构采用了不同的服务提供商所提供的VPN接入服务,且SP 1和SP 2分别将VLAN 100和VLAN 200分配给这两个分支机构使用。
· 该公司希望其下属的这两个分支机构可以跨越SP 1和SP 2的网络实现互通。
图1-8 2:2 VLAN映射配置组网图
(1) 配置PE 1
# 配置GigabitEthernet1/0/1端口的QinQ功能,为VLAN 10报文添加VLAN ID为100的外层VLAN Tag。
<PE1> system-view
[PE1] interface gigabitethernet 1/0/1
[PE1-GigabitEthernet1/0/1] port access vlan 100
[PE1-GigabitEthernet1/0/1] qinq enable
[PE1-GigabitEthernet1/0/1] quit
# 配置上行端口GigabitEthernet1/0/2允许VLAN 100的报文通过。
[PE1] interface gigabitethernet 1/0/2
[PE1-GigabitEthernet1/0/2] port link-type trunk
[PE1-GigabitEthernet1/0/2] port trunk permit vlan 100
(2) 配置PE 2
# 配置端口GigabitEthernet1/0/1为Trunk端口且允许VLAN 100通过。
<PE2> system-view
[PE2] interface gigabitethernet 1/0/1
[PE2-GigabitEthernet1/0/1] port link-type trunk
[PE2-GigabitEthernet1/0/1] port trunk permit vlan 100
[PE2-GigabitEthernet1/0/1] quit
# 配置端口GigabitEthernet1/0/2为Trunk端口且允许VLAN 100通过。
[PE2] interface gigabitethernet 1/0/2
[PE2-GigabitEthernet1/0/2] port link-type trunk
[PE2-GigabitEthernet1/0/2] port trunk permit vlan 100
(3) 配置PE 3
# 配置下行端口的上行策略downlink_in:即下行端口对入方向报文的匹配规则流行为。
<PE3> system-view
[PE3] traffic classifier downlink_in
[PE3-classifier-downlink_in] if-match customer-vlan-id 10
[PE3-classifier-downlink_in] if-match service-vlan-id 100
[PE3-classifier-downlink_in] quit
[PE3] traffic behavior downlink_in
[PE3-behavior-downlink_in] remark service-vlan-id 200
[PE3-behavior-downlink_in] quit
[PE3] qos policy downlink_in
[PE3-qospolicy-downlink_in] classifier downlink_in behavior downlink_in
[PE3-qospolicy-downlink_in] quit
# 配置下行端口的下行策略downlink_out:即下行端口对出方向报文的匹配规则和流行为。
[PE3] traffic classifier downlink_out
[PE3-classifier-downlink_out] if-match customer-vlan-id 30
[PE3-classifier-downlink_out] if-match service-vlan-id 200
[PE3-classifier-downlink_out] quit
[PE3] traffic behavior downlink_out
[PE3-behavior-downlink_out] remark customer-vlan-id 10
[PE3-behavior-downlink_out] remark service-vlan-id 100
[PE3-behavior-downlink_out] quit
[PE3] qos policy downlink_out
[PE3-qospolicy-downlink_out] classifier downlink_out behavior downlink_out
[PE3-qospolicy-downlink_out] quit
# 配置上行端口的上行策略uplink_out:即上行端口对出方向报文的匹配规则和流行为。
[PE3] traffic classifier uplink_out
[PE3-classifier-uplink_out] if-match customer-vlan-id 10
[PE3-classifier-uplink_out] if-match service-vlan-id 200
[PE3-classifier-uplink_out] quit
[PE3] traffic behavior uplink_out
[PE3-behavior-uplink_out] remark customer-vlan-id 30
[PE3-behavior-uplink_out] quit
[PE3] qos policy uplink_out
[PE3-qospolicy-uplink_out] classifier uplink_out behavior uplink_out
[PE3-qospolicy-uplink_out] quit
# 配置下行端口GigabitEthernet1/0/1为Trunk端口且允许VLAN 200通过,在该端口的入方向上应用上行策略downlink_in,并在该端口的出方向上应用下行策略downlink_out。
[PE3] interface gigabitethernet 1/0/1
[PE3-GigabitEthernet1/0/1] port link-type trunk
[PE3-GigabitEthernet1/0/1] port trunk permit vlan 200
[PE3-GigabitEthernet1/0/1] qos apply policy downlink_in inbound
[PE3-GigabitEthernet1/0/1] qos apply policy downlink_out outbound
[PE3-GigabitEthernet1/0/1] quit
# 配置上行端口GigabitEthernet1/0/2为Trunk端口且允许VLAN 200通过,并在该端口的出方向上应用下行策略uplink_out。
[PE3] interface gigabitethernet 1/0/2
[PE3-GigabitEthernet1/0/2] port link-type trunk
[PE3-GigabitEthernet1/0/2] port trunk permit vlan 200
[PE3-GigabitEthernet1/0/2] qos apply policy uplink_out outbound
[PE3-GigabitEthernet1/0/2] quit
(4) 配置PE 4
# 配置GigabitEthernet1/0/2的QinQ功能,为VLAN 30报文添加VLAN ID为200的外层VLAN Tag。
<DeviceD> system-view
[DeviceD] interface gigabitethernet 1/0/2
[DeviceD-GigabitEthernet1/0/2] port access vlan 200
[DeviceD-GigabitEthernet1/0/2] qinq enable
# 配置端口GigabitEthernet1/0/1允许VLAN 200的报文通过。
[DeviceD] interface gigabitethernet 1/0/1
[DeviceD-GigabitEthernet1/0/1] port link-type trunk
[DeviceD-GigabitEthernet1/0/1] port trunk permit vlan 200
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!