1 MPLS基础

1.1   功能介绍

MPLSMultiprotocol Label Switching,多协议标签交换)是一种利用标签引导数据高效传输的骨干网隧道技术。多协议是指MPLS支持多种网络层协议(如IPIPv6IPX等),而且兼容包括ATM、帧中继、以太网和PPP等多种链路层技术。

最初MPLS技术是为了提高路由设备的转发速度而提出的。与传统IP路由相比,它在转发数据时,只需要在MPLS网络边缘分析IP报文头,不需要分析MPLS网络中的每一跳,从而节约了处理时间。随着硬件技术和网络处理器的发展,MPLS在高效转发方面的优势不再明显。但由于MPLS在面向无连接的IP网络中添加了面向连接的标签交换属性,将二层交换和三层路由技术结合起来,充分发挥了二层交换简洁、IP路由灵活的优势,在解决VPNVirtual Private Network,虚拟专用网)和TETraffic Engineering,流量工程)问题时相比其它技术具有明显的优势,因此MPLS技术在VPN、流量工程等方面得到广泛的应用。

1.1.1  MPLS网络结构

MPLS网络有2个基本构成要素:LERLabel Switching Edge Router,标签边缘路由器)和LSRLabel Switching Router,标签交换路由器)。

l  LER位于MPLS网络的边缘。入口LER负责将进入MPLS网络的报文分类并添加标签,封装成MPLS报文进行转发。出口LER负责将离开MPLS网络的报文移除标签、还原成原始的报文。LER提供了流量分类、标签映射和标签移除的功能。

l  LSR位于MPLS网络的核心,运行MPLS信令协议,负责标签报文的转发。

图1-1     MPLS网络结构

                                              image.png

 

IP报文在MPLS网络中经过的路径称为LSPLabel Switched Path,标签交换路径),它是一系列LSR的集合,可以将LSP看做类似穿越MPLS核心网络的一个隧道。

运行MPLS功能的设备称为MPLS节点,如 REF _Ref63608909 \r \h  \* MERGEFORMAT 1-1  08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600360033003600300038003900300039000000 MPLS网络中的LERLSRMPLS节点能够识别MPLS信令协议,运行一个或者多个三层路由协议(包括静态路由),并且根据MPLS标签转发报文。通常一个MPLS节点也有能力转发原始的三层报文(如IP报文)。

l  LSP的入口LER称为入节点(Ingress),位于LSP中间的LSR称为中间节点(Transit),LSP的出口LER称为出节点(Egress)。一条LSP可以有0个、1个或多个中间节点,但有且只有一个入节点和一个出节点。

l  LSP是一条单向路径,与数据流的方向一致。

l  根据LSP的方向,MPLS报文由Ingress发往Egress,则IngressTransit的上游节点,TransitIngress的下游节点。同理,TransitEgress的上游节点,EgressTransit的下游节点。

1.1.2  MPLS标签

1.    转发等价类

FECForwarding Equivalence Class转发等价类)是指一类具有相同特征的数据报文。在IP单播路由应用中,FEC可以按照目的地址前缀进行分类。到达同一个目的地的所有报文为一个转发等价类,即一条路由对应一个FEC。在MPLS网络转发过程中,属于相同FEC的报文将获得相同的处理。

2.    标签

标签是一个长度固定、具有本地意义的短标识符。标签只在相邻的两个MPLS节点之间分发传递,因此也只在相邻MPLS节点之间有效。

图1-2     MPLS标签结构

image.png

 

标签长度为32比特,由以下4个域构成。

l  Label

长度为20比特,用来存放标签值。一个标签用于标识一个FECIETF0~15定义为特殊标签,特殊标签值的含义如下表所示。

表1-1     特殊标签

标签值

含义

0

IPv4显式空标签(IPv4   Explicit NULL Label)。在IPv4报文转发过程中,如果倒数第二跳LSR出标签为0,则需要将标签0压入标签栈顶部,再将报文转发给下一跳。最后一跳收到标签0报文时,直接将标签0弹出

1

路由器告警标签(Router   Alert Label),不允许出现在标签栈的栈底,和IP报文中的“Router Alert Option”类似。当收到携带标签1的报文,必须交由本地的软件模块进行处理,实际报文根据标签1的下一层标签进行转发。在报文转发前,需要将标签1重新压入到标签栈中。每跳LSR都必须对携带标签1MPLS报文进行检查

2

IPv6显式空标签(IPv6   Explicit NULL Label)。在IPv6报文转发过程中,如果倒数第二跳LSR出标签为2,则需要将标签2压入标签栈顶部,再将报文转发给下一跳。最后一跳收到标签2报文时,直接将标签2弹出

3

隐式空标签(Implicit NULL   Label)。标签3可以被标签分发协议分发,但是不会出现在MPLS报文的标签栈中进行传输。当LSR执行MPLS报文标签交换时,如果发现栈顶将被替换的标签是3,那么将弹出栈顶的标签而不执行替换动作。在“倒数第二跳弹出”功能中会用到标签3

4~15

保留

 

l  Exp

长度为3比特,目前主要用来存放MPLSQoS信息。

l  S标志

长度为1比特,栈底标志。MPLS支持标签嵌套。当有多个标签时,栈底标签的S位为1,其它标签的S位为0。当只有一个标签时,标签的S位为1

l  TTL

长度为8比特,存活时间,与IP报文头中的TTL值类似。

3.    标签栈

一个MPLS报文可以携带多层标签,即标签栈。标签栈的存在使得MPLS技术可以支持分层的网络体系。如 REF _Ref63608933 \r \h  \* MERGEFORMAT 1-3  08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600360033003600300038003900330033000000 所示,靠近链路层首部的标签为栈顶标签,靠近IP首部的标签为栈底标签。LSR执行标签交换时总是基于栈顶标签进行操作。当有多个标签时,每个标签都包含完整的32比特。

图1-3     MPLS标签栈

image.png

 

4.    标签操作方式

MPLS节点对标签的基本操作主要有:Push(压入标签)、Swap(交换标签)和Pop(弹出标签)。

图1-4     基本标签操作

image.png

 

l  Push

入口LER在链路层首部和网络层首部之间插入标签,或者中间LSRMPLS报文的标签栈顶再增加新的标签。

l  Swap

在转发过程中根据标签转发表替换报文栈顶标签的过程。

l  Pop

出口LER将报文中的标签全部去掉还原成IP报文,或者中间LSR去掉栈顶标签减少标签栈层次。

1.1.3  MPLS转发

1.    MPLS转发表

MPLS转发过程中主要涉及到三张表:NHLFENext Hop Label Forwarding Entry,下一跳标签转发入口)、FTNFEC-To-NHLFE)和ILMIncoming Label Map,入标签映射)。

l  NHLFE

NHLFE表用于存储转发MPLS报文的下一跳信息,通常包含如下内容:

         数据报文的下一跳。

         转发数据报文使用的链路层封装。

         转发数据报文标签栈使用的编码方式。

         对数据报文标签栈的操作。

l  FTN

FTN负责将每个FEC映射到一系列的NHLFE(多个NHLFE表明其是多径)。FTN表主要用在LER收到未带标签数据报文的转发情况。LER收到一个未带标签的IP数据包后,会根据FTN表,按照最长匹配原则匹配IP数据包的目的地址。如果查找到下一跳,则对IP数据包执行标签封装后进行转发。

l  ILM

ILM负责将每个入标签映射到一系列的NHLFE(多个NHLFE表明其是多径)。ILM表主要用在当LSR收到带标签MPLS报文的转发情况。

2.    MPLS LSP建立

MPLS节点间需要对转发报文所用的标签达成共识,并成功建立LSP后才能进行报文的转发。LSP的建立可以通过手工静态配置,也可以通过MPLS信令协议动态建立。

l  静态LSP

在各MPLS节点上,通过手工分配标签建立静态LSP。静态LSP无需交互控制报文,具有资源消耗少的优点,但需要逐条手工配置,无法根据网络拓扑变化进行灵活地动态调整,因此只适用于组网结构比较简单、稳定的小规模网络。

l  动态LSP

MPLS信令协议主要负责划分FEC、分发标签和建立维护LSP等操作。MPLS支持多种信令协议,有专门为标签分发而制定的协议,如LDPLabel Distribution Protocol,标签分发协议),也有在现有协议基础上进行扩展后支持标签分发的协议,比较典型的如RSVP-TEResource Reservation Protocol-Traffic Engineering,基于流量工程的资源预留协议)和MP-BGPMultiprotocol Border Gateway Protocol,多协议边界网关协议)。

3.    MPLS转发过程

MPLS网络中,各节点启用传统IP路由协议(如OSPFIS-IS等),建立IP路由表。LDP根据IP路由表建立LSP,完成各节点的标签分发。

图1-5     MPLS报文基本转发过程

image.png

 

REF _Ref63609047 \r \h  \* MERGEFORMAT 1-5  08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600360033003600300039003000340037000000 所示,MPLS的基本转发过程如下:

(1)   入口LER1Ingress节点)接收IP包,分析IP包头并对应到一个FEC,为IP包添加FEC对应的标签L1,沿着标签L1对应的LSP将标签报文转发给下一跳LSR

(2)   下一跳LSR1Transit节点)收到标签报文,根据栈顶标签L1查找标签转发表,用新标签L2替换原有标签L1,转发给下一跳LSR

(3)   LSR2的处理动作与步骤(2)类似。

(4)   出口LER2Egress节点)收到带标签的报文,弹出报文中的标签后,根据IP路由表选路转发。

4.    倒数第二跳弹出

MPLS网络中,出口LER收到带有标签的报文,需要查找标签转发表,先弹出标签再进行下一层的转发处理。为了减轻出口LER的负担,引入了PHPPenultimate Hop Popping,倒数第二跳弹出)功能。PHP是通过分配空标签实现的,在倒数第二跳LSR就将标签弹出,从而在出口LER只需查找一次转发表即可。PHP分配的空标签分为显示空标签和隐式空标签。

l  显式空标签0。倒数第二跳LSR收到带有标签的报文,查找标签转发表发现报文对应的出标签为0,则将报文最外层标签替换为标签0后发送给出口LER。出口LER收到带0标签的报文,将直接弹出0标签,根据IP路由表选路转发。

l  隐式空标签3。倒数第二跳LSR收到带有标签的报文,查找标签转发表发现报文对应的出标签为3,则弹出标签,发送原始的IP报文到出口LER。出口LER收到原始的IP报文后,将直接根据IP路由表选路转发。

5.    TTL处理模式

MPLS对报文TTL的处理有两种模式:TTL复制和TTL不复制。

l  TTL复制模式

IP报文进入MPLS网络,入口LERIP报文压入标签时,先将已有IP报文的TTL值减1,再拷贝到新压入标签的TTL字段。每经过一台LSR,栈顶标签的TTL执行减1操作。出口LER弹出标签时,将标签的TTL1拷贝回IP报文的TTL字段。在TTL复制模式下,如果内层头部的TTL小于外层头部的TTL,那么将不会拷贝,而是保留内层头部的TTL不变。

图1-6     TTL复制模式处理过程

image.png

 

l  TTL不复制模式

IP报文进入MPLS网络,入口LERIP报文压入标签时,IP TTL1,压入标签的TTL值为255。每经过一台LSR,栈顶标签的TTL执行减1操作,IP报文的TTL值保持不变。出口LER弹出标签时,IP报文TTL值减1

图1-7     TTL不复制模式处理过程

image.png

 

使用TTL复制模式,在CECustomer Edge,用户边缘设备)使用Tracert工具能够跟踪到MPLS骨干网中报文经过的所有路径。出于网络安全考虑,建议使用TTL不复制模式,IP报文的TTL只在入口LER和出口LER执行减1,在MPLS网络中无论经过多少跳都保持不变,从而可以隐藏MPLS网络结构。

6.    LSP连通性检测

MPLS网络中,当LSP发生数据转发故障时,负责建立LSP的控制面感知不到错误,导致网络维护复杂度较高。为了降低网络维护成本、提高MPLS网络的可用性,引入了MPLS PingMPLS Traceroute这两个LSP连通性检测工具。

LSP连通性检测与传统的PingTraceroute类似,都是基Echo RequestEcho Reply模式。区别在于MPLS PingMPLS Traceroute是基于UDP协议实现,而不是ICMP协议。其中Echo Request使用的UDP端口号为3503,只有开启MPLS功能的设备才能识别该端口号。

l  MPLS Ping

MPLS Ping主要用于检测LSP的连通性。入口LERMPLS Echo Request报文打上待检测LSP对应的标签,沿着LSP将报文发送给出口LER。出口LER回应MPLS Echo Reply报文。如果入口LER收到的MPLS Echo Reply报文正常,则说明LSP可以用来转发数据。如果入口LER收到的MPLS Echo Reply报文带有错误码,则说明LSP存在故障。

l  MPLS Traceroute

MPLS Traceroute主要用于逐跳跟踪入口LER到出口LER经过的LSR。除了能够检测LSP的连通性,还能用于定位网络发生故障的具体位置。入口LER沿着LSP路径连续发送MPLS Echo Reques报文,LSP经过的每一跳LSR收到请求报文后,会回应MPLS Echo Reply报文,因此入口LER可以收集到每一跳LSR的信息,定位出发生故障的位置。除此之外,通过MPLS Traceroute还能够收集到LSR分配的标签等重要信息。

1.1.4  MPLS静态LSP

要实现MPLS的基本转发功能,可以通过静态配置LSP而不使用标签分发协议。静态LSP是指在MPLS网络的每一跳设备上通过手工静态配置出入标签、下一跳等信息生成标签转发表的方式建立MPLS LSP

*     说明

静态配置LSP不需要LDP协议,因此也就不需要依赖IPv4路由。即便网络中没有任何IPv4路由,只要物理网络可达,静态配置的LSP即可生效。

 

静态LSP的建立过程如下:

(1)   在入口LERFEC建立静态FTN表项(包含目的网段对应的出标签、LSP的下一跳或者到达下一跳的出接口),把FEC和标签进行绑定。入口LER收到一个IP数据包后,根据报文的目的地址,使用最长匹配查找FTN表下一跳。如果找到,为报文添加FEC对应的出标签,将IP流量导入LSP,并把报文转发给指定的下一跳或通过出接口进行转发。

(2)   在中间LSR上配置静态ILM转发表项(包含入标签对应的出标签、LSP的下一跳或者到达下一跳的出接口),把入标签映射到出标签上。中间LSR收到一个带标签的数据包后,会在ILM表中根据报文携带的标签值查找下一跳。如果找到,则将报文中的标签替换为该标签对应的出标签,并将报文转发给指定的下一跳或通过出接口进行转发。如果在倒数第二跳LSRPHP(即LSRILM出标签为隐式空标签3),则会在倒数第二跳LSR处将标签弹出再进行转发。

(3)   对于倒数第二跳LSR出标签未配置为03的情况,出口LER还需要配置静态ILM表项。此时出口LER接收到的报文仍带有标签值,需要根据ILM表项弹出标签,再对报文进行下一层转发处理。如果在倒数第二跳LSR配置出标签值为03,则出口LER接收到的是普通IP报文,可以直接进行转发。

1.1.5  MPLS LDP

1.    LDP协议介绍

LDP协议是指两个LSR对它们之间传输流量所用标签的意义达成共识的一系列过程。通过LDP协议,LSR可以把IP路由信息映射到MPLS LSP,将标签绑定信息通知给相邻的LSR,从而建立起动态LSP

LDP协议的主要功能是为IP单播路由和Martini L2VPN交换标签绑定信息。

*     说明

本章主要描述为IP单播路由建立LSP。关于Martini L2VPN的配置和应用请参见“MPLS”中的“MPLS L2VPN配置”。

 

2.    LDP基本概念

l  LDP对等体

LDP对等体是指交换标签绑定信息的两台LSR上的LDP实例。

l  LDP Router ID

LDP Router ID在域内唯一标识一台LSR,也就是LSR ID。它采用IPv4地址的格式表示。LDP默认使用系统的Router ID作为LDP Router IDLDP Router ID的值要保证全局唯一。

l  LDP会话

LDP会话是指LDP对等体之间用于交换标签绑定信息的会话。建立LDP会话使用的是TCP连接。

3.    LDP工作过程

LDP工作过程主要包括三个阶段:LDP对等体发现和维护、LDP会话建立和维护以及LSP建立。

l  LDP对等体发现和维护

LDP通过周期性的发送UDP Hello报文来通告自身,同时监听Hello报文来发现LDP对等体。发现对等体后,如果超过一定时间都没再收到Hello报文,则认为该LDP对等体已失效,该时间称为Hello报文保活时间。

l  LDP会话建立和维护

LDP通过Hello报文发现LDP对等体后,会使用Hello报文通告的传输地址建立TCP传输连接,并在传输连接上通过交互初始化消息的方式进行LDP会话参数协商,完成LDP会话建立。

LDP会话建立后,会话双方会周期性的发送Keepalive报文监测TCP传输连接。如果超过一定时间没有收到对方的报文,则认为该连接已失效,并主动断开会话,该时间称为Keepalive报文保活时间。

为了提高LDP会话连接的安全性,可以对LDP使用的TCP连接配置MD5认证。

l  LSP建立

LDP会话建立后,LDP对等体之间互相交换标签消息,并进行标签绑定,从而为FEC建立LSP

LSP的建立实际上是完成FEC与标签绑定,并将该绑定通告给相邻LSR的过程。关于LDP的详细实现过程请参见RFC 3036协议。

4.    LDP标签分发和控制

l  LDP标签分发模式

LSP建立过程有2种标签分发模式:DoDDownstream on Demand,下游按需分发)和DUDownstream Unsolicited,下游自主分发),如 REF _Ref64728742 \r \h  \* MERGEFORMAT 1-8  08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600360034003700320038003700340032000000 所示。

图1-8     LDP标签分发模式

 image.png

         DoD模式下,MPLS节点只有在接收到邻接LSR的标签请求后,才会回应标签绑定消息。

         DU模式下,MPLS节点在没有收到请求的情况下也会主动分发标签绑定消息给邻接LSR

l  LDP标签控制方式

LSP建立过程的标签控制方式分为2种:独立控制方式和有序控制方式,如 REF _Ref64728852 \r \h  \* MERGEFORMAT 1-9  08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600360034003700320038003800350032000000 所示。

图1-9     LDP标签独立控制方式

image.png

 

使用独立控制方式,每个MPLS节点可以在任何需要的时候向它的邻接公告标签同FEC的绑定信息。

         当以独立、DoD模式运行时,一个LSR可以立即回应上游发送的标签映射请求,而不需要等待接收下一跳的标签映射消息。

         当以独立、DU模式运行时,一个LSR可以在任何它准备好为该FEC执行标签交换的时候,公告该FEC的标签映射消息。

使用有序控制方式,一个LSR仅当FEC存在下一跳的标签映射消息或者LSR是该FEC的出口时,才能为该FEC绑定标签向上游分发。否则该LSR必须等待接收一个下游LSR关于该FEC的标签映射,本地才能将FEC同标签绑定并发送给上游LSR

         如果标签分发模式为DU,则只有本身是该FEC的出口或者收到下游LSR分发的标签时,才会向本端的上游LSR通告标签。

         如果下游LDP会话的标签分发模式为DoD,则当它收到上游LSR的标签请求信息时,将向它的下游传递该请求信息。

5.    LDP标签保留模式

LSP建立过程中,如果收到的标签映射消息不是来自于FEC的下一跳,或收到的标签映射消息与现有任何一条FEC都不匹配,则根据本机配置的标签保留模式进行处理。

l  自由标签保留模式:保留从邻居学到的FEC标签绑定。

l  保守标签保留模式:不保留从邻居学到的FEC标签绑定。

保守标签保留模式需要使用和维护的标签数较少,但当路由发生改变时,需要重新获得标签值,从而增加了响应时间。而自由标签保留模式对路由改变响应快,但是用不到的标签映射消息也会被分发和维护。

6.    LDP环路控制

为了保证能够及时检测到LSP存在环路的情况,在LSP的建立过程中提供了环路检测机制。检测LSP环路有两种方式:最大跳数和路径向量。

l  最大跳数环路控制方式

在传递标签绑定的消息中包含经过的LSR数目,每经过一个LSR该值就加1。当该值超过规定的最大值时,则认为出现了环路,从而终止LSP的建立。

l  路径向量环路控制方式

在传递标签绑定的消息中记录经过的LSR ID,每经过一个LSR就将该LSRID记录到消息向量表中。当一个LSR收到标签绑定消息时,会检查在消息向量表中是否存在本端设备的ID。如果不存在,则在分发消息时将本端设备的ID添加到该记录中;如果存在,则说明出现了环路,从而终止LSP的建立。

7.    LDP会话保护

当本地LDP会话直连的链路发生故障后,会导致LDP邻接关系断开,进而对应的LDP会话断开。在链路故障恢复时将重新建立LDP会话并重新交换标签绑定,达到LDP协议收敛,该过程将导致LDP LSP发生流量丢失。为了减少LDP LSP流量的丢失,引入了LDP会话保护功能。

LDP会话保护的工作原理:对两台LSR之间的LDP会话实施保护后,两台LSR之间会通过互相发送链路Hello消息建立链路Hello邻接,同时互相发送目标Hello消息建立目标Hello邻接。当两台LSR之间的直连链路发生故障后,只要在两台LSR之间存在可替代的路径,目标Hello邻接将会得到维持。虽然链路Hello邻接会随着链路的故障而断开,但目标Hello邻接将继续维持LDP会话。当直连链路故障恢复后,LSR之间不需要重新建立LDP会话,从而提高了LDP的收敛效率。

图1-10   LDP会话保护

 image.png

REF _Ref63609005 \r \h  \* MERGEFORMAT 1-10  08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600360033003600300039003000300035000000 所示,设备R1R2R3链路层互通且开启OSPF动态路由协议,在R1R2上开启LDP协议。R1R2之间会建立链路Hello邻接,从而建立LDP会话。为了对R1R2之间的LDP会话进行保护,可以在R1R2上开启LDP会话保护功能,这样就会在R1R2之间建立目标Hello邻接。

R1R2之间的链路发生故障后,链路Hello邻接也会断开。由于存在另外一条路径(R1-R3-R2)可以到达R2,目标Hello邻接将会得到维持,因此LDP会话不会断开。这样在R1R2之间的链路故障恢复后就不需要重新建立LDP会话,也不需要重新交换标签绑定。

LDP会话保护功能能够对两台直连LSR之间的LDP会话和LDP over TELDP会话进行保护,加快链路故障恢复时LDP协议的收敛速度,尤其在被保护链路发生短时间故障并恢复时效果更为明显。

8.    LDP标签管理策略

LDP标签管理策略包括标签分发控制策略和标签接收控制策略。

l  标签分发策略控制

缺省情况下,LDP会为所有有效的IGP路由都分配标签(BGP路由除外)。但在某些特定情况下可能仅仅想为指定路由分发标签或者是控制只向指定LDP对等体分发标签。为了减少设备和网络的负担,可以通过标签分发控制策略来减少标签的使用以及LSP的数量。通过配置分发策略可以达到以下效果:

         只为指定IP路由对应的FEC分发标签映射消息。

         只向指定的LDP对等体分发标签映射消息。

         同时实现上述两种效果。

l  标签接收策略控制

缺省情况下,LDP会接收LDP会话上收到的所有标签映射消息(不管该会话工作在DU模式还是DoD模式)。对于工作在DoD模式下的会话,LDP会为所有以该对等体作为下一跳的FEC向该对等体发送标签请求消息。通过配置接收策略可以达到以下效果:

         只接收指定对等体发来的指定IP路由对应FEC的标签映射消息。

         只向指定LDP对等体发送指定FEC的标签请求消息。

         不接收指定对等体发来的任何标签映射消息。

         不向指定对等体发送任何标签请求消息。

9.    LDP域间LSP

LDP域间LSP是指跨越同一自治域内多个IGP区域的标签交换路径。当一个自治域规划为多个IGP区域时,为了缩减路由表的规模,提高网络的工作效率,通常会在ABRArea Border Router,区域边界设备)配置路由汇聚。对于OSPF来说,ABR为连接骨干区域和其它区域的节点。对于ISIS来说,ABRLevel1/Level2节点。当在ABR上配置主机路由汇聚时,可以通过LDP域间LSP技术为被汇聚的主机路由建立跨越同一自治域内多个IGP区域的标签交换路径。LDP域间LSP技术是对LDP协议进行路由最长匹配的扩展。

*     说明

当一个自治域规划为多个IGP区域且在区域边界设备ABR开启对主机路由进行汇聚时,如果需要为被汇聚的主机路由建立跨越多个IGP区域的标签交换路径,可以开启LDP域间LSP功能。

 

未开启LDP域间LSP功能时,LDP协议只转发精确匹配路由对应的标签,并将标签映射消息分发给所有LDP邻居。开启LDP域间LSP功能后,LDP接收到下游发送的标签映射消息时,如果设备存在对应标签映射消息FEC的最长匹配路由,且发送标签映射消息的LDP邻居是该最长匹配路由的下一跳,则添加转发表项,并向所有LDP邻居分发标签映射消息(针对接收到的标签映射消息中的FEC,而非从路由表中获得的最长匹配路由的FEC分发标签映射消息)。

l  建立LDP域间LSP过程

建立LDP域间LSP的过程如 REF _Ref63609063 \r \h  \* MERGEFORMAT 1-11  08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600360033003600300039003000360033000000 所示:

图1-11   建立LDP域间LSP过程

 image.png

a      ABR1上向骨干区域公告聚合路由,此时ABR1的路由表中既有汇聚路由192.168.2.0/24又有主机路由192.168.2.1/32

b      PE1ABR1发送FEC 192.168.2.1/32的标签映射消息。

c      ABR1往上游节点P2分别发送FEC 192.168.2.0/24FEC 192.168.2.1/32的标签映射消息。

d      P2的路由表中只有汇聚路由192.168.2.0/24,收到FEC 192.168.2.0/24的标签映射消息后会往上游P3节点发送标签映射消息。当收到FEC 192.168.2.1/32的标签映射消息时,因为路由表中存在与该FEC最长匹配的路由(192.168.2.0/24)且发送标签映射消息的邻居ABR1是对应最长匹配路由的下一跳,因此P2也会往上游发送FEC 192.168.2.1/32的标签映射消息。

e      P3的处理与P2相同。

f       通过以上处理步骤,在Area 0Area 1之间建立P3-P2-ABR1-PE1192.168.2.1/32)的域间LSP

可以看出,路由最长匹配分发标签映射方式类似于DU标签分发模式+有序控制方式情形(由于上游只存在汇聚路由,不存在其它区域的精确路由,所以对于DoD标签分发模式情形LDP域间LSP技术不适用),采用这种方式建立的LSP同样符合IGP的最短路径。

l  撤销LDP域间LSP过程

对于因存在最长匹配路由而添加的MPLS转发表项,无论当前的标签分发控制模式是独立控制方式还是有序控制方式,对于从下游接收到对应的标签撤销消息或者依赖的最长匹配路由删除等原因导致需要删除MPLS转发表项的,都需要往上游传递标签撤销消息。

撤销LDP域间LSP的过程如 REF _Ref63609082 \r \h  \* MERGEFORMAT 1-12  08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600360033003600300039003000380032000000 所示:

图1-12   撤销LDP域间LSP过程

image.png

 

因存在最长匹配路由而添加的MPLS转发表项,如果依赖的最长匹配路由发生变动(存在更优的最长匹配路由或者依赖的最长匹配路由被删除),路由平台会通知LDP路由最长匹配更新或删除,确保建立更精确的LSP用于转发。

10.  IP路由迭代到LDP

IP路由的下一跳并非总是直连路由,例如IBGP邻居之间的路由下一跳是两个BGP节点的Router IDIBGP邻居之间的网络与BGP路由是隔离的,此时命中BGP路由的流量无法直接转发到远端BGP邻居。因此需要在IBGP邻居之间搭建隧道,使命中路由的流量可以通过隧道到达远端BGP邻居,而MPLS LSP作为天然的隧道,可以满足此要求。

图1-13   IGP迭代到LDP

image.png

 

REF _Ref67234526 \r \h  \* MERGEFORMAT 1-13  08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600360037003200330034003500320036000000 LER2通过IBGP协议或者静态路由学习到CE2的路由,通过IBGPCE2路由通告给LER1节点,LER1节点再将CE2路由发布往CE1CE2的路由会在LER1上生成路由表项,下一跳为IBGP邻居通告的下一跳地址。由于LSR1节点没有学习到CE2的路由,单靠IP路由无法将流量从LER1发送到CE2,因此需要在LER1LER2之间建立MPLS LSP隧道,将流量从LER1转发到LER2之后,再执行IP路由选路到CE2

IP迭代到LDP的过程如下:

(1)   建立LDP LSP。在LER1LSR1LER2之间建立LDP邻居以及LDP LSP,详细建立过程请参见 REF _Ref59388134 \r \h  \* MERGEFORMAT 1.1.5    08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350039003300380038003100330034000000  REF _Ref59388134 \h  \* MERGEFORMAT MPLS LDP  08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350039003300380038003100330034000000

(2)   IP迭代到LDP LSP

(3)   LER1上开启IP迭代到LDP LSP功能,将LER1CE2的路由迭代到LDP LSP。为保证迭代成功,LER1上必须有以IP路由下一跳为FECFTN表项。

1.1.6  协议规范

l  RFC 3032MPLS Label Stack Encoding

l  RFC 3036LDP Specification

l  RFC 4182Removing a Restriction on the use of MPLS Explicit NULL

l  RFC 5283LDP Extension for Inter-Area Label Switched Paths (LSPs)

1.2   配置限制和指导

l  MPLS的接口相关命令只允许在三层接口上配置。对于非三层接口,需要转换成三层接口后才能配置MPLS相关命令。

l  对于部分平台,在全局关闭MPLS转发的情况下开启LDPMPLS信令,可能会导致IP报文转发失效。如果不需要MPLS转发功能,建议同时关闭相关MPLS信令。

1.3   配置任务概览

MPLS配置任务如下:

(1)    REF _Ref62485168 \h  \* MERGEFORMAT MPLS公共配置  08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600360032003400380035003100360038000000 REF _Ref50016739 \h  \* MERGEFORMAT

(2)   配置静态LSP  08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350030003000310036003700330039000000 REF _Ref62485264 \h  \* MERGEFORMAT

(3)   配置LDP基本功能  08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600360032003400380035003200360034000000

(4)   (可选) REF _Ref62486959 \h  \* MERGEFORMAT 配置LDP LSP  08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600360032003400380036003900350039000000

(5)    REF _Ref62487057 \h  \* MERGEFORMAT 配置LDP IPv6 LSP  08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600360032003400380037003000350037000000

(6)    REF _Ref62487137 \h  \* MERGEFORMAT 配置LDP会话保护  08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600360032003400380037003100330037000000

(7)    REF _Ref50016853 \h  \* MERGEFORMAT 配置LDP域间LSP  08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350030003000310036003800350033000000

(8)    REF _Ref50017002 \h  \* MERGEFORMAT 配置IP路由迭代到LDP  08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350030003000310037003000300032000000

(9)   (可选) REF _Ref56417908 \h  \* MERGEFORMAT 配置LSP连通性检测  08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350036003400310037003900300038000000

1.4   MPLS公共配置

1.4.1  配置任务简介

MPLS公共配置任务如下:

(1)    REF _Ref59537509 \h  \* MERGEFORMAT 配置MPLS转发  08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350039003500330037003500300039000000

(2)   (可选) REF _Ref59537517 \h  \* MERGEFORMAT 配置接口MPLS MTU  08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350039003500330037003500310037000000

(3)   (可选) REF _Ref59537523 \h  \* MERGEFORMAT 配置MPLS报文的分片处理  08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350039003500330037003500320033000000

(4)   (可选) REF _Ref59537539 \h  \* MERGEFORMAT 配置ICMP差错报文处理方式  08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350039003500330037003500330039000000

(5)   (可选) REF _Ref59537529 \h  \* MERGEFORMAT 配置MPLS TTL复制功能  08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350039003500330037003500320039000000

1.4.2  配置MPLS转发

1.    功能简介

开启MPLS转发后,设备优先为报文执行标签转发,而不执行IP转发,当标签转发执行失败时再尝试执行IP转发。

2.    配置限制与指导

l  若无特殊要求,应该在LSP经过的每台LSR上开启全局MPLS转发。

l  若无特殊要求,应该在LSP经过的每个接口上开启MPLS转发功能。

l  开启接口的MPLS标签转发能力时,要根据业务类型同时调整接口MTU,否则可能会影响大报文的传输。

3.    配置步骤

(1)   进入特权模式。

enable

(2)   进入全局配置模式。

configure terminal

(3)   全局开启MPLS转发。

mpls ip

缺省情况下,全局MPLS转发功能处于关闭状态。

设备要实现MPLS转发,首先需要在全局开启MPLS转发。

(4)   进入接口配置模式。

         进入三层以太网接口配置模式。

interface ethernet-type interface-number

         进入三层聚合接口配置模式。

interface aggregateport interface-number

         进入三层以太网子接口配置模式。

interface ethernet-type interface-number.subnumber

         进入三层聚合子接口配置模式。

interface aggregateport interface-number.subnumber

         进入SVI接口配置模式。

interface vlan interface-number

         进入VXLAN路由接口配置模式。

interface overlayrouter interface-number

         进入虚拟PPP接口配置模式。

interface virtual-ppp interface-number

         进入虚拟模板接口配置模式。

interface virtual-template interface-number

(5)   开启指定接口的MPLS标签转发能力。

label-switching

缺省情况下,接口MPLS标签转发能力处于关闭状态。

1.4.3  配置接口MPLS MTU

1.    功能简介

MPLS MTU决定了MPLS报文在发送时是否要进行分片。MPLS MTU定义的长度包括MPLS封装层和被封装层(如IP)的长度之和。对于支持MPLS报文分片的设备,当报文完成MPLS标签封装进行转发时,如果报文长度大于接口MPLS MTU,则设备将根据接口的MPLS MTU对报文进行分片。对于不支持MPLS报文分片的设备,将直接丢弃封装MPLS标签后长度大于接口MTU的转发报文。

2.    配置限制与指导

l  接口的MPLS MTU配置不能超过接口实际传输报文的大小,接口的MTU调整可以使用接口模式下的MTU命令。

3.    配置步骤

(1)   进入特权模式。

enable

(2)   进入全局配置模式。

configure terminal

(3)   进入接口配置模式。

         进入三层以太网接口配置模式。

interface ethernet-type interface-number

         进入三层聚合接口配置模式。

interface aggregateport interface-number

         进入三层以太网子接口配置模式。

interface ethernet-type interface-number.subnumber

         进入三层聚合子接口配置模式。

interface aggregateport interface-number.subnumber

         进入SVI接口配置模式。

interface vlan interface-number

         进入VXLAN路由接口配置模式。

interface overlayrouter interface-number

         进入虚拟PPP接口配置模式。

interface virtual-ppp interface-number

         进入虚拟模板接口配置模式。

interface virtual-template interface-number

(4)   配置接口的MPLS MTU

mpls mtu mpls-mtu

缺省情况下,接口能够传输的MPLS标签报文MTU与接口的MTU一致。

1.4.4  配置MPLS报文的分片处理

1.    功能简介

配置对MPLS转发报文超过接口MPLS MTU情况的分片处理。IP报文封装MPLS标签后,如果报文长度超过接口MPLS MTU定义的大小,则需要对原始的IP报文进行分片后再封装MPLS标签发送,否则设备无法转发超过MPLS MTU长度的大报文。

2.    配置限制与指导

l  对不支持MPLS报文分片的设备,开启和关闭MPLS报文分片处理命令无效。

l  MPLS报文分片处理命令仅对封装的是IP报文生效,对于非IP报文该命令无效。

l  若无特殊要求,LSP经过的每台LSR都要开启MPLS报文分片功能(缺省情况下已开启),否则无法转发超过MTU长度的大报文。

3.    配置步骤

(1)   进入特权模式。

enable

(2)   进入全局配置模式。

configure terminal

(3)   开启MPLS报文的分片处理功能。

mpls ip fragment

缺省情况下,MPLS报文分片功能处于开启状态。

1.4.5  配置ICMP差错报文处理方式

1.    功能简介

配置在中途转发MPLS报文过程中生成的ICMP差错报文(典型的如MPLS TTL超时的ICMP错误报文)的处理方式。缺省情况下,ICMP差错报文将打上原有的标签栈继续沿原来的LSP转发,直到该LSP的出口,出口LER将标签栈弹出后再根据内层的IP重新选路转发。通过配置ICMP差错报文处理方式可以改变这种缺省行为,指定被转发报文携带的标签数的数量不同而获得不同的处理。

l  当转发报文携带的标签数大于配置的标签数时,ICMP差错报文将沿原来标签栈所在的LSP继续转发。

l  当转发报文携带的标签数小于或等于配置的标签数时,ICMP差错报文将直接使用栈顶标签对应FEC所在的IP路由表进行选路转发。

2.    配置步骤

(1)   进入特权模式。

enable

(2)   进入全局配置模式。

configure terminal

(3)   配置对中途转发MPLS报文时产生的ICMP差错报文的处理方式。

mpls ip icmp-error pop labels

缺省情况下,生成的ICMP差错报文打上原有的标签栈继续沿原来的LSP进行转发。

1.4.6  配置MPLS TTL复制功能

1.    功能简介

MPLS对报文的TTL处理有两种模式:TTL复制和TTL不复制。如果需要隐藏MPLS网络内部的拓扑,可以在LSP经过的每台LSR上关闭MPLSTTL复制功能。

2.    配置限制与指导

l  启用TTL复制功能,如果内层头部的TTL小于外层头部的TTL,那么将不会拷贝,而是保留内层头部的TTL不变。

3.    配置步骤

(1)   进入特权模式。

enable

(2)   进入全局配置模式。

configure terminal

(3)   配置MPLS TTL复制功能。

mpls ip ttl propagate { public | vpn }

缺省情况下,对于本机发送和转发的报文都开启TTL复制功能。

1.5   配置静态LSP

1.5.1  功能简介

要实现MPLS的基本转发功能,可以通过配置静态LSP实现。配置静态LSP不需要LDP协议,因此不需要依赖IPv4路由。即便网络中没有任何IPv4路由,只要物理网络可达,配置的静态LSP即可生效。

入口LERFEC建立FTN表项,即把FEC和标签进行绑定。中间LSR配置ILM转发表项,把入标签映射到出标签上,实现对进入的带标签报文进行标签转发。在倒数第二跳LSR执行PHP,因此倒数第二跳LSRILM表项与其它中间LSR有所不同,即倒数第二跳LSR ILM的出标签必须为隐式空标签3

1.5.2  配置限制与指导

l  相邻两个LSR之间,上游LSR的出标签值和下游LSR的入标签值必须相同。

l  LSP是一条单向路径,因此需要在数据传输的两个方向上,分别配置静态LSP

l  配置出标签为3的静态FTN表项,必须配置相同前缀的IP路由才能生效。

l  配置目的地址和掩码都为0FTN,要求在IP路由转发表中也存在对应默认路由才能生效。

l  建议倒数第二跳LSR将出标签配置为3,这样出口LER可以直接接收IP报文,否则出口LER还需要配置相应的静态ILM表项。

1.5.3  配置准备

l  所有LSR配置MPLS转发。

l  开启全局和接口的MPLS转发。

1.5.4  配置步骤

(1)   进入特权模式。

enable

(2)   进入全局配置模式。

configure terminal

(3)   入口LER配置静态FTN

mpls static ftn ipv4-address/mask-length out-label label nexthop interface-type interface-number nexthop-ipv4-address

入口LER必须配置FTN才能将IP流量导入LSP

(4)   中间LSR配置静态ILM。请选择其中一项进行配置。

         配置应用于L2VPN的静态ILM表项。

mpls static ilm in-label in-label forward-action pop-l2vc-destport vc-id vc-peer-ipv4-address

         配置应用于L3VPN的静态ILM表项。

IPv4网络)

mpls static ilm in-label in-label forward-action pop-l3vpn-nexthop vrf-name nexthop interface-type interface-number nexthop-ipv4-address fec ipv4-address/mask-length

IPv6网络)

mpls static ilm in-label in-label forward-action pop-l3vpn-nexthop vrf-name nexthop interface-type interface-number nexthop-ipv6-address fec ipv6-address/prefix-length

         配置应用于公网的静态ILM表项。

IPv4网络)

mpls static ilm in-label in-label forward-action swap-label swap-label nexthop interface-type interface-number nexthop-ipv4-address fec ipv4-address/mask-length

IPv6网络)

mpls static ilm in-label in-label forward-action pop-l3vpn-nexthop vrf-name nexthop interface-type interface-number nexthop-ipv6-address fec ipv6-address/prefix-length

中间转发LSR必须配置ILM表项才能转发MPLS报文。

1.6   配置LDP基本功能

1.6.1  功能简介

相邻LSR之间建立可以进行交换标签绑定的LDP会话。

1.6.2  配置任务简介

LDP基本功能配置任务如下:

(1)    REF _Ref50017071 \h  \* MERGEFORMAT 配置全局开启LDP协议  08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350030003000310037003000370031000000

(2)   (可选) REF _Ref64645136 \h  \* MERGEFORMAT 配置LDP Router ID  08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600360034003600340035003100330036000000

(3)    REF _Ref56005953 \h  \* MERGEFORMAT 开启接口的LDP  08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350036003000300035003900350033000000

(4)   (可选) REF _Ref62486303 \h  \* MERGEFORMAT 配置传输地址  08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600360032003400380036003300300033000000

(5)    REF _Ref50017108 \h  \* MERGEFORMAT 配置LDP的远端对等体  08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350030003000310037003100300038000000

(6)    REF _Ref50017117 \h  \* MERGEFORMAT 配置LDP接收目标Hello报文  08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350030003000310037003100310037000000 REF _Ref50017124 \h  \* MERGEFORMAT

(7)   配置Hello报文间隔时间  08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350030003000310037003100320034000000

(8)   (可选) REF _Ref50017148 \h  \* MERGEFORMAT 配置Hello报文保活时间  08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350030003000310037003100340038000000

(9)   (可选) REF _Ref50017154 \h  \* MERGEFORMAT 配置Keepalive报文保活时间  08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350030003000310037003100350034000000

(10) (可选) REF _Ref56007511 \h  \* MERGEFORMAT 配置最大PDU  08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350036003000300037003500310031000000

(11) (可选) REF _Ref50017182 \h  \* MERGEFORMAT 配置LDP MD5认证  08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350030003000310037003100380032000000

1.6.3  配置全局开启LDP协议

1.    配置限制与指导

l  会话两端的LSR都要全局开启LDP协议。

l  LDP的实例数受限于本设备的VRF个数,每个VRF实例可以启动一个LDP实例。

2.    配置步骤

(1)   进入特权模式。

enable

(2)   进入全局配置模式。

configure terminal

(3)   全局开启LDP协议并进入LDP配置模式。

mpls router ldp [ vrf-name ]

缺省情况下,LDP协议处于关闭状态。

如果不指定VRF,则默认开启/关闭的是全局VRFLDP协议。

1.6.4  配置LDP Router ID

1.    配置限制与指导

l  在实际应用中需要设定LDPRouter ID。如果没有设定LDPRouter ID,协议重启可能会出现Router ID发生变化的情况,会导致部分功能失效,例如用原Router ID配置的LDP MD5认证。

l  建议会话两端的LSR都配置Router ID,以保证LDP功能的稳定可靠。

2.    配置步骤

(1)   进入特权模式。

enable

(2)   进入全局配置模式。

configure terminal

(3)   进入config-mpls-router配置模式。

mpls router ldp [ vrf-name ]

(4)   配置LDPRouter ID

ldp router-id { ipv4-address | interface interface-type interface-number [ force ] }

缺省情况下,采用系统的Router ID做为LDPRouter ID

如果指定了force关键字则强制让新的Router ID立即生效,否则新的Router ID不会立即生效。

1.6.5  开启接口的LDP能力

1.    配置限制与指导

l  若建立本地LDP会话,必须在接口模式下开启接口LDP功能。

2.    配置步骤

(1)   进入特权模式。

enable

(2)   进入全局配置模式。

configure terminal

(3)   进入接口配置模式。

         进入三层以太网接口配置模式。

interface ethernet-type interface-number

         进入三层聚合接口配置模式。

interface aggregateport interface-number

         进入三层以太网子接口配置模式。

interface ethernet-type interface-number.subnumber

         进入三层聚合子接口配置模式。

interface aggregateport interface-number.subnumber

         进入SVI接口配置模式。

interface vlan interface-number

         进入VXLAN路由接口配置模式。

interface overlayrouter interface-number

         进入虚拟PPP接口配置模式。

interface virtual-ppp interface-number

         进入虚拟模板接口配置模式。

interface virtual-template interface-number

(4)   开启接口的LDP功能。

mpls ip

缺省情况下,接口LDP功能处于关闭状态。

1.6.6  配置传输地址

1.    配置限制与指导

l  若建立本地LDP会话,可以在config-mpls-router配置模式下配置全局传输地址。如果个别邻居要求使用特定传输地址,可以在与邻居相邻的接口上配置指定的传输地址。

l  若建立远端LDP会话,无须配置传输地址。

l  使用接口主地址或是指定一个IP地址作为该接口上建立的LDP会话的传输地址,有如下两种配置方式:使用接口下的传输地址配置命令,也可以使用LDP配置模式下的命令全局配置所有LDP会话所使用的传输地址。

l  配置全局本地LDP会话使用的传输地址命令,对于LDP扩展发现机制建立的远端LDP会话不生效,只对使用LDP基本发现机制建立的本地LDP会话生效。远端LDP会话始终使用LDPRouter ID做为传输地址。

l  配置接口上的本地LDP会话使用的传输地址命令,对于LDP扩展发现机制建立的远端LDP会话不生效,只对使用LDP基本发现机制建立的本地LDP会话生效。配置该接口传输地址的命令对已经建立的本地LDP会话不生效,只对命令配置后新建立的本地LDP会话生效。如果既配置了接口的传输地址又配置了全局的传输地址,那么接口配置的传输地址优先生效。

2.    配置准备

对等体传输地址需要存在可达IP路由,可以在全局模式下配置静态路由或者通过OSPFIGP协议建立路由。

3.    配置步骤

(1)   进入特权模式。

enable

(2)   进入全局配置模式。

configure terminal

(3)   进入config-mpls-router配置模式。

mpls router ldp [ vrf-name ]

(4)   配置全局的本地LDP会话使用的传输地址。

transport-address { ipv4-address | interface-type interface-number | interface }

缺省情况下,使用LDPRouter ID做为LDP会话的传输地址。

(5)   退出config-mpls-router配置模式。

exit

(6)   进入接口配置模式。

         进入三层以太网接口配置模式。

interface ethernet-type interface-number

         进入三层聚合接口配置模式。

interface aggregateport interface-number

         进入三层以太网子接口配置模式。

interface ethernet-type interface-number.subnumber

         进入三层聚合子接口配置模式。

interface aggregateport interface-number.subnumber

         进入SVI接口配置模式。

interface vlan interface-number

         进入VXLAN路由接口配置模式。

interface overlayrouter interface-number

         进入虚拟PPP接口配置模式。

interface virtual-ppp interface-number

         进入虚拟模板接口配置模式。

interface virtual-template interface-number

(7)   配置接口上的本地LDP会话使用的传输地址。

mpls ldp transport-address { ipv4-address | interface }

缺省情况下,使用LDPRouter ID做为LDP会话的传输地址。

1.6.7  配置LDP的远端对等体

1.    功能简介

创建一个远端LDP对等体。

2.    配置限制与指导

l  若建立远端LDP会话,必须在config-mpls-router模式下配置远端对等体。

3.    配置步骤

(1)   进入特权模式。

enable

(2)   进入全局配置模式。

configure terminal

(3)   进入config-mpls-router配置模式。

mpls router ldp [ vrf-name ]

(4)   配置LDP的远端对等体。

neighbor ipv4-address

缺省情况下,未配置LDP远端对等体。

1.6.8  配置LDP接收目标Hello报文

1.    配置限制与指导

l  两台设备建立远端对等体时,可以在一端配置neighbor,另一端开启LDP接收目标Hello报文功能。删除远端对等体时,也只需删除neighbor配置即可,可简化配置。

2.    配置步骤

(1)   进入特权模式。

enable

(2)   进入全局配置模式。

configure terminal

(3)   进入config-mpls-router配置模式。

mpls router ldp [ vrf-name ]

(4)   配置LDP接收目标Hello报文。

discovery targeted-hello accept [ from acl-name ]

缺省情况下,LDP只接收配置为远端对等体的设备发送的目标Hello报文。

只有符合ACL规则指定的邻居发送的目标Hello报文才被接收。

1.6.9  配置Hello报文间隔时间

1.    配置限制与指导

l  若建立本地LDP会话,则在接口配置模式下配置Hello报文间隔时间。

l  若建立远端LDP会话,则在config-mpls-router配置模式下配置Hello报文间隔时间。

2.    配置步骤

(1)   进入特权模式。

enable

(2)   进入全局配置模式。

configure terminal

(3)   进入接口配置模式。

         进入三层以太网接口配置模式。

interface ethernet-type interface-number

         进入三层聚合接口配置模式。

interface aggregateport interface-number

         进入SVI接口配置模式。

interface vlan interface-number

         进入VXLAN路由接口配置模式。

interface overlayrouter interface-number

         进入虚拟PPP接口配置模式。

interface virtual-ppp interface-number

         进入虚拟模板接口配置模式。

interface virtual-template interface-number

(4)   设置LDP链路Hello报文发送间隔时间。

mpls ldp hello-interval hello-interval

缺省情况下,LDP链路Hello报文的发送间隔为5秒。

(5)   进入config-mpls-router配置模式。

mpls router ldp [ vrf-name ]

(6)   设置LDP目标Hello报文发送间隔时间。

discovery targeted-hello interval targeted-hello-interval

缺省情况下,目标Hello报文的发送间隔为5秒。

1.6.10  配置Hello报文保活时间

1.    配置限制与指导

l  若建立本地LDP会话,则在接口配置模式下配置Hello报文保活时间。

l  若建立远端LDP会话,则在config-mpls-router配置模式下配置Hello报文保活时间。

2.    配置步骤

(1)   进入特权模式。

enable

(2)   进入全局配置模式。

configure terminal

(3)   进入接口配置模式。

         进入三层以太网接口配置模式。

interface ethernet-type interface-number

         进入三层聚合接口配置模式。

interface aggregateport interface-number

         进入SVI接口配置模式。

interface vlan interface-number

         进入VXLAN路由接口配置模式。

interface overlayrouter interface-number

         进入虚拟PPP接口配置模式。

interface virtual-ppp interface-number

         进入虚拟模板接口配置模式。

interface virtual-template interface-number

(4)   设置链路Hello报文保活时间。

mpls ldp hello-holdtime hello-holdtime

缺省情况下,链路Hello报文的保活时间为15秒。

(5)   进入config-mpls-router配置模式。

mpls router ldp [ vrf-name ]

(6)   设置LDP目标Hello报文保活时间。

discovery targeted-hello holdtime targeted-hello-holdtime

缺省情况下,LDP目标Hello报文的保活时间为45秒。

1.6.11  配置Keepalive报文保活时间

1.    配置限制与指导

l  若建立本地LDP会话,则在接口配置模式下配置Keepalive报文保活时间。

l  若建立远端LDP会话,则在config-mpls-router配置模式下配置Keepalive报文保活时间。

2.    配置步骤

(1)   进入特权模式。

enable

(2)   进入全局配置模式。

configure terminal

(3)   进入接口配置模式。

         进入三层以太网接口配置模式。

interface ethernet-type interface-number

         进入三层聚合接口配置模式。

interface aggregateport interface-number

         进入SVI接口配置模式。

interface vlan interface-number

         进入VXLAN路由接口配置模式。

interface overlayrouter interface-number

         进入虚拟PPP接口配置模式。

interface virtual-ppp interface-number

         进入虚拟模板接口配置模式。

interface virtual-template interface-number

(4)   在接口下配置本地LDP会话的Keepalive报文保活时间。

mpls ldp keepalive-holdtime keepalive-holdtime

缺省情况下,LDP协议在接口下Keepalive报文的保活时间为45秒,Keepalive报文的发送间隔为保活时间的1/3

(5)   进入config-mpls-router配置模式。

mpls router ldp [ vrf-name ]

(6)   配置远端LDP会话Keepalive报文的保活时间。

targeted-session holdtime targeted-session-hold-time

缺省情况下,LDP采用扩展发现机制建立的远端LDP会话,其Keepalive报文的保活时间为180秒,Keepalive报文的发送间隔为保活时间的1/3

1.6.12  配置最大PDU

1.    功能简介

LDP实体之间传递的各种消息都包含在PDUProtocol Data Units,协议数据单元)中,通过配置本功能,可以指定LDP协议消息交互过程中每个消息允许的最大PDU长度。

2.    配置步骤

(1)   进入特权模式。

enable

(2)   进入全局配置模式。

configure terminal

(3)   进入接口配置模式。

         进入三层以太网接口配置模式。

interface ethernet-type interface-number

         进入三层聚合接口配置模式。

interface aggregateport interface-number

         进入SVI接口配置模式。

interface vlan interface-number

         进入VXLAN路由接口配置模式。

interface overlayrouter interface-number

         进入虚拟PPP接口配置模式。

interface virtual-ppp interface-number

         进入虚拟模板接口配置模式。

interface virtual-template interface-number

(4)   配置最大PDU长度。

mpls ldp max-pdu max-pdu

缺省情况下,LDP协议每个消息允许的最大PDU长度为4096字节。

1.6.13  配置LDP MD5认证

1.    功能简介

为了提高会话连接的安全性,可以在会话两端的LSR上配置LDP-MD5认证。

2.    配置步骤

(1)   进入特权模式。

enable

(2)   进入全局配置模式。

configure terminal

(3)   进入config-mpls-router配置模式。

mpls router ldp [ vrf-name ]

(4)   配置与对等体之间的TCP连接采用MD5认证。

neighbor ipv4-address password [ 0 | 7 ] password-string

缺省情况下,LDPMD5认证功能处于关闭状态。

1.7   配置LDP LSP

1.7.1  功能简介

使用LDP协议为IPv4单播路由建立LSP

1.7.2  配置限制与指导

l  LDP需要借助网络中现有的单播路由。因此,网络中必须配置IP单播路由。

1.7.3  配置任务简介

以下所有配置任务均为可选配置,请根据实际情况选择配置。LDP LSP配置任务如下:

(1)    REF _Ref56009409 \h  \* MERGEFORMAT 配置LDP环路检测  08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350036003000300039003400300039000000

(2)    REF _Ref59570986 \h  \* MERGEFORMAT 开启标签释放消息传递开关  08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350039003500370030003900380036000000

(3)    REF _Ref56418028 \h  \* MERGEFORMAT 配置LDP标签分发模式  08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350036003400310038003000320038000000

(4)    REF _Ref59571062 \h  \* MERGEFORMAT 配置LDP标签分发控制模式  08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350039003500370031003000360032000000

(5)    REF _Ref59571182 \h  \* MERGEFORMAT 配置LDP标签保留模式  08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350039003500370031003100380032000000

(6)    REF _Ref59571186 \h  \* MERGEFORMAT 配置LDP标签分发策略  08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350039003500370031003100380036000000

(7)    REF _Ref59571192 \h  \* MERGEFORMAT 配置LDP标签接收策略  08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350039003500370031003100390032000000

(8)    REF _Ref59571195 \h  \* MERGEFORMAT 配置显式空标签分发策略  08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000D0000005F00520065006600350039003500370031003100390035000000

1.7.4  配置LDP环路检测

1.    功能简介

当启用环路检测时,如果检测到LDP消息中的跳数大于设定的值,则认为出现了环路。

环路检测允许的路径向量最大值,即路径向量环路检测携带的路径列表中包含的LSR的最大数量。当启用环路检测时,如果LSR检测到路径向量列表中包含本端设备的LSR ID或路径向量列表中LSR ID的个数大于设定的值时,则认为出现了环路。

2.    配置限制与指导

l  如果IP路由是通过静态配置的,而不是IGP协议动态生成,建议开启LSP上各LSR的环路检测功能,以防止错误配置引起的环路。

3.    配置步骤

(1)   进入特权模式。

enable

(2)   进入全局配置模式。

configure terminal

(3)   开启环路检测。

loop-detection

缺省情况下,环路检测处于关闭状态。

(4)   进入接口配置模式。

         进入三层以太网接口配置模式。

interface ethernet-type interface-number

         进入三层聚合接口配置模式。

interface aggregateport interface-number

         进入SVI接口配置模式。

interface vlan interface-number

         进入VXLAN路由接口配置模式。

interface overlayrouter interface-number

         进入虚拟PPP接口配置模式。

interface virtual-ppp interface-number

         进入虚拟模板接口配置模式。

interface virtual-template interface-number

(5)   配置环路检测最大跳数。

mpls ldp max-hop-count max-hop-count

缺省情况下,LDP在接口下环路检测允许的最大跳数为254

(6)   配置LDP在接口下环路检测允许的最大路径向量值。

mpls ldp max-path-vector number

缺省情况下,LDP在接口下环路检测允许的最大路径向量值为254

1.7.5  开启标签释放消息传递开关

1.    功能简介

当某条FEC失效后,LDP会从上游节点向下游节点发送标签释放消息,用来撤消绑定到这条FEC上的标签。对标签释放消息传递方式的设置决定了LSP上每一个LDP实体收到上游发来的标签释放消息后是否需要向下游传递。

2.    配置限制与指导

l  标签释放消息传递开关的开启,只影响开启之后LDP实例接收到的标签释放消息,而对开关开启之前LDP实例已经接收到的标签释放消息不影响。

3.    配置步骤

(1)   进入特权模式。

enable

(2)   进入全局配置模式。

configure terminal

(3)   进入config-mpls-router配置模式。

mpls router ldp [ vrf-name ]

(4)   开启LDP实例的标签释放消息的传递开关。

propagate-release

缺省情况下,标签释放消息的传递开关处于关闭状态。

1.7.6  配置LDP标签分发模式

1.    配置步骤

(1)   进入特权模式。

enable

(2)   进入全局配置模式。

configure terminal

(3)   进入接口配置模式。

         进入三层以太网接口配置模式。

interface ethernet-type interface-number

         进入三层聚合接口配置模式。

interface aggregateport interface-number

         进入三层以太网子接口配置模式。

interface ethernet-type interface-number.subnumber

         进入三层聚合子接口配置模式。

interface aggregateport interface-number.subnumber

         进入SVI接口配置模式。

interface vlan interface-number

         进入VXLAN路由接口配置模式。

interface overlayrouter interface-number

         进入虚拟PPP接口配置模式。

interface virtual-ppp interface-number

         进入虚拟模板接口配置模式。

interface virtual-template interface-number

(4)   配置LDP标签分发模式。

mpls ldp distribution-mode { dod | du }

缺省情况下,LDP协议在每个接口上使用下游主动分发的模式。

1.7.7  配置LDP标签分发控制模式

1.    配置步骤

(1)   进入特权模式。

enable

(2)   进入全局配置模式。

configure terminal

(3)   进入config-mpls-router配置模式。

mpls router ldp [ vrf-name ]

(4)   配置LDP标签分发控制模式。

lsp-control-mode { independent | ordered }

缺省情况下,LDP控制模式为独立模式。

1.7.8  配置LDP标签保留模式

1.    配置步骤

(1)   进入特权模式。

enable

(2)   进入全局配置模式。

configure terminal

(3)   进入config-mpls-router配置模式。

mpls router ldp [ vrf-name ]

(4)   配置LDP标签保留模式。

label-retention-mode { conservative | liberal }

缺省情况下,标签保留模式为自由模式。

1.7.9  配置LDP标签分发策略

1.    功能简介

配置为IP路由FEC进行标签分发的策略。

2.    配置限制与指导

l  可以使用advertise-labels for bgp-routes命令开启为BGP协议产生的路由分发标签。

l  缺省情况下,LDP为默认路由分发隐式空标签3,因此不会为默认路由建立LSP

3.    配置步骤

(1)   进入特权模式。

enable

(2)   进入全局配置模式。

configure terminal

(3)   进入config-mpls-router配置模式。

mpls router ldp [ vrf-name ]

(4)   配置标签分发策略。

advertise-labels [ for acl [ ipv6 ] prefix-access-list [ to peer-access-list ] | for bgp-routes [ acl [ ipv6 ] bgp-routes-acl-name ] | for default-route | for host-routes ]

缺省情况下,LDP只为IGP路由分发标签,不为BGP路由分发标签,同时也不为BGP路由添加FTN,为默认路由分发隐式空标签3

1.7.10  配置LDP标签接收策略

1.    配置限制与指导

l  neighbor命令只对FECIP路由的标签映射消息有效,对其它类型的FEC类型无效,如PWPseudo Wire,伪线)的FEC

l  使用neighbor命令配置入标签映射消息过滤规则后,只接收指定邻居发来的符合ACL过滤规则的FEC标签映射消息,其它不符合ACL过滤规则的FEC标签映射消息全部丢弃。但是对其它邻居发来的标签映射消息不会造成影响,仍然正常接收。

l  如果针对某个邻居配置了neighbor命令,但是没有指定ACL过滤规则,则该邻居发来的所有FEC标签映射消息都被丢弃。当使用no命令取消规则后,对于之前已经通过过滤规则过滤的标签映射消息不影响(即原来被丢弃的消息无法再获得),只影响后来接收到的标签映射消息。该情况下需要使用clear mpls ldp neighbor命令复位LDP会话才能正常工作。

l  针对每个邻居只能配置一个规则,新配置的规则将覆盖旧规则。

l  每个LDP实例最多可以为64个邻居配置过滤规则。

2.    配置步骤

(1)   进入特权模式。

enable

(2)   进入全局配置模式。

configure terminal

(3)   进入config-mpls-router配置模式。

mpls router ldp [ vrf-name ]

(4)   配置标签接收策略。

neighbor ipv4-address labels accept [ ipv6 ] acl-name

缺省情况下,未配置过滤规则。

如果不带ipv6关键字,则只适用于IP标准ACLIP扩展的ACL其它ACL类型均不适用。如果ipv6关键字,则只适用于IPv6扩展ACL,其它ACL类型均不适用。

1.7.11  配置显式空标签分发策略

1.    配置限制与指导

l  只支持为全局LDP实例配置显式空标签分发策略,VPN实例下不支持配置该功能。

*     产品/版本支持情况

S79系列产品EA/EB系列线卡作为P节点并开启PHP时,下联的PE设备需要在MPLS LDP配置模式下配置IPv4显式空标签分发和IPv6显式空标签分发。

 

2.    配置步骤

(1)   进入特权模式。

enable

(2)   进入全局配置模式。

configure terminal

(3)   进入config-mpls-router配置模式。

mpls router ldp [ vrf-name ]

(4)   配置对所有直连路由或指定满足ACL规则的路由分发显式空标签。

explicit-null [ for prefix-acl-name ] [ to peer-acl ]

缺省情况下,对直连路由分发隐式空标签。

1.8   配置LDP IPv6 LSP

1.8.1  功能简介

利用LDP协议建立IPv6LSP。开启LDP后,需要配置LDP IPv6的传输地址。支持两种配置方式:

l  所有LDP会话使用指定的IPv6全球单播地址作为传输地址。

l  所有LDP会话使用指定接口的主IPv6地址作为传输地址。

1.8.2  配置限制与指导

l  需要开启全局MPLS转发,并在IPv6 LSP经过的每个接口上都开启MPLS转发。

l  需要手动配置LDP IPv6传输地址,如果没有配置或者配置无效,则设备不会发送LDP IPv6 Hello报文

l  如果所有LDP会话使用指定接口的主IPv6地址作为传输地址,则只有指定接口下存在IPv6全球单播地址时才会生效。

l  需要在IPv6 LSP经过的每台LSR上开启全局和接口LDP IPv6功能。

l  为了提高会话连接的安全性,可以在LDP IPv6会话两端的LSR上配置LDP-MD5认证。

l  要建立LDP扩展会话,必须在准备建立会话的两端LSR上,都配置对端作为本端的远端对等体;或者一端配置远端对等体,另一端配置discovery target-hello accept命令被动发现。

l  当确定所有邻居设备支持LDP IPv6功能时,可以开启忽略邻接协商。如果在部分邻居设备不支持LDP IPv6功能的情况下仍然开启忽略邻接协商,则对应的邻居设备可能收到LDP IPv6的标签映射消息导致处理出错,因此不建议开启忽略邻接协商功能。

1.8.3  配置步骤

(1)   进入特权模式。

enable

(2)   进入全局配置模式。

configure terminal

(3)   配置LDP

mpls router ldp

缺省情况下,LDP协议处于关闭状态。

(4)   全局开启LDP IPv6

ipv6 enable

缺省情况下,LDP IPv6功能处于关闭状态。

要开启LDP IPv6功能时,全局LDP IPv6必须开启,否则本端不会发送LDP IPv6 Hello报文

(5)   配置LDP IPv6的传输地址。

ipv6 transport-address { interface-type interface-number | ipv6-address }

设备中接口上没有IPv4地址情况下,必须配置LDP Router ID

(6)   (可选)创建LDP IPv6远端对等体。

ipv6 neighbor ipv6-address

缺省情况下,未配置LDP IPv6远端对等体。

IPv6远端对等体建议指定为远端对等体的IPv6传输地址。

(7)   (可选)配置忽略IPv6邻接协商。

ignore ipv6-adj negotiation [ to peer-access-list ]

(8)   (可选)配置与LDP对等之间的TCP连接采用MD5认证。

ipv6 neighbor ipv6-address password [ 0 | 7 ] password-string

缺省情况下,LDP IPv6MD5认证处于关闭状态。

(9)   进入接口配置模式。

         进入三层以太网接口配置模式。

interface ethernet-type interface-number

         进入三层聚合接口配置模式。

interface aggregateport interface-number

         进入三层以太网子接口配置模式。

interface ethernet-type interface-number.subnumber

         进入三层聚合子接口配置模式。

interface aggregateport interface-number.subnumber

         进入SVI接口配置模式。

interface vlan interface-number

         进入VXLAN路由接口配置模式。

interface overlayrouter interface-number

         进入虚拟PPP接口配置模式。

interface virtual-ppp interface-number

         进入虚拟模板接口配置模式。

interface virtual-template interface-number

(10) 接口上开启LDP IPv6

mpls ipv6

缺省情况下,接口的LDP IPv6功能处于关闭状态。

不允许在绑定单协议VRF的接口上配置该命令。开启接口的LDP IPv6功能后还必须使用label-switching命令开启该接口的MPLS转发功能。

(11) 接口上开启MPLS标签报文转发。

label-switching

缺省情况下,接口转发MPLS标签报文的能力处于关闭状态。

要开启某个接口的MPLS报文转发,必须在该接口上配置label-switching命令。

1.9   配置LDP会话保护

1.9.1  功能简介

对两台直连的LSR之间的LDP会话实施保护。

1.9.2  配置限制与指导

l  要让LDP会话保护功能正常工作,可以在会话两端的LSR上都启用LDP会话保护。

l  会话两端的LSR,如果只有一端支持LDP会话保护,可以在支持的LSR端开启LDP会话保护功能。在不支持的LSR端配置接收并回应目标Hello报文。可以通过neighbor ipv4-address命令指定远端对等体,或配置discovery targeted-hello accept命令接收并回应目标Hello报文。

1.9.3  配置步骤

(1)   进入特权模式。

enable

(2)   进入全局配置模式。

configure terminal

(3)   进入config-mpls-router配置模式。

mpls router ldp [ vrf-name ]

(4)   开启LDP会话保护功能。

session protection [ duration { duration-time | infinite } ] [ for acl acl-name ]

缺省情况下,LDP实例的会话保护功能处于关闭状态。

1.10   配置LDP域间LSP

1.10.1  功能简介

当一个自治域规划为多个IGP区域且在区域边界设备ABR开启对主机路由进行汇聚时,可以通过配置LDP域间LSP,为被汇聚的主机路由建立跨越多个IGP区域的标签交换路径。

1.10.2  配置限制与指导

l  LDP域间LSP功能只在配置自由标签保留模式的情形下生效。

l  LDP域间LSP功能不适用于DoD标签分发模式。

l  汇聚后的路由对应的LSP上的各LSR都需要开启域间LSP功能。

l  因为LDP域间LSP功能只对被汇聚的主机路由生效,所以如果通过ACL规则指定对被汇聚的非主机路由进行路由最长匹配扩展时,则该功能无效。

1.10.3  配置步骤

(1)   进入特权模式。

enable

(2)   进入全局配置模式。

configure terminal

(3)   进入config-mpls-router配置模式。

mpls router ldp [ vrf-name ]

(4)   配置LDP域间LSP功能。

inter-area-lsp [ for acl acl-name ]

缺省情况下,LDP域间LSP功能处于关闭状态。

PEPE之间的所有设备上开启LDP域间LSP功能。

1.11   配置IP路由迭代到LDP

1.11.1  功能简介

将无法直达的IP路由迭代到LDP LSP中,使之可以通过LSP到达远端。

1.11.2  配置限制与指导

l  被迭代的LDP LSPFEC地址只能是主机路由。

l  只需要在迭代节点LER上开启本功能,在LSR上不需要开启。

l  迭代的IP路由不限类型,包括但不限于静态路由、BGP路由等类型。

1.11.3  配置准备

l  在全局配置模式下配置LDP

l  LSP经过的每台LSR的接口上开启LDP

l  LSP经过的每个接口上开启MPLS转发。

l  (可选)配置一个远端对等体,用于建立LDP扩展会话。

1.11.4  配置步骤

(1)   进入特权模式。

enable

(2)   进入全局配置模式。

configure terminal

(3)   开启IP路由迭代到LDP LSP

recursive-route to mpls

缺省情况下,IP路由递归引流到MPLS LDP LSP功能处于关闭状态。

1.12   配置LSP连通性检测

1.12.1  功能简介

MPLS网络中,常用的LSP连通性检测工具主要有:MPLS PingMPLS TracerouteMPLS Ping主要用于手工检测LSP的连通性。MPLS Traceroute主要用于跟踪入口LER到出口LER经过的LSR,它除了能够检测LSP的连通性,还能用于定位网络发生故障的具体位置。

1.12.2  配置限制与指导

l  ping mplstraceroute mpls命令都支持两种指定参数方式:

         直接输入一条带指定参数的完整命令。

         输入ping mplstraceroute mpls后按回车进入交互式输入模式,再指定参数。

1.12.3  配置步骤

(1)   进入特权模式。

enable

(2)   检测MPLS LSP的连通性。

ping mpls ipv4 ipv4-address/mask-length [ destination destination-ipv4-address ] [ dsmap ] [ flags fec ] [ force-explicit-null ] [ interval interval ] [ pad pattern ] [ repeat repeat-count ] [ reply mode { ipv4 | router-alert } ] [ size size ] [ source source-ipv4-address ] [ timeout timeout ] [ ttl time-to-live ] [ verbose ]

(3)   跟踪LSP经过的MPLS节点。

traceroute mpls ipv4 ipv4-address/mask-length [ destination destination-ipv4-address ] [ flags fec ] [ force-explicit-null ] [ reply mode { ipv4 | router-alert } ] [ source source-ipv4-address ] [ timeout timeout ] [ ttl time-to-live ] [ verbose ]

1.13   监视与维护

可以通过show命令行查看功能配置后的运行情况以验证配置效果。

可以通过执行clear命令来清除各类信息。

*    注意

在设备运行过程中执行clear命令,可能因为重要信息丢失而导致业务中断。

 

可以通过debug命令行列举输出的各种调试信息。

*    注意

输出调试信息,会占用系统资源。使用完毕后,请立即关闭调试开关。

 

表1-2     MPLS基础监视与维护

作用

命令

查看MPLS全局配置信息

show mpls summary

查看MPLS转发表信息

show mpls forwarding-table [ frr ] [ detail ]

show mpls forwarding-table { ipv4-address/mask- length | ipv6-address/prefix-length } [ frr ] [ detail ]

show mpls forwarding-table { ftn | ilm } [ ip | ipv6 | te | vc ] [ frr ] [ detail ]

show mpls forwarding-table { global | vrf vrf-name } [ ftn | ilm ] [ frr ] [ detail ]

show mpls forwarding-table interface interface-type interface-number [ frr ] [ detail ]

show mpls forwarding-table label label [ frr ] [ detail ]

show mpls forwarding-table next-hop { ipv4-address | ipv6-address } [ frr ] [ detail ]

show mpls forwarding-table summary

show mpls   forwarding-table vfi [ vfi-name ] { mac-address-table   [ H.H.H ] | statistics }

查看指定标签空间的标签池使用情况

show mpls label-pool [ label-space ]

查看LDP标签绑定信息

show mpls ldp bindings [ all | vrf vrf-name   ] [ ipv4-address/mask-length | ipv6-address/prefix-length | ipv4 | ipv6 | label label ] [ local | remote ]

查看所有或指定VRFLDP邻居发现信息

show mpls ldp discovery [ all | vrf vrf-name   ] [ detail ]

查看开启LDP功能的接口信息

show mpls ldp interface [ all | vrf vrf-name   | interface-type   interface-number ]

查看所有或指定VRFLDP邻居信息

show mpls ldp neighbor [ all | vrf vrf-name   ] [ ipv4-address ] [ detail ]

查看所有或指定VRFLDP参数信息

show mpls ldp parameters [ all   | vrf vrf-name ]

查看MPLS快转相关信息

show mpls ref ftn-ipv4 [ global | vrf vrf-name ] [ ipv4-address/mask-length ] [ detail ]

show mpls ref ftn-ipv6 [ global | vrf vrf-name ] [ ipv6-address/prefix-length   ] [ detail ]

show mpls ref ilm [ in-label in-label [ detail ] | summary ]

show mpls ref nhlfe [ nhlfe-id [ detail ] | summary ]

show mpls ref summary

show mpls ref te tun-encap [ tunnel   tunnel-id ]

查看MPLS RIB路由表信息

show mpls rib [ all | vrf   vrf-name ] [ ipv6 ]

查看MPLS全局配置信息

show mpls summary

复位已经建立的LDP会话

clear mpls ldp neighbor [ all | vrf vrf-name ] { ipv4-address | *   }

开启MPLS表项内部处理的调试开关

debug mpls

开启LDP标签绑定调试开关

debug mpls ldp binding

开启LDP会话消息调试开关

debug mpls ldp message [ hello | keepalive ] [ received | sent ]

开启ping mplstraceroute   mpls执行过程的调试开关

debug mpls lspv { all | error | event | packet | tlv }

开启MPLS消息的调试开关

debug mpls msg [ send | recv ]

开启MPLS快转(控制面或转发面)的调试开关

debug mpls ref [ control | packet ]

 

1.14   典型配置举例

1.14.1  建立静态LSP配置举例

1.    组网需求

LER ALSR BLER C之间通过配置静态MPLS表项来建立LSP,使得VPN站点之间能够通过MPLS网络实现互访。其中LERALSR BLER C都要求支持MPLS功能。

2.    组网图

图1-14   建立静态LSP配置组网图

image.png

 

3.    配置要点

l  在各设备上配置接口IP地址和IPv4单播路由协议(如OSPF),实现各设备之间的路由可达。

l  开启全局MPLS转发和接口的标签转发功能。

l  LER ALER C配置静态FTNLSR B配置静态ILM,建立LER ALER C之间的双向静态LSP。其中LSR B ILM表项的出标签为隐式空标签3

4.    配置步骤

(1)   在各设备上配置接口IP地址和OSPF路由协议,实现设备之间的路由可达。

# 设备LER A的配置。

LERA> enable

LERA# configure terminal

LERA(config)# interface gigabitethernet 0/1

LERA(config-if-GigabitEthernet 0/1)# no switchport

LERA(config-if-GigabitEthernet 0/1)# ip address 192.168.1.1 255.255.255.0

LERA(config-if-GigabitEthernet 0/1)# exit

LERA(config)# router ospf 10

LERA(config-router)# network 192.168.1.0 0.0.0.255 area 0

LERA(config-router)# network 192.168.100.0 0.0.0.255 area 0

LERA(config-router)# exit

# 设备LSR B的配置。

LSRB> enable

LSRB# configure terminal

LSRB(config)# interface gigabitethernet 0/1

LSRB(config-if-GigabitEthernet 0/1)# no switchport

LSRB(config-if-GigabitEthernet 0/1)# ip address 192.168.1.2 255.255.255.0

LSRB(config-if-GigabitEthernet 0/1)# exit

LSRB(config)# interface gigabitethernet 0/2

LSRB(config-if-GigabitEthernet 0/2)# no switchport

LSRB(config-if-GigabitEthernet 0/2)# ip address 192.168.2.1 255.255.255.0

LSRB(config-if-GigabitEthernet 0/2)# exit

LSRB(config)# router ospf 10

LSRB(config-router)# network 192.168.1.0 0.0.0.255 area 0

LSRB(config-router)# network 192.168.2.0 0.0.0.255 area 0

LSRB(config-router)# exit

# 设备LER C的配置。

LERC> enable

LERC# configure terminal

LERC(config)# interface gigabitethernet 0/1

LERC(config-if-GigabitEthernet 0/1)# no switchport

LERC(config-if-GigabitEthernet 0/1)# ip address 192.168.2.2 255.255.255.0

LERC(config-if-GigabitEthernet 0/1)# exit

LERC(config)# router ospf 10

LERC(config-router)# network 192.168.2.0 0.0.0.255 area 0

LERC(config-router)# network 192.168.200.0 0.0.0.255 area 0

LERC(config-router)# exit

(2)   开启全局MPLS转发和接口的标签转发功能。

# 设备LER A的配置。

LERA(config)# mpls ip

LERA(config)# interface gigabitethernet 0/1

LERA(config-if-GigabitEthernet 0/1)# label-switching

LERA(config-if-GigabitEthernet 0/1)# exit

# 设备LSR B的配置。

LSRB(config)# mpls ip

LSRB(config)# interface gigabitethernet 0/1

LSRB(config-if-GigabitEthernet 0/1)# label-switching

LSRB(config-if-GigabitEthernet 0/1)# exit

LSRB(config)# interface gigabitethernet 0/2

LSRB(config-if-GigabitEthernet 0/2)# label-switching

LSRB(config-if-GigabitEthernet 0/2)# exit

# 设备LER C的配置。

LERC(config)# mpls ip

LERC(config)# interface gigabitethernet 0/1

LERC(config-if-GigabitEthernet 0/1)# label-switching

LERC(config-if-GigabitEthernet 0/1)# exit

(3)   LER ALER C配置静态FTNLSR B配置静态ILM,建立LER ALER C之间的双向静态LSP

# 设备LER A的配置。

LERA(config)# mpls static ftn 192.168.200.0/24 out-label 16 nexthop gigabitethernet 0/1 192.168.1.2

LERA(config)# exit

# 设备LSR B的配置。

LSRB(config)# mpls static ilm in-label 16 forward-action swap-label 3 nexthop gigabitethernet 0/2 192.168.2.2 fec 192.168.200.0/24

LSRB(config)# mpls static ilm in-label 17 forward-action swap-label 3 nexthop gigabitethernet 0/1 192.168.1.1 fec 192.168.100.0/24

LSRB(config)# exit

# 设备LER C的配置。

LERC(config)# mpls static ftn 192.168.100.0/24 out-label 17 nexthop gigabitethernet 0/1 192.168.2.1

LERC(config)# exit

5.    验证配置结果

上述配置完成后,在各设备上通过show mpls forwarding-table命令查看MPLS表项信息。

# 查看设备LER AMPLS表项信息。

LERA# show mpls forwarding-table

Label Operation Code:

PH--PUSH label

PP--POP label

SW--SWAP label

SP--SWAP topmost label and push new label

DP--DROP packet

PC--POP label and continue lookup by IP or Label

PI--POP label and do ip lookup forward

PN--POP label and forward to nexthop

PM--POP label and do MAC lookup forward

PV--POP label and output to VC attach interface

IP--IP lookup forward

 s--stale

  Local   Outgoing OP FEC                         Outgoing         Nexthop       

  label   label                                   interface                    

  --      16       PH 192.168.200.0/24            Gi0/1            192.168.1.2

# 查看设备LSR BMPLS表项信息。

LSRB# show mpls forwarding-table

Label Operation Code:

PH--PUSH label

PP--POP label

SW--SWAP label

SP--SWAP topmost label and push new label

DP--DROP packet

PC--POP label and continue lookup by IP or Label

PI--POP label and do ip lookup forward

PN--POP label and forward to nexthop

PM--POP label and do MAC lookup forward

PV--POP label and output to VC attach interface

IP--IP lookup forward

 s--stale

  Local   Outgoing OP FEC                         Outgoing         Nexthop       

  label   label                                   interface                    

  16      imp-null PP 192.168.200.0/24            Gi0/2            192.168.2.2   

  17      imp-null PP 192.168.100.0/24            Gi0/1            192.168.1.1

# 查看设备LER CMPLS表项信息。

LERC# show mpls forwarding-table

Label Operation Code:

PH--PUSH label

PP--POP label

SW--SWAP label

SP--SWAP topmost label and push new label

DP--DROP packet

PC--POP label and continue lookup by IP or Label

PI--POP label and do ip lookup forward

PN--POP label and forward to nexthop

PM--POP label and do MAC lookup forward

PV--POP label and output to VC attach interface

IP--IP lookup forward

 s--stale

  Local   Outgoing OP FEC                         Outgoing         Nexthop       

  label   label                                   interface                    

  --      17       PH 192.168.100.0/24            Gi0/1            192.168.2.1

6.    配置文件

l  LER A的配置文件

hostname LERA

!

mpls ip

!

interface gigabitethernet 0/1

 no switchport

 ip address 192.168.1.1 255.255.255.0

 label-switching

!

router ospf 10

 network 192.168.1.0 0.0.0.255 area 0

 network 192.168.100.0 0.0.0.255 area 0

!

mpls static ftn 192.168.200.0/24 out-label 16 nexthop GigabitEthernet 0/1 192.168.1.2

!

l  LSR B的配置文件

hostname LSRB

!

mpls ip

!

interface gigabitethernet 0/1

 no switchport

 ip address 192.168.1.2 255.255.255.0

 label-switching

!

interface gigabitethernet 0/2

 no switchport

 ip address 192.168.2.1 255.255.255.0

 label-switching

!

router ospf 10

 network 192.168.1.0 0.0.0.255 area 0

 network 192.168.2.0 0.0.0.255 area 0

!

mpls static ilm in-label 16 forward-action swap-label 3 nexthop GigabitEthernet 0/2 192.168.2.2 fec 192.168.200.0/24

mpls static ilm in-label 17 forward-action swap-label 3 nexthop GigabitEthernet 0/1 192.168.1.1 fec 192.168.100.0/24

!

l  LER C的配置文件

hostname LERC

!

mpls ip

!

interface gigabitethernet 0/1

 no switchport

 ip address 192.168.2.2 255.255.255.0

 label-switching

!

router ospf 10

 network 192.168.2.0 0.0.0.255 area 0

 network 192.168.200.0 0.0.0.255 area 0

!

mpls static ftn 192.168.100.0/24 out-label 17 nexthop GigabitEthernet 0/1 192.168.2.1

!

7.    常见错误

l  未开启全局MPLS转发。

l  未开启接口MPLS转发。

1.14.2  建立LDP LSP配置举例

1.    组网需求

LER ALSR BLER C之间通过配置本地LDP会话建立LDP LSP,使得VPN站点之间能够通过MPLS网络实现互访。其中LER ALSR BLER C都要求支持MPLS功能。

2.    组网图

图1-15   建立LDP LSP配置组网图

image.png

 

3.    配置要点

l  在各设备上配置接口IP地址和IPv4单播路由协议(如OSPF),实现各设备之间的路由可达。

l  开启全局MPLS转发。

l  配置LDP协议和LDP Router ID

l  开启接口的LDP功能和标签转发能力。

4.    配置步骤

(1)   在各设备上配置接口IP地址和OSPF路由协议,实现设备之间的路由可达。

# 设备LER A的配置。

LERA> enable

LERA# configure terminal

LERA(config)# interface gigabitethernet 0/1

LERA(config-if-GigabitEthernet 0/1)# no switchport

LERA(config-if-GigabitEthernet 0/1)# ip address 192.168.1.1 255.255.255.0

LERA(config-if-GigabitEthernet 0/1)# exit

LERA(config)# interface loopback 0

LERA(config-if-Loopback 0)# ip address 192.168.0.1 255.255.255.255

LERA(config-if-Loopback 0)# exit

LERA(config)# router ospf 10

LERA(config-router)# network 192.168.1.0 0.0.0.255 area 0

LERA(config-router)# network 192.168.0.1 0.0.0.0 area 0

LERA(config-router)# network 192.168.100.0 0.0.0.255 area 0

LERA(config-router)# exit

# 设备LSR B的配置。

LSRB> enable

LSRB# configure terminal

LSRB(config)# interface gigabitethernet 0/1

LSRB(config-if-GigabitEthernet 0/1)# no switchport

LSRB(config-if-GigabitEthernet 0/1)# ip address 192.168.1.2 255.255.255.0

LSRB(config-if-GigabitEthernet 0/1)# exit

LSRB(config)# interface gigabitethernet 0/2

LSRB(config-if-GigabitEthernet 0/2)# no switchport

LSRB(config-if-GigabitEthernet 0/2)# ip address 192.168.2.1 255.255.255.0

LSRB(config-if-GigabitEthernet 0/2)# exit

LSRB(config)# interface loopback 0

LSRB(config-if-Loopback 0)# ip address 192.168.0.2 255.255.255.255

LSRB(config-if-Loopback 0)# exit

LSRB(config)# router ospf 10

LSRB(config-router)# network 192.168.1.0 0.0.0.255 area 0

LSRB(config-router)# network 192.168.2.0 0.0.0.255 area 0

LSRB(config-router)# network 192.168.0.2 0.0.0.0 area 0

LSRB(config-router)# exit

# 设备LER C的配置。

LERC> enable

LERC# configure terminal

LERC(config)# interface gigabitethernet 0/1

LERC(config-if-GigabitEthernet 0/1)# no switchport

LERC(config-if-GigabitEthernet 0/1)# ip address 192.168.2.2 255.255.255.0

LERC(config-if-GigabitEthernet 0/1)# exit

LERC(config)# interface loopback 0

LERC(config-if-Loopback 0)# ip address 192.168.0.3 255.255.255.255

LERC(config-if-Loopback 0)# exit

LERC(config)# router ospf 10

LERC(config-router)# network 192.168.2.0 0.0.0.255 area 0

LERC(config-router)# network 192.168.0.3 0.0.0.0 area 0

LERC(config-router)# network 192.168.200.0 0.0.0.255 area 0

LERC(config-router)# exit

(2)   开启全局MPLS转发。以LER A为例,LSR BLER C的配置与LER A类似,不再赘述。

LERA(config)# mpls ip

(3)   配置LDP协议和LDP Router ID。以LER A为例,LSR BLER C的配置与LER A类似,不再赘述。

LERA(config)# mpls router ldp

LERA(config-mpls-router)# ldp router-id interface loopback 0 force

LERA(config-mpls-router)# exit

(4)   开启接口的LDP功能和标签转发能力。

# 设备LER A的配置。

LERA(config)# interface gigabitethernet 0/1

LERA(config-if-GigabitEthernet 0/1)# mpls ip

LERA(config-if-GigabitEthernet 0/1)# label-switching

LERA(config-if-GigabitEthernet 0/1)# end

# 设备LSR B的配置。

LSRB(config)# interface gigabitethernet 0/1

LSRB(config-if-GigabitEthernet 0/1)# mpls ip

LSRB(config-if-GigabitEthernet 0/1)# label-switching

LSRB(config-if-GigabitEthernet 0/1)# exit

LSRB(config)# interface gigabitethernet 0/2

LSRB(config-if-GigabitEthernet 0/2)# mpls ip

LSRB(config-if-GigabitEthernet 0/2)# label-switching

LSRB(config-if-GigabitEthernet 0/2)# end

# 设备LER C的配置。

LERC (config)# interface gigabitethernet 0/1

LERC(config-if-GigabitEthernet 0/1)# mpls ip

LERC(config-if-GigabitEthernet 0/1)# label-switching

LERC(config-if-GigabitEthernet 0/1)# end

5.    验证配置结果

(1)   配置完成后,通过show mpls ldp neighbor命令查看LER ALSR BLER C之间的LDP会话状态为“OPERATIONAL”。

# 在设备LER A上查看LDP会话信息。

LERA# show mpls ldp neighbor

Default VRF:

    Peer LDP Ident: 192.168.0.2:0; Local LDP Ident: 192.168.0.1:0

        TCP connection: 192.168.0.2.45063 - 192.168.0.1.646

        State: OPERATIONAL; Msgs sent/recv: 606/606; UNSOLICITED

        Up time: 02:28:09

        Graceful Restart enabled; Peer reconnect time (msecs): 300000

        LDP discovery sources:

          Link Peer on GigabitEthernet 0/1, Src IP addr: 192.168.1.2

        Addresses bound to peer LDP Ident:

          192.168.1.2     192.168.2.1     192.168.0.2

# 在设备LSR B上查看LDP会话信息。

LSRB# show mpls ldp neighbor

Default VRF:

    Peer LDP Ident: 192.168.0.1:0; Local LDP Ident: 192.168.0.2:0

        TCP connection: 192.168.0.1.646 - 192.168.0.2.45063

        State: OPERATIONAL; Msgs sent/recv: 650/653; UNSOLICITED

        Up time: 02:39:26

        Graceful Restart enabled; Peer reconnect time (msecs): 300000

        LDP discovery sources:

          Link Peer on GigabitEthernet 0/1, Src IP addr: 192.168.1.1

        Addresses bound to peer LDP Ident:

          192.168.0.1     192.168.1.1    

    Peer LDP Ident: 192.168.0.3:0; Local LDP Ident: 192.168.0.2:0

        TCP connection: 192.168.0.3.41299 - 192.168.0.2.646

        State: OPERATIONAL; Msgs sent/recv: 335/336; UNSOLICITED

        Up time: 01:21:20

        Graceful Restart enabled; Peer reconnect time (msecs): 300000

        LDP discovery sources:

          Link Peer on GigabitEthernet 0/2, Src IP addr: 192.168.2.2

        Addresses bound to peer LDP Ident:

          192.168.2.2     192.168.0.3     192.168.200.1

# 在设备LER C上查看LDP会话信息。

LERC# show mpls ldp neighbor

Default VRF:

    Peer LDP Ident: 192.168.0.2:0; Local LDP Ident: 192.168.0.3:0

        TCP connection: 192.168.0.2.646 - 192.168.0.3.41299

        State: OPERATIONAL; Msgs sent/recv: 344/345; UNSOLICITED

        Up time: 01:23:33

        Graceful Restart enabled; Peer reconnect time (msecs): 300000

        LDP discovery sources:

          Link Peer on GigabitEthernet 0/1, Src IP addr: 192.168.2.1

        Addresses bound to peer LDP Ident:

          192.168.1.2     192.168.2.1     192.168.0.2

(2)   通过show mpls forwarding-table命令查看LER ALSR BLER CMPLS转发表项信息,验证LDP LSP正常建立。

# 在设备LER A上查看MPLS转发表项。

LERA# show mpls forwarding-table

Label Operation Code:

PH--PUSH label

PP--POP label

SW--SWAP label

SP--SWAP topmost label and push new label

DP--DROP packet

PC--POP label and continue lookup by IP or Label

PI--POP label and do ip lookup forward

PN--POP label and forward to nexthop

PM--POP label and do MAC lookup forward

PV--POP label and output to VC attach interface

IP--IP lookup forward

 s--stale

  Local   Outgoing OP FEC                         Outgoing         Nexthop       

  label   label                                   interface                    

  --      imp-null PH 192.168.0.2/32              Gi0/1            192.168.1.2   

  --      11265    PH 192.168.0.3/32              Gi0/1            192.168.1.2   

  --      imp-null PH 192.168.2.0/24              Gi0/1            192.168.1.2   

  11265   imp-null PP 192.168.0.2/32              Gi0/1            192.168.1.2   

  11266   11265    SW 192.168.0.3/32              Gi0/1            192.168.1.2   

  11267   imp-null PP 192.168.2.0/24              Gi0/1            192.168.1.2   

# 在设备LSR B上查看MPLS转发表项。

LSRB# show mpls forwarding-table

Label Operation Code:

PH--PUSH label

PP--POP label

SW--SWAP label

SP--SWAP topmost label and push new label

DP--DROP packet

PC--POP label and continue lookup by IP or Label

PI--POP label and do ip lookup forward

PN--POP label and forward to nexthop

PM--POP label and do MAC lookup forward

PV--POP label and output to VC attach interface

IP--IP lookup forward

 s--stale

  Local   Outgoing OP FEC                         Outgoing         Nexthop       

  label   label                                   interface                    

  --      imp-null PH 192.168.0.1/32              Gi0/1            192.168.1.1   

  --      imp-null PH 192.168.0.3/32              Gi0/2            192.168.2.2   

  11265   imp-null PP 192.168.0.3/32              Gi0/2            192.168.2.2   

  11267   imp-null PP 192.168.0.1/32              Gi0/1            192.168.1.1   

# 在设备LER C上查看MPLS转发表项。

LERC# show mpls forwarding-table

Label Operation Code:

PH--PUSH label

PP--POP label

SW--SWAP label

SP--SWAP topmost label and push new label

DP--DROP packet

PC--POP label and continue lookup by IP or Label

PI--POP label and do ip lookup forward

PN--POP label and forward to nexthop

PM--POP label and do MAC lookup forward

PV--POP label and output to VC attach interface

IP--IP lookup forward

 s--stale

  Local   Outgoing OP FEC                         Outgoing         Nexthop       

  label   label                                   interface                    

  --      11267    PH 192.168.0.1/32              Gi0/1            192.168.2.1   

  --      imp-null PH 192.168.0.2/32              Gi0/1            192.168.2.1   

  --      imp-null PH 192.168.1.0/24              Gi0/1            192.168.2.1   

  11265   11267    SW 192.168.0.1/32              Gi0/1            192.168.2.1   

  11266   imp-null PP 192.168.0.2/32              Gi0/1            192.168.2.1   

  11267   imp-null PP 192.168.1.0/24              Gi0/1            192.168.2.1   

6.    配置文件

l  LER A的配置文件

hostname LERA

!

mpls ip

!

interface gigabitethernet 0/1

 no switchport

 ip address 192.168.1.1 255.255.255.0

 mpls ip

 label-switching

!

interface loopback 0

 ip address 192.168.0.1 255.255.255.255

!

router ospf 10

 network 192.168.0.1 0.0.0.0 area 0

 network 192.168.1.0 0.0.0.255 area 0

 network 192.168.100.0 0.0.0.255 area 0

!

mpls router ldp

 ldp router-id interface loopback 0 force

!

l  LSR B的配置文件

hostname LSRB

!

mpls ip

!

interface gigabitethernet 0/1

 no switchport

 ip address 192.168.1.2 255.255.255.0

 mpls ip

 label-switching

!

interface gigabitethernet 0/2

 no switchport

 ip address 192.168.2.1 255.255.255.0

 mpls ip

 label-switching

!

interface loopback 0

 ip address 192.168.0.2 255.255.255.255

!

router ospf 10

 network 192.168.0.2 0.0.0.0 area 0

 network 192.168.1.0 0.0.0.255 area 0

 network 192.168.2.0 0.0.0.255 area 0

!

mpls router ldp

 ldp router-id interface loopback 0 force

!

l  LER C的配置文件

hostname LERC

!

mpls ip

!

interface gigabitethernet 0/1

 no switchport

 ip address 192.168.2.2 255.255.255.0

 mpls ip

 label-switching

!

interface loopback 0

 ip address 192.168.0.3 255.255.255.255

!

router ospf 10

 network 192.168.0.3 0.0.0.0 area 0

 network 192.168.2.0 0.0.0.255 area 0

 network 192.168.200.0 0.0.0.255 area 0

!

mpls router ldp

 ldp router-id interface loopback 0 force

!

7.    常见错误

l  IPv4单播路由配置错误。

l  未开启全局MPLS转发。

l  未配置LDP协议。

l  接口未开启LDP功能。

l  接口未开启标签转发能力。

1.14.3  LDP远端会话配置举例

1.    组网需求

建立LDP远端会话。

2.    组网图

图1-16   建立LDP远端会话配置组网图

image.png

 

3.    配置要点

l  在设备上配置IPv4单播路由协议(如OSPF),且Loopback接口单播路由可达。

l  开启全局MPLS转发和LDP协议,配置LDP Router ID

l  配置远端对等体。

4.    配置步骤

(1)   配置各节点接口IP地址和OSPF协议,实现各节点之间的互通。

# 设备LER A的配置。

LERA> enable

LERA# configure terminal

LERA(config)# interface gigabitethernet 0/1

LERA(config-if-GigabitEthernet 0/1)# no switchport

LERA(config-if-GigabitEthernet 0/1)# ip address 192.168.1.1 255.255.255.0

LERA(config-if-GigabitEthernet 0/1)# exit

LERA(config)# interface loopback 0

LERA(config-if-Loopback 0)# ip address 192.168.0.1 255.255.255.255

LERA(config-if-Loopback 0)# exit

LERA(config)# router ospf 10

LERA(config-router)# network 192.168.1.0 0.0.0.255 area 0

LERA(config-router)# network 192.168.0.1 0.0.0.0 area 0

LERA(config-router)# network 192.168.100.0 0.0.0.255 area 0

LERA(config-router)# exit

# 设备LSR B的配置。

LSRB> enable

LSRB# configure terminal

LSRB(config)# interface gigabitethernet 0/1

LSRB(config-if-GigabitEthernet 0/1)# no switchport

LSRB(config-if-GigabitEthernet 0/1)# ip address 192.168.1.2 255.255.255.0

LSRB(config-if-GigabitEthernet 0/1)# exit

LSRB(config)# interface gigabitethernet 0/2

LSRB(config-if-GigabitEthernet 0/2)# no switchport

LSRB(config-if-GigabitEthernet 0/2)# ip address 192.168.2.1 255.255.255.0

LSRB(config-if-GigabitEthernet 0/2)# exit

LSRB(config)# interface loopback 0

LSRB(config-if-Loopback 0)# ip address 192.168.0.2 255.255.255.255

LSRB(config-if-Loopback 0)# exit

LSRB(config)# router ospf 10

LSRB(config-router)# network 192.168.1.0 0.0.0.255 area 0

LSRB(config-router)# network 192.168.0.2 0.0.0.0 area 0

LSRB(config-router)# network 192.168.2.0 0.0.0.255 area 0

LSRB(config-router)# exit

# 设备LER C的配置。

LERC> enable

LERC# configure terminal

LERC(config)# interface gigabitethernet 0/1

LERC(config-if-GigabitEthernet 0/1)# no switchport

LERC(config-if-GigabitEthernet 0/1)# ip address 192.168.2.2 255.255.255.0

LERC(config-if-GigabitEthernet 0/1)# exit

LERC(config)# interface loopback 0

LERC(config-if-Loopback 0)# ip address 192.168.0.3 255.255.255.255

LERC(config-if-Loopback 0)# exit

LERC(config)# router ospf 10

LERC(config-router)# network 192.168.2.0 0.0.0.255 area 0

LERC(config-router)# network 192.168.0.3 0.0.0.0 area 0

LERC(config-router)# network 192.168.200.0 0.0.0.255 area 0

LERC(config-router)# exit

(2)   开启全局MPLS转发和LDP协议,并配置LDP Router ID。以LER A为例,LER C的配置与LER A类似,不再赘述。

# 设备LER A的配置。

LERA(config)# mpls ip

LERA(config)# mpls router ldp

LERA(config-mpls-router)# ldp router-id interface loopback 0 force

(3)   配置远端对等体。

# 设备LER A的配置。

LERA(config-mpls-router)# neighbor 192.168.0.3

LERA(config-mpls-router)# end

# 设备LER C的配置。

LERC(config-mpls-router)# neighbor 192.168.0.1

LERC(config-mpls-router)# end

5.    验证配置结果

# 通过show mpls ldp neighbor命令查看LER ALER C之间是否建立LDP会话。

# 设备LER A上查看是否与LER C建立LDP会话。

LERA# show mpls ldp neighbor

Default VRF:

    Peer LDP Ident: 192.168.0.3:0; Local LDP Ident: 192.168.0.1:0

        TCP connection: 192.168.0.3.36809 - 192.168.0.1.646

        State: OPERATIONAL; Msgs sent/recv: 15/16; UNSOLICITED

        Up time: 00:10:52

        Graceful Restart enabled; Peer reconnect time (msecs): 300000

        LDP discovery sources:

          Targeted Hello 192.168.0.1 -> 192.168.0.3, active, passive;

        Addresses bound to peer LDP Ident:

          192.168.2.2     192.168.0.3

# 设备LER C上查看是否与LER A建立LDP会话。

LERC# show mpls ldp neighbor

Default VRF:

    Peer LDP Ident: 192.168.0.1:0; Local LDP Ident: 192.168.0.3:0

        TCP connection: 192.168.0.1.646 - 192.168.0.3.36809

        State: OPERATIONAL; Msgs sent/recv: 17/18; UNSOLICITED

        Up time: 00:12:02

        Graceful Restart enabled; Peer reconnect time (msecs): 300000

        LDP discovery sources:

          Targeted Hello 192.168.0.3 -> 192.168.0.1, active, passive;

        Addresses bound to peer LDP Ident:

          192.168.1.1     192.168.0.1

6.    配置文件

l  LER A的配置文件

hostname LERA

!

mpls ip

!

interface GigabitEthernet 0/1

 no switchport

 ip address 192.168.1.1 255.255.255.0

!

interface Loopback 0

 ip address 192.168.0.1 255.255.255.255

!

router ospf 10

 network 192.168.0.1 0.0.0.0 area 0

 network 192.168.1.0 0.0.0.255 area 0

 network 192.168.100.0 0.0.0.255 area 0

!

mpls router ldp

 ldp router-id interface Loopback 0 force

 neighbor 192.168.0.3

!

l  LSR B的配置文件

hostname LSRB

!

interface GigabitEthernet 0/1

 no switchport

 ip address 192.168.1.2 255.255.255.0

!

interface GigabitEthernet 0/2

 no switchport

 ip address 192.168.2.1 255.255.255.0

!

interface Loopback 0

 ip address 192.168.0.2 255.255.255.255

!

router ospf 10

 network 192.168.0.2 0.0.0.0 area 0

 network 192.168.1.0 0.0.0.255 area 0

 network 192.168.2.0 0.0.0.255 area 0

!

l  LER C的配置文件

hostname LERC

!

mpls ip

!

interface GigabitEthernet 0/1

 no switchport

 ip address 192.168.2.2 255.255.255.0

!

interface Loopback 0

 ip address 192.168.0.3 255.255.255.255

!

router ospf 10

 network 192.168.0.3 0.0.0.0 area 0

 network 192.168.2.0 0.0.0.255 area 0

 network 192.168.200.0 0.0.0.255 area 0

!

mpls router ldp

 ldp router-id interface Loopback 0 force

 neighbor 192.168.0.1

!

7.    常见错误

l  IPv4单播路由配置错误。

l  未开启全局MPLS转发。

l  未配置LDP协议。

l  未配置远端对等体。

1.14.4  LDP会话保护配置举例

1.    组网需求

Device ADevice B之间的LDP会话实施保护时,在Device ADevice B上开启LDP会话保护功能。

2.    组网图

图1-17   LDP会话保护配置组网图

image.png       

 

3.    配置要点

l  在各设备上配置接口IP地址和OSPF协议,实现各设备之间的路由可达。

l  开启全局和接口MPLS转发能力,并配置LDP协议,建立LDP LSP

l  Device ADevice B上开启LDP会话保护功能。

4.    配置步骤

(1)   在各设备上配置接口IP地址和OSPF协议,实现各设备之间的路由可达。

# 设备Device A的配置。

Device A> enable

Device A# configure terminal

Device A(config)# interface loopback 0

Device A(config-if-Loopback 0)# ip address 10.10.10.10 255.255.255.255

Device A(config-if-Loopback 0)# exit

Device A(config)# interface gigabitethernet 0/1

Device A(config-if-GigabitEthernet 0/1)# no switchport

Device A(config-if-GigabitEthernet 0/1)# ip address 1.1.10.1 255.255.255.0

Device A(config-if-GigabitEthernet 0/1)# exit

Device A(config)# interface gigabitethernet 0/2

Device A(config-if-GigabitEthernet 0/2)# no switchport

Device A(config-if-GigabitEthernet 0/2)# ip address 1.1.11.1 255.255.255.0

Device A(config-if-GigabitEthernet 0/2)# exit

Device A(config)# router ospf 1

Device A(config-router)# network 1.1.10.0 0.0.0.255 area 0

Device A(config-router)# network 1.1.11.0 0.0.0.255 area 0

Device A(config-router)# network 10.10.10.10 0.0.0.0 area 0

Device A(config-router)# exit

# 设备Device B的配置。

Device B> enable

Device B# configure terminal

Device B(config)# interface loopback 0

Device B(config-if-Loopback 0)# ip address 20.20.20.20 255.255.255.255

Device B(config-if-Loopback 0)# exit

Device B(config)# interface gigabitethernet 0/1

Device B(config-if-GigabitEthernet 0/1)# no switchport

Device B(config-if-GigabitEthernet 0/1)# ip address 1.1.10.2 255.255.255.0

Device B(config-if-GigabitEthernet 0/1)# exit

Device B(config)# interface gigabitethernet 0/2

Device B(config-if-GigabitEthernet 0/2)# no switchport

Device B(config-if-GigabitEthernet 0/2)# ip address 1.1.12.2 255.255.255.0

Device B(config-if-GigabitEthernet 0/2)# exit

Device B(config)# router ospf 1

Device B(config-router)# network 1.1.10.0 0.0.0.255 area 0

Device B(config-router)# network 1.1.12.0 0.0.0.255 area 0

Device B(config-router)# network 20.20.20.20 0.0.0.0 area 0

Device B(config-router)# exit

# 设备Device C的配置。

Device C> enable

Device C# configure terminal

Device C(config)# interface loopback 0

Device C(config-if-Loopback 0)# ip address 30.30.30.30 255.255.255.255

Device C(config-if-Loopback 0)# exit

Device C(config)# interface gigabitethernet 0/1

Device C(config-if-GigabitEthernet 0/1)# no switchport

Device C(config-if-GigabitEthernet 0/1)# ip address 1.1.11.2 255.255.255.0

Device C(config-if-GigabitEthernet 0/1)# exit

Device C(config)# interface gigabitethernet 0/2

Device C(config-if-GigabitEthernet 0/2)# no switchport

Device C(config-if-GigabitEthernet 0/2)# ip address 1.1.12.1 255.255.255.0

Device C(config-if-GigabitEthernet 0/2)# exit

Device C(config)# router ospf 1

Device C(config-router)# network 1.1.11.0 0.0.0.255 area 0

Device C(config-router)# network 1.1.12.0 0.0.0.255 area 0

Device C(config-router)# network 30.30.30.30 0.0.0.0 area 0

Device C(config-router)# exit

(2)   开启全局和接口MPLS转发能力,并配置LDP协议,建立LDP LSP

# 设备Device A的配置。

Device A(config)# mpls ip

Device A(config)# mpls router ldp

Device A(config-mpls-router)# ldp router-id interface loopback 0 force

Device A(config-mpls-router)# exit

Device A(config)# interface gigabitethernet 0/1

Device A(config-if-GigabitEthernet 0/1)# mpls ip

Device A(config-if-GigabitEthernet 0/1)# label-switching

Device A(config-if-GigabitEthernet 0/1)# exit

Device A(config)# interface gigabitethernet 0/2

Device A(config-if-GigabitEthernet 0/2)# mpls ip

Device A(config-if-GigabitEthernet 0/2)# label-switching

Device A(config-if-GigabitEthernet 0/2)# exit

# 设备Device B的配置。

Device B(config)# mpls ip

Device B(config)# mpls router ldp

Device B(config-mpls-router)# ldp router-id interface loopback 0 force

Device B(config-mpls-router)# exit

Device B(config)# interface gigabitethernet 0/1

Device B(config-if-GigabitEthernet 0/1)# mpls ip

Device B(config-if-GigabitEthernet 0/1)# label-switching

Device B(config-if-GigabitEthernet 0/1)# exit

Device B(config)# interface gigabitethernet 0/2

Device B(config-if-GigabitEthernet 0/2)# mpls ip

Device B(config-if-GigabitEthernet 0/2)# label-switching

Device B(config-if-GigabitEthernet 0/2)# exit

# 设备Device C的配置。

Device C(config)# mpls ip

Device C(config)# mpls router ldp

Device C(config-mpls-router)# ldp router-id interface loopback 0 force

Device C(config-mpls-router)# exit

Device C(config)# interface gigabitethernet 0/1

Device C(config-if-GigabitEthernet 0/1)# mpls ip

Device C(config-if-GigabitEthernet 0/1)# label-switching

Device C(config-if-GigabitEthernet 0/1)# exit

Device C(config)# interface gigabitethernet 0/2

Device C(config-if-GigabitEthernet 0/2)# mpls ip

Device C(config-if-GigabitEthernet 0/2)# label-switching

(3)   Device ADevice B上开启LDP会话保护功能。以Device A为例,Device B的配置与Device A类似,不再赘述。

# 设备Device A的配置。

Device A(config)# mpls router ldp

Device A(config-router)# session protection

Device A(config-router)# session protection duration 300

5.    验证配置结果

# 配置完成后,使用show mpls ldp neighbor detail命令查看是否开启LDP会话保护功能。以设备Device A为例说明。

Device A# show mpls ldp neighbor detail

Default VRF:

    Peer LDP Ident: 20.20.20.20:0; Local LDP Ident: 10.10.10.10:0

        TCP connection: 20.20.20.20.41475 - 10.10.10.10.646

        State: OPERATIONAL; Msgs sent/recv: 17/30; UNSOLICITED

        Up time: 00:02:03

        Graceful Restart enabled; Peer reconnect time (msecs): 300000

        LDP discovery sources:

          Link Peer on GigabitEthernet 0/1, Src IP addr: 1.1.10.2

            Hold time: 15 sec, hello interval: 5 sec

          Targeted Hello 10.10.10.10 -> 20.20.20.20, active, passive;

            Hold time: 45 sec, hello interval: 5 sec

        Addresses bound to peer LDP Ident:

          1.1.10.2      1.1.12.2      20.20.20.20

        Our is PASSIVE

        KA hold time: 45 sec; Proposed local/peer: 45/45 sec

        Peer distribute label mode: UNSOLICITED

        Peer loop detection: Disabled

        Peer Path Vector Limit: 0; Max PDU Length: 4096

        LDP Session Protection enabled, state: Ready

            duration: 300 seconds

    Peer LDP Ident: 30.30.30.30:0; Local LDP Ident: 10.10.10.10:0

        TCP connection: 30.30.30.30.40691 - 10.10.10.10.646

        State: OPERATIONAL; Msgs sent/recv: 16/32; UNSOLICITED

        Up time: 00:01:52

        Graceful Restart enabled; Peer reconnect time (msecs): 300000

        LDP discovery sources:

          Link Peer on GigabitEthernet 0/8, Src IP addr: 1.1.11.2

            Hold time: 15 sec, hello interval: 5 sec

        Addresses bound to peer LDP Ident:

          1.1.12.1     1.1.11.2      30.30.30.30

        Our is PASSIVE

        KA hold time: 45 sec; Proposed local/peer: 45/45 sec

        Peer distribute label mode: UNSOLICITED

        Peer loop detection: Disabled

        Peer Path Vector Limit: 0; Max PDU Length: 4096

        LDP Session Protection enabled, state: Incomplete

            duration: 300 seconds

6.    配置文件

l  Device A的配置文件

hostname Device A

!

mpls ip

!

interface gigabitethernet 0/1

 no switchport

 ip address 1.1.10.1 255.255.255.0

 mpls ip

 label-switching

!

interface gigabitethernet 0/2

 no switchport

 ip address 1.1.11.1 255.255.255.0

 mpls ip

 label-switching

!

interface loopback 0

 ip address 10.10.10.10 255.255.255.255

!

router ospf 1

 network 1.1.10.0 0.0.0.255 area 0

 network 1.1.11.0 0.0.0.255 area 0

 network 10.10.10.10 0.0.0.0 area 0

!

mpls router ldp

 ldp router-id interface loopback 0 force

 session protection duration 300

 session protection

!

l  Device B的配置文件

hostname Device B

!

mpls ip

!

interface gigabitethernet 0/1

 no switchport

 ip address 1.1.10.2 255.255.255.0

 mpls ip

 label-switching

!

interface gigabitethernet 0/2

 no switchport

 ip address 1.1.12.2 255.255.255.0

 mpls ip

 label-switching

!

interface loopback 0

 ip address 20.20.20.20 255.255.255.255

!

router ospf 1

 network 1.1.10.0 0.0.0.255 area 0

 network 1.1.12.0 0.0.0.255 area 0

 network 20.20.20.20 0.0.0.0 area 0

!

mpls router ldp

 ldp router-id interface loopback 0 force

 session protection duration 300

 session protection

!

l  Device C的配置文件

hostname Device C

!

mpls ip

!

interface gigabitethernet 0/1

 no switchport

 ip address 1.1.11.2 255.255.255.0

 mpls ip

 label-switching

!

interface gigabitethernet 0/2

 no switchport

 ip address 1.1.12.1 255.255.255.0

 mpls ip

 label-switching

!

interface loopback 0

 ip address 30.30.30.30 255.255.255.255

!

router ospf 1

 network 1.1.11.0 0.0.0.255 area 0

 network 1.1.12.0 0.0.0.255 area 0

 network 30.30.30.30 0.0.0.0 area 0

!

mpls router ldp

 ldp router-id interface loopback 0 force

!

1.14.5  LDP域间LSP配置举例(OSPF组网)

1.    组网需求

建立PE1PE2间的LSP(跨越不同区域的LSP),配置开启LDP域间LSPOSPF组网)。

2.    组网图

图1-18   LDP域间LSPOSPF)配置组网图

image.png

 

3.    配置要点

l  在各节点配置接口IP地址和OSPF协议,实现各节点之间的互通。

l  开启全局和接口MPLS转发能力,并配置LDP协议,使网络能够转发MPLS流量。

l  PE上配置VPN路由实例和MP-IBGP邻居,并配置传递VPN路由信息。

l  在区域边界设备ABR上配置公告聚合路由。

l  在各节点配置开启LDP域间LSP功能。

4.    配置步骤

(1)   配置各节点接口IP地址和OSPF协议,实现各节点之间的互通。

# 设备PE1的配置。

PE1> enable

PE1# configure terminal

PE1(config)# interface loopback 0

PE1(config-if-Loopback 0)# ip address 8.8.8.8 255.255.255.255

PE1(config-if-Loopback 0)# exit

PE1(config)# interface gigabitethernet 0/2

PE1(config-if-GigabitEthernet 0/2)# ip address 1.1.1.2 255.255.255.0

PE1(config-if-GigabitEthernet 0/2)# exit

PE1(config)# router ospf 1

PE1(config-router)# network 1.1.1.0 0.0.0.255 area 1

PE1(config-router)# network 8.8.8.8 0.0.0.0 area 1

PE1(config-router)# exit

# 设备ABR1的配置。

ABR1> enable

ABR1# configure terminal

ABR1(config)# interface loopback 0

ABR1(config-if-Loopback 0)# ip address 10.10.10.10 255.255.255.255

ABR1(config-if-Loopback 0)# exit

ABR1(config)# interface gigabitethernet 0/1

ABR1(config-if-GigabitEthernet 0/1)# ip address 1.1.1.1 255.255.255.0

ABR1(config-if-GigabitEthernet 0/1)# exit

ABR1(config)# interface gigabitethernet 0/2

ABR1(config-if-GigabitEthernet 0/2)# ip address 1.1.2.2 255.255.255.0

ABR1(config-if-GigabitEthernet 0/2)# exit

ABR1(config)# router ospf 1

ABR1(config-router)# network 1.1.1.0 0.0.0.255 area 1

ABR1(config-router)# network 1.1.2.0 0.0.0.255 area 0

ABR1(config-router)# network 10.10.10.10 0.0.0.0 area 1

ABR1(config-router)# exit

# 设备P1的配置。

P1> enable

P1# configure terminal

P1(config)# interface loopback 0

P1(config-if-Loopback 0)# ip address 20.20.20.20 255.255.255.255

P1(config-if-Loopback 0)# exit

P1(config)# interface gigabitethernet 0/1

P1(config-if-GigabitEthernet 0/1)# ip address 1.1.2.1 255.255.255.0

P1(config-if-GigabitEthernet 0/1)# exit

P1(config)# interface gigabitethernet 0/2

P1(config-if-GigabitEthernet 0/2)# ip address 1.1.3.2 255.255.255.0

P1(config-if-GigabitEthernet 0/2)# exit

P1(config)# router ospf 1

P1(config-router)# network 1.1.2.0 0.0.0.255 area 0

P1(config-router)# network 1.1.3.0 0.0.0.255 area 0

P1(config-router)# network 20.20.20.20 0.0.0.0 area 0

P1(config-router)# exit

# 设备PE2的配置。

PE2> enable

PE2# configure terminal

PE2(config)# interface loopback 0

PE2(config-if-Loopback 0)# ip address 9.9.9.9 255.255.255.255

PE2(config-if-Loopback 0)# exit

PE2(config)# interface gigabitethernet 0/2

PE2(config-if-GigabitEthernet 0/2)# ip address 1.1.4.1 255.255.255.0

PE2(config-if-GigabitEthernet 0/2)# exit

PE2(config)# router ospf 1

PE2(config-router)# network 1.1.4.0 0.0.0.255 area 2

PE2(config-router)# network 9.9.9.9 0.0.0.0 area 2

PE2(config-router)# exit

# 设备ABR2的配置。

ABR2> enable

ABR2# configure terminal

ABR2(config)# interface loopback 0

ABR2(config-if-Loopback 0)# ip address 30.30.30.30 255.255.255.255

ABR2(config-if-Loopback 0)# exit

ABR2(config)# interface gigabitethernet 0/1

ABR2(config-if-GigabitEthernet 0/1)# ip address 1.1.3.1 255.255.255.0

ABR2(config-if-GigabitEthernet 0/1)# exit

ABR2(config)# interface gigabitethernet 0/2

ABR2(config-if-GigabitEthernet 0/2)# ip address 1.1.4.2 255.255.255.0

ABR2(config-if-GigabitEthernet 0/2)# exit

ABR2(config)# router ospf 1

ABR2(config-router)# network 1.1.3.0 0.0.0.255 area 0

ABR2(config-router)# network 1.1.4.0 0.0.0.255 area 2

ABR2(config-router)# network 30.30.30.30 0.0.0.0 area 2

ABR2(config-router)# exit

(2)   全局开启MPLS转发,并配置LDP协议及LDP Router ID

# 设备PE1的配置。

PE1(config)# mpls ip

PE1(config)# mpls router ldp

PE1(config-mpls-router)# ldp router-id interface loopback 0 force

PE1(config-mpls-router)# exit

PE1(config)# interface gigabitethernet 0/2

PE1(config-if-GigabitEthernet 0/2)# mpls ip

PE1(config-if-GigabitEthernet 0/2)# label-switching

PE1(config-if-GigabitEthernet 0/2)# exit

# 设备ABR1的配置。

ABR1(config)# mpls ip

ABR1(config)# mpls router ldp

ABR1(config-mpls-router)# ldp router-id interface loopback 0 force

ABR1(config-mpls-router)# exit

ABR1(config)# interface gigabitethernet 0/1

ABR1(config-if-GigabitEthernet 0/1)# mpls ip

ABR1(config-if-GigabitEthernet 0/1)# label-switching

ABR1(config-if-GigabitEthernet 0/1)# exit

ABR1(config)# interface gigabitethernet 0/2

ABR1(config-if-GigabitEthernet 0/2)# mpls ip

ABR1(config-if-GigabitEthernet 0/2)# label-switching

ABR1(config-if-GigabitEthernet 0/2)# exit

# 设备P1的配置。

P1(config)# mpls ip

P1(config)# mpls router ldp

P1(config-mpls-router)# ldp router-id interface loopback 0 force

P1(config-mpls-router)# exit

P1(config)# interface gigabitethernet 0/1

P1(config-if-GigabitEthernet 0/1)# mpls ip

P1(config-if-GigabitEthernet 0/1)# label-switching

P1(config-if-GigabitEthernet 0/1)# exit

P1(config)# interface gigabitethernet 0/2

P1(config-if-GigabitEthernet 0/2)# mpls ip

P1(config-if-GigabitEthernet 0/2)# label-switching

# 设备PE2的配置。

PE2(config)# mpls ip

PE2(config)# mpls router ldp

PE2(config-mpls-router)# ldp router-id interface loopback 0 force

PE2(config-mpls-router)# exit

PE2(config)# interface gigabitethernet 0/2

PE2(config-if-GigabitEthernet 0/2)# mpls ip

PE2(config-if-GigabitEthernet 0/2)# label-switching

PE2(config-if-GigabitEthernet 0/2)# exit

# 设备ABR2的配置。

ABR2(config)# mpls ip

ABR2(config)# mpls router ldp

ABR2(config-mpls-router)# ldp router-id interface loopback 0 force

ABR2(config-mpls-router)# exit

ABR2(config)# interface gigabitethernet 0/1

ABR2(config-if-GigabitEthernet 0/1)# mpls ip

ABR2(config-if-GigabitEthernet 0/1)# label-switching

ABR2(config-if-GigabitEthernet 0/1)# exit

ABR2(config)# interface gigabitethernet 0/2

ABR2(config-if-GigabitEthernet 0/2)# mpls ip

ABR2(config-if-GigabitEthernet 0/2)# label-switching

ABR2(config-if-GigabitEthernet 0/2)# exit

(3)   PE1PE2上配置VPN路由实例和MP-IBGP邻居,并配置传递VPN路由信息。

# 设备PE1的配置。

PE1(config)# ip vrf vpn1

PE1(config-vrf)# rd 65001:20

PE1(config-vrf)# route-target both 65001:20

PE1(config-vrf)# exit

PE1(config)# interface gigabitethernet 0/1

PE1(config-if-GigabitEthernet 0/1)# ip vrf forwarding vpn1

PE1(config-if-GigabitEthernet 0/1)# ip address 2.1.1.1 255.255.255.0

PE1(config)# router bgp 65001

PE1(config-router)# neighbor 9.9.9.9 remote-as 65001

PE1(config-router)# neighbor 9.9.9.9 update-source Loopback 0

PE1(config-router)# address-family vpnv4

PE1(config-router-af)# neighbor 9.9.9.9 activate

PE1(config-router-af)# neighbor 9.9.9.9 send-community both

PE1(config-router-af)# exit

PE1(config-router)# address-family ipv4 vrf vpn1

PE1(config-router-af)# redistribute connected

PE1(config-router-af)# exit

PE1(config-router)# exit

# 设备PE2的配置。

PE2(config)# ip vrf vpn1

PE2(config-vrf)# rd 65001:20

PE2(config-vrf)# route-target both 65001:20

PE2(config-vrf)# exit

PE2(config)# interface gigabitethernet 0/1

PE2(config-if-GigabitEthernet 0/1)# ip vrf forwarding vpn1

PE2(config-if-GigabitEthernet 0/1)# ip address 2.1.2.1 255.255.255.0

PE2(config)# router bgp 65001

PE2(config-router)# neighbor 8.8.8.8 remote-as 65001

PE2(config-router)# neighbor 8.8.8.8 update-source Loopback 0

PE2(config-router)# address-family vpnv4

PE2(config-router-af)# neighbor 8.8.8.8 activate

PE2(config-router-af)# neighbor 8.8.8.8 send-community both

PE2(config-router-af)# exit

PE2(config-router)# address-family ipv4 vrf vpn1

PE2(config-router-af)# redistribute connected

PE2(config-router-af)# exit

PE2(config-router)# exit

(4)   在区域边界设备ABR上配置公告聚合路由。

# 设备ABR1的配置。

ABR1(config)# router ospf 1

ABR1(config-router)# area 1 range 8.0.0.0 255.0.0.0

# 设备ABR2的配置。

ABR2(config)# router ospf 1

ABR2(config-router)# area 2 range 9.0.0.0 255.0.0.0

(5)   PE1PE2上配置LDP域间LSP功能。

# 设备PE1的配置。

PE1(config)# mpls router ldp

PE1(config-router)# inter-area-lsp

PE1(config-router)# end

# 设备PE2的配置。

PE2(config)# mpls router ldp

PE2(config-router)# inter-area-lsp

PE2(config-router)# end

5.    验证配置结果

# 通过show mpls ldp parameters命令查看LDP域间LSP功能是否开启,show mpls ldp bindings命令查看是否最长匹配路由原则添加的LDP表项。以PE1为例。

PE1# show mpls ldp parameters

Default VRF:

  Protocol version: 1

    Ldp Router ID: 8.8.8.8

    Control Mode: INDEPENDENT

    Propogate Release: FALSE

    Label Merge: TRUE

    Label Retention Mode: LIBERAL

Loop Detection Mode: off

Inter Area Lsp: TRUE

    Session Protection: FALSE

    Targeted Session Keepalive HoldTime/Interval: 180/60 sec

Targeted Hello HoldTime/Interval: 90/10 sec

 

PE1# show mpls ldp bindings

Default VRF:

  lib entry: 10.10.10.10/32

     local binding:  to lsr:   10.10.10.10:0, label: 1027

     local binding:  to lsr:   30.30.30.30:0, label: 1027

     remote binding: from lsr: 10.10.10.10:0, label: imp-null

     remote binding: from lsr: 30.30.30.30:0, label: 1030 (not in FIB)

  lib entry: 9.9.9.9/32, (IA)

     local binding:  to lsr:   10.10.10.10:0, label: 1028

     local binding:  to lsr:   30.30.30.30:0, label: 1028

     remote binding: from lsr: 10.20.10.10:0, label: 1027 (not in FIB)

     remote binding: from lsr: 30.30.30.30:0, label: 1031

6.    配置文件

l  PE1的配置文件。

hostname PE1

!

ip vrf vpn1

 rd 65001:20

 route-target both 65001:20

!

mpls ip

!

interface GigabitEthernet 0/1

 ip vrf forwarding vpn1

 ip address 2.1.1.1 255.255.255.0

!

interface GigabitEthernet 0/2

 ip address 1.1.1.2 255.255.255.0

 mpls ip

 label-switching

!

interface Loopback 0

 ip address 8.8.8.8 255.255.255.255

!

router bgp 65001

 neighbor 9.9.9.9 remote-as 65001

 neighbor 9.9.9.9 update-source Loopback 0

 address-family vpnv4 unicast

  neighbor 9.9.9.9 activate

  neighbor 9.9.9.9 send-community both

  exit-address-family

  !

 address-family ipv4 vrf vpn1

  redistribute connected

  exit-address-family

!

router ospf 1

 router-id 8.8.8.8

 network 1.1.1.0 0.0.0.255 area 1

 network 8.8.8.8 0.0.0.0 area 1

!

mpls router ldp

 ldp router-id interface Loopback 0 force

 inter-area-lsp

!

l  ABR1的配置文件。

hostname ABR1

!

mpls ip

!

interface GigabitEthernet 0/1

 ip address 1.1.1.1 255.255.255.0

 mpls ip

 label-switching

!

interface GigabitEthernet 0/2

 ip address 1.1.2.2 255.255.255.0

 mpls ip

 label-switching

!

interface Loopback 0

 ip address 10.10.10.10 255.255.255.255

!

router ospf 1

 router-id 10.10.10.10

 area 1 range 8.0.0.0 255.0.0.0

 network 1.1.1.0 0.0.0.255 area 1

 network 1.1.2.0 0.0.0.255 area 0

 network 10.10.10.10 0.0.0.0 area 1

!

mpls router ldp

 ldp router-id interface Loopback 0 force

!

l  P1的配置文件。

hostname P1

!

mpls ip

!

interface GigabitEthernet 0/1

 no switchport

 ip address 1.1.2.1 255.255.255.0

 mpls ip

 label-switching

!

interface GigabitEthernet 0/2

 ip address 1.1.3.2 255.255.255.0

 mpls ip

 label-switching

!

interface Loopback 0

 ip address 20.20.20.20 255.255.255.255

!

router ospf 1

 router-id 20.20.20.20

 graceful-restart

 network 1.1.2.0 0.0.0.255 area 0

 network 1.1.3.0 0.0.0.255 area 0

 network 20.20.20.20 0.0.0.0 area 0

!

mpls router ldp

 ldp router-id interface Loopback 0 force

!

l  ABR2的配置文件。

hostname ABR2

!

mpls ip

!

interface GigabitEthernet 0/1

 description cyx

 ip address 1.1.3.1 255.255.255.0

 mpls ip

 label-switching

!

interface GigabitEthernet 0/2

 ip address 1.1.4.2 255.255.255.0

 mpls ip

 label-switching

!

interface Loopback 0

 ip address 30.30.30.30 255.255.255.255

!

router ospf 1

 router-id 30.30.30.30

 area 2 range 9.0.0.0 255.0.0.0

 network 1.1.3.0 0.0.0.255 area 0

 network 1.1.4.0 0.0.0.255 area 2

 network 30.30.30.30 0.0.0.0 area 2

!

mpls router ldp

 ldp router-id interface Loopback 0 force

!

l  PE2的配置文件。

hostname PE2

!

ip vrf vpn1

 rd 65001:20

 route-target both 65001:20

!

mpls ip

!

interface GigabitEthernet 0/1

 ip vrf forwarding vpn1

 ip address 2.1.2.1 255.255.255.0

!

interface GigabitEthernet 0/2

 ip address 1.1.4.1 255.255.255.0

 mpls ip

 label-switching

!

interface Loopback 0

 ip address 9.9.9.9 255.255.255.255

!

router bgp 65001

 neighbor 8.8.8.8 remote-as 65001

 neighbor 8.8.8.8 update-source Loopback 0

 address-family vpnv4 unicast

  neighbor 8.8.8.8 activate

  neighbor 8.8.8.8 send-community both

  exit-address-family

  !

 address-family ipv4 vrf vpn1

  redistribute connected

  exit-address-family

!        

router ospf 1

 router-id 9.9.9.9

 network 1.1.4.0 0.0.0.255 area 2

 network 9.9.9.9 0.0.0.0 area 2

!

mpls router ldp

 ldp router-id interface Loopback 0 force

 neighbor 192.168.0.1

 inter-area-lsp

!

1.14.6  LDP域间LSP配置举例(IS-IS组网)

1.    组网需求

建立PE1PE2间的LSP(跨越不同区域的LSP),配置开启LDP域间LSPISIS组网)。

2.    组网图

图1-19   LDP域间LSPISIS)配置组网图

image.png

 

3.    配置要点

l  在各节点配置接口IP地址和ISIS路由协议,实现各节点之间的互通。

l  PE上配置VPN路由实例和MP-IBGP邻居,并配置传递VPN路由信息。

l  在区域边界设备ABR上配置公告聚合路由。

l  各节点配置开启LDP域间LSP功能。

4.    配置步骤

(1)   配置各节点接口IP地址和IS-IS协议,实现各节点之间的互通。

# 设备PE1的配置

PE1> enable

PE1# configure terminal

PE1(config)# router isis

PE1(config-router)# net 49.0001.0000.0000.0003.00

PE1(config-router)# is-type level-1

PE1(config-router)# exit

PE1(config)# interface loopback 0

PE1(config-if-Loopback 0)# ip address 8.8.8.8 255.255.255.255

PE1(config-if-Loopback 0)# ip router isis

PE1(config-if-Loopback 0)# exit

PE1(config)# interface gigabitethernet 0/2

PE1(config-if-GigabitEthernet 0/2)# ip address 1.1.1.2 255.255.255.0

PE1(config-if-GigabitEthernet 0/2)# ip router isis

PE1(config-if-GigabitEthernet 0/2)# exit

PE1(config)# interface gigabitethernet 0/1

PE1(config-if-GigabitEthernet 0/1)# ip address 2.1.1.1 255.255.255.0

PE1(config-if-GigabitEthernet 0/1)# exit

# 设备ABR1的配置

ABR1> enable

ABR1# configure terminal

ABR1(config)# router isis

ABR1(config-router)# net 49.0001.0000.0000.0002.00

ABR1(config-router)# is-type level-1-2

ABR1(config-router)# exit

ABR1(config)# interface loopback 0

ABR1(config-if-Loopback 0)# ip address 10.10.10.10 255.255.255.255

ABR1(config-if-Loopback 0)# ip router isis

ABR1(config-if-Loopback 0)# exit

ABR1(config)# interface gigabitethernet 0/1

ABR1(config-if-GigabitEthernet 0/1)# ip address 1.1.1.1 255.255.255.0

ABR1(config-if-GigabitEthernet 0/1)# ip router isis

ABR1(config-if-GigabitEthernet 0/1)# exit

ABR1(config)# interface gigabitethernet 0/2

ABR1(config-if-GigabitEthernet 0/2)# ip address 1.1.2.2 255.255.255.0

ABR1(config-if-GigabitEthernet 0/2)# ip router isis

ABR1(config-if-GigabitEthernet 0/2)# exit

# 设备P1的配置

P1> enable

P1# configure terminal

P1(config)# router isis

P1(config-router)# net 50.0001.0000.0000.0001.00

P1(config-router)# is-type level-2-only

P1(config-router)# exit

P1(config)# interface loopback 0

P1(config-if-Loopback 0)# ip address 20.20.20.20 255.255.255.255

P1(config-if-Loopback 0)# ip router isis

P1(config-if-Loopback 0)# exit

P1(config)# interface gigabitethernet 0/1

P1(config-if-GigabitEthernet 0/1)# ip address 1.1.2.1 255.255.255.0

P1(config-if-GigabitEthernet 0/1)# ip router isis

P1(config-if-GigabitEthernet 0/1)# exit

P1(config)# interface gigabitethernet 0/2

P1(config-if-GigabitEthernet 0/2)# ip address 1.1.3.2 255.255.255.0

P1(config-if-GigabitEthernet 0/2)# ip router isis

P1(config-if-GigabitEthernet 0/2)# exit

P1(config-if-GigabitEthernet 0/2)# end

# 设备ABR2的配置

ABR2> enable

ABR2# configure terminal

ABR2(config)# router isis

ABR2(config-router)# net 49.0002.0000.0000.0002.00

ABR2(config-router)# is-type level-1-2

ABR2(config-router)# exit

ABR2(config)# interface loopback 0

ABR2(config-if-Loopback 0)# ip address 30.30.30.30 255.255.255.255

ABR2(config-if-Loopback 0)# ip router isis

ABR2(config-if-Loopback 0)# exit

ABR2(config)# interface gigabitethernet 1/1

ABR2(config-if-GigabitEthernet 1/1)# ip address 1.1.3.1 255.255.255.0

ABR2(config-if-GigabitEthernet 1/1)# ip router isis

ABR2(config-if-GigabitEthernet 1/1)# exit

ABR2(config)# interface gigabitethernet 1/2

ABR2(config-if-GigabitEthernet 1/2)# ip address 1.1.4.2 255.255.255.0

ABR2(config-if-GigabitEthernet 1/2)# ip router isis

ABR2(config-if-GigabitEthernet 1/2)# exit

# 设备PE2的配置

PE2> enable

PE2# configure terminal

PE2(config)# router isis

PE2(config-router)# net 49.0002.0000.0000.0003.00

PE2(config-router)# is-type level-1

PE2(config-router)# exit

PE2(config)# interface loopback 0

PE2(config-if-Loopback 0)# ip address 9.9.9.9 255.255.255.255

PE2(config-if-Loopback 0)# ip router isis

PE2(config-if-Loopback 0)# exit

PE2(config)# interface gigabitethernet 0/2

PE2(config-if-GigabitEthernet 0/2)# ip address 1.1.4.1 255.255.255.0

PE2(config-if-GigabitEthernet 0/2)# ip router isis

PE2(config-if-GigabitEthernet 0/2)# exit

PE2(config)# interface gigabitethernet 0/1

PE2(config-if-GigabitEthernet 0/1)# ip address 2.1.2.1 255.255.255.0

PE2(config-if-GigabitEthernet 0/1)# exit

(2)   全局开启MPLS转发,并配置LDP协议及LDP Router ID

# 设备PE1的配置。

PE1(config)# mpls ip

PE1(config)# mpls router ldp

PE1(config-mpls-router)# ldp router-id interface loopback 0 force

PE1(config-mpls-router)# exit

PE1(config)# interface gigabitethernet 0/2

PE1(config-if-GigabitEthernet 0/2)# mpls ip

PE1(config-if-GigabitEthernet 0/2)# label-switching

PE1(config-if-GigabitEthernet 0/2)# exit

# 设备ABR1的配置。

ABR1(config)# mpls ip

ABR1(config)# mpls router ldp

ABR1(config-mpls-router)# ldp router-id interface loopback 0 force

ABR1(config-mpls-router)# exit

ABR1(config)# interface gigabitethernet 0/1

ABR1(config-if-GigabitEthernet 0/1)# mpls ip

ABR1(config-if-GigabitEthernet 0/1)# label-switching

ABR1(config-if-GigabitEthernet 0/1)# exit

ABR1(config)# interface gigabitethernet 0/2

ABR1(config-if-GigabitEthernet 0/2)# mpls ip

ABR1(config-if-GigabitEthernet 0/2)# label-switching

ABR1(config-if-GigabitEthernet 0/2)# exit

# 设备P1的配置。

P1(config)# mpls ip

P1(config)# mpls router ldp

P1(config-mpls-router)# ldp router-id interface loopback 0 force

P1(config-mpls-router)# exit

P1(config)# interface gigabitethernet 0/1

P1(config-if-GigabitEthernet 0/1)# mpls ip

P1(config-if-GigabitEthernet 0/1)# label-switching

P1(config-if-GigabitEthernet 0/1)# exit

P1(config)# interface gigabitethernet 0/2

P1(config-if-GigabitEthernet 0/2)# mpls ip

P1(config-if-GigabitEthernet 0/2)# label-switching

P1(config-if-GigabitEthernet 0/2)# exit

# 设备ABR2的配置。

ABR2(config)# mpls ip

ABR2(config)# mpls router ldp

ABR2(config-mpls-router)# ldp router-id interface loopback 0 force

ABR2(config-mpls-router)# exit

ABR2(config)# interface gigabitethernet 1/1

ABR2(config-if-GigabitEthernet 1/1)# mpls ip

ABR2(config-if-GigabitEthernet 1/1)# label-switching

ABR2(config-if-GigabitEthernet 1/1)# exit

ABR2(config)# interface gigabitethernet 1/2

ABR2(config-if-GigabitEthernet 1/2)# mpls ip

ABR2(config-if-GigabitEthernet 1/2)# label-switching

ABR2(config-if-GigabitEthernet 1/2)# exit

# 设备PE2的配置。

PE2(config)# mpls ip

PE2(config)# mpls router ldp

PE2(config-mpls-router)# ldp router-id interface loopback 0 force

PE2(config-mpls-router)# exit

PE2(config)# interface gigabitethernet 0/2

PE2(config-if-GigabitEthernet 0/2)# mpls ip

PE2(config-if-GigabitEthernet 0/2)# label-switching

PE2(config-if-GigabitEthernet 0/2)# exit

(3)   PE1PE2上配置VPN路由实例和MP-IBGP邻居,并配置传递VPN路由信息。

# 设备PE1的配置。

PE1(config)# ip vrf vpn1

PE1(config-vrf)# rd 65001:20

PE1(config-vrf)# route-target both 65001:20

PE1(config-vrf)# exit

PE1(config)# interface gigabitethernet 0/1

PE1(config-if-GigabitEthernet 0/1)# ip vrf forwarding vpn1

PE1(config)# router bgp 65001

PE1(config-router)# neighbor 9.9.9.9 remote-as 65001

PE1(config-router)# neighbor 9.9.9.9 update-source Loopback 0

PE1(config-router)# address-family vpnv4

PE1(config-router-af)# neighbor 9.9.9.9 activate

PE1(config-router-af)# neighbor 9.9.9.9 send-community both

PE1(config-router-af)# exit

PE1(config-router)# address-family ipv4 vrf vpn1

PE1(config-router-af)# redistribute connected

PE1(config-router-af)# exit

PE1(config-router)# exit

# 设备PE2的配置。

PE2(config)# ip vrf vpn1

PE2(config-vrf)# rd 65001:20

PE2(config-vrf)# route-target both 65001:20

PE2(config-vrf)# exit

PE2(config)# interface gigabitethernet 0/1

PE2(config-if-GigabitEthernet 0/1)# ip vrf forwarding vpn1

PE2(config)# router bgp 65001

PE2(config-router)# neighbor 8.8.8.8 remote-as 65001

PE2(config-router)# neighbor 8.8.8.8 update-source Loopback 0

PE2(config-router)# address-family vpnv4

PE2(config-router-af)# neighbor 8.8.8.8 activate

PE2(config-router-af)# neighbor 8.8.8.8 send-community both

PE2(config-router-af)# exit

PE2(config-router)# address-family ipv4 vrf vpn1

PE2(config-router-af)# redistribute connected

PE2(config-router-af)# exit

PE2(config-router)# exit

(4)   在区域边界设备ABR上配置公告聚合路由。

# 设备ABR1的配置

ABR1(config)# router isis

ABR1(config-router)# summary-address 8.0.0.0 255.0.0.0

ABR1(config-router)# exit

# 设备ABR2的配置

ABR2(config)# router isis

ABR2(config-router)# summary-address 9.0.0.0 255.0.0.0

ABR2(config-router)# exit

(5)   PE1PE2上配置LDP域间LSP功能。

# 设备PE1的配置。

PE1(config)# mpls router ldp

PE1(config-router)# inter-area-lsp

PE1(config-router)# exit

# 设备PE2的配置。

PE2(config)# mpls router ldp

PE2(config-router)# inter-area-lsp

PE2(config-router)# exit

5.    验证配置结果

# 使用show mpls ldp parameters命令查看LDP域间LSP功能是否开启,通过show mpls ldp bindings命令查看是否最长匹配路由添加的LDP表项。以P1为例。

P1# show mpls ldp parameters

Default VRF:

  Protocol version: 1

    Ldp Router ID: 8.8.8.8

    Control Mode: INDEPENDENT

    Propogate Release: FALSE

    Label Merge: TRUE

    Label Retention Mode: LIBERAL

Loop Detection Mode: off

Inter Area Lsp: TRUE

    Session Protection: FALSE

    Targeted Session Keepalive HoldTime/Interval: 180/60 sec

Targeted Hello HoldTime/Interval: 90/10 sec

 

P1# show mpls ldp bindings

Default VRF:

  lib entry: 10.10.10.10/32

     local binding:  to lsr:   10.10.10.10:0, label: 1027

     local binding:  to lsr:   30.30.30.30:0, label: 1027

     remote binding: from lsr: 10.10.10.10:0, label: imp-null

     remote binding: from lsr: 30.30.30.30:0, label: 1030 (not in FIB)

  lib entry: 9.9.9.9/32, (IA)

     local binding:  to lsr:   10.10.10.10:0, label: 1028

     local binding:  to lsr:   30.30.30.30:0, label: 1028

     remote binding: from lsr: 10.20.10.10:0, label: 1027 (not in FIB)

     remote binding: from lsr: 30.30.30.30:0, label: 1031

6.    配置文件

l  PE1的配置文件。

hostname PE1

!

ip vrf vpn1

 rd 65001:20

 route-target both 65001:20

!

mpls ip

!

interface GigabitEthernet 0/1

 ip vrf forwarding vpn1

 ip address 2.1.1.1 255.255.255.0

!

interface GigabitEthernet 0/2

 ip address 1.1.1.2 255.255.255.0

 ip router isis

 mpls ip

 label-switching

!

interface Loopback 0

 ip address 8.8.8.8 255.255.255.255

 ip router isis

!

router bgp 65001

 neighbor 9.9.9.9 remote-as 65001

 neighbor 9.9.9.9 update-source Loopback 0

 address-family vpnv4 unicast

  neighbor 9.9.9.9 activate

  neighbor 9.9.9.9 send-community both

  exit-address-family

  !

 address-family ipv4 vrf vpn1

  redistribute connected

  exit-address-family

!

router isis

 is-type level-1

 net 49.0001.0000.0000.0003.00

 graceful-restart

!

mpls router ldp

 ldp router-id interface Loopback 0 force

 inter-area-lsp

!

l  ABR1的配置文件。

hostname ABR1

!

mpls ip

!

interface GigabitEthernet 0/1

 ip address 1.1.1.1 255.255.255.0

 ip router isis

 mpls ip

 label-switching

!

interface GigabitEthernet 0/2

 ip address 1.1.2.2 255.255.255.0

 ip router isis

 mpls ip

 label-switching

!

interface Loopback 0

 ip address 10.10.10.10 255.255.255.255

 ip router isis

!

router isis

 net 49.0001.0000.0000.0002.00

 summary-address 8.0.0.0 255.0.0.0

 graceful-restart

!

mpls router ldp

 ldp router-id interface Loopback 0 force

!

l  P1的配置文件。

hostname P1

!

mpls ip

!

interface GigabitEthernet 0/1

 no switchport

 ip address 1.1.2.1 255.255.255.0

 ip router isis

 mpls ip

 label-switching

!

interface GigabitEthernet 0/2

 ip address 1.1.3.2 255.255.255.0

 ip router isis

 mpls ip

 label-switching

!

interface Loopback 0

 ip address 20.20.20.20 255.255.255.255

 ip router isis

!

router isis

 is-type level-2-only

 net 50.0001.0000.0000.0001.00

 graceful-restart

!

mpls router ldp

 ldp router-id interface Loopback 0 force

!

l  ABR2的配置文件。

hostname ABR2

!

mpls ip

!

interface GigabitEthernet 0/1

 description cyx

 ip address 1.1.3.1 255.255.255.0

 ip router isis

 mpls ip

 label-switching

!

interface GigabitEthernet 0/2

 ip address 1.1.4.2 255.255.255.0

 ip router isis

 mpls ip

 label-switching

!

interface Loopback 0

 ip address 30.30.30.30 255.255.255.255

 ip router isis

!

router isis

 net 49.0002.0000.0000.0002.00

 summary-address 9.0.0.0 255.0.0.0

 graceful-restart

!

mpls router ldp

 ldp router-id interface Loopback 0 force

!

l  PE2的配置文件。

hostname PE2

!

ip vrf vpn1

 rd 65001:20

 route-target both 65001:20

!

mpls ip

!

interface GigabitEthernet 0/1

 ip vrf forwarding vpn1

 ip address 2.1.2.1 255.255.255.0

!

interface GigabitEthernet 0/2

 ip address 1.1.4.1 255.255.255.0

 ip router isis

 mpls ip

 label-switching

!

interface Loopback 0

 ip address 9.9.9.9 255.255.255.255

 ip router isis

!

router bgp 65001

 neighbor 8.8.8.8 remote-as 65001

 neighbor 8.8.8.8 update-source Loopback 0

 address-family vpnv4 unicast

  neighbor 8.8.8.8 activate

  neighbor 8.8.8.8 send-community both

  exit-address-family

  !

 address-family ipv4 vrf vpn1

  redistribute connected

  exit-address-family

!        

router isis

 is-type level-1

 net 49.0002.0000.0000.0003.00

 graceful-restart

!

mpls router ldp

 ldp router-id interface Loopback 0 force

 neighbor 192.168.0.1

 inter-area-lsp

!

1.14.7  LDP IPv6 LSP配置举例

1.    组网需求

配置LDP IPv6 LSP

2.    组网图

图1-20   LDP IPv6 LSP配置组网图

image.png

 

3.    配置要点

l  在设备上配置IPv6地址和OSPF单播路由协议,实现各节点之间的互通(Loopback接口单播路由可达)。

l  配置LDP Router IDLDP IPv6的传输地址,全局开启LDP IPv6功能。

l  开启接口的LDP IPv6功能和标签转发能力。

4.    配置步骤

(1)   在各设备上配置接口IP地址和OSPF路由协议,实现各设备之间的互通。

# 设备LER A的配置。

LERA> enable

LERA# configure terminal

LERA(config)# interface loopback 0

LERA(config-if-Loopback 0)# ipv6 address 1001::1/128

LERA(config-if-Loopback 0)# exit

LERA(config)# interface gigabitethernet 0/1

LERA(config-if-GigabitEthernet 0/1)# no switchport

LERA(config-if-GigabitEthernet 0/1)# ipv6 address 2001::12:1/64

LERA(config-if-GigabitEthernet 0/1)# exit

LERA(config)# ipv6 router ospf 1

LERA(config-router)# router-id 1.1.1.1

Change router-id and update OSPFv3 process! [yes/no]:yes

LERA(config-router)# exit

LERA(config)# interface gigabitethernet 0/1

LERA(config-if-GigabitEthernet 0/1)# ipv6 ospf 1 area 0

LERA(config-if-GigabitEthernet 0/1)# exit

LERA(config)# interface loopback 0

LERA(config-if-Loopback 0)# ipv6 ospf 1 area 0

LERA(config-if-Loopback 0)# exit

# 设备LSR B的配置。

LSRB> enable

LSRB# configure terminal

LSRB(config)# interface loopback 0

LSRB(config-if-Loopback 0)# ipv6 address 2002::2/128

LSRB(config-if-Loopback 0)# exit

LSRB(config)# interface gigabitethernet 0/1

LSRB(config-if-GigabitEthernet 0/1)# no switchport

LSRB(config-if-GigabitEthernet 0/1)# ipv6 address 2001::12:2/64

LSRB(config-if-GigabitEthernet 0/1)# exit

LSRB(config)# interface gigabitethernet 0/2

LSRB(config-if-GigabitEthernet 0/2)# no switchport

LSRB(config-if-GigabitEthernet 0/2)# ipv6 address 2003::23:2/64

LSRB(config-if-GigabitEthernet 0/2)# exit

LSRB(config)# ipv6 router ospf 1

LSRB(config-router)# router-id 2.2.2.2

Change router-id and update OSPFv3 process! [yes/no]:yes

LSRB(config-router)# exit

LSRB(config)# interface gigabitethernet 0/1

LSRB(config-if-GigabitEthernet 0/1)# ipv6 ospf 1 area 0

LSRB(config-if-GigabitEthernet 0/1)# exit

LSRB(config)# interface gigabitethernet 0/2

LSRB(config-if-GigabitEthernet 0/2)# ipv6 ospf 1 area 0

LSRB(config-if-GigabitEthernet 0/2)# exit

LSRB(config)# interface loopback 0

LSRB(config-if-Loopback 0)# ipv6 ospf 1 area 0

LSRB(config-if-Loopback 0)# exit

# 设备LER C的配置。

LERC> enable

LERC# configure terminal

LERC(config)# interface gigabitethernet 0/1

LERC(config-if-GigabitEthernet 0/1)# no switchport

LERC(config-if-GigabitEthernet 0/1)# ipv6 address 2003::23:3/64

LERC(config-if-GigabitEthernet 0/1)# exit

LERC(config)# interface loopback 0

LERC(config-if-Loopback 0)# ipv6 address 3003::3/128

LERC(config-if-Loopback 0)# exit

LERC(config)# ipv6 router ospf 1

LERC(config-router)# router-id 3.3.3.3

Change router-id and update OSPFv3 process! [yes/no]:yes

LERC(config-router)# exit

LERC(config)# interface gigabitethernet 0/1

LERC(config-if-GigabitEthernet 0/1)# ipv6 ospf 1 area 0

LERC(config)# interface loopback 0

LERC(config-if-Loopback 0)# ipv6 ospf 1 area 0

LERC(config-if-Loopback 0)# exit

(2)   配置LDP Router IDLDP IPv6的传输地址,全局开启LDP IPv6功能。

# 设备LER A的配置。

LERA(config)# mpls router ldp

LERA(config-mpls-router)# ldp router-id 1.1.1.1

LERA(config-mpls-router)# ipv6 transport-address loopback 0

LERA(config-mpls-router)# ipv6 enable

LERA(config-mpls-router)# exit

# 设备LSR B的配置。

LSRB(config)# mpls router ldp

LSRB(config-mpls-router)# ldp router-id 2.2.2.2

LSRB(config-mpls-router)# ipv6 transport-address loopback 0

LSRB(config-mpls-router)# ipv6 enable

LSRB(config-mpls-router)# exit

# 设备LER C的配置。

LERC(config)# mpls router ldp

LERC(config-mpls-router)# ldp router-id 3.3.3.3

LERC(config-mpls-router)# ipv6 transport-address loopback 0

LERC(config-mpls-router)# ipv6 enable

LERC(config-mpls-router)# exit

(3)   开启接口的LDP IPv6和标签转发能力。

# 设备LER A的配置。

LERA(config)# interface gigabitethernet 0/1

LERA(config-if-GigabitEthernet 0/1)# mpls ipv6

LERA(config-if-GigabitEthernet 0/1)# label-switching

LERA(config-if-GigabitEthernet 0/1)# end

# 设备LSR B的配置。

LSRB(config)# interface gigabitethernet 0/1

LSRB(config-if-GigabitEthernet 0/1)# mpls ipv6

LSRB(config-if-GigabitEthernet 0/1)# label-switching

LSRB(config-if-GigabitEthernet 0/1)# exit

LSRB(config)# interface gigabitethernet 0/2

LSRB(config-if-GigabitEthernet 0/2)# mpls ipv6

LSRB(config-if-GigabitEthernet 0/2)# label-switching

LSRB(config-if-GigabitEthernet 0/2)# end

# 设备LER C的配置。

LERC(config)# interface gigabitethernet 0/1

LERC(config-if-GigabitEthernet 0/1)# mpls ipv6

LERC(config-if-GigabitEthernet 0/1)# label-switching

LERC(config-if-GigabitEthernet 0/1)# end

5.    验证配置结果

# 通过show mpls forwarding-table命令查看各设备是否生成MPLS表项。

# 在设备LER A上查看MPLS表项。

LERA# show mpls forwarding-table

Label Operation Code:

PH--PUSH label

PP--POP label

SW--SWAP label

SP--SWAP topmost label and push new label

DP--DROP packet

PC--POP label and continue lookup by IP or Label

PI--POP label and do ip lookup forward

PN--POP label and forward to nexthop

PM--POP label and do MAC lookup forward

PV--POP label and output to VC attach interface

IP--IP lookup forward

 s--stale

  Local   Outgoing OP FEC                         Outgoing         Nexthop       

  label   label                                   interface                    

  --      imp-null PH 2002::2/128                 Gi0/1            fe80::274:9cff:feee:f49f

  --      imp-null PH 2003::/64                   Gi0/1            fe80::274:9cff:feee:f49f

  --      9228     PH 3003::3/128                 Gi0/1            fe80::274:9cff:feee:f49f

  9216    imp-null PP 2002::2/128                 Gi0/1            fe80::274:9cff:feee:f49f

  9217    imp-null PP 2003::/64                   Gi0/1            fe80::274:9cff:feee:f49f

  9218    9228     SW 3003::3/128                 Gi0/1            fe80::274:9cff:feee:f49f

# 在设备LSR B上查看MPLS表项。

LSRB# show mpls forwarding-table

Label Operation Code:

PH--PUSH label

PP--POP label

SW--SWAP label

SP--SWAP topmost label and push new label

DP--DROP packet

PC--POP label and continue lookup by IP or Label

PI--POP label and do ip lookup forward

PN--POP label and forward to nexthop

PM--POP label and do MAC lookup forward

PV--POP label and output to VC attach interface

IP--IP lookup forward

 s--stale

  Local   Outgoing OP FEC                         Outgoing         Nexthop       

  label   label                                   interface                    

  --      imp-null PH 1001::1/128                 Gi0/1            fe80::274:9cff:feee:53cb

  --      imp-null PH 3003::3/128                 Gi0/2            fe80::2d0:f8ff:feee:8c1f

  9228    imp-null PP 3003::3/128                 Gi0/2            fe80::2d0:f8ff:feee:8c1f

  9229    imp-null PP 1001::1/128                 Gi0/1            fe80::274:9cff:feee:53cb

# 在设备LER C上查看MPLS表项。

LERC# show mpls forwarding-table

Label Operation Code:

PH--PUSH label

PP--POP label

SW--SWAP label

SP--SWAP topmost label and push new label

DP--DROP packet

PC--POP label and continue lookup by IP or Label

PI--POP label and do ip lookup forward

PN--POP label and forward to nexthop

PM--POP label and do MAC lookup forward

PV--POP label and output to VC attach interface

IP--IP lookup forward

 s--stale

  Local   Outgoing OP FEC                         Outgoing         Nexthop       

  label   label                                   interface                    

  --      9229     PH 1001::1/128                 Gi0/1            fe80::274:9cff:feee:f49f

  --      imp-null PH 2001::/64                   Gi0/1            fe80::274:9cff:feee:f49f

  --      imp-null PH 2002::2/128                 Gi0/1            fe80::274:9cff:feee:f49f

  9230    imp-null PP 2001::/64                   Gi0/1            fe80::274:9cff:feee:f49f

  9231    imp-null PP 2002::2/128                 Gi0/1            fe80::274:9cff:feee:f49f

  9232    9229     SW 1001::1/128                 Gi0/1            fe80::274:9cff:feee:f49f

6.    配置文件

l  LER A的配置文件

hostname LERA

!

interface GigabitEthernet 0/1

 no switchport

 ipv6 address 2001::12:1/64

 ipv6 ospf 1 area 0

 mpls ipv6

 label-switching

!

interface Loopback 0

 ipv6 address 1001::1/128

 ipv6 ospf 1 area 0

!

ipv6 router ospf 1

 router-id 1.1.1.1

!

mpls router ldp

 ldp router-id 1.1.1.1

 ipv6 transport-address Loopback 0

 ipv6 enable

!

l  LSR B的配置文件

hostname LSRB

!

interface GigabitEthernet 0/1

 no switchport

 ipv6 address 2001::12:2/64

 ipv6 ospf 1 area 0

 mpls ipv6

 label-switching

!

interface GigabitEthernet 0/2

 no switchport

 ipv6 address 2003::23:2/64

 ipv6 ospf 1 area 0

 mpls ipv6

 label-switching

!

interface Loopback 0

 ipv6 address 2002::2/128

 ipv6 ospf 1 area 0

!

ipv6 router ospf 1

 router-id 2.2.2.2

!

mpls router ldp

 ldp router-id 2.2.2.2

 ipv6 transport-address Loopback 0

 ipv6 enable

!

l  LER C的配置文件

hostname LERC

!

interface GigabitEthernet 0/1

 no switchport

 ipv6 address 2003::23:3/64

 ipv6 ospf 1 area 0

 mpls ipv6

 label-switching

!

interface Loopback 0

 ipv6 address 3003::3/128

 ipv6 ospf 1 area 0

!

ipv6 router ospf 1

 router-id 3.3.3.3

!

mpls router ldp

 ldp router-id 3.3.3.3

 ipv6 transport-address Loopback 0

 ipv6 enable

!

7.    常见错误

l  未开启全局LDP IPv6功能。

l  接口未开启LDP IPv6功能。

1.14.8  IP迭代到LDP LSP配置举例

1.    组网需求

配置IP迭代到LDP LSP

2.    组网图

图1-21   IP迭代到LDP LSP配置组网图

 image.png

 

3.    配置要点

l  LER1LSR1LER2之间配置IP地址以及IS-IS协议,建立ISIS单播邻居。

l  LER1LSR1LER2之间配置LDP协议,建立LDP邻居。

l  CE1LER1CE2LER2之间分别配置IP地址和OSPF协议,建立OSPF邻居。

l  LER1上配置静态路由到CE2,在LER2上配置静态路由到CE1,并将静态路由重分布到OSPF中。

l  LER1LER2上开启IP迭代到LDP LSP

4.    配置步骤

(1)   LER1LSR1LER2之间配置IP地址以及IS-IS协议,建立ISIS单播邻居。

# 设备LER1的配置。

LER1> enable

LER1# configure terminal

LER1(config)# router isis

LER1(config-router)# net 49.0001.0000.0000.0001.00

LER1(config-router)# exit

LER1(config)# interface loopback 1

LER1(config-if-Loopback 1)# ip address 3.3.3.3 255.255.255.255

LER1(config-if-Loopback 1)# ip router isis

LER1(config-if-Loopback 1)# exit

LER1(config)# interface gigabitethernet 0/2

LER1(config-if-GigabitEthernet 0/2)# no switchport

LER1(config-if-GigabitEthernet 0/2)# ip address 192.168.2.1 255.255.255.0

LER1(config-if-GigabitEthernet 0/2)# ip router isis

LER1(config-if-GigabitEthernet 0/2)# exit

# 设备LSR1的配置。

LSR1> enable

LSR1# configure terminal

LSR1(config)# router isis

LSR1(config-router)# net 49.0001.0000.0000.0002.00

LSR1(config-router)# exit

LSR1(config)# interface loopback 1

LSR1(config-if-Loopback 1)# ip address 4.4.4.4 255.255.255.255

LSR1(config-if-Loopback 1)# ip router isis

LSR1(config-if-Loopback 1)# exit

LSR1(config)# interface gigabitethernet 0/1

LSR1(config-if-GigabitEthernet 0/1)# no switchport

LSR1(config-if-GigabitEthernet 0/1)# ip address 192.168.2.2 255.255.255.0

LSR1(config-if-GigabitEthernet 0/1)# ip router isis

LSR1(config-if-GigabitEthernet 0/1)# exit

LSR1(config)# interface gigabitethernet 0/2

LSR1(config-if-GigabitEthernet 0/2)# no switchport

LSR1(config-if-GigabitEthernet 0/2)# ip address 192.168.3.1 255.255.255.0

LSR1(config-if-GigabitEthernet 0/2)# ip router isis

LSR1(config-if-GigabitEthernet 0/2)# exit

# 设备LER2的配置。

LER2> enable

LER2# configure terminal

LER2(config)# router isis

LER2(config-router)# net 49.0001.0000.0000.0003.00

LER2(config-router)# exit

LER2(config)# interface loopback 1

LER2(config-if-Loopback 1)# ip address 5.5.5.5 255.255.255.255

LER2(config-if-Loopback 1)# ip router isis

LER2(config-if-Loopback 1)# exit

LER2(config)# interface gigabitethernet 0/2

LER2(config-if-GigabitEthernet 0/2)# no switchport

LER2(config-if-GigabitEthernet 0/2)# ip address 192.168.3.2 255.255.255.0

LER2(config-if-GigabitEthernet 0/2)# ip router isis

LER2(config-if-GigabitEthernet 0/2)# exit

(2)   LER1LSR1LER2之间配置LDP协议,建立LDP邻居。

# 设备LER1的配置。

LER1(config)# mpls router ldp

LER1(config-mpls-router)# ldp router-id interface loopback 1 force

LER1(config-mpls-router)# exit

LER1(config)# interface gigabitethernet 0/2

LER1(config-if-GigabitEthernet 0/2)# mpls ip

LER1(config-if-GigabitEthernet 0/2)# label-switching

LER1(config-if-GigabitEthernet 0/2)# exit

# 设备LSR1的配置。

LSR1(config)# mpls router ldp

LSR1(config-mpls-router)# ldp router-id interface loopback 1 force

LSR1(config-mpls-router)# exit

LSR1(config)# interface gigabitethernet 0/1

LSR1(config-if-GigabitEthernet 0/1)# mpls ip

LSR1(config-if-GigabitEthernet 0/1)# label-switching

LSR1(config-if-GigabitEthernet 0/1)# exit

LSR1(config)# interface gigabitethernet 0/2

LSR1(config-if-GigabitEthernet 0/2)# mpls ip

LSR1(config-if-GigabitEthernet 0/2)# label-switching

LSR1(config-if-GigabitEthernet 0/2)# exit

# 设备LER2的配置。

LER2(config)# mpls router ldp

LER2(config-mpls-router)# ldp router-id interface loopback 1 force

LER2(config-mpls-router)# exit

LER2(config)# interface gigabitethernet 0/2

LER2(config-if-GigabitEthernet 0/2)# mpls ip

LER2(config-if-GigabitEthernet 0/2)# label-switching

LER2(config-if-GigabitEthernet 0/2)# exit

(3)   CE1LER1CE2LER2之间分别配置IP地址和OSPF协议,建立OSPF邻居。

# 设备CE1的配置。

CE1> enable

CE1# configure terminal

CE1(config)# interface gigabitethernet 0/1

CE1(config-if-GigabitEthernet 0/1)# no switchport

CE1(config-if-GigabitEthernet 0/1)# ip address 192.168.1.2 255.255.255.0

CE1(config-if-GigabitEthernet 0/1# exit

CE1(config)# interface loopback 1

CE1(config-if-Loopback 1)# ip address 1.1.1.1 255.255.255.255

CE1(config-if-Loopback 1)# exit

CE1(config)# router ospf 1

CE1(config-router)# network 192.168.1.0 0.0.0.255 area 0

CE1(config-router)# network 1.1.1.0 0.0.0.255 area 0

CE1(config-router)# end

# 设备LER1的配置。

LER1(config)# interface gigabitethernet 0/1

LER1(config-if-GigabitEthernet 0/1)# no switchport

LER1(config-if-GigabitEthernet 0/1)# ip address 192.168.1.1 255.255.255.0

LER1(config-if-GigabitEthernet 0/1)# exit

LER1(config)# router ospf 1

LER1(config-router)# network 192.168.1.0 0.0.0.255 area 0

LER1(config-router)# exit

# 设备LER2的配置。

LER2(config)# interface gigabitethernet 0/1

LER2(config-if-GigabitEthernet 0/1)# no switchport

LER2(config-if-GigabitEthernet 0/1)# ip address 192.168.4.1 255.255.255.0

LER2(config-if-GigabitEthernet 0/1)# exit

LER2(config)# router ospf 1

LER2(config-router)# network 192.168.4.0 0.0.0.255 area 0

LER2(config-router)# exit

# 设备CE2的配置。

CE2> enable

CE2# configure terminal

CE2(config)# interface gigabitethernet 0/1

CE2(config-if-GigabitEthernet 0/1)# no switchport

CE2(config-if-GigabitEthernet 0/1)# ip address 192.168.4.2 255.255.255.0

CE2(config-if-GigabitEthernet 0/1# exit

CE2(config)# interface loopback 1

CE2(config-if-Loopback 1)# ip address 2.2.2.2 255.255.255.255

CE2(config-if-Loopback 1)# exit

CE2(config)# router ospf 1

CE2(config-router)# network 192.168.4.0 0.0.0.255 area 0

CE2(config-router)# network 2.2.2.0 0.0.0.255 area 0

(4)   LER1上配置静态路由到CE2,在LER2上配置静态路由到CE1,并将静态路由重分布到OSPF中。

# 设备LER1的配置。

LER1(config)# ip route 2.2.2.0 255.255.255.0 5.5.5.5

LER1(config)# router ospf 1

LER1(config-router)# redistribute static subnets

LER1(config-router)# exit

# 设备LER2的配置。

LER2(config)# ip route 1.1.1.0 255.255.255.0 3.3.3.3

LER2(config)# router ospf 1

LER2(config-router)# redistribute static subnets

LER2(config-router)# exit

(5)   LER1LER2上开启IP迭代到LDP LSP。以LER1为例,LER2的配置与LER1类似,不再赘述。

# 设备LER1的配置。

LER1(config)# recursive-route to mpls

LER1(config)# end

5.    验证配置结果

# 通过show mpls forwarding-table命令查看LER1LER2上分别有到达对端的公网FTN表项,并且CE1CE2之间流量转发正常。

# 查看LER1表项。

LER1# show mpls forwarding-table

Label Operation Code:

PH--PUSH label

PP--POP label

SW--SWAP label

SP--SWAP topmost label and push new label

DP--DROP packet

PC--POP label and continue lookup by IP or Label

PI--POP label and do ip lookup forward

PN--POP label and forward to nexthop

PM--POP label and do MAC lookup forward

PV--POP label and output to VC attach interface

IP--IP lookup forward

 s--stale

  Local   Outgoing OP FEC                         Outgoing         Nexthop

  label   label                                   interface

  --      imp-null PH 4.4.4.4/32                  Gi0/2            192.168.2.2   

  --      11266    PH 5.5.5.5/32                  Gi0/2            192.168.2.2   

  --      imp-null PH 192.168.3.0/24              Gi0/2            192.168.2.2   

  11265   --       PI 1.1.1.1/32                  Gi0/1            192.168.1.2   

  11266   imp-null PP 4.4.4.4/32                  Gi0/2            192.168.2.2   

  11267   imp-null PP 192.168.3.0/24              Gi0/2            192.168.2.2   

  11268   11266    SW 5.5.5.5/32                  Gi0/2            192.168.2.2   

  11269   --       PI 2.2.2.0/24                  Gi0/2            5.5.5.5

# 查看LER2表项。

LER2# show mpls forwarding-table

Label Operation Code:

PH--PUSH label

PP--POP label

SW--SWAP label

SP--SWAP topmost label and push new label

DP--DROP packet

PC--POP label and continue lookup by IP or Label

PI--POP label and do ip lookup forward

PN--POP label and forward to nexthop

PM--POP label and do MAC lookup forward

PV--POP label and output to VC attach interface

IP--IP lookup forward

 s--stale

  Local   Outgoing OP FEC                         Outgoing         Nexthop

  label   label                                   interface

  --      11265    PH 3.3.3.3/32                  Gi0/2            192.168.3.1   

  --      imp-null PH 4.4.4.4/32                  Gi0/2            192.168.3.1   

  --      imp-null PH 192.168.2.0/24              Gi0/2            192.168.3.1   

  92162   --       PI 2.2.2.2/32                  Gi0/1            192.168.4.2   

  92163   11265    SW 3.3.3.3/32                  Gi0/2            192.168.3.1   

  92164   imp-null PP 4.4.4.4/32                  Gi0/2            192.168.3.1   

  92168   imp-null PP 192.168.2.0/24              Gi0/2            192.168.3.1 

  92169    --       PI 1.1.1.0/24                 Gi0/2            3.3.3.3

# 设备CE1可以正常访问CE2

CE1# ping 2.2.2.2 source 1.1.1.1

Sending 5, 100-byte ICMP Echoes to 2.2.2.2, timeout is 2 seconds:

  < press Ctrl+C to break >

!!!!!

Success rate is 100 percent (5/5), round-trip min/avg/max = 1/2/6 ms.

6.    配置文件

l  CE1的配置文件

hostname CE1

!

interface gigabitethernet 0/1

 no switchport

 ip address 192.168.1.2 255.255.255.0

!

interface Loopback 1

 ip address 1.1.1.1 255.255.255.255

!

router ospf 1

 network 1.1.1.0 0.0.0.255 area 0

 network 192.168.1.0 0.0.0.255 area 0

!

l  LER1的配置文件

hostname LER1

!

mpls ip

!

interface gigabitethernet 0/1

 no switchport

 ip address 192.168.1.1 255.255.255.0

!

interface gigabitethernet 0/2

 no switchport

 ip address 192.168.2.1 255.255.255.0

 ip router isis

 mpls ip

 label-switching

!

interface Loopback 1

 ip address 3.3.3.3 255.255.255.255

 ip router isis

!

router isis

 net 49.0001.0000.0000.0001.00

!

router ospf 1

 redistribute static subnets

 network 192.168.1.0 0.0.0.255 area 0

!

mpls router ldp

 ldp router-id interface Loopback 1 force

!

recursive-route to mpls

!

ip route 2.2.2.0 255.255.255.0 5.5.5.5

l  LSR1的配置文件

hostname LSR1

!

mpls ip

!

interface gigabitethernet 0/1

 no switchport

 ip address 192.168.2.2 255.255.255.0

 ip router isis

 mpls ip

 label-switching

!

interface gigabitethernet 0/2

 no switchport

 ip address 192.168.3.1 255.255.255.0

 ip router isis

 mpls ip

 label-switching

!

interface Loopback 1

 ip address 4.4.4.4 255.255.255.255

 ip router isis

!

mpls router ldp

 ldp router-id interface Loopback 1 force

!

router isis

 net 49.0001.0000.0000.0002.00

!

mpls router ldp

 ldp router-id interface Loopback 1 force

!

l  LER2的配置文件

hostname LER2

!

mpls ip

!

interface gigabitethernet 0/1

 no switchport

 ip address 192.168.4.1 255.255.255.0

!

interface gigabitethernet 0/2

 no switchport

 ip address 192.168.3.2 255.255.255.0

 ip router isis

 mpls ip

 label-switching

!

interface Loopback 1

 ip address 5.5.5.5 255.255.255.255

 ip router isis

!

router isis

 net 49.0001.0000.0000.0003.00

!

router ospf 1

 redistribute static subnets

 network 192.168.4.0 0.0.0.255 area 0

!

mpls router ldp

 ldp router-id interface Loopback 1 force

!

recursive-route to mpls

!

ip route 1.1.1.0 255.255.255.0 3.3.3.3

l  CE2的配置文件

hostname CE2

!

interface gigabitethernet 0/1

 no switchport

 ip address 192.168.4.2 255.255.255.0

!

interface Loopback 1

 ip address 2.2.2.2 255.255.255.255

!

router ospf 1

 network 2.2.2.0 0.0.0.255 area 0

 network 192.168.4.0 0.0.0.255 area 0

!

7.    常见错误

l  未开启全局MPLS转发。

l  接口未开启LDP功能。