05-MPLS L2VPN配置
本章节下载: 05-MPLS L2VPN配置 (435.38 KB)
目 录
1.4.1 配置CE侧接口的封装类型为Ethernet 1-6
1.7 配置Martini方式MPLS L2VPN. 1-8
1.7.3 配置在三层接口下创建Martini方式的MPLS L2VPN连接.. 1-9
1.7.4 配置在服务实例下创建Martini方式的MPLS L2VPN连接.. 1-9
1.8 配置Kompella方式MPLS L2VPN. 1-10
1.8.2 配置Kompella方式MPLS L2VPN. 1-11
1.11.2 配置SVC方式MPLS L2VPN示例.. 1-17
1.11.3 在VLAN接口下配置Martini方式MPLS L2VPN示例.. 1-20
1.11.4 在服务实例下配置Martini方式MPLS L2VPN连接示例.. 1-23
1.11.5 配置Kompella方式MPLS L2VPN示例.. 1-27
l 本章所指的路由器代表了一般意义下的路由器,以及运行了路由协议的三层交换机。为提高可读性,在手册的描述中将不另行说明。
l MPLS L2VPN既可以提供点到点的连接,也可以提供多点间的连接。本章只介绍提供点到点连接的MPLS L2VPN技术。提供多点间连接的MPLS L2VPN技术,请参见“MPLS配置指导”中的“VPLS”。
传统的基于ATM或Frame Relay(帧中继,以下简称FR)的VPN(Virtual Private Network,虚拟专用网)应用非常广泛,它们能在不同VPN间共享运营商的网络结构。这种VPN的不足在于:
l 依赖于专用的介质(如ATM或FR):为提供基于ATM的VPN服务,运营商必须建立覆盖全部服务范围的ATM网络;为提供基于FR的VPN服务,又需要建立覆盖全部服务范围的FR网络,在网络建设上造成浪费。
l 部署复杂:尤其是向已有的VPN加入新的Site(站点)时,需要同时修改所有接入此VPN站点的边缘节点的配置。
由于以上缺点,新的VPN替代方案应运而生,MPLS L2VPN就是其中的一种。
MPLS L2VPN提供基于MPLS(Multiprotocol Label Switching,多协议标签交换)网络的二层VPN服务,使运营商可以在统一的MPLS网络上提供基于不同数据链路层的二层VPN,包括ATM、FR、VLAN、Ethernet、PPP等。
简单来说,MPLS L2VPN就是在MPLS网络上透明传输用户二层数据。从用户的角度来看,MPLS网络是一个二层交换网络,可以在不同节点间建立二层连接。
以ATM为例,每个用户边缘设备(Customer Edge,CE)配置一条ATM虚电路(Virtual Circuit,VC),通过MPLS网络与远端CE相连,这与通过ATM网络实现互联类似。
图1-1 MPLS L2VPN组网示意图
相对于MPLS L3VPN,MPLS L2VPN具有以下优点:
l 可扩展性强:MPLS L2VPN只建立二层连接关系,不引入和管理用户的路由信息。这大大减轻了PE(Provider Edge,服务提供商边缘设备)甚至整个SP(Service Provider,服务提供商)网络的负担,使服务提供商能支持更多的VPN和接入更多的用户。
l 可靠性和私网路由的安全性得到保证:由于不引入用户的路由信息,MPLS L2VPN不能获得和处理用户路由,保证了用户VPN路由的安全。
l 支持多种网络层协议:包括IP、IPX、SNA等。
在MPLS L2VPN中,CE、PE、P的概念与MPLS L3VPN一样,原理也相似。
l CE(Customer Edge)设备:用户网络边缘设备,有接口直接与SP相连。CE可以是路由器或交换机,也可以是一台主机。CE“感知”不到VPN的存在,也不需要必须支持MPLS。
l PE(Provider Edge)路由器:服务提供商边缘路由器,是服务提供商网络的边缘设备,与用户的CE直接相连。在MPLS网络中,对VPN的所有处理都发生在PE上。
l P(Provider)路由器:服务提供商网络中的骨干路由器,不与CE直接相连。P设备只需要具备基本MPLS转发能力。
MPLS L2VPN通过标签栈实现用户报文在MPLS网络中的透明传送:
l 外层标签(称为Tunnel标签)用于将报文从一个PE传递到另一个PE;
l 内层标签(称为VC标签)用于区分不同VPN中的不同连接;
l 接收方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主要有以下几种实现方式:
l CCC(Circuit Cross Connect,电路交叉连接)和SVC(Static Virtual Circuit,静态虚拟电路):两种采用静态配置VC标签的方式来实现MPLS L2VPN的方法。
l Martini方式:通过建立点到点链路来实现MPLS L2VPN的方法,它以LDP(Label Distribution Protocol,标签分发协议)为信令协议来传递双方的VC标签。
l 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连接有两种:本地连接和远程连接。
l 本地连接:在两个本地CE之间建立的连接,即两个CE连在同一个PE上。PE的作用类似二层交换机,可以直接完成交换,不需要配置静态LSP。
l 远程连接:在本地CE和远程CE之间建立的连接,即两个CE连在不同的PE上。
l 目前,设备仅支持CCC方式的远程连接。
l 远程连接中的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组网具有极大的灵活性。
表1-1 MPLS L2VPN配置任务简介
操作 | 说明 | 详细配置 |
配置MPLS L2VPN | 必选 | |
配置CE侧接口 | 必选 | |
配置CCC方式MPLS L2VPN | 选择其一 根据MPLS L2VPN的实现方式,选择相应的配置方法 | |
配置SVC方式MPLS L2VPN | ||
配置Martini方式MPLS L2VPN | ||
配置Kompella方式MPLS L2VPN | ||
检测VC | 可选 |
MPLS L2VPN有多种实现方式,用户可以根据实际需求选择合适的组网方式。但不论采用哪种方式,以下三项配置都是必须的:
l 配置MPLS基本能力
l 使能L2VPN
l 使能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 | mpls l2vpn | 必选 缺省情况下,MPLS L2VPN功能处于关闭状态 |
CE侧接口为PE设备上与CE相连的接口。
CE侧接口的封装类型有如下两种:
l Ethernet
l VLAN
l 当接口类型为以太网端口时,封装类型为Ethernet。有关以太网端口的配置请参见“二层技术-以太网交换配置指导”中的“以太网端口”。
l 当接口类型为VLAN接口时,并且链路类型为Access时,封装类型为Ethernet,有关VLAN接口和链路类型的配置请参见“二层技术-以太网交换配置指导”中的“VLAN”。
当接口类型为VLAN接口时,并且链路类型为Trunk或Hybrid时,封装类型为VLAN,其中该接口所属的VLAN ID与CE的VLAN ID一致。有关VLAN接口和链路类型的配置请参见“二层技术-以太网交换配置指导”中的“VLAN”。
在配置CCC L2VPN之前,需完成以下任务:
l 对MPLS骨干网(PE、P)配置MPLS基本能力
l 对MPLS骨干网PE路由器上使能MPLS L2VPN,P路由器上不需要使能MPLS L2VPN
在配置CCC L2VPN之前,需准备以下数据:
l CCC连接的名称
l CCC连接的入接口类型和编号、下一跳地址或出接口类型和编号、CCC连接沿途LSR的入标签值和出标签值
(1) PE的配置
表1-3 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 ] | 必选 |
l CCC方式下,PE发往CE的报文都会携带VLAN Tag,组网时需对CE上连接PE的端口进行配置,使其可接收携带VLAN Tag的报文,关于端口的配置方法请参见“二层技术-以太网交换”中的“VLAN配置”。
l 每个CCC远程连接不需要配置两条静态LSP,仅需要为它配置入标签和出标签,入标签为此CCC连接独占,相当于配置了静态LSP。
l 只有出接口连接的链路是点到点链路时,才能够使用out-interface参数指定出接口;如果出接口连接的链路不是点到点链路,如出接口类型为三层以太网接口、VLAN接口或三层聚合接口,则必须使用nexthop参数指定下一跳IP地址。
(2) P的配置
表1-4 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 | 必选 |
l 使用CCC时,PE路由器上不需要配置静态LSP。但PE之间的所有P路由器上需要配置双向的转发静态LSP,用于专门传输CCC连接的数据。
l 有关配置静态LSP的命令请参见“MPLS命令参考”中的“MPLS基本配置”。
SVC方式MPLS L2VPN不使用信令协议传输L2VPN信息,数据是通过隧道在PE之间传递。
SVC支持的隧道类型包括LDP LSP、CR-LSP,缺省情况下使用LDP LSP隧道。
在配置SVC方式MPLS L2VPN之前,需完成以下任务:
l 对MPLS骨干网(PE、P)配置IGP,实现骨干网的IP连通性
l 对MPLS骨干网(PE、P)配置MPLS基本能力
l 对PE配置MPLS L2VPN
l 对MPLS骨干网(PE、P)配置MPLS LDP,建立LDP LSP
l 根据使用的隧道策略,在PE之间建立相应类型的隧道
在配置SVC方式MPLS L2VPN之前,需准备以下数据:
l 接入CE的接口类型和编号
l SVC的目的LSR ID
l L2VPN连接的收、发标签值
l SVC的隧道策略
下述配置需要在PE上进行。
表1-5 配置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 ] * | 必选 |
Martini方式使用扩展的LDP传递二层信息和VC标签。配置Martini方式的MPLS L2VPN时需要:
(1) 配置远端对等体
Martini方式的MPLS L2VPN中,需要在PE之间交换VC标签。由于交换VC标签的两个PE可能不是直接相连的,所以需要在PE之间建立LDP远端会话,以便在这个会话上传递VC FEC和VC标签。
(2) 创建Martini方式MPLS L2VPN连接
用户可以通过以下两种方式创建Martini方式的MPLS L2VPN连接:
l 三层接口下创建:在三层接口下创建Martini方式的MPLS L2VPN连接后,从该接口接收到的报文将通过创建的MPLS L2VPN连接转发。如果三层接口为VLAN接口,则不同二层以太网接口接收的相同VLAN Tag的报文均通过创建的MPLS L2VPN连接转发,即只能根据接收报文中的VLAN Tag匹配绑定的MPLS L2VPN连接,无法区分不同二层以太网接口连接的不同用户和业务。三层接口连接的用户都通过同一个MPLS L2VPN连接转发报文时,可以采用此方式。
l 服务实例(Service Instance)下创建:在服务实例下创建Martini方式的MPLS L2VPN连接后,设备根据二层以太网接口上创建的服务实例对该接口接收到的报文进行匹配,与服务实例匹配的报文将通过创建的MPLS L2VPN连接转发。服务实例提供了多种报文匹配规则(包括接口接收到的所有报文、所有携带VLAN Tag的报文和所有不携带VLAN Tag的报文等),为报文接入MPLS L2VPN连接提供了更加灵活的方式。VLAN接口连接的用户需要通过不同的MPLS L2VPN连接转发报文时,可以采用此方式。服务实例的详细介绍请参见“MPLS配置指导”中的“VPLS”。
在配置Martini方式MPLS L2VPN之前,需完成以下任务:
l 对MPLS骨干网(PE、P)配置IGP,实现骨干网的IP连通性
l 对MPLS骨干网(PE、P)配置MPLS基本能力
l 对PE配置MPLS L2VPN
l 对MPLS骨干网(PE、P)配置MPLS LDP能力,建立LDP LSP
在配置Martini方式MPLS L2VPN之前,需准备以下数据:
l 接入CE的接口类型和接口编号
l L2VPN连接的目的地址和PW ID(即VC ID)
l PW属性模板
下述配置需要在PE上进行。
操作 | 命令 | 说明 |
进入系统视图 | system-view | - |
配置远端对等体 | mpls ldp remote-peer remote-peer-name | 必选 |
remote-ip ip-address | 必选 |
有关远端对等体的配置请参见“MPLS配置指导”中的“MPLS基本配置”。
下述配置需要在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 ] ] * | 必选 |
Martini方式连接命令主要参数有两个:一个是对端PE的IP地址,一个是VC ID。其中,VC ID与封装类型的组合必须在PE上唯一,修改封装有可能会造成VC ID的冲突。
完成本配置任务,需要在PE上执行以下操作:
l 在二层以太网接口上创建服务实例
l 为服务实例配置报文匹配规则
l 在服务实例下创建Martini方式的MPLS L2VPN连接
配置完成后,二层以太网接口收到符合匹配规则的报文将进入创建好的MPLS L2VPN连接进行转发。
表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 | - |
进入连接CE的二层以太网接口视图 | interface interface-type interface-number | - |
创建服务实例,并进入服务实例视图 | service-instance instance-id | 必选 缺省情况下,不存在任何服务实例 |
配置报文匹配规则 | encapsulation { s-vid { vlan-id } [ only-tagged ] | port-based } | tagged | untagged } | 必选 缺省情况下,不存在任何报文匹配规则 |
在服务实例下创建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连接后,才可以修改这些参数 |
显示接口上服务实例的信息 | display service-instance interface interface-type interface-number [ service-instance instance-id ] [ | { begin | exclude | include } regular-expression ] | display命令可以在任意视图执行 |
l 目前,MPLS L2VPN不支持多条隧道的负载分担。
l xconnect peer命令只能在编号为1~4094的服务实例视图下进行配置,否则系统会提示出错。
Kompella方式MPLS L2VPN使用BGP扩展作为信令协议在PE间传递L2VPN信息。
在配置Kompella方式MPLS L2VPN之前,需完成以下任务:
l 对MPLS骨干网(PE、P)配置IGP,实现骨干网的IP连通性
l 对MPLS骨干网(PE、P)配置MPLS基本能力
l 对PE配置MPLS L2VPN
l 对MPLS骨干网(PE、P)配置MPLS LDP能力,建立LDP LSP
在配置Kompella方式MPLS L2VPN之前,需准备以下数据:
l 本PE和对端PE的AS号
l L2VPN连接的名称、RD和VPN Target
l CE的名称、CE ID和CE range
l 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 { ethernet | 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 | 可选 |
l mtu命令只进行有可能存在的协议上的参数协商,并不指导转发,因此不建议使用此命令。
l Kompella方式MPLS L2VPN必须在PE上为每个直接相连的CE所在的VPN创建L2VPN实例。创建L2VPN时指定的封装类型应与CE侧接口的封装类型对应。
l 上述配置中VPN-Target和RD(Route Distinguisher,路由标识)的用法与MPLS L3VPN相同。对于Kompella L2VPN,必须配置RD。RD配置后不能修改,除非先删除创建的VPN,然后重新创建。
CE ID用于在一个VPN中唯一确定一个CE。为了方便配置,建议CE ID从1开始,采用连续自然数编号。
CE range表明当前VPN上最多可连接的CE数。在标签资源足够丰富的情况下(一般来说,标签资源总是足够丰富的),可以根据对此VPN规模发展的预计,把CE range设置得比实际需要大一些。这样当以后对VPN进行扩容,增加VPN中的CE数目时,就可以尽量少的修改配置。
为CE创建连接时,如果用户没有指定CE offset:
l 对于此CE的第一个连接,CE offset为执行ce命令时,通过default-offset参数指定的值;
l 对于其他连接,CE offset是上一个连接的CE offset+1;
l 在规划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 ] | 必选 |
在MPLS L2VPN网络中,通过MPLS LSP Ping功能,可以对VC的可达性进行检测,并提供必要的诊断信息,以便对VC的故障进行定位。
MPLS LSP Ping功能采取的方法是:在本地PE设备上为MPLS Echo Request报文压入待检测的VC对应的标签,使得MPLS Echo Request报文沿着VC转发,本地PE设备根据收到的对端PE设备的应答报文,判断VC的可达性。
表1-12 利用MPLS LSP Ping功能检测VC
操作 | 命令 | 说明 |
通过MPLS LSP Ping检测VC的可达性 | ping lsp [ -a source-ip | -c count | -exp exp-value | -h ttl-value | -m wait-time | -r reply-mode | -s packet-size | -t time-out | -v ] * pw ip-address pw-id pw-id | 必选 可在任意视图下执行本命令 |
MPLS LSP Ping只能用来检测Martini方式VC的可达性。
在完成上述配置后,在任意视图下执行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 ] |
显示PW模板的信息 | display pw-class [ pw-class-name ] [ | { begin | exclude | include } regular-expression ] |
有关命令display interface的详细介绍请参见“二层技术-以太网交换命令参考”中的“以太网端口”。
在完成上述配置后,在用户视图下执行复位BGP的L2VPN连接命令。
表1-14 复位L2VPN的BGP连接
操作 | 命令 |
复位BGP的L2VPN连接 | reset bgp l2vpn { as-number | ip-address | all | external | internal } |
l PE通过VLAN接口连接CE。
l CE1和CE2之间建立CCC远程连接。
配置CCC远程连接的关键步骤包括:
l 在PE上创建CCC远程连接(不需要配置静态LSP)。
l 在P上配置两条静态LSP,用于双向传递报文。
图1-3 配置CCC远程连接组网图
接口 | IP地址 | 设备 | 接口 | IP地址 | |
CE 1 | Vlan-int10 | 100.1.1.1/24 | P | Loop0 | 10.0.0.2/32 |
PE 1 | Loop0 | 10.0.0.1/32 |
| Vlan-int20 | 10.2.2.2/24 |
| Vlan-int30 | 10.1.1.1/24 |
| Vlan-int30 | 10.1.1.2/24 |
CE 2 | Vlan-int10 | 100.1.1.2/24 | PE 2 | Loop0 | 10.0.0.3/32 |
|
|
|
| Vlan-int20 | 10.2.2.1/24 |
(1) 配置CE 1
<Sysname> system-view
[Sysname] sysname CE1
[CE1] interface vlan-interface 10
[CE1-Vlan-interface10] 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
# 配置接口Vlan-interface30,使能MPLS。
[PE1] interface vlan-interface 30
[PE1-Vlan-interface30] ip address 10.1.1.1 24
[PE1-Vlan-interface30] mpls
[PE1-Vlan-interface30] quit
# 创建CE 1到CE 2的远程连接:入接口为连接CE 1的接口,出接口为连接P的接口;入标签为100,出标签为200。
[PE1] ccc ce1-ce2 interface vlan-interface 10 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
# 配置接口Vlan-interface30,使能MPLS。
[P] interface vlan-interface 30
[P-Vlan-interface30] ip address 10.1.1.2 24
[P-Vlan-interface30] mpls
[P-Vlan-interface30] quit
# 配置接口Vlan-interface20,使能MPLS。
[P] interface vlan-interface 20
[P-Vlan-interface20] ip address 10.2.2.2 24
[P-Vlan-interface20] mpls
[P-Vlan-interface20] quit
# 配置一条静态LSP用于转发由PE 1去往PE 2的报文。
[P] static-lsp transit pe1_pe2 incoming-interface vlan-interface 30 in-label 200 nexthop 10.2.2.1 out-label 201
# 配置另一条静态LSP用于转发由PE 2去往PE 1的报文。
[P] static-lsp transit pe2_pe1 incoming-interface vlan-interface 20 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
# 配置接口Vlan-interface10。
[PE2] interface vlan-interface 10
[PE2-Vlan-interface10] quit
# 配置接口Vlan-interface20,使能MPLS。
[PE2] interface vlan-interface 20
[PE2-Vlan-interface20] ip address 10.2.2.1 24
[PE2-Vlan-interface20] mpls
[PE2-Vlan-interface20] quit
# 创建CE 2到CE 1的远程连接:入接口为连接CE 2的接口,出接口为连接P的接口;入标签为201,出标签为101。
[PE2] ccc ce2-ce1 interface vlan-interface 10 in-label 201 out-label 101 nexthop 10.2.2.2
(5) 配置CE 2
<Sysname> system-view
[Sysname] sysname CE2
[CE2] interface vlan-interface 10
[CE2-Vlan-interface10] ip address 100.1.1.2 24
(6) 配置完成后的检验
# 配置完成后,在PE 1上查看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 : Vlan-interface10 (up)
In-label : 100
Out-label : 200
Nexthop : 10.1.1.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
l PE通过VLAN接口连接CE。
l CE 1和CE 2之间建立SVC方式的MPLS L2VPN。
图1-4 配置SVC方式MPLS L2VPN组网图
接口 | IP地址 | 设备 | 接口 | IP地址 | |
CE 1 | Vlan-int10 | 100.1.1.1/24 | P | Loop0 | 192.4.4.4/32 |
PE 1 | Loop0 | 192.2.2.2/32 |
| Vlan-int30 | 10.2.2.2/24 |
| Vlan-int20 | 10.1.1.1/24 |
| Vlan-int20 | 10.1.1.2/24 |
CE 2 | Vlan-int10 | 100.1.1.2/24 | PE 2 | Loop0 | 192.3.3.3/32 |
|
|
|
| Vlan-int30 | 10.2.2.1/24 |
主要的配置步骤可分为两部分:
l 在PE和P上配置MPLS基本转发能力:包括配置LSR ID、使能MPLS和LDP、在PE 1-P-PE 2之间运行IGP(本配置例中使用OSPF)以建立LSP。
l 建立SVC方式的MPLS L2VPN连接:包括在PE 1和PE 2上使能MPLS L2VPN、创建SVC连接并指定VC标签。
(1) 配置CE 1
<Sysname> system-view
[Sysname] sysname CE1
[CE1] interface vlan-interface 10
[CE1-Vlan-interface10] 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
# 使能L2VPN和MPLS L2VPN。
[PE1] l2vpn
[PE1-l2vpn] mpls l2vpn
[PE1-l2vpn] quit
# 全局使能LDP。
[PE1] mpls ldp
[PE1-mpls-ldp] quit
# 配置连接P的接口Vlan-interface20,在此接口上使能LDP。
[PE1] interface vlan-interface 20
[PE1-Vlan-interface20] ip address 10.1.1.1 24
[PE1-Vlan-interface20] mpls
[PE1-Vlan-interface20] mpls ldp
[PE1-Vlan-interface20] 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的接口Vlan-interface10上创建一条SVC方式MPLS L2VPN连接。此接口不需配置IP地址。
[PE1] interface vlan-interface 10
[PE1-Vlan-interface10] mpls static-l2vc destination 192.3.3.3 transmit-vpn-label 100 receive-vpn-label 200
[PE1-Vlan-interface10] 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的接口Vlan-interface20,在此接口上使能LDP。
[P] interface vlan-interface 20
[P-Vlan-interface20] ip address 10.1.1.2 24
[P-Vlan-interface20] mpls
[P-Vlan-interface20] mpls ldp
[P-Vlan-interface20] quit
# 配置连接PE 2的接口Vlan-interface30,在此接口上使能LDP。
[P] interface vlan-interface 30
[P-Vlan-interface30] ip address 10.2.2.2 24
[P-Vlan-interface30] mpls
[P-Vlan-interface30] mpls ldp
[P-Vlan-interface30] 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
# 使能L2VPN和MPLS L2VPN。
[PE2] l2vpn
[PE2-l2vpn] mpls l2vpn
[PE2-l2vpn] quit
# 全局使能LDP。
[PE2] mpls ldp
[PE2-mpls-ldp] quit
# 配置连接P的接口Vlan-interface30,在此接口上使能LDP。
[PE2] interface vlan-interface 30
[PE2-Vlan-interface30] ip address 10.2.2.1 24
[PE2-Vlan-interface30] mpls
[PE2-Vlan-interface30] mpls ldp
[PE2-Vlan-interface30] 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的接口Vlan-interface10上创建一条SVC方式MPLS L2VPN连接。此接口不需配置IP地址。
[PE2] interface vlan-interface 10
[PE2-Vlan-interface10] mpls static-l2vc destination 192.2.2.2 transmit-vpn-label 200 receive-vpn-label 100
[PE2-Vlan-interface10] quit
(5) 配置CE 2
<Sysname> system-view
[Sysname] sysname CE2
[CE2] interface vlan-interface 10
[CE2-Vlan-interface10] 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
Vlan10 up 192.3.3.3 100 200 default
# 在PE 2上也可以看到SVC的L2VPN连接。
[PE2] display mpls static-l2vc
Total connections: 1, 1 up, 0 down
ce-intf state destination tr-label rcv-label tnl-policy
Vlan20 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
l PE通过VLAN接口连接CE。
l CE 1和CE 2之间建立Martini方式的MPLS L2VPN。
图1-5 配置Martini方式MPLS L2VPN组网图
接口 | IP地址 | 设备 | 接口 | IP地址 | |
CE 1 | Vlan-int10 | 100.1.1.1/24 | P | Loop0 | 192.4.4.4/32 |
PE 1 | Loop0 | 192.2.2.2/32 |
| Vlan-int20 | 10.1.1.2/24 |
| Vlan-int20 | 10.1.1.1/24 |
| Vlan-int30 | 10.2.2.2/24 |
CE 2 | Vlan-int10 | 100.1.1.2/24 | PE 2 | Loop0 | 192.3.3.3/32 |
|
|
|
| Vlan-int30 | 10.2.2.1/24 |
(1) 配置CE 1
<Sysname> system-view
[Sysname] sysname CE1
[CE1] interface vlan-interface 10
[CE1-Vlan-interface10] 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
# 使能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的接口Vlan-interface20,在此接口上使能LDP。
[PE1] interface vlan-interface 20
[PE1-Vlan-interface20] ip address 10.1.1.1 24
[PE1-Vlan-interface20] mpls
[PE1-Vlan-interface20] mpls ldp
[PE1-Vlan-interface20] 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的接口Vlan-interface10上创建L2VPN连接。此接口不需配置IP地址。
[PE1] interface vlan-interface 10
[PE1-Vlan-interface10] mpls l2vc 192.3.3.3 101
[PE1-Vlan-interface10] 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的接口Vlan-interface20,在此接口上使能LDP。
[P] interface vlan-interface 20
[P-Vlan-interface20] ip address 10.1.1.2 24
[P-Vlan-interface20] mpls
[P-Vlan-interface20] mpls ldp
[P-Vlan-interface20] quit
# 配置连接PE 2的接口Vlan-interface30,在此接口上使能LDP。
[P] interface vlan-interface 30
[P-Vlan-interface30] ip address 10.2.2.2 24
[P-Vlan-interface30] mpls
[P-Vlan-interface30] mpls ldp
[P-Vlan-interface30] 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
# 使能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的接口Vlan-interface30,在此接口上使能LDP。
[PE2] interface vlan-interface 30
[PE2-Vlan-interface30] ip address 10.2.2.1 24
[PE2-Vlan-interface30] mpls
[PE2-Vlan-interface30] mpls ldp
[PE2-Vlan-interface30] 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的接口Vlan-interface10上创建L2VPN连接。此接口不需配置IP地址。
[PE2] interface vlan-interface 10
[PE2-Vlan-interface10] mpls l2vc 192.2.2.2 101
[PE2-Vlan-interface10] quit
(5) 配置CE 2
<Sysname> system-view
[Sysname] sysname CE2
[CE2] interface vlan-interface 10
[CE2-Vlan-interface10] 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 Service VC Local Remote
VC ID Intf ID State VC Label VC Label
101 Vlan10 -- up 8193 8192
# 在PE 2上也可以看到L2VC连接。
[PE2] display mpls l2vc
Total ldp vc : 1 1 up 0 down 0 blocked
Transport Client Service VC Local Remote
VC ID Intf ID State VC Label VC Label
101 Vlan10 -- up 8192 8193
# 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
l CE 1、CE 2分别通过VLAN方式接入PE 1和PE 2。
l PE 1和PE 2在服务实例下为CE 1和CE 2创建MPLS L2VPN连接。
图1-6 配置在服务实例下创建MPLS L2VPN连接组网图
设备 | 接口 | IP地址 | 设备 | 接口 | IP地址 |
CE 1 | Vlan-int10 | 100.1.1.1/24 | P | Loop0 | 192.4.4.4/32 |
PE 1 | Loop0 | 192.2.2.2/32 |
| Vlan-int23 | 23.1.1.2/24 |
| Vlan-int23 | 23.1.1.1/24 |
| Vlan-int26 | 26.2.2.2/24 |
CE 2 | Vlan-int10 | 100.1.1.2/24 | PE 2 | Loop0 | 192.3.3.3/32 |
|
|
|
| Vlan-int26 | 26.2.2.1/24 |
(1) 配置CE 1
<Sysname> system-view
[Sysname] sysname CE1
[CE1] interface vlan-interface 10
[CE1-Vlan-interface10] ip address 100.1.1.1 24
(2) 配置PE 1
<Sysname> system-view
[Sysname] sysname PE1
[PE1] interface loopback 0
[PE1-LoopBack0] ip address 192.2.2.2 32
[PE1-LoopBack0] quit
# 配置LSR ID,全局使能MPLS。
[PE1] mpls lsr-id 192.2.2.2
[PE1] mpls
[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的接口Vlan-interface23,在此接口上使能LDP。
[PE1] interface vlan-interface 23
[PE1-Vlan-interface23] ip address 23.1.1.1 24
[PE1-Vlan-interface23] mpls
[PE1-Vlan-interface23] mpls ldp
[PE1-Vlan-interface23] quit
# 在PE 1上运行OSPF,用于建立LSP。
[PE1] ospf
[PE1-ospf-1] area 0
[PE1-ospf-1-area-0.0.0.0] network 23.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的接口GigabitEthernet1/0/1上创建服务实例,并创建MPLS L2VPN连接。
[PE1] interface GigabitEthernet 1/0/1
[PE1-GigabitEthernet1/0/1] port access vlan 10
[PE1-GigabitEthernet1/0/1] service-instance 1000
[PE1-GigabitEthernet1/0/1-srv1000] encapsulation s-vid 10
[PE1-GigabitEthernet1/0/1-srv1000] xconnect peer 192.3.3.3 pw-id 1000
[PE1-GigabitEthernet1/0/1-srv1000] quit
[PE1-GigabitEthernet1/0/1] quit
(3) 配置P
<Sysname> system-view
[Sysname] sysname P
[P] interface loopback 0
[P-LoopBack0] ip address 192.4.4.4 32
[P-LoopBack0] quit
# 配置LSR ID,全局使能MPLS。
[P] mpls lsr-id 192.4.4.4
[P] mpls
[P-mpls] quit
# 全局使能LDP。
[P] mpls ldp
[P-mpls-ldp] quit
# 配置连接PE 1的接口Vlan-interface23,在此接口上使能LDP。
[P] interface vlan-interface 23
[P-Vlan-interface23] ip address 23.1.1.2 24
[P-Vlan-interface23] mpls
[P-Vlan-interface23] mpls ldp
[P-Vlan-interface23] quit
# 配置连接PE 2的接口Vlan-interface26,在此接口上使能LDP。
[P] interface vlan-interface 26
[P-Vlan-interface26] ip address 26.2.2.2 24
[P-Vlan-interface26] mpls
[P-Vlan-interface26] mpls ldp
[P-Vlan-interface26] quit
# 在P上运行OSPF,用于建立LSP。
[P] ospf
[P-ospf-1] area 0
[P-ospf-1-area-0.0.0.0] network 23.1.1.2 0.0.0.255
[P-ospf-1-area-0.0.0.0] network 26.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
<Sysname> system-view
[Sysname] sysname PE2
[PE2] interface loopback 0
[PE2-LoopBack0] ip address 192.3.3.3 32
[PE2-LoopBack0] quit
# 配置LSR ID,全局使能MPLS。
[PE2] mpls lsr-id 192.3.3.3
[PE2] mpls
[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的接口Vlan-interface26,在此接口上使能LDP。
[PE2] interface vlan-interface 26
[PE2-Vlan-interface26] ip address 26.2.2.1 24
[PE2-Vlan-interface26] mpls
[PE2-Vlan-interface26] mpls ldp
[PE2-Vlan-interface26] 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 26.2.2.0 0.0.0.255
[PE2-ospf-1-area-0.0.0.0] quit
[PE2-ospf-1] quit
# 在接入CE 2的接口GigabitEthernet1/0/1上创建服务实例,并创建MPLS L2VPN连接。
[PE2] interface gigabitethernet1/0/1
[PE2-GigabitEthernet1/0/1] port access vlan 10
[PE2-GigabitEthernet1/0/1] service-instance 1000
[PE2-GigabitEthernet1/0/1-srv1000] encapsulation s-vid 10
[PE2-GigabitEthernet1/0/1-srv1000] xconnect peer 192.2.2.2 pw-id 1000
[PE2-GigabitEthernet1/0/1-srv1000] quit
[PE2-GigabitEthernet1/0/1] quit
(5) 配置CE 2
<Sysname> system-view
[Sysname] sysname CE2
[CE2] interface vlan-interface 10
[CE2-Vlan-interface10] 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 Service VC Local Remote
VC ID Intf ID State VC Label VC Label
1000 GE1/0/1 1000 up 8193 8192
# 在PE 2上也可以看到L2VC连接。
[PE2] display mpls l2vc
Total ldp vc : 1 1 up 0 down 0 blocked
Transport Client Service VC Local Remote
VC ID Intf ID State VC Label VC Label
1000 GE1/0/1 1000 up 8192 8193
# 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=90 ms
Reply from 100.1.1.2: bytes=56 Sequence=2 ttl=255 time=77 ms
Reply from 100.1.1.2: bytes=56 Sequence=3 ttl=255 time=34 ms
Reply from 100.1.1.2: bytes=56 Sequence=4 ttl=255 time=46 ms
Reply from 100.1.1.2: bytes=56 Sequence=5 ttl=255 time=94 ms
--- 100.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
l PE通过VLAN接口连接CE。
l CE 1和CE 2之间建立Kompella方式的MPLS L2VPN。
图1-7 配置Kompella方式MPLS L2VPN组网图(交换应用)
接口 | IP地址 | 设备 | 接口 | IP地址 | |
CE 1 | Vlan-int10 | 100.1.1.1/24 | P | Loop0 | 3.3.3.3/32 |
PE 1 | Loop0 | 2.2.2.2/32 |
| Vlan-int20 | 10.1.1.2/24 |
| Vlan-int20 | 10.1.1.1/24 |
| Vlan-int30 | 10.2.2.2/24 |
CE 2 | Vlan-int10 | 100.1.1.2/24 | PE 2 | Loop0 | 4.4.4.4/32 |
|
|
|
| Vlan-int30 | 10.2.2.1/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 4.4.4.4 as-number 100
[PE1-bgp] peer 4.4.4.4 connect-interface loopback 0
[PE1-bgp] l2vpn-family
[PE1-bgp-af-l2vpn] policy vpn-target
[PE1-bgp-af-l2vpn] peer 4.4.4.4 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 2.2.2.2 as-number 100
[PE2-bgp] peer 2.2.2.2 connect-interface loopback 0
[PE2-bgp] l2vpn-family
[PE2-bgp-af-l2vpn] policy vpn-target
[PE2-bgp-af-l2vpn] peer 2.2.2.2 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 : 2.2.2.2
Local AS number : 100
Total number of peers : 1 Peers in established state : 1
Peer V AS MsgRcvd MsgSent OutQ PrefRcv Up/Down State
4.4.4.4 4 100 2 5 0 0 00:01:07 Established
(4) 配置L2VPN和CE连接
# 配置PE 1。
[PE1] mpls l2vpn vpn1 encapsulation vlan
[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 Vlan-interface10
[PE1-mpls-l2vpn-ce-vpn1-ce1] quit
[PE1-mpls-l2vpn-vpn1] quit
# 配置PE 2。
[PE2] mpls l2vpn vpn1 encapsulation vlan
[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 vlan-interface 10
[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 4.4.4.4 100:1 Vlan10
# 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=90 ms
Reply from 100.1.1.2: bytes=56 Sequence=2 ttl=255 time=77 ms
Reply from 100.1.1.2: bytes=56 Sequence=3 ttl=255 time=34 ms
Reply from 100.1.1.2: bytes=56 Sequence=4 ttl=255 time=46 ms
Reply from 100.1.1.2: bytes=56 Sequence=5 ttl=255 time=94 ms
--- 100.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可能是因为两端封装类型不一致。
l 查看本端和对端PE设备配置的封装类型是否一致,如果配置的封装类型不一样,连接将失败。
l 检查两端是否已配置了Remote参数,并正确设置了对端的地址。
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!