QinQ原理与配置指导书.docx
《QinQ原理与配置指导书.docx》由会员分享,可在线阅读,更多相关《QinQ原理与配置指导书.docx(54页珍藏版)》请在冰豆网上搜索。
QinQ原理与配置指导书
一、QinQ简介3
(一)QinQ概述3
(二)QinQ特性5
1.二层接口的QinQ5
2.QinQMapping6
3.终结子接口6
4.动态QinQ9
5.QinQ终结子接口支持URPF11
(三)总结11
(四)思考11
一、ME60侧配置QinQ11
(一)配置QinQ二层隧道11
1.建立配置任务11
2.创建QinQ二层接口的外层VLAN12
3.配置二层接口的QinQ功能12
4.(可选)配置外层Tag的协议类型13
5.检查配置结果13
(二)配置二层灵活QinQ15
1.建立配置任务15
2.创建QinQ二层接口的外层VLAN15
3.配置二层灵活QinQ接口16
4.(可选)配置外层Tag的协议类型16
5.检查配置结果17
(三)配置动态QinQ18
1.建立配置任务18
2.配置接口的模式为用户终结模式19
3.配置动态QinQ19
4.配置DHCPSnooping20
5.检查配置结果20
(四)配置QinQ终结子接口支持URPF22
1.建立配置任务22
2.配置以太网主接口22
3.配置以太网子接口23
4.配置QinQ子接口的URPF功能23
5.检查配置结果23
(五)配置Bras用户侧QinQ24
1.建立配置任务24
2.创建用户侧VLAN25
3.检查配置结果25
(六)维护QinQ26
1.6.5.6.13.1清除QinQ的统计信息26
2.监控终结子接口运行状况26
3.调试QinQ26
二、ME60侧QinQ配置举例27
(一)配置QinQ二层隧道示例27
1.组网需求27
2.配置思路28
3.数据准备28
4.操作步骤28
5.配置文件30
(二)配置二层灵活QinQ示例32
1.组网需求32
2.配置思路33
3.数据准备33
4.操作步骤33
5.配置文件35
(三)配置动态QinQ示例37
1.组网需求37
2.配置思路38
3.数据准备38
4.操作步骤39
5.配置文件45
(四)配置QinQ终结子接口支持URPF示例48
1.组网需求48
2.配置思路49
3.数据准备49
4.操作步骤49
5.配置文件51
(五)配置用户侧QinQ示例52
6.组网需求52
7.配置思路53
8.数据准备53
9.操作步骤53
10.配置文件54
一、QinQ简介
(一)QinQ概述
QinQ技术是一项扩展VLAN空间的技术,通过在802.1Q标签报文的基础上再增加一层802.1Q的标签头来达到扩展VLAN空间的功能,可以使私网VLAN透传公网。
在基于传统的802.1Q协议的二层局域网互联模式中,当两个用户网络需要通过服务提供商(ISP)互相访问时,ISP必须为每个接入用户的不同VLAN分配不同的VLANID,如图1所示。
假设用户的网络1和网络2位于两个不同地点,并分别通过ISP的PE1、PE2接入骨干网。
如果用户需要将网络1的VLAN100~VLAN200和网络2的VLAN100~VLAN200互联起来,那么必须将CE1、PE1、P和PE2、CE2的相连端口都配置为Trunk属性,并允许VLAN100~VLAN200通过。
这种配置方法使得用户的VLAN在骨干网络上可见,而非透明传输。
这不仅耗费服务提供商的VLANID资源(一般只有4094个VLANID),而且还需要服务提供商管理用户的VLAN号,用户也没有自己规划VLAN的权利。
当接入的用户数目很多时,可能使ISP网络的VLANID不够用(只允许有4094个VLANID)。
另外,不同的用户也不能使用相同的VLANID,用户的VLANID需要由ISP统一规划。
QinQ技术是一项扩展VLAN空间的技术,通过在802.1Q标签报文的基础上再增加一层802.1Q的标签头来达到扩展VLAN空间的功能,可以使私网VLAN透传公网,有效的解决了上述问题。
QinQ协议是基于IEEE802.1Q技术的一种二层隧道协议。
由于在骨干网中传递的报文有两层802.1QTag头(一层公网Tag,一层私网Tag),即802.1Q-in-802.1Q所以称之为QinQ协议。
这样,ISP网络只需为来自同一用户网络的不同VLAN提供一个VLANID,节约了ISP的VLANID,以解决日益紧张的ISP网络VLANID资源紧张的问题。
同时也为小型城域网或者局域网提供一种较为简单的二层VPN解决方案。
QinQ技术虽然至今还没正式的协议,但由于其方便易用的特点,现在已经在各运营商中得到了广泛的应用。
如QinQ技术在城域以太网解决方案中和多种业务相结合。
特别是灵活QinQ(VLANStacking)的出现,使得QinQ业务更加受到了运营商的推崇和青睐,它具有不同用户之间的VLAN与公网VLAN有效分离、最大限度节省运营商网络的VLAN资源等特点。
随着城域以太网的大力发展,各个设备提供商都提出了各自的城域以太网的解决方案,QinQ因为其自身简单灵活的特点,在各解决方案中扮演着重要的角色。
(二)QinQ特性
QinQ因为其自身简单灵活的特点,在各解决方案中扮演着重要的角色。
1.二层接口的QinQ
●QinQ二层隧道
●灵活QinQ(VLANStacking)
●QinQ内、外层TagEType兼容性
如图1所示,在802.1Q中规定TPID(TagProtocolIdentifier)的EType的值为0x8100。
在QinQ封装中,各个设备厂商的内层TPID的EType的值为0x8100,但是对于外层TPID的EType,各个厂商所使用的值不相同。
ME60支持QinQ外层TagEType兼容性,即支持识别和封装不同外层EType值的报文,实现与不同厂商设备的互通。
说明:
在IEEE802.1ad中规定外层TPID的EType字段的定义为0x88a8。
如图2所示,ME60B的入接口能够识别出外层EType值为0x9100的QinQ报文,并在出接口,根据不同厂商的设备设置不同的外层TPID的EType值,例如0x9100,0x8100或者其他数值,以保证和不同厂商设备间的互通。
2.QinQMapping
在实际组网中,QinQMapping功能可以将用户的VLANTag映射为运营商的VLANTag,从而起到屏蔽不同用户VLANTag的作用。
QinQMapping功能一般部署在ME边缘设备上,对用户侧上送的报文进行映射操作。
将用户报文携带的Tag映射用户指定的Tag后再接入公网。
QinQMapping功能常应用于但不局限于以下场景:
●新局点和老局点部署的VLANID冲突,但是新局点需要与老局点互通。
●接入公网的各个局点规划不一致,导致VLANID冲突,但是各个局点之间不需要互通。
●公网两端的VLANID规划不对称。
目前,ME60支持以下映射方式:
●1to1的映射方式
当部署QinQMapping功能设备上的子接口收到带有一层Tag的报文时,将报文中携带的一层Tag映射为指定的一层Tag。
3.终结子接口
终结主要是指设备对报文的单层或者双层Tag进行识别,然后根据后续的转发行为对单层或者双层Tag进行剥离或继续传送。
终结一般在路由子接口上执行,即:
终结子接口。
●如果子接口是对报文的单层Tag终结,那么该子接口称为Dot1q终结子接口。
●如果子接口是对报文的双层Tag终结,那么该子接口称为QinQ终结子接口。
VLANIF接口、Dot1q子接口、Dot1q和QinQ终结子接口区别如表1所示。
接口类型
说明
支持的VPN业务
区别
VLL
PWE3
VPLS
L3VPN
(CCC方式)
VLANIF接口
●通过命令interfacevlanif创建VLANIF接口。
●VLANIF接口是逻辑接口、是三层接口,可配置IP地址,实现网络层互通。
不支持
不支持
支持
支持
●Dot1q子接口和Dot1q终结子接口功能相同,不同点在于Dot1q子接口在一个子接口上只能封装一个VLAN,而Dot1q终结子接口在一个子接口上可封装多个VLAN。
●同一主接口不同子接口下可以同时部署Dot1q终结子接口和QinQ终结子接口。
即,同一主接口下既能终结单层Tag的报文,也能终结双层Tag的报文。
同一主接口下配置了QinQ终结功能,终结单层Tag报文只能用Dot1q终结子接口,而不能用Dot1q子接口。
Dot1q子接口
通过命令vlan-type对以太网子接口进行的VLAN类型封装。
支持
支持
支持
支持
Dot1q终结子接口
通过命令dot1qterminationvid配置子接口对一层Tag报文的终结功能。
不支持
支持
支持
支持
QinQ终结子接口
通过命令qinqterminationpe-vidce-vid配置子接口对两层Tag报文的终结功能。
支持
支持
支持
终结子接口具体的实现方法、功能和具体的应用场景有一定关系。
如图3所示,QinQ/Dot1q终结子接口支持部署的业务如表4所示:
表4终结子接口支持部署的业务
终结子接口类型
支持部署的业务
业务子类型
说明
QinQ/Dot1q终结子接口
IP业务
ARP代理
终结子接口通常支持一个范围内的VLAN接入同一网段。
位于该同一网段的用户属于不同的VLAN,这样在二层就无法实现互通,需要进行三层IP转发。
因此终结子接口需要能够支持ARP代理功能。
DHCP
●DHCPServer
●DHCPRelay
●终结子接口支持DHCPServer是指在终结子接口可以配置DHCPServer的功能,通过终结子接口为用户分配IP地址。
●终结子接口支持DHCPRelay的功能,把用户的Tag信息插入Option82,作为DHCPServer分配IP地址和其他参数的合法性依据和参考。
VRRP
用户往往要求时时与网络其他部分保持通信畅通,这样就需要采用VRRP协议保证终端用户与网络的联系可靠、稳定、不中断,需要终结子接口支持VRRP协议。
终结子接口支持VRRP协议提供了一种Dot1q/QinQ用户的主备机制。
组播业务
二层组播
在终结子接口绑定的VSI上配置运行IGMPSnooping,通过侦听组播设备和主机之间发送的IGMP协议报文消息,就可以获知哪些端口下有组播数据的接收者,则组播数据报文就不会在二层网络中广播,而是进行二层组播,这样就只有组播组成员能够收到组播数据报文。
三层组播
带有两层Tag的组播协议报文通过UPE接入上层网络。
要求在UPE上配置QinQ终结子接口支持IGMP或者Dot1q终结子接口支持IGMP,在UPE上建立组播组成员转发表和路由表,当从用户侧发出的组播协议报文经过时,能被识别并根据业务Tag上送给对应的组播流。
而组播流量下发时,能够根据已建立的组播组成员转发表,复制和下发组播流量。
QinQ终结子接口
802.1p和DSCPRemark
-
PE设备进行QinQ终结后,报文被发往ISP的IP网络。
为了保证用户数据报文中原来的QoS信息不丢失,需要配置两层Tag报文的802.1p值到DSCP的映射。
802.1p和EXP(MPLS)Remark
-
PE设备进行QinQ终结后,报文被发往ISP的MPLS网络。
为了保证用户数据报文中原来的QoS信息不丢失,需要配置两层VLANTag报文的802.1p值到EXP的映射。
说明:
终结子接口支持部署的业务不局限于表4所示。
4.动态QinQ
普通QinQ终结子接口最多可以配置终结16K个不同内外层Tag组合的用户报文。
当这样的用户报文超过16K个时,可以使用动态QinQ功能,此时,QinQ终结子接口最多可以配置终结64K个不同内外层Tag组合的用户报文。
说明:
QinQ终结子接口下配置动态QinQ功能后,不能再配置该子接口接入VLL、PWE3和VPLS,以及静态ARP和静态DHCPsnooping绑定表。
如图4所示,DHCPClient通过两级交换机与DHCPRelay连接,并通过DHCPRelay从DHCPServer申请合法的IP地址。
在DHCPRelay的Client侧的终结子接口上配置动态QinQ,当用户上线时为用户分配VLANTag资源。
配置ARP和DHCP绑定表联动后,当用户申请到IP地址后发生异常下线,系统可以自动感知,并会自动删除DHCP绑定表中的绑定关系并通知DHCPServer释放IP地址和VLANTag资源。
对于配置了动态QinQ的接口,绝大多数情况下都是用户主动发送ARP请求到网关设备。
如果设备上同时也配置了ARP严格学习功能,那么该设备的所有接口只会学习自己主动发出ARP请求收到的应答报文,而不会学习其他设备发送的请求报文。
这样就可能会导致该设备的动态QinQ接口学习不到用户的ARP表项,出现用户无法上线的现象。
此时,可以在配置了动态QinQ的接口上使用arplearningstrictforce-disable命令,保证该接口可以学习到用户发送的ARP请求。
5.QinQ终结子接口支持URPF
URPF(UnicastReversePathForwarding)是单播逆向路径转发的简称,其主要功能是防止基于源地址欺骗的网络攻击行为。
为防止基于源地址欺骗的网络攻击行为通过QinQ终结子接口进入用户网络,需要QinQ终结子接口要能够支持单播逆向路径转发URPF功能。
QinQ终结子接口URPF功能的实现。
首先获取报文的源地址、内外层VLANtag和入接口信息,然后以报文的源地址为目的地址,在转发表中查找出对应的接口和内外层VLANtag,并检查是否匹配,如果不匹配,认为源地址是伪装的,丢弃该报文。
通过这种方式,URPF就能有效地防范网络中通过修改源地址而进行的恶意攻击行为的发生。
按照检查方式的不同,URPF可以分为两种类型:
松散检查,只要在转发表中存在相应的路由表项就通过URPF检查。
严格检查,不但要求在转发表中存在相应表项,还要求接口信息一定匹配才能通过URPF检查。
说明:
ME60的QinQ终结子接口只支持松散检查的URPF。
(三)总结
QinQ技术是一项扩展VLAN空间的技术,通过在802.1Q标签报文的基础上再增加一层802.1Q的标签头来达到扩展VLAN空间的功能。
(四)思考
QinQ的封装结构
一、ME60侧配置QinQ
(一)配置QinQ二层隧道
1.建立配置任务
在进行QinQ二层隧道配置前了解此特性的应用环境、配置此特性的前置任务和数据准备,可以帮助您快速、准确地完成配置任务。
1)应用环境
当需要较多的VLAN时,可以配置QinQ二层隧道功能。
通过对VLAN增加外层Tag,使得VLAN的可用数目范围变大,解决VLAN数目资源紧缺的问题。
2)前置任务
在配置QinQ二层隧道之前,需完成以下任务:
设备正确上电,且工作正常
以太网接口的基本属性的配置
2.创建QinQ二层接口的外层VLAN
配置二层灵活QinQ,使得报文带有不同的外层Tag传输,并且QinQTag的EType可以灵活配置。
在需要配置QinQ二层隧道功能的设备上进行如下配置。
操作步骤:
执行命令system-view,进入系统视图。
执行命令vlanvlan-id,创建VLAN并进入VLAN视图。
该VLANID为QinQ二层隧道功能中指定的外层Tag值,取值范围是1~4094。
3.配置二层接口的QinQ功能
配置二层灵活QinQ接口后,对于从接口进来的带有私网Tag的用户报文,统一加上公网的Tag,实现用户报文在公网内转发。
在需要配置QinQ二层隧道功能的设备上进行如下配置。
操作步骤:
执行命令system-view,进入系统视图。
执行命令interfaceinterface-typeinterface-number,进入需要配置QinQ二层隧道功能的以太网接口视图。
(可选)执行命令portswitch,设置接口为二层接口。
如果接口已经是二层接口,则不需要执行此步配置。
执行命令portlink-typedot1q-tunnel,配置接口类型为QinQ二层接口。
执行命令portdefaultvlanvlan-id,配置外层Tag值(即接口的缺省VLANID)。
说明:
此处配置的外层Tag值应该与创建QinQ二层接口的外层VLAN中创建的VLANID一致。
4.(可选)配置外层Tag的协议类型
不同的设备互连,当配置了QinQ功能时,各个设备厂商的内层TPID的EType的值为0x8100,但是对于外层TPID的EType,各个厂商所使用的值不相同。
为了实现不同厂商的设备互通,需要配置外层Tag的协议类型。
在需要配置QinQ二层隧道功能的设备上进行如下配置。
操作步骤
执行命令system-view,进入系统视图。
执行命令interfaceinterface-typeinterface-number,进入需要配置QinQ二层隧道功能的以太网接口视图。
执行命令qinqprotocolethertype-value,配置外层Tag的协议类型。
在IEEE802.1ad中规定外层TPID的EType字段的定义为0x88a8。
ethertype-value的取值范围是0x0600~0xFFFF。
缺省值是0x8100。
说明:
qinqprotocol只对带两层Tag的报文起作用,对带一层Tag的报文不起作用。
5.检查配置结果
QinQ二层隧道配置成功后,您可以查看到VLAN是否使能广播功能、VLAN的状态、是否使能地址学习,并且配置了QinQ二层隧道的接口为QinQStack接口等内容。
1)前提条件
已经完成QinQ二层隧道功能的所有配置。
2)操作步骤
执行命令displayvlan[vlan-id[verbose]],查看VLAN信息。
执行命令displaybpdu-tunnelinterfaceconfig,查看接口的外层TagEType封装值。
3)任务示例
执行displayvlan命令,可以看到VLAN是否使能广播功能、VLAN的状态、是否使能地址学习,并且配置了QinQ二层隧道的接口为Untagged接口。
例如:
displayvlan10verbose
VLANID:
10
VLANType:
Common
Description:
VLAN0010
Status:
Enable
Broadcast:
Enable
MAClearning:
Enable
Statistics:
Disable
----------------
UntaggedPort:
GigabitEthernet1/0/0
在设备上执行命令displaybpdu-tunnelinterfaceconfig命令可以看到TPID配置情况。
例如:
system-view
[HUAWEI]interfacegigabitethernet1/0/1
[HUAWEI-GigabitEthernet1/0/1]displaybpdu-tunnelinterfaceconfig
BpduDot1qStatusdisable
BpduOneQStatusdisable
BpduTwoQStatusdisable
EtherType9100
Dot1qVlan
TwoQList
父主题:
配置QinQ二层隧道
(二)配置二层灵活QinQ
配置二层灵活QinQ,使得报文带有不同的外层Tag传输,并且QinQTag的EType可以灵活配置。
1.建立配置任务
在进行二层灵活QinQ配置前了解此特性的应用环境、配置此特性的前置任务和数据准备,可以帮助您快速、准确地完成配置任务。
1)应用环境
二层灵活QinQ功能是对QinQ二层隧道功能的扩展,它比QinQ接口的功能更灵活。
二者之间的主要区别是:
QinQ二层隧道:
对进入二层QinQ接口的所有帧都加上相同的外层Tag。
二层灵活QinQ:
对进入二层QinQ接口的帧,可以根据不同的内层Tag而加上不同的外层Tag。
2)前置任务
在配置二层灵活QinQ之前,需完成以下任务:
设备正确上电,且工作正常。
以太网接口的基本属性的配置。
2.创建QinQ二层接口的外层VLAN
配置二层灵活QinQ,使得报文带有不同的外层Tag传输,并且QinQTag的EType可以灵活配置。
在需要配置QinQ二层隧道功能的设备上进行如下配置。
操作步骤
执行命令system-view,进入系统视图。
执行命令vlanvlan-id,创建VLAN并进入VLAN视图。
该VLANID为QinQ二层隧道功能中指定的外层Tag值,取值范围是1~4094。
3.配置二层灵活QinQ接口
配置二层灵活QinQ接口后,对于从接口进来的带有私网Tag的用户报文,统一加上公网的Tag,实现用户报文在公网内转发。
请在需要配置二层灵活QinQ功能的设备上进行如下配置。
操作步骤
执行命令system-view,进入系统视图。
执行命令interface{ethernet|gigabitethernet|eth-trunk}interface-number,进入需要配置二层灵活QinQ功能的以太网接口视图。
(可选)执行命令portswitch,设置接口为二层接口。
如果接口已经是二层接口,则不需要执行此步配置。
portvlan-stackingvlanvlan-id1[tovlan-id2]stack-vlanvlan-id3,配置接口类型为二层灵活QinQ接口。
此步骤中vlan-id1和vlan-id2为接口收到帧的内层Tag范围,vlan-id3为接口为帧加上的外层Tag值。
4.(可选)配置外层Tag的协议类型
不同的设备互连,当配置了QinQ功能时,各个设备厂商的内层TPID的EType的值为0x8100,但是对于外层TPID的EType,各个厂商所使用的值不相同。
为了实现不同厂商的设备互通,需要配置外层Tag的协议类型。
在需要配置QinQ二层隧道功能的设备上进行如下配置。
操作步骤
执行命令system-view,进入系统视图。
执行命令interfaceinterface-typeinterface-number,进入需要配置QinQ二层隧道功能的以太网接口视图。
执行命令qinqprotocolethertype-value,配置外层Tag的协议类型。
在IEEE802.1ad中规定外层TPID的EType字段的定义为0x88a8。
ethert