04-MPLS L2VPN配置
本章节下载: 04-MPLS L2VPN配置 (502.87 KB)
目 录
1.6.1 配置Martini方式下三层以太网接口/子接口接入的MPLS L2VPN连接
1.6.2 配置Martini方式下二层以太网接口和VLAN接入的MPLS L2VPN连接
1.10.4 配置Martini方式MPLS L2VPN示例
1.10.5 配置Kompella方式MPLS L2VPN示例
· 本文中的“SPC单板”指的是单板丝印以“SPC”开头(如SPC-GT48L)的单板,“SPE单板”指的是单板丝印以“SPE”开头(如SPE-1020-E-II)的单板。
· SPC单板不支持CCC、SVC和Kompella组网方式。
· SPC单板只支持二层以太网接口绑定L2VPN,不支持三层以太网接口绑定L2VPN。
传统的基于ATM或Frame Relay(帧中继,以下简称FR)的VPN(Virtual Private Network,虚拟专用网)应用非常广泛,它们能在不同VPN间共享运营商的网络结构。这种VPN的不足在于:
· 依赖于专用的介质(如ATM或FR):为提供基于ATM的VPN服务,运营商必须建立覆盖全部服务范围的ATM网络;为提供基于FR的VPN服务,又需要建立覆盖全部服务范围的FR网络,在网络建设上造成浪费。
· 部署复杂:尤其是向已有的VPN加入新的Site(站点)时,需要同时修改所有接入此VPN站点的边缘节点的配置。
由于以上缺点,新的VPN替代方案应运而生,MPLS L2VPN就是其中的一种。
MPLS L2VPN提供基于MPLS(Multiprotocol Label Switching,多协议标签交换)网络的二层VPN服务,使运营商可以在统一的MPLS网络上提供基于不同数据链路层的二层VPN,包括ATM、VLAN、Ethernet、PPP等。
简单来说,MPLS L2VPN就是在MPLS网络上透明传输用户二层数据。从用户的角度来看,MPLS网络是一个二层交换网络,可以在不同节点间建立二层连接。
以图1-1为例用户边缘设备(Customer Edge,CE),通过MPLS网络与远端CE相连。
以ATM为例,每个用户边缘设备(Customer Edge,CE)配置一条ATM虚电路(Virtual Circuit,VC),通过MPLS网络与远端CE相连,这与通过ATM网络实现互联类似。
图1-1 MPLS L2VPN组网示意图
相对于MPLS L3VPN,MPLS L2VPN具有以下优点:
· 可扩展性强:MPLS L2VPN只建立二层连接关系,不引入和管理用户的路由信息。这大大减轻了PE(Provider Edge,服务提供商边缘设备)甚至整个SP(Service Provider,服务提供商)网络的负担,使服务提供商能支持更多的VPN和接入更多的用户。
· 可靠性和私网路由的安全性得到保证:由于不引入用户的路由信息,MPLS L2VPN不能获得和处理用户路由,保证了用户VPN路由的安全。
· 支持多种网络层协议:包括IP、IPX、SNA等。
在MPLS L2VPN中,CE、PE、P的概念与MPLS L3VPN一样,原理也相似。
· CE(Customer Edge)设备:用户网络边缘设备,有接口直接与SP相连。CE可以是路由器或交换机,也可以是一台主机。CE“感知”不到VPN的存在,也不需要必须支持MPLS。
· PE(Provider Edge)路由器:服务提供商边缘路由器,是服务提供商网络的边缘设备,与用户的CE直接相连。在MPLS网络中,对VPN的所有处理都发生在PE上。
· P(Provider)路由器:服务提供商网络中的骨干路由器,不与CE直接相连。P设备只需要具备基本MPLS转发能力。
MPLS L2VPN通过标签栈实现用户报文在MPLS网络中的透明传送:
· 外层标签(称为Tunnel标签)用于将报文从一个PE传递到另一个PE;
· 内层标签(称为VC标签)用于区分不同VPN中的不同连接;
· 接收方PE根据VC标签决定将报文转发给哪个CE。
图1-2 是MPLS L2VPN转发过程中报文标签栈变化的示意图。
图1-2 MPLS L2VPN标签栈处理
(1)L2PDU是链路层报文,PDU即Protocol Data Unit,协议数据单元 |
(2)T是Tunnel标签;V是VC标签;T’表示转发过程中外层标签被替换 |
MPLS L2VPN主要有以下几种实现方式:
· CCC(Circuit Cross Connect,电路交叉连接)和SVC(Static Virtual Circuit,静态虚拟电路):两种采用静态配置VC标签的方式来实现MPLS L2VPN的方法。
· Martini方式:通过建立点到点链路来实现MPLS L2VPN的方法,它以LDP(Label Distribution Protocol,标签分发协议)为信令协议来传递双方的VC标签。
· Kompella方式:在MPLS网络上以端到端(CE到CE)方式建立MPLS L2VPN的方法。目前,它采用扩展了的BGP(Border Gateway Protocol,边界网关协议)为信令协议来发布二层可达信息和VC标签。
下面分别介绍这几种MPLS L2VPN实现方式。
与普通MPLS L2VPN不同,CCC采用一层标签传送用户数据,因此,CCC对LSP(Label Switched Path,标签交换路径)的使用是独占性的。CCC的LSP只用于传递这个CCC连接的数据,不能用于其他MPLS L2VPN连接,也不能用于MPLS L3VPN或承载普通的IP报文。
这种方式的最大优点是:不需要任何标签信令传递二层VPN信息,只要能支持MPLS转发即可,保证在任何情况下,运营商之间可以进行互连。此外,由于LSP是专用的,可以提供QoS保证。
CCC连接有两种:本地连接和远程连接。
· 本地连接:在两个本地CE之间建立的连接,即两个CE连在同一个PE上。PE的作用类似二层交换机,可以直接完成交换,不需要配置静态LSP。
· 远程连接:在本地CE和远程CE之间建立的连接,即两个CE连在不同的PE上。
远程连接中的P设备上必须单独为每一个CCC连接手工配置两条不同方向的LSP。
SVC(Static Virtual Circuit,静态虚拟电路)也是一种静态的MPLS L2VPN,在L2VPN信息传递中不使用信令协议。
SVC方式与Martini方式的MPLS L2VPN非常类似,但它不使用LDP传递二层VC和链路信息,手工配置VC标签信息即可,其实是Martini方式的一种静态实现。
CCC和SVC使用的标签范围是16~1023,即保留给静态LSP使用的标签。
Martini方式MPLS L2VPN着重于在两个CE之间建立VC(Virtual Circuit,虚电路)。
Martini方式采用VC-TYPE加上VC ID来标识一个VC。VC-TYPE表明VC的封装类型:ATM、VLAN或PPP;VC ID则用于唯一标识一个VC。同一个VC-TYPE的所有VC中,其VC ID必须在整个PE中唯一。
连接两个CE的PE通过LDP交换VC标签,并通过VC ID绑定对应的CE。当连接两个PE的LSP建立成功,双方的标签交换和绑定完成后,一个VC就建立起来了,CE之间可以通过此VC传递二层数据。
为了在PE之间交换VC标签,Martini方式对LDP进行了扩展,增加了VC FEC(Forwarding Equivalence Class,转发等价类)的FEC类型。此外,由于交换VC标签的两个PE可能不是直接相连的,所以LDP必须使用remote peer来建立会话(Session),并在这个会话上传递VC FEC和VC标签。
在Martini方式中,由于在运营商网络中,只有PE设备需要保存少量的VC label与LSP的映射等信息,P设备不包含任何二层VPN信息,所以扩展性很好。此外,当需要新增加一条VC时,只在相关的两端PE设备上各配置一个单方向VC连接即可,不影响网络的运行。
Martini方式适合稀疏的二层连接,例如星型连接。
与Martini方式不同,Kompella方式的MPLS L2VPN不直接对CE与CE之间的连接进行操作,而是在整个运营商网络中划分不同的VPN,在VPN内部对CE进行编号。要建立两个CE之间的连接,只需在PE上设置本地CE和远程CE的CE ID,并指定本地CE为这个连接分配的Circuit ID(例如ATM的VPI/VCI)。
Kompella方式MPLS L2VPN以BGP扩展为信令协议来分发VC标签。在分配标签时,Kompella方式采用标签块(Label block)的方式,一次为多个连接分配标签。
用户可以指定一个VPN的CE的范围(CE range),表明当前VPN上最多可连接的CE数。系统一次为这个CE分配一个标签块,标签块的大小等于CE range。这种方式允许用户为VPN分配一些额外的标签,留待以后使用。这样短期来看会造成标签资源的浪费,但是却带来一个很大的好处,即可以减少VPN部署和扩容时的配置工作量。
假设一个企业的VPN包括10个CE,但是考虑到企业会扩展业务,将来可能会有20个CE。这样可以把每个CE的CE range设置为20,系统会预先为未来的10个CE分配标签。以后VPN添加CE节点时,配置的修改仅限于与新CE直接相连的PE,其他PE不需要作任何修改。这使得VPN的扩容变得非常简单。
类似于MPLS L3VPN,Kompella方式MPLS L2VPN也使用VPN Target来区分不同的VPN,这使得VPN组网具有极大的灵活性。
Kompella支持本地连接。
表1-1 MPLS L2VPN配置任务简介
操作 |
说明 |
详细配置 |
配置MPLS L2VPN |
必选 |
|
配置CCC方式MPLS L2VPN |
选择其一 根据MPLS L2VPN的实现方式,选择相应的配置方法 |
|
配置SVC方式MPLS L2VPN |
||
配置Martini方式MPLS L2VPN |
||
配置Kompella方式MPLS L2VPN |
||
配置MPLS L2VPN混插功能 |
可选 |
在三层接口上创建MPLS L2VPN连接后,如果该接口上创建了子接口,则该子接口的三层功能将失效(如无法接收ARP和IGMP报文、单播和组播报文转发不通)。删除三层接口上的MPLS L2VPN连接后,子接口的三层功能将恢复。
MPLS L2VPN有多种实现方式,用户可以根据实际需求选择合适的组网方式。但不论采用哪种方式,以下三项配置都是必须的:
· 配置MPLS基本能力
· 使能L2VPN
· 使能MPLS L2VPN
具体配置参见表1-2。
表1-2 配置MPLS L2VPN
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置LSR-ID |
mpls lsr-id lsr-id |
必选 |
配置MPLS基本能力,进入到MPLS视图 |
mpls |
必选 |
退回系统视图 |
quit |
- |
使能L2VPN,并进入L2VPN视图 |
l2vpn |
必选 缺省情况下,L2VPN功能处于关闭状态 |
配置MPLS L2VPN的保留VLAN |
mpls l2vpn reserve vlan vlan-id |
可选 |
使能MPLS L2VPN |
mpls l2vpn |
必选 缺省情况下,MPLS L2VPN功能处于关闭状态 |
在配置CCC L2VPN之前,需完成以下任务:
· 对MPLS骨干网(PE、P)配置MPLS基本能力
· 对MPLS骨干网PE路由器上使能MPLS L2VPN,P路由器上不需要使能MPLS L2VPN
在配置CCC L2VPN之前,需准备以下数据:
· CCC连接的名称
· 确定需要创建的连接类型:本地连接还是远程连接
· 本地连接:CCC连接的入接口和出接口类型和编号
· 远程连接:CCC连接的入接口类型和编号、下一跳地址或出接口类型和编号、CCC连接沿途LSR的入标签值和出标签值
在PE上进行下述配置后即完成CCC本地连接的创建。
表1-3 配置CCC本地连接
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
在连接相同PE的两个CE间创建一条本地CCC连接 |
ccc ccc-connection-name interface interface-type interface-number out-interface interface-type interface-number |
必选 |
(1) PE的配置
表1-4 PE的配置
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
在连接不同PE的CE间创建一条远程CCC连接 |
ccc ccc-connection-name interface interface-type interface-number in-label in-label-value out-label out-label-value { nexthop ip-address | out-interface interface-type interface-number } [ control-word | no-control-word ] |
必选 |
· 每个CCC远程连接不需要配置两条静态LSP,仅需要为它配置入标签和出标签,入标签为此CCC连接独占,相当于配置了静态LSP。
· 只有出接口连接的链路是点到点链路时,才能够使用out-interface参数指定出接口;如果出接口连接的链路不是点到点链路,如出接口类型为三层以太网接口、VLAN接口或三层聚合接口,则必须使用nexthop参数指定下一跳IP地址。
(2) P的配置
表1-5 P的配置
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
为Transit节点配置静态LSP |
static-lsp transit lsp-name incoming-interface interface-type interface-number in-label in-label { nexthop next-hop-addr | outgoing-interface interface-type interface-number } out-label out-label |
必选 |
· 使用CCC时,PE路由器上不需要配置静态LSP。但PE之间的所有P路由器上需要配置双向的转发静态LSP,用于专门传输CCC连接的数据。
· 有关配置静态LSP的命令请参见“MPLS命令参考”中的“MPLS基本配置”。
· 在路由器的接口上(如路由口或路由子接口)不能既使能VLL又使能MPLS功能。如果这样配置将会导致MPLS L2VPN和MPLS两种业务都出现异常。要恢复异常,只能将这两种业务的配置都取消掉。
· 一个三层以太网接口绑定了L2VPN之后,其对应的三层以太网子接口将不能再绑定L2VPN或VPLS实例;一个三层以太网子接口绑定了L2VPN之后,其对应的三层以太网接口将不能再绑定L2VPN或VPLS实例。
SVC方式MPLS L2VPN不使用信令协议传输L2VPN信息,数据是通过隧道在PE之间传递。
SVC支持的隧道类型包括LDP LSP、CR-LSP,缺省情况下使用LDP LSP隧道。
在配置SVC方式MPLS L2VPN之前,需完成以下任务:
· 对MPLS骨干网(PE、P)配置IGP,实现骨干网的IP连通性
· 对MPLS骨干网(PE、P)配置MPLS基本能力
· 对PE配置MPLS L2VPN
· 对MPLS骨干网(PE、P)配置MPLS LDP,建立LDP LSP
· 根据使用的隧道策略,在PE之间建立相应类型的隧道
在配置SVC方式MPLS L2VPN之前,需准备以下数据:
· 接入CE的接口类型和编号
· SVC的目的LSR ID
· L2VPN连接的收、发标签值
· SVC的隧道策略
下述配置需要在PE上进行。
表1-6 配置SVC方式MPLS L2VPN
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入连接CE的接口视图 |
interface interface-type interface-number |
- |
创建SVC方式MPLS L2VPN连接 |
mpls static-l2vc destination destination-router-id transmit-vpn-label transmit-label-value receive-vpn-label receive-label-value [ { control-word | ethernet | no-control-word | vlan } | tunnel-policy tunnel-policy-name ] * |
必选 |
· SVC方式L2VPN的接收或发送标签的合法性由用户保证。
· 在路由器的接口上(如路由口或路由子接口)不能既使能VLL又使能MPLS功能。如果这样配置将会导致MPLS L2VPN和MPLS两种业务都出现异常。要恢复异常,只能将这两种业务的配置都取消掉。
· 一个三层以太网接口绑定了L2VPN之后,其对应的三层以太网子接口将不能再绑定L2VPN或VPLS实例;一个三层以太网子接口绑定了L2VPN之后,其对应的三层以太网接口将不能再绑定L2VPN或VPLS实例。
Martini方式MPLS L2VPN根据接入方式不同分为以下两种情况:
· 配置除VLAN接口之外的三层端口接入的MPLS L2VPN连接时,请参见1.6.1 配置Martini方式下三层以太网接口/子接口接入的MPLS L2VPN连接。
· 配置二层以太网接口和VLAN接入的MPLS L2VPN连接时,请参见1.6.2 配置Martini方式下二层以太网接口和VLAN接入的MPLS L2VPN连接。
Martini方式使用扩展的LDP传递二层信息和VC标签。配置Martini方式的MPLS L2VPN时需要:
· 创建Martini方式MPLS L2VPN连接。
在三层以太网接口/子接口上创建Martini方式MPLS L2VPN连接后,从接口接收到的报文将通过该MPLS L2VPN连接转发。
· 配置远端对等体。
Martini方式的MPLS L2VPN中,需要在PE之间交换VC标签。由于交换VC标签的两个PE可能不是直接相连的,所以需要在PE之间建立LDP远端会话(Session),以便在这个会话上传递VC FEC和VC标签。
在配置Martini方式MPLS L2VPN之前,需完成以下任务:
· 对MPLS骨干网(PE、P)配置IGP,实现骨干网的IP连通性
· 对MPLS骨干网(PE、P)配置MPLS基本能力
· 对PE配置MPLS L2VPN
· 对MPLS骨干网(PE、P)配置MPLS LDP能力,建立LDP LSP
· 在PE之间建立远端LDP会话
在配置Martini方式MPLS L2VPN之前,需准备以下数据:
· 接入CE的接口类型和接口编号
· L2VPN连接的目的地址和PW ID(即VC ID)
· PW属性模板
下述配置需要在PE上进行。
表1-7 配置Martini方式下三层以太网接口/子接口接入的MPLS L2VPN连接
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入连接CE的接口视图 |
interface interface-type interface-number |
- 此处的接口必须为三层以太网接口/子接口 |
创建Martini方式下三层以太网接口/子接口接入的MPLS L2VPN连接 |
mpls l2vc destination vcid [ { control-word | ethernet | no-control-word | vlan } | tunnel-policy tunnel-policy-name ] * |
必选 |
退回系统视图 |
quit |
- |
配置远端对等体 |
mpls ldp remote-peer remote-peer-name |
必选 |
remote-ip ip-address |
必选 |
有关远端对等体的配置请参见“MPLS配置指导”中的“MPLS基本配置”。
· Martini方式连接命令主要参数有两个:一个是对端PE的IP地址,一个是VC ID。
· 在三层以太网接口/子接口上不能既创建Martini方式下三层以太网接口/子接口接入的MPLS L2VPN连接又使能MPLS功能。如果这样配置将会导致MPLS L2VPN和MPLS两种业务都出现异常。要排除异常,只能将这两种业务的配置都取消。
· 一个三层以太网接口绑定了L2VPN之后,其对应的三层以太网子接口将不能再绑定L2VPN或VPLS实例;一个三层以太网子接口绑定了L2VPN之后,其对应的三层以太网接口将不能再绑定L2VPN或VPLS实例。
· 在ATM接口上使用mpls l2vc destination vcid [ tunnel-policy tunnel-policy-name ] [ control-word | no-control-word ] [ ethernet | vlan ]之前,必须配置ATM接口的PVC和MAP,有关PVC和MAP的配置请参见“二层技术-广域网接入配置指导”中的“ATM”。
· 创建Martini方式下三层以太网接口/子接口接入的MPLS L2VPN连接时,如果三层端口是SPC单板上的三层以太网子接口,则必须配置PW的封装方式为VLAN模式,否则可能会影响报文的正确转发。
· 不允许在MPLS L2VPN私网侧所绑定的私网VLAN上配置除L2VPN之外的其他业务。
· 使能MPLS L2VPN的端口上,不建议再启用STP、以太网OAM、802.1x、GVRP、LLDP、DLDP、LACP等基于端口配置的协议。
· 对于二层以太网接口和VLAN接入方式的MPLS L2VPN连接,如果所创建的服务实例为Ethernet接入模式,不建议私网侧使用的端口为Trunk类型。可以将私网侧使用的端口以Access方式加入接入VLAN,或将端口设置为Hybrid,并将接入VLAN设置为Untagged。
如果创建Martini方式MPLS L2VPN连接的接口是VLAN接口,则不同二层以太网接口接收的相同VLAN Tag的报文只能通过同一个MPLS L2VPN连接进行转发,不仅造成了二层以太网接口和VLAN资源的浪费,还导致无法区分不同二层以太网接口连接的不同用户和业务。
通过创建二层以太网接口和VLAN接入方式的MPLS L2VPN连接,可以解决上述问题。二层以太网接口和VLAN接入方式是指根据接收报文的二层以太网接口和报文中的VLAN Tag来匹配绑定的MPLS L2VPN连接,只有二者都匹配的报文,才会通过同一个MPLS L2VPN连接进行转发。
配置二层以太网接口和VLAN接入方式的MPLS L2VPN连接,需要在二层以太网接口上创建服务实例(Service Instance),为服务实例配置报文匹配规则,并创建Martini方式的MPLS L2VPN连接。这样,二层以太网接口收到的符合匹配规则的报文将进入创建好的MPLS L2VPN连接进行转发。
在配置之前,需完成以下任务:
· 对MPLS骨干网(PE、P)配置IGP,实现骨干网的IP连通性;
· 对MPLS骨干网(PE、P)配置MPLS基本能力,对PE配置MPLS L2VPN;
· 对MPLS骨干网(PE、P)配置MPLS LDP能力,建立LDP LSP。
在配置之前,需准备以下数据:
· 接入CE的接口类型和接口编号;
· L2VPN连接的目的地址和PW ID;
· PW属性模板。
表1-8 配置Martini方式下二层端口接入的MPLS L2VPN连接
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建并进入PW模板视图 |
pw-class pw-class-name |
可选 缺省情况下,不存在任何PW模板 |
设置PW传输模式 |
trans-mode { ethernet | vlan } |
可选 缺省情况下,PW传输模式为VLAN |
设置隧道选用策略 |
pw-tunnel-policy policy-name |
可选 缺省情况下,采用缺省策略,即按照LSP隧道->CR-LSP隧道的优先级顺序选择隧道,并指定负载分担个数为1 |
退回系统视图 |
quit |
- |
创建与服务实例匹配的VLAN |
VLAN vlan-id |
必选 |
将连接CE的接口加入与服务实例匹配的VLAN |
port interface |
必选 |
退回系统视图 |
quit |
- |
配置远端对等体 |
mpls ldp remote-peer remote-peer-name |
必选 |
remote-ip ip-address |
必选 |
|
进入连接CE的二层以太网接口视图 |
interface interface-type interface-number |
- |
创建服务实例,并进入服务实例视图 |
service-instance instance-id |
必选 缺省情况下,不存在任何服务实例 |
配置报文匹配规则 |
encapsulation s-vid vlan-id |
必选 缺省情况下,不存在任何报文匹配规则 |
通过二层以太网接口和VLAN接入方式创建Martini方式的MPLS L2VPN连接 |
xconnect peer peer-ip-address pw-id pw-id [ access-mode { ethernet | vlan } | mtu mtu-value | [ pw-class class-name ] ] * |
必选 此命令执行后,服务实例下匹配的VLAN ID、接入模式和MTU值均不可更改,只有执行undo xconnect peer命令删除L2VPN连接后,才可以修改这些参数 |
· 每个二层以太网接口上最多可以配置4094个服务实例。
· xconnect peer命令只能在编号为1~4094的服务实例视图下进行配置,否则系统会提示出错。
Kompella方式MPLS L2VPN使用BGP扩展作为信令协议在PE间传递L2VPN信息。
配置Kompella方式本地连接时,不需要配置IGP,也不需要配置BGP的L2VPN能力,只在PE设备上配置VPN和CE连接即可使CE设备之间建立连接。
在配置Kompella方式MPLS L2VPN之前,需完成以下任务:
· 对MPLS骨干网(PE、P)配置IGP,实现骨干网的IP连通性
· 对MPLS骨干网(PE、P)配置MPLS基本能力
· 对PE配置MPLS L2VPN
· 对MPLS骨干网(PE、P)配置MPLS LDP能力,建立LDP LSP
在配置Kompella方式MPLS L2VPN之前,需准备以下数据:
· 本PE和对端PE的AS号
· L2VPN连接的名称、RD和VPN Target
· CE的名称、CE ID和CE range
· CE offset
表1-9 配置BGP的L2VPN能力
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入BGP视图 |
bgp as-number |
- |
与对端PE建立对等体 |
peer { group-name | ip-address } as-number as-number |
必选 |
指定建立TCP连接的接口 |
peer { group-name | ip-address } connect-interface interface-type interface-number |
必选 |
进入BGP-L2VPN地址族视图 |
l2vpn-family |
必选 |
对接收到的VPNv4路由使能VPN-Target过滤功能 |
policy vpn-target |
可选 缺省情况下,对接收的路由信息进行VPN-target扩展团体属性的过滤 |
使能对等体,并使能交换BGP-L2VPN地址族的BGP路由信息的能力 |
peer { group-name | ip-address } enable |
必选 |
有关BGP-L2VPN地址族的配置请参见“MPLS配置指导”中的“MPLS L3VPN”。
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建VPN,并进入MPLS-L2VPN视图 |
mpls l2vpn vpn-name [ encapsulation { atm-aal5 | ethernet | fr | hdlc | ppp | vlan } [ control-word | no-control-word ] ] |
必选 |
为VPN配置RD |
route-distinguisher route-distinguisher |
必选 |
将一个指定VPN和一个或多个VPN Target相关联 |
vpn-target vpn-target&<1-16> [ both | export-extcommunity | import-extcommunity ] |
必选 |
配置VPN的二层MTU |
mtu mtu |
可选 |
· mtu命令只进行有可能存在的协议上的参数协商,并不指导转发,因此不建议使用此命令。
· Kompella方式MPLS L2VPN必须在PE上为每个直接相连的CE所在的VPN创建L2VPN实例。创建L2VPN时指定的封装类型应与CE侧接口的封装类型对应。
· 上述配置中VPN-Target和RD(Route Distinguisher,路由标识)的用法与MPLS L3VPN相同。对于Kompella L2VPN,必须配置RD。RD配置后不能修改,除非先删除创建的VPN,然后重新创建。
· 创建Kompella方式下的MPLS L2VPN连接时,如果接入端口为SPC单板上的三层以太网子接口,则必须配置VPN的封装方式为VLAN模式,否则可能会影响报文的正确转发。
CE ID用于在一个VPN中唯一确定一个CE。为了方便配置,建议CE ID从1开始,采用连续自然数编号。
CE range表明当前VPN上最多可连接的CE数。在标签资源足够丰富的情况下(一般来说,标签资源总是足够丰富的),可以根据对此VPN规模发展的预计,把CE range设置得比实际需要大一些。这样当以后对VPN进行扩容,增加VPN中的CE数目时,就可以尽量少的修改配置。
为CE创建连接时,如果用户没有指定CE offset:
· 对于此CE的第一个连接,CE offset为执行ce命令时,通过default-offset参数指定的值;
· 对于其他连接,CE offset是上一个连接的CE offset+1;
· 在规划VPN时,建议CE ID编号从1顺序递增;然后在配置连接时按CE ID顺序配置,这样,大多数连接都可以省略ce-offset参数,使用缺省值,从而简化配置。
修改CE range只能把CE range变大,不能变小。例如:原来的CE range为10,则可以把它改为20,但如果想改为5,则会失败。把CE range改小的唯一方法是:删除这个CE,重新创建。
对VPN扩容时,如果原来设置的CE range比所需要的小,修改CE range不会导致原来业务的中断。例如:扩容后需要连接的CE数目为20,但CE range为10。此时可以把CE range修改为20。修改CE range时,为了保证原来的10个连接不中断,系统并不释放原来的标签块,重新申请大小为20的标签块,而是在原来的标签块之外,重新申请一个新的标签块,大小为10。
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
并进入MPLS-L2VPN视图 |
mpls l2vpn vpn-name |
- |
创建CE,并进入MPLS-L2VPN-CE视图 |
ce ce-name [ id ce-id [ range ce-range ] [ default-offset ce-offset ] ] |
必选 |
创建Kompella方式连接 |
connection [ ce-offset id ] interface interface-type interface-number [ tunnel-policy tunnel-policy-name ] |
必选 |
· 在路由器的接口上(如路由口或路由子接口)不能既使能VLL又使能MPLS功能。如果这样配置将会导致MPLS L2VPN和MPLS两种业务都出现异常。要恢复异常,只能将这两种业务的配置都取消掉。
· 一个三层以太网接口绑定了L2VPN之后,其对应的三层以太网子接口将不能再绑定L2VPN或VPLS实例;一个三层以太网子接口绑定了L2VPN之后,其对应的三层以太网接口将不能再绑定L2VPN或VPLS实例。
当SPC单板和SPE单板同时配置了MPLS L2VPN业务(包括VLL和VPLS)时,用户需要配置MPLS L2VPN混插功能,以保证两者能共同完成L2VPN业务转发。
当只有SPC单板单独工作时,请不要配置MPLS L2VPN混插功能,否则,会引起SPC单板上的HoVPN功能失效。
表1-12 配置MPLS L2VPN混插功能
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置MPLS L2VPN混插功能 |
vpn l2vpn mix |
可选 缺省情况下,MPLS L2VPN混插功能处于使能状态 |
· 当配置MPLS L2VPN混插功能时,SPC单板上的HoVPN功能失效;当配置HoVPN功能时,MPLS L2VPN混插功能失效。
· 当SPC单板和SPE单板同时工作时,如果想配置SPC单板的HoVPN功能,请使用undo vpn l2vpn mix命令。
· 有关HoVPN的配置请参见“MPLS配置指导”中的“MPLS L3VPN”。
在完成上述配置后,在任意视图下执行display命令可以显示配置后MPLS L2VPN的运行情况,通过查看显示信息验证配置的效果。
表1-13 MPLS L2VPN显示和维护
操作 |
命令 |
显示CCC连接信息 |
display ccc [ ccc-name ccc-name | type { local | remote } ] [ | { begin | exclude | include } regular-expression ] |
显示L2VPN的VC使用的接口信息 |
display l2vpn ccc-interface vc-type { all | bgp-vc | ccc | ldp-vc | static-vc } [ up | down ] [ | { begin | exclude | include } regular-expression ] |
显示路由器上配置的静态VC信息 |
display mpls static-l2vc [ interface interface-type interface-number ] [ | { begin | exclude | include } regular-expression ] |
显示路由器上Martini方式的虚电路VC |
display mpls l2vc[ interface interface-type interface-number [ service-instance instance-id ] | remote-info] [ | { begin | exclude | include } regular-expression ] |
显示Kompella方式的L2VPN连接信息 |
display mpls l2vpn connection [ vpn-name vpn-name [ remote-ce ce-id | down | up | verbose ] | summary | interface interface-type interface-number ] [ | { begin | exclude | include } regular-expression ] |
显示BGP路由表中的L2VPN信息 |
display bgp l2vpn { all | group [ group-name ] | peer [ [ ip-address ] verbose ] | route-distinguisher rd [ ce-id ce-id [ label-offset label-offset ] ] } [ | { begin | exclude | include } regular-expression ] |
显示PE上的L2VPN信息 |
display mpls l2vpn [ export-route-target-list | import-route-target-list | vpn-name vpn-name [ local-ce | remote-ce ] ] [ | { begin | exclude | include } regular-expression ] |
显示MPLS L2VPN的AC表项信息 |
display mpls l2vpn fib ac vpws [ interface interface-type interface-number [ service-instance service-instanceid ] ] [ slot slot-number ] [ | { begin | exclude | include } regular-expression ] |
显示MPLS L2VPN的PW表项信息 |
display mpls l2vpn fib pw vpws [ interface interface-type interface-number [ service-instance service-instanceid ] ] [ slot slot-number ] [ verbose ] [ | { begin | exclude | include } regular-expression ] |
显示接口上服务实例的信息 |
display service-instance interface interface-type interface-number [ service-instance instance-id ] [ | { begin | exclude | include } regular-expression ] |
显示PW模板的信息 |
display pw-class [ pw-class-name ] [ | { begin | exclude | include } regular-expression ] |
在完成上述配置后,在用户视图下执行复位BGP的L2VPN连接命令。
表1-14 复位L2VPN的BGP连接
操作 |
命令 |
复位BGP的L2VPN连接 |
reset bgp l2vpn { as-number | ip-address | all | external | internal } |
· CE与PE之间通过GigabitEthernet口相连。
· CE 1和CE 2之间建立CCC本地连接。
· 由于CCC的本地连接是双向的,因此只需要创建一条连接即可。
· PE设备上连接CE的接口不必配置IP地址。
图1-3 配置CCC本地连接组网图
(1) 配置CE 1
<Sysname> system-view
[Sysname] sysname CE1
[CE1] interface GigabitEthernet 4/1/1
[CE1-GigabitEthernet4/1/1] ip address 100.1.1.1 24
(2) 配置PE
# 配置LSR ID,全局使能MPLS。
<Sysname> system-view
[Sysname] sysname PE
[PE] interface loopback 0
[PE-LoopBack0] ip address 172.1.1.1 32
[PE-LoopBack0] quit
[PE] mpls lsr-id 172.1.1.1
[PE] mpls
[PE-mpls] quit
# 使能L2VPN和MPLS L2VPN。
[PE] l2vpn
[PE-l2vpn] mpls l2vpn
[PE-l2vpn] quit
# 配置接口GigabitEthernet 4/1/1。
[PE] interface GigabitEthernet 4/1/1
[PE-GigabitEthernet4/1/1] quit
# 配置接口GigabitEthernet 4/1/2。
[PE] interface GigabitEthernet 4/1/2
[PE-GigabitEthernet 4/1/2] quit
# 创建CE 1到CE 2的本地连接。
[PE] ccc ce1-ce2 interface GigabitEthernet 4/1/1 out-interface GigabitEthernet 4/1/2
(3) 配置CE 2
<Sysname> system-view
[Sysname] sysname CE2
[CE2] interface GigabitEthernet 4/1/1
[CE2-GigabitEthernet4/1/1] ip address 100.1.1.2 24
(4) 配置完成后的检验
# 配置完成后,在PE上查看CCC连接信息,可以看到建立了一条CCC本地连接。
[PE] display ccc
Total ccc vc : 1
Local ccc vc : 1, 1 up
Remote ccc vc : 0, 0 up
***Name : ce1-ce2
Type : local
State : up
Intf1 : GigabitEthernet4/1/1 (up)
Intf2 : GigabitEthernet4/1/2 (up)
# CE 1与CE 2之间能够ping通。
[CE1] ping 100.1.1.2
PING 100.1.1.2: 56 data bytes, press CTRL_C to break
Reply from 100.1.1.2: bytes=56 Sequence=1 ttl=255 time=180 ms
Reply from 100.1.1.2: bytes=56 Sequence=2 ttl=255 time=60 ms
Reply from 100.1.1.2: bytes=56 Sequence=3 ttl=255 time=10 ms
Reply from 100.1.1.2: bytes=56 Sequence=4 ttl=255 time=70 ms
Reply from 100.1.1.2: bytes=56 Sequence=5 ttl=255 time=60 ms
--- 100.1.1.2 ping statistics ---
5 packet(s) transmitted
5 packet(s) received
0.00% packet loss
round-trip min/avg/max = 10/76/180 ms
· CE与PE之间通过GE口相连。
· CE 1和CE 2之间建立CCC远程连接。
配置CCC远程连接的关键步骤包括:
· 在PE上创建一条CCC远程连接(不需要配置静态LSP)。
· PE上需要使能MPLS L2VPN,P设备上不需要使能MPLS L2VPN。
· 在P上配置两条静态LSP,用于双向传递报文。
图1-4 配置CCC远程连接组网图
接口 |
IP地址 |
设备 |
接口 |
IP地址 |
|
CE 1 |
GE4/1/1 |
100.1.1.1/24 |
P |
Loop0 |
10.0.0.2/32 |
PE 1 |
Loop0 |
10.0.0.1/32 |
|
GE4/1/1 |
10.2.2.2/24 |
|
GE4/1/2 |
10.1.1.1/24 |
|
GE4/1/2 |
10.1.1.2/24 |
CE 2 |
GE4/1/1 |
100.1.1.2/24 |
PE 2 |
Loop0 |
10.0.0.3/32 |
|
|
|
|
GE4/1/1 |
10.2.2.1/24 |
(1) 配置CE 1
<Sysname> system-view
[Sysname] sysname CE1
[CE1] interface GigabitEthernet 4/1/1
[CE1-GigabitEthernet4/1/1] ip address 100.1.1.1 24
(2) 配置PE 1
# 配置LSR ID,全局使能MPLS。
<Sysname> system-view
[Sysname] sysname PE1
[PE1] interface loopback 0
[PE1-LoopBack0] ip address 10.0.0.1 32
[PE1-LoopBack0] quit
[PE1] mpls lsr-id 10.0.0.1
[PE1] mpls
[PE1-mpls] quit
# 使能L2VPN和MPLS L2VPN。
[PE1] l2vpn
[PE1-l2vpn] mpls l2vpn
[PE1-l2vpn] quit
# 配置接口GigabitEthernet4/1/1。
[PE1] interface GigabitEthernet 4/1/1
[PE1-GigabitEthernet4/1/1] quit
# 配置接口GigabitEthernet4/1/2,使能MPLS。
[PE1] interface GigabitEthernet 4/1/2
[PE1-GigabitEthernet4/1/2] ip address 10.1.1.1 24
[PE1-GigabitEthernet4/1/2] mpls
[PE1-GigabitEthernet4/1/2] quit
# 创建CE 1到CE 2的远程连接:入接口为连接CE 1的接口,出接口为连接P的接口;入标签为100,出标签为200。
[PE1] ccc ce1-ce2 interface GigabitEthernet 4/1/1 in-label 100 out-label 200 nexthop 10.1.1.2
(3) 配置P
# 配置LSR ID,全局使能MPLS。
<Sysname> system-view
[Sysname] sysname P
[P] interface loopback 0
[P-LoopBack0] ip address 10.0.0.2 32
[P-LoopBack0] quit
[P] mpls lsr-id 10.0.0.2
[P] mpls
[P-mpls] quit
# 配置接口GigabitEthernet4/1/2,使能MPLS。
[P] interface GigabitEthernet 4/1/2
[P-GigabitEthernet4/1/2] ip address 10.1.1.2 24
[P-GigabitEthernet4/1/2] mpls
[P-GigabitEthernet4/1/2] quit
# 配置接口GigabitEthernet4/1/1,使能MPLS。
[P] interface GigabitEthernet 4/1/1
[P-GigabitEthernet4/1/1] ip address 10.2.2.2 24
[P-GigabitEthernet4/1/1] mpls
[P-GigabitEthernet4/1/1] quit
# 配置一条静态LSP用于转发由PE1去往PE2的报文。
[P] static-lsp transit pe1_pe2 incoming-interface GigabitEthernet 4/1/2 in-label 200 nexthop 10.2.2.1 out-label 201
# 配置另一条静态LSP用于转发由PE2去往PE1的报文。
[P] static-lsp transit pe2_pe1 incoming-interface GigabitEthernet 4/1/1 in-label 101 nexthop 10.1.1.1 out-label 100
(4) 配置PE 2
# 配置LSR ID,全局使能MPLS。
<Sysname> system-view
[Sysname] sysname PE2
[PE2] interface loopback 0
[PE2-LoopBack0] ip address 10.0.0.3 32
[PE2-LoopBack0] quit
[PE2] mpls lsr-id 10.0.0.3
[PE2] mpls
[PE2-mpls] quit
# 使能L2VPN和MPLS L2VPN。
[PE2] l2vpn
[PE2-l2vpn] mpls l2vpn
[PE2-l2vpn] quit
# 配置接口GigabitEthernet4/1/2。
[PE2] interface GigabitEthernet 4/1/2
[PE2-GigabitEthernet4/1/2] quit
# 配置接口GigabitEthernet4/1/1,使能MPLS。
[PE2] interface GigabitEthernet 4/1/1
[PE2-GigabitEthernet4/1/1] ip address 10.2.2.1 24
[PE2-GigabitEthernet4/1/1] mpls
[PE2-GigabitEthernet4/1/1] quit
# 创建CE2到CE1的远程连接:入接口为连接CE2的接口,出接口为连接P的接口;入标签为201,出标签为101。
[PE2] ccc ce2-ce1 interface GigabitEthernet 4/1/2 in-label 201 out-label 101 nexthop 10.2.2.2
(5) 配置CE 2
<Sysname> system-view
[Sysname] sysname CE2
[CE2] interface GigabitEthernet 4/1/1
[CE2-GigabitEthernet4/1/1] ip address 100.1.1.2 24
(6) 配置完成后的检验
# 配置完成后,在PE1上查看CCC连接信息,可以看到建立了一条CCC远程连接。
[PE1] display ccc
Total ccc vc : 1
Local ccc vc : 0, 0 up
Remote ccc vc : 1, 1 up
***Name : ce1-ce2
Type : remote
State : up
Intf : GigabitEthernet4/1/2 (up)
In-label : 100
Out-label : 200
nexthop : 10.2.2.2
# CE 1与CE 2之间能够ping通。
[CE1] ping 100.1.1.2
PING 100.1.1.2: 56 data bytes, press CTRL_C to break
Reply from 100.1.1.2: bytes=56 Sequence=1 ttl=255 time=180 ms
Reply from 100.1.1.2: bytes=56 Sequence=2 ttl=255 time=60 ms
Reply from 100.1.1.2: bytes=56 Sequence=3 ttl=255 time=10 ms
Reply from 100.1.1.2: bytes=56 Sequence=4 ttl=255 time=70 ms
Reply from 100.1.1.2: bytes=56 Sequence=5 ttl=255 time=60 ms
--- 100.1.1.2 ping statistics ---
5 packet(s) transmitted
5 packet(s) received
0.00% packet loss
round-trip min/avg/max = 10/76/180 ms
· CE与PE之间通过GE接口相连。
· CE 1和CE 2之间建立SVC方式的MPLS L2VPN。
图1-5 配置SVC方式MPLS L2VPN组网图
接口 |
IP地址 |
设备 |
接口 |
IP地址 |
|
CE 1 |
GE4/1/1 |
100.1.1.1/24 |
P |
Loop0 |
192.4.4.4/32 |
PE 1 |
Loop0 |
192.2.2.2/32 |
|
GE4/1/1 |
10.2.2.2/24 |
|
GE4/1/2 |
10.1.1.1/24 |
|
GE4/1/2 |
10.1.1.2/24 |
CE 2 |
GE4/1/1 |
100.1.1.2/24 |
PE 2 |
Loop0 |
192.3.3.3/32 |
|
|
|
|
GE4/1/1 |
10.2.2.1/24 |
主要的配置步骤可分为两部分:
· 在PE和P上配置MPLS基本转发能力:包括配置LSR ID、使能MPLS和LDP、在PE 1-P-PE 2之间运行IGP(本配置例中使用OSPF)以建立LSP。
· 建立SVC方式的MPLS L2VPN连接:包括在PE 1和PE 2上使能MPLS L2VPN、创建SVC连接并指定VC标签。
下面介绍具体的配置过程:
(1) 配置CE 1
<Sysname> system-view
[Sysname] sysname CE1
[CE1] interface GigabitEthernet 4/1/1
[CE1-GigabitEthernet4/1/1] ip address 100.1.1.1 24
(2) 配置PE 1
# 配置LSR ID,全局使能MPLS。
<Sysname> system-view
[Sysname] sysname PE1
[PE1] interface loopback 0
[PE1-LoopBack0] ip address 192.2.2.2 32
[PE1-LoopBack0] quit
[PE1] mpls lsr-id 192.2.2.2
[PE1] mpls
# 配置触发LSP的建立。
[PE1-mpls] lsp-trigger all
[PE1-mpls] quit
# 使能L2VPN和MPLS L2VPN。
[PE1] l2vpn
[PE1-l2vpn] mpls l2vpn
[PE1-l2vpn] quit
# 全局使能LDP。
[PE1] mpls ldp
[PE1-mpls-ldp] quit
# 配置连接P的接口GigabitEthernet4/1/2,在此接口上使能LDP。
[PE1] interface GigabitEthernet 4/1/2
[PE1-GigabitEthernet4/1/2] ip address 10.1.1.1 24
[PE1-GigabitEthernet4/1/2] mpls
[PE1-GigabitEthernet4/1/2] mpls ldp
[PE1-GigabitEthernet4/1/2] quit
# 在PE 1上运行OSPF,用于建立LSP。
[PE1] ospf
[PE1-ospf-1] area 0
[PE1-ospf-1-area-0.0.0.0] network 10.1.1.1 0.0.0.255
[PE1-ospf-1-area-0.0.0.0] network 192.2.2.2 0.0.0.0
[PE1-ospf-1-area-0.0.0.0] quit
[PE1-ospf-1] quit
# 在接入CE 1的接口GigabitEthernet4/1/1上创建一条SVC方式MPLS L2VPN连接。此接口不需配置IP地址。
[PE1] interface GigabitEthernet 4/1/1
[PE1-GigabitEthernet4/1/1] mpls static-l2vc destination 192.3.3.3 transmit-vpn-label 100 receive-vpn-label 200
[PE1-GigabitEthernet4/1/1] quit
(3) 配置P
# 配置LSR ID,全局使能MPLS。
<Sysname> system-view
[Sysname] sysname P
[P] interface loopback 0
[P-LoopBack0] ip address 192.4.4.4 32
[P-LoopBack0] quit
[P] mpls lsr-id 192.4.4.4
[P] mpls
# 全局使能LDP。
[P] mpls ldp
[P-mpls-ldp] quit
# 配置连接PE 1的接口GigabitEthernet4/1/2,在此接口上使能LDP。
[P] interface GigabitEthernet 4/1/2
[P-GigabitEthernet4/1/2] ip address 10.1.1.2 24
[P-GigabitEthernet4/1/2] mpls
[P-GigabitEthernet4/1/2] mpls ldp
[P-GigabitEthernet4/1/2] quit
# 配置连接PE 2的接口GigabitEthernet4/1/1,在此接口上使能LDP。
[P] interface GigabitEthernet 4/1/1
[P-GigabitEthernet4/1/1] ip address 10.2.2.2 24
[P-GigabitEthernet4/1/1] mpls
[P-GigabitEthernet4/1/1] mpls ldp
[P-GigabitEthernet4/1/1] quit
# 在P上运行OSPF,用于建立LSP。
[P] ospf
[P-ospf-1] area 0
[P-ospf-1-area-0.0.0.0] network 10.1.1.2 0.0.0.255
[P-ospf-1-area-0.0.0.0] network 10.2.2.2 0.0.0.255
[P-ospf-1-area-0.0.0.0] network 192.4.4.4 0.0.0.0
[P-ospf-1-area-0.0.0.0] quit
[P-ospf-1] quit
(4) 配置PE 2
# 配置LSR ID,全局使能MPLS。
<Sysname> system-view
[Sysname] sysname PE2
[PE2] interface loopback 0
[PE2-LoopBack0] ip address 192.3.3.3 32
[PE2-LoopBack0] quit
[PE2] mpls lsr-id 192.3.3.3
[PE2] mpls
# 配置触发LSP的建立。
[PE2-mpls] lsp-trigger all
[PE2-mpls] quit
# 使能L2VPN和MPLS L2VPN。
[PE2] l2vpn
[PE2-l2vpn] mpls l2vpn
[PE2-l2vpn] quit
# 全局使能LDP。
[PE2] mpls ldp
[PE2-mpls-ldp] quit
# 配置连接P的接口GigabitEthernet4/1/1,在此接口上使能LDP。
[PE2] interface GigabitEthernet 4/1/1
[PE2-GigabitEthernet4/1/1] ip address 10.2.2.1 24
[PE2-GigabitEthernet4/1/1] mpls
[PE2-GigabitEthernet4/1/1] mpls ldp
[PE2-GigabitEthernet4/1/1] quit
# 在PE 2上运行OSPF,用于建立LSP。
[PE2] ospf
[PE2-ospf-1] area 0
[PE2-ospf-1-area-0.0.0.0] network 10.2.2.1 0.0.0.255
[PE2-ospf-1-area-0.0.0.0] network 192.3.3.3 0.0.0.0
[PE2-ospf-1-area-0.0.0.0] quit
[PE2-ospf-1] quit
# 在接入CE 2的接口GigabitEthernet4/1/2上创建一条SVC方式MPLS L2VPN连接。此接口不需配置IP地址。
[PE2] interface GigabitEthernet 4/1/2
[PE2-GigabitEthernet4/1/2] mpls static-l2vc destination 192.2.2.2 transmit-vpn-label 200 receive-vpn-label 100
[PE2-GigabitEthernet4/1/2] quit
(5) 配置CE 2
<Sysname> system-view
[Sysname] sysname CE2
[CE2] interface GigabitEthernet 4/1/1
[CE2-GigabitEthernet4/1/1] ip address 100.1.1.2 24
(6) 配置完成后的检验
# 在PE 1上查看SVC的L2VPN连接信息,可以看到建立了一条L2VPN连接。
[PE1] display mpls static-l2vc
Total connections: 1, 1 up, 0 down
ce-intf state destination tr-label rcv-label tnl-policy
GigabitEthernet4/1/1 up 192.3.3.3 100 200 default
# 在PE2上也可以看到SVC的L2VPN连接。
[PE2] display mpls static-l2vc
Total connections: 1, 1 up, 0 down
ce-intf state destination tr-label rcv-label tnl-policy
GigabitEthernet4/1/2 up 192.2.2.2 200 100 default
# CE 1与CE 2之间能够ping通。
[CE1] ping 100.1.1.2
PING 100.1.1.2: 56 data bytes, press CTRL_C to break
Reply from 100.1.1.2: bytes=56 Sequence=1 ttl=255 time=150 ms
Reply from 100.1.1.2: bytes=56 Sequence=2 ttl=255 time=130 ms
Reply from 100.1.1.2: bytes=56 Sequence=3 ttl=255 time=130 ms
Reply from 100.1.1.2: bytes=56 Sequence=4 ttl=255 time=140 ms
Reply from 100.1.1.2: bytes=56 Sequence=5 ttl=255 time=80 ms
--- 100.1.1.2 ping statistics ---
5 packet(s) transmitted
5 packet(s) received
0.00% packet loss
round-trip min/avg/max = 80/126/150 ms
· CE与PE之间通过GE接口相连。
· CE 1和CE 2之间建立Martini方式的MPLS L2VPN。
图1-6 配置Martini方式MPLS L2VPN组网图
接口 |
IP地址 |
设备 |
接口 |
IP地址 |
|
CE 1 |
GE4/1/1 |
100.1.1.1/24 |
P |
Loop0 |
192.4.4.4/32 |
PE 1 |
Loop0 |
192.2.2.2/32 |
|
GE4/1/1 |
10.1.1.2/24 |
|
GE4/1/2 |
10.1.1.1/24 |
|
GE4/1/2 |
10.2.2.2/24 |
CE 2 |
GE4/1/1 |
100.1.1.2/24 |
PE 2 |
Loop0 |
192.3.3.3/32 |
|
|
|
|
GE4/1/2 |
10.2.2.1/24 |
(1) 配置CE 1
<Sysname> system-view
[Sysname] sysname CE1
[CE1] interface GigabitEthernet4/1/1
[CE1-GigabitEthernet4/1/1] ip address 100.1.1.1 24
(2) 配置PE 1
# 配置LSR ID,全局使能MPLS。
<Sysname> system-view
[Sysname] sysname PE1
[PE1] interface loopback 0
[PE1-LoopBack0] ip address 192.2.2.2 32
[PE1-LoopBack0] quit
[PE1] mpls lsr-id 192.2.2.2
[PE1] mpls
# 配置触发LSP的建立。
[PE1-mpls] lsp-trigger all
[PE1-mpls] quit
# 使能L2VPN和MPLS L2VPN。
[PE1] l2vpn
[PE1-l2vpn] mpls l2vpn
[PE1-l2vpn] quit
# 全局使能LDP。
[PE1] mpls ldp
[PE1-mpls-ldp] quit
# 配置PE 1与PE 2建立LDP远程会话。
[PE1] mpls ldp remote-peer 1
[PE1-mpls-ldp-remote-1] remote-ip 192.3.3.3
[PE1-mpls-ldp-remote-1] quit
# 配置连接P的接口GigabitEthernet4/1/2,在此接口上使能LDP。
[PE1] interface GigabitEthernet4/1/2
[PE1-GigabitEthernet4/1/2] ip address 10.1.1.1 24
[PE1-GigabitEthernet4/1/2] mpls
[PE1-GigabitEthernet4/1/2] mpls ldp
[PE1-GigabitEthernet4/1/2] quit
# 在PE 1上运行OSPF,用于建立LSP。
[PE1] ospf
[PE1-ospf-1] area 0
[PE1-ospf-1-area-0.0.0.0] network 10.1.1.1 0.0.0.255
[PE1-ospf-1-area-0.0.0.0] network 192.2.2.2 0.0.0.0
[PE1-ospf-1-area-0.0.0.0] quit
[PE1-ospf-1] quit
# 在接入CE 1的接口GigabitEthernet4/1/1上创建L2VPN连接。此接口不需配置IP地址。
[PE1] interface GigabitEthernet4/1/1
[PE1-GigabitEthernet4/1/1] mpls l2vc 192.3.3.3 101
[PE1-GigabitEthernet4/1/1] quit
(3) 配置P
# 配置LSR ID,全局使能MPLS。
<Sysname> system-view
[Sysname] sysname P
[P] interface loopback 0
[P-LoopBack0] ip address 192.4.4.4 32
[P-LoopBack0] quit
[P] mpls lsr-id 192.4.4.4
[P] mpls
# 全局使能LDP。
[P] mpls ldp
[P-mpls-ldp] quit
# 配置连接PE 1的接口GigabitEthernet4/1/1,在此接口上使能LDP。
[P] interface GigabitEthernet4/1/1
[P-GigabitEthernet4/1/1] ip address 10.1.1.2 24
[P-GigabitEthernet4/1/1] mpls
[P-GigabitEthernet4/1/1] mpls ldp
[P-GigabitEthernet4/1/1] quit
# 配置连接PE 2的接口GigabitEthernet4/1/2,在此接口上使能LDP。
[P] interface GigabitEthernet4/1/2
[P-GigabitEthernet4/1/2] ip address 10.2.2.2 24
[P-GigabitEthernet4/1/2] mpls
[P-GigabitEthernet4/1/2] mpls ldp
[P-GigabitEthernet4/1/2] quit
# 在P上运行OSPF,用于建立LSP。
[P] ospf
[P-ospf-1] area 0
[P-ospf-1-area-0.0.0.0] network 10.1.1.2 0.0.0.255
[P-ospf-1-area-0.0.0.0] network 10.2.2.2 0.0.0.255
[P-ospf-1-area-0.0.0.0] network 192.4.4.4 0.0.0.0
[P-ospf-1-area-0.0.0.0] quit
[P-ospf-1] quit
(4) 配置PE 2
# 配置LSR ID,全局使能MPLS。
<Sysname> system-view
[Sysname] sysname PE2
[PE2] interface loopback 0
[PE2-LoopBack0] ip address 192.3.3.3 32
[PE2-LoopBack0] quit
[PE2] mpls lsr-id 192.3.3.3
[PE2] mpls
# 配置触发LSP的建立。
[PE2-mpls] lsp-trigger all
[PE2-mpls] quit
# 使能L2VPN和MPLS L2VPN。
[PE2] l2vpn
[PE2-l2vpn] mpls l2vpn
[PE2-l2vpn] quit
# 全局使能LDP。
[PE2] mpls ldp
[PE2-mpls-ldp] quit
# 配置PE 2与PE 1建立LDP远程会话。
[PE2] mpls ldp remote-peer 2
[PE2-mpls-ldp-remote-2] remote-ip 192.2.2.2
[PE2-mpls-ldp-remote-2] quit
# 配置连接P的接口GigabitEthernet4/1/2,在此接口上使能LDP。
[PE2] interface GigabitEthernet4/1/2
[PE2-GigabitEthernet4/1/2] ip address 10.2.2.1 24
[PE2-GigabitEthernet4/1/2] mpls
[PE2-GigabitEthernet4/1/2] mpls ldp
[PE2-GigabitEthernet4/1/2] quit
# 在PE 2上运行OSPF,用于建立LSP。
[PE2] ospf
[PE2-ospf-1] area 0
[PE2-ospf-1-area-0.0.0.0] network 192.3.3.3 0.0.0.0
[PE2-ospf-1-area-0.0.0.0] network 10.2.2.0 0.0.0.255
[PE2-ospf-1-area-0.0.0.0] quit
[PE2-ospf-1] quit
# 在接入CE 2的接口GigabitEthernet4/1/1上创建L2VPN连接。此接口不需配置IP地址。
[PE2] interface GigabitEthernet4/1/1
[PE2-GigabitEthernet4/1/1] mpls l2vc 192.2.2.2 101
[PE2-GigabitEthernet4/1/1] quit
(5) 配置CE 2
<Sysname> system-view
[Sysname] sysname CE2
[CE2] interface GigabitEthernet4/1/1
[CE2-GigabitEthernet4/1/1] ip address 100.1.1.2 24
(6) 配置完成后的检验
# 在PE 1上查看L2VPN连接信息,可以看到建立了一条L2VC。
[PE1] display mpls l2vc
Total ldp vc : 1 1 up 0 down 0 blocked
Transport Client VC Local Remote
VC ID Intf State VC Label VC Label
101 GE4/1/1 up 1024 1025
# 在PE 2上也可以看到L2VC连接。
[PE2] display mpls l2vc
Total ldp vc : 1 1 up 0 down 0 blocked
Transport Client VC Local Remote
VC ID Intf State VC Label VC Label
101 GE4/1/1 up 1025 1024
# CE 1与CE 2之间能够ping通。
[CE1] ping 100.1.1.2
PING 100.1.1.2: 56 data bytes, press CTRL_C to break
Reply from 100.1.1.2: bytes=56 Sequence=1 ttl=255 time=30 ms
Reply from 100.1.1.2: bytes=56 Sequence=2 ttl=255 time=60 ms
Reply from 100.1.1.2: bytes=56 Sequence=3 ttl=255 time=50 ms
Reply from 100.1.1.2: bytes=56 Sequence=4 ttl=255 time=40 ms
Reply from 100.1.1.2: bytes=56 Sequence=5 ttl=255 time=70 ms
--- 100.1.1.2 ping statistics ---
5 packet(s) transmitted
5 packet(s) received
0.00% packet loss
round-trip min/avg/max = 30/50/70 ms
· CE与PE之间通过GE接口相连。
· CE 1和CE 2之间建立Kompella方式的MPLS L2VPN。
图1-7 配置Kompella方式MPLS L2VPN组网图
接口 |
IP地址 |
设备 |
接口 |
IP地址 |
|
CE 1 |
GE4/1/1 |
30.1.1.1/24 |
P |
Loop0 |
2.2.2.9/32 |
PE 1 |
Loop0 |
1.1.1.9/32 |
|
GE4/1/1 |
168.1.1.2/24 |
|
GE4/1/2 |
168.1.1.1/24 |
|
GE4/1/2 |
169.1.1.1/24 |
CE 2 |
GE4/1/1 |
30.1.1.2/24 |
PE 2 |
Loop0 |
3.3.3.9/32 |
|
|
|
|
GE4/1/1 |
169.1.1.2/24 |
(1) 在MPLS骨干网上配置IGP
本例中使用OSPF,具体配置步骤略。
配置完成后,在各LSR上执行display ip routing-table命令可以看到都已学到彼此LSR ID的路由;执行display ospf peer命令可以看到建立了OSPF邻居关系,状态为FULL。
(2) 配置MPLS基本能力和LDP,建立LDP LSP
具体配置步骤略。
配置完成后,在各LSR上执行display mpls ldp session和display mpls ldp peer命令可以看到LDP会话和对等体的建立情况,执行display mpls lsp命令可以看到LSP的建立情况。
(3) 配置BGP的L2VPN能力
# 配置PE 1。
<Sysname> system-view
[Sysname] sysname PE1
[PE1] l2vpn
[PE1-l2vpn] mpls l2vpn
[PE1-l2vpn] quit
[PE1] bgp 100
[PE1-bgp] peer 3.3.3.9 as-number 100
[PE1-bgp] peer 3.3.3.9 connect-interface loopback 0
[PE1-bgp] l2vpn-family
[PE1-bgp-af-l2vpn] policy vpn-target
[PE1-bgp-af-l2vpn] peer 3.3.3.9 enable
[PE1-bgp-af-l2vpn] quit
[PE1-bgp] quit
# 配置PE 2。
<Sysname> system-view
[Sysname] sysname PE2
[PE2] l2vpn
[PE2-l2vpn] mpls l2vpn
[PE2-l2vpn] quit
[PE2] bgp 100
[PE2-bgp] peer 1.1.1.9 as-number 100
[PE2-bgp] peer 1.1.1.9 connect-interface loopback 0
[PE2-bgp] l2vpn-family
[PE2-bgp-af-l2vpn] policy vpn-target
[PE2-bgp-af-l2vpn] peer 1.1.1.9 enable
[PE2-bgp-af-l2vpn] quit
[PE2-bgp] quit
# 配置完成后,在PE 1和PE 2上执行display bgp l2vpn peer命令可以看到PE之间建立了对等体关系,状态为Established。
以PE 1为例:
[PE1] display bgp l2vpn peer
BGP local router ID : 1.1.1.9
Local AS number : 100
Total number of peers : 1 Peers in established state : 1
Peer V AS MsgRcvd MsgSent OutQ PrefRcv Up/Down State
3.3.3.9 4 100 2 5 0 0 00:01:07 Established
(4) 配置L2VPN和CE连接
# 配置PE 1。
[PE1] mpls l2vpn vpn1 encapsulation ethernet
[PE1-mpls-l2vpn-vpn1] route-distinguisher 100:1
[PE1-mpls-l2vpn-vpn1] vpn-target 1:1
[PE1-mpls-l2vpn-vpn1] ce ce1 id 1 range 10
[PE1-mpls-l2vpn-ce-vpn1-ce1] connection ce-offset 2 interface GigabitEthernet4/1/1
[PE1-mpls-l2vpn-ce-vpn1-ce1] quit
[PE1-mpls-l2vpn-vpn1] quit
# 配置PE 2。
[PE2] mpls l2vpn vpn1 encapsulation ethernet
[PE2-mpls-l2vpn-vpn1] route-distinguisher 100:1
[PE2-mpls-l2vpn-vpn1] vpn-target 1:1
[PE2-mpls-l2vpn-vpn1] ce ce2 id 2 range 10
[PE2-mpls-l2vpn-ce-vpn1-ce2] connection ce-offset 1 interface GigabitEthernet4/1/2
[PE2-mpls-l2vpn-ce-vpn1-ce2] quit
[PE2-mpls-l2vpn-vpn1] quit
(5) 配置完成后的检验
# 完成上述配置后,在PE上执行display mpls l2vpn connection命令,可以看到建立了一条L2VPN连接,状态为up。
以PE 1为例:
[PE1] display mpls l2vpn connection
1 total connections,
connections: 1 up, 0 down, 0 local, 1 remote, 0 unknown
VPN name: vpn1,
1 total connections,
connections: 1 up, 0 down, 0 local, 1 remote, 0 unknown
CE name: ce1, id: 1,
Rid type status peer-id route-distinguisher intf
2 rmt up 3.3.3.9 100:1 GigabitEthernet4/1/2
# CE 1与CE 2之间能够ping通。
[CE1] ping 30.1.1.2
PING 30.1.1.2: 56 data bytes, press CTRL_C to break
Reply from 30.1.1.2: bytes=56 Sequence=1 ttl=255 time=90 ms
Reply from 30.1.1.2: bytes=56 Sequence=2 ttl=255 time=77 ms
Reply from 30.1.1.2: bytes=56 Sequence=3 ttl=255 time=34 ms
Reply from 30.1.1.2: bytes=56 Sequence=4 ttl=255 time=46 ms
Reply from 30.1.1.2: bytes=56 Sequence=5 ttl=255 time=94 ms
--- 30.1.1.2 ping statistics ---
5 packet(s) transmitted
5 packet(s) received
0.00% packet loss
round-trip min/avg/max = 34/68/94 ms
CE 1和CE 2之间建立Kompella方式本地连接。
图1-8 配置Kompella方式本地连接组网图
(1) 配置PE
# 配置MPLS基本能力。
具体配置步骤略。
# 配置L2VPN和CE连接。
<Sysname> system-view
[Sysname] sysname PE
[PE] l2vpn
[PE-l2vpn] mpls l2vpn
[PE-l2vpn] quit
[PE] mpls l2vpn vpn1 encapsulation ethernet
[PE-mpls-l2vpn-vpn1] route-distinguisher 100:1
[PE-mpls-l2vpn-vpn1] vpn-target 111:1
[PE-mpls-l2vpn-vpn1] ce ce1 id 1
[PE-mpls-l2vpn-ce-vpn1-ce1] connection ce-offset 2 interface GigabitEthernet4/1/1
[PE-mpls-l2vpn-ce-vpn1-ce1] quit
[PE-mpls-l2vpn-vpn1] ce ce2 id 2
[PE-mpls-l2vpn-ce-vpn1-ce2] connection ce-offset 1 interface GigabitEthernet4/1/2
[PE-mpls-l2vpn-vpn1] quit
(2) 配置完成后的检验
# 完成上述配置后,在PE上执行display mpls l2vpn connection命令,可以看到建立了两条L2VPN的本地连接,状态为up。
[PE] display mpls l2vpn connection
2 total connections,
connections: 2 up, 0 down, 2 local, 0 remote, 0 unknown
VPN name: vpn1,
2 total connections,
connections: 2 up, 0 down, 2 local, 0 remote, 0 unknown
CE name: ce1, id: 1,
Rid type status peer-id route-distinguisher intf
2 loc up --- --- GigabitEthernet4/1/1
CE name: ce2, id: 2,
Rid type status peer-id route-distinguisher intf
1 loc up --- --- GigabitEthernet4/1/2
# CE 1与CE 2之间能够ping通。
[CE1] ping 30.1.1.2
PING 30.1.1.2: 56 data bytes, press CTRL_C to break
Reply from 30.1.1.2: bytes=56 Sequence=1 ttl=255 time=90 ms
Reply from 30.1.1.2: bytes=56 Sequence=2 ttl=255 time=77 ms
Reply from 30.1.1.2: bytes=56 Sequence=3 ttl=255 time=34 ms
Reply from 30.1.1.2: bytes=56 Sequence=4 ttl=255 time=46 ms
Reply from 30.1.1.2: bytes=56 Sequence=5 ttl=255 time=94 ms
--- 30.1.1.2 ping statistics ---
5 packet(s) transmitted
5 packet(s) received
0.00% packet loss
round-trip min/avg/max = 34/68/94 ms
L2VPN配置后,Ping对端失败,查看VC状态,发现VC状态为down,Remote值为无效值。
VC状态为down可能是因为两端封装类型不一致。
· 查看本端和对端PE设备配置的封装类型是否一致,如果配置的封装类型不一样,连接将失败。
· 检查两端是否已配置了Remote参数,并正确设置了对端的地址。
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!