MPLS从入门到精通

MPLS从入门到精通90 年代中期 IP 技术凭借技术简单和成本低廉实现快速发展 Internet 数据海量增长 但由于硬件技术存在限制 基于最长匹配算法的 IP 技术必须使用软件查找路由 转发性能低下 因此 IP 技术的转发性能成为当时限制网络发展的瓶颈

大家好,欢迎来到IT知识分享网。

一、MPLS发展历史

90年代中期,IP技术凭借技术简单和成本低廉实现快速发展,Internet数据海量增长。但由于硬件技术存在限制,基于最长匹配算法的IP技术必须使用软件查找路由,转发性能低下,因此IP技术的转发性能成为当时限制网络发展的瓶颈。

为了适应网络的发展,ATM(Asynchronous Transfer Mode)技术应运而生。ATM采用定长标签(即信元),并且只需要维护比路由表规模小得多的标签表,能够提供比IP路由方式高得多的转发性能。然而,ATM协议相对复杂,且ATM网络部署成本高,这使ATM技术很难普及。

如何结合IP与ATM的优点成为热门话题。多协议标签交换技术MPLS(Multi-Protocol Label Switching)就是在这种背景下产生的。

MPLS最初是为了提高路由器的转发速度而提出的。与传统IP路由方式相比,它在数据转发时,只在网络边缘分析IP报文头,而不用在每一跳都分析IP报文头,节约了处理时间。

随着ASIC技术的发展,路由查找速度已经不是阻碍网络发展的瓶颈,这使得MPLS在提高转发速度方面不再具备明显的优势。但是MPLS支持多层标签和转发平面面向连接的特性,使其在VPN(Virtual Private Network)、流量工程、QoS(Quality of Service)等方面得到广泛应用。

二、MPLS工作原理详解

MPLS位于TCP/IP协议栈中的链路层和网络层之间,并不是一种业务或者应用,它实际上是一种隧道技术,在一定程度上可以保证信息传输的安全性。

MPLS不局限于任何特定的链路层协议,能够使用任意二层介质传输网络分组。MPLS起源于IPv4(Internet Protocol version 4),其核心技术可扩展到多种网络协议,包括IPv6(Internet Protocol version 6)、IPX(Internet Packet Exchange)等。MPLS中的“Multi Protocol”指的就是支持多种网络协议。

MPLS标签封装在链路层和网络层之间,它在报文分组中的封装位置如下图所示。MPLS标签能够被任意的链路层协议所支持。

MPLS从入门到精通

MPLS的实现原理是:为FEC(转发等价类,Forwarding Equivalence Class)分配标签来建立LSP(标签交换路径,Label Switched Path)。

MPLS从入门到精通

2.1 MPLS的基本概念

  • FEC

MPLS是一种分类转发技术,它将具有相同转发处理方式的数据分组归为一类,称为FEC(Forwarding Equivalence Class,转发等价类)。MPLS对相同FEC的数据分组采取完全相同的处理方式。

FEC的划分方式非常灵活,可以是源地址、目的地址、源端口、目的端口、协议种类、业务类型等要素的任意组合。例如,在采用最长匹配算法的IP路由转发中,去往同一个目的地址的所有报文就是一个FEC。

  • MPLS LSP

IP包在MPLS网络中经过的路径称为MPLS的LSP(Label Switching Path),即标签交换的路径:

MPLS从入门到精通

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

  1. LSP的起始节点称为入节点(Ingress):LSP的起始节点,一条LSP只能有一个Ingress。
  2. Ingress的主要功能是给报文压入一个新的标签,封装成MPLS报文进行转发。
  3. 位于LSP中间的节点称为中间节点(Transit):LSP的中间节点,一条LSP可能有0个或多个Transit。
  4. Transit的主要功能是查找标签转发信息表,通过标签交换完成MPLS报文的转发。
  5. LSP的末节点称为出节点(Egress):LSP的末节点,一条LSP只能有一个Egress。
  6. Egress的主要功能是弹出标签,恢复成原来的报文进行相应的转发。
  7. 其中Ingress和Egress既是LSR(Label Switching Router),又是LER;Transit是LSR。
  • MPLS标签

MPLS标签是一个简短且长度固定的标识符,它只具有本地意义,用于唯一标识一个分组所属的FEC。在某些情况下(例如,进行负载分担)对应一个FEC可能会有多个MPLS标签,但是在一台设备上,一个MPLS标签只能代表一个FEC。

MPLS标签长度为4个字节,封装结构如下:

MPLS从入门到精通

  1. Label:20bit,标签值域。
  2. Exp:3bit,用于扩展。现在通常用做CoS(Class of Service,服务分类)。
  3. BoS:1bit,栈底标识。MPLS支持多层标签,即标签嵌套。BoS值为1时表明为最底层标签。
  4. TTL:8bit,和IP分组中的TTL(Time To Live)意义相同。

2.2 MPLS 工作原理

  • MPLS如何建立LSP

MPLS是一种依靠标签交换来指导转发的技术,因此,LSP的建立过程实际上就是沿途LSR为特定FEC确定标签的过程。

MPLS标签由下游分配,按照从下游到上游的方向进行分发。如下图所示,下游LSR根据IP路由的目的地址进行FEC划分,并将标签分配给对应指定目的地址的FEC,再将标签发送给上游LSR,触发上游LSR建立标签转发信息表,最终使一系列LSR形成一条LSP。

MPLS从入门到精通

LSP按建立方式可以分为静态LSP和动态LSP两种:

  1. 静态LSP是管理员通过手工为各个FEC分配标签而建立的LSP。手工分配标签需要遵循的原则是:上游LSR出方向的标签的值等于下游LSR入方向的标签值。
  2. 动态LSP是各LSR通过标签发布协议动态的生成和发布标签而建立的LSP,下游LSR向上游LSR发送标签时需要依赖IP路由。MPLS支持多种标签发布协议,例如:LDP(Label Distribution Protocol)、RSVP-TE(Resource Reservation Protocol Traffic Engineering)和MP-BGP(Multiprotocol Border Gateway Protocol)。
  • 报文如何通过LSP转发

以支持PHP(Penultimate Hop Popping,倒数第二跳弹出)特性的LSP为例,MPLS报文在该LSP中的基本转发过程如下:

MPLS从入门到精通

  1. Ingress收到目的地址为192.168.1.1/24的IP报文,压入标签Y(Push),封装为MPLS报文并继续转发。
  2. Transit收到该MPLS报文,进行标签交换(Swap),将标签Y换成标签X。
  3. 倒数第二跳的Transit收到该MPLS报文,因为Egress分给它的标签值为3,所以进行PHP操作,弹出标签X并继续将IP报文转发给Egress。
  4. Egress节点收到该IP报文,将其转发给目的地192.168.1.1/24。

2.3 MPLS VPN技术原理

MPLS VPN是指利用MPLS在IP骨干网络上构建VPN的技术。VPN的实质就是在公网上像私有专用网一样传输业务数据,这就需要在公网上建立一条隧道,让数据报文通过隧道直达目的地,从而达到私有专用网络的效果。概括地讲,MPLS VPN就是采用MPLS建立的LSP作为公网隧道来传输私网业务数据的。

  • MPLS VPN的基本模型
  1. CE(Customer Edge):用户网络边缘设备,有接口直接与服务提供商SP(Service Provider)网络相连,用户的VPN站点(Site)通过CE连接到SP网络。CE可以是网络设备,也可以是一台主机。通常情况下,CE“感知”不到VPN的存在,也不需要支持MPLS。
  2. PE(Provider Edge):是服务提供商网络的边缘设备,与CE直接相连。在MPLS网络中,PE设备作为LSR,对MPLS和VPN的所有处理都发生在PE上,对PE性能要求较高。
  3. P(Provider):服务提供商网络中的骨干设备,不与CE直接相连。在MPLS网络中,P设备作为LSR,只需要处理MPLS,不维护VPN信息。
MPLS从入门到精通

三、MPLS配置实例

3.1 MPLS LDP示例

MPLS从入门到精通

  • #r1配置
<Huawei>system-view [Huawei]sysname r1 [r1]interface GigabitEthernet 0/0/0 [r1-GigabitEthernet0/0/0]ip address 12.1.1.1 24 [r1-GigabitEthernet0/0/0]quit [r1]interface LoopBack 0 [r1-LoopBack0]ip address 1.1.1.1 32 [r1-LoopBack0]quit [r1]ospf 1 router-id 1.1.1.1 #配置ospf [r1-ospf-1]area 0 [r1-ospf-1-area-0.0.0.0]network 12.1.1.0 0.0.0.255 [r1-ospf-1-area-0.0.0.0]network 1.1.1.1 0.0.0.0 [r1]mpls lsr-id 1.1.1.1 #配置mpls lsr ID [r1]mpls #全局激活mpls [r1-mpls]quit [r1]mpls ldp #全局激活ldp [r1-mpls-ldp]quit [r1]interface GigabitEthernet 0/0/0 [r1-GigabitEthernet0/0/0]mpls #接口上激活mpls [r1-GigabitEthernet0/0/0]mpls ldp #接口上激活ldp [r1-GigabitEthernet0/0/0]quit
  • #r2配置
<Huawei>system-view [Huawei]sysname r2 [r2]interface GigabitEthernet 0/0/0 [r2-GigabitEthernet0/0/0]ip address 12.1.1.2 24 [r2-GigabitEthernet0/0/0]quit [r2]interface GigabitEthernet 0/0/1 [r2-GigabitEthernet0/0/1]ip address 23.1.1.2 24 [r2-GigabitEthernet0/0/1]quit [r2]interface LoopBack 0 [r2-LoopBack0]ip address 2.2.2.2 32 [r2-LoopBack0]quit [r2]ospf 1 router-id 2.2.2.2 [r2-ospf-1]area 0 [r2-ospf-1-area-0.0.0.0]network 12.1.1.0 0.0.0.255 [r2-ospf-1-area-0.0.0.0]network 23.1.1.0 0.0.0.255 [r2-ospf-1-area-0.0.0.0]network 2.2.2.2 0.0.0.0 [r2-ospf-1-area-0.0.0.0]quit [r2-ospf-1]quit [r2]mpls lsr-id 2.2.2.2 [r2]mpls [r2-mpls]quit [r2]mpls ldp [r2-mpls-ldp]quit [r2]interface GigabitEthernet 0/0/0 [r2-GigabitEthernet0/0/0]mpls [r2-GigabitEthernet0/0/0]mpls ldp [r2-GigabitEthernet0/0/0]quit [r2]interface GigabitEthernet 0/0/1 [r2-GigabitEthernet0/0/1]mpls [r2-GigabitEthernet0/0/1]mpls ldp [r2-GigabitEthernet0/0/1]quit
  • #r3配置
<Huawei>system-view [Huawei]sysname r3 [r3]interface GigabitEthernet 0/0/0 [r3-GigabitEthernet0/0/0]ip address 23.1.1.3 24 [r3]interface GigabitEthernet 0/0/1 [r3-GigabitEthernet0/0/1]ip address 34.1.1.3 24 [r3]interface LoopBack 0 [r3-LoopBack0]ip address 3.3.3.3 32 [r3-LoopBack0]quit [r3]ospf 1 router-id 3.3.3.3 [r3-ospf-1]area 0 [r3-ospf-1-area-0.0.0.0]network 23.1.1.0 0.0.0.255 [r3-ospf-1-area-0.0.0.0]network 34.1.1.0 0.0.0.255 [r3-ospf-1-area-0.0.0.0]network 3.3.3.3 0.0.0.0 [r3-ospf-1-area-0.0.0.0]quit [r3-ospf-1]quit [r3]mpls ls [r3]mpls lsr-id 3.3.3.3 [r3]mpls [r3-mpls]quit [r3]mpls ldp [r3-mpls-ldp]quit [r3]interface GigabitEthernet 0/0/0 [r3-GigabitEthernet0/0/0]mpls [r3-GigabitEthernet0/0/0]mpls ldp [r3-GigabitEthernet0/0/0]quit [r3]interface GigabitEthernet 0/0/1 [r3-GigabitEthernet0/0/1]mpls [r3-GigabitEthernet0/0/1]mpls ldp
  • #r4配置
<Huawei>system-view [Huawei]sysname r4 [r4]interface GigabitEthernet 0/0/0 [r4-GigabitEthernet0/0/0]ip address 34.1.1.4 24 [r4-GigabitEthernet0/0/0]quit [r4]interface LoopBack 0 [r4-LoopBack0]ip address 4.4.4.4 32 [r4-LoopBack0]quit [r4]ospf 1 router-id 4.4.4.4 [r4-ospf-1]area 0 [r4-ospf-1-area-0.0.0.0]network 34.1.1.0 0.0.0.255 [r4-ospf-1-area-0.0.0.0]network 4.4.4.4 0.0.0.0 [r4-ospf-1-area-0.0.0.0]quit [r4-ospf-1]quit [r4]mpls lsr-id 4.4.4.4 [r4]mpls [r4-mpls]quit [r4]mpls ldp [r4-mpls-ldp]quit [r4]interface GigabitEthernet 0/0/0 [r4-GigabitEthernet0/0/0]mpls [r4-GigabitEthernet0/0/0]mpls ldp
  • #验证mpls ldp信息
[r1]display mpls ldp session LDP Session(s) in Public Network Codes: LAM(Label Advertisement Mode), SsnAge Unit(DDDD:HH:MM) A '*' before a session means the session is being deleted. ------------------------------------------------------------------------------ PeerID Status LAM SsnRole SsnAge KASent/Rcv ------------------------------------------------------------------------------ 2.2.2.2:0 Operational DU Passive 0000:00:03 14/14 ------------------------------------------------------------------------------ TOTAL: 1 session(s) Found. [r1]display mpls lsp ------------------------------------------------------------------------------- LSP Information: LDP LSP ------------------------------------------------------------------------------- FEC In/Out Label In/Out IF Vrf Name 2.2.2.2/32 NULL/3 -/GE0/0/0 2.2.2.2/32 1024/3 -/GE0/0/0 1.1.1.1/32 3/NULL -/- 3.3.3.3/32 NULL/1025 -/GE0/0/0 3.3.3.3/32 1025/1025 -/GE0/0/0 4.4.4.4/32 NULL/1026 -/GE0/0/0 4.4.4.4/32 1026/1026 -/GE0/0/0 [r1]tracert lsp ip 4.4.4.4 32 LSP Trace Route FEC: IPV4 PREFIX 4.4.4.4/32 , press CTRL_C to break. TTL Replier Time Type Downstream 0 Ingress 12.1.1.2/[1026 ] 1 12.1.1.2 20 ms Transit 23.1.1.3/[1026 ] 2 23.1.1.3 40 ms Transit 34.1.1.4/[3 ] 3 4.4.4.4 30 ms Egress

3.2 MPLS VPN示例

MPLS从入门到精通

  • #ce1配置,正常IP和OSPF配置
<Huawei>system-view [Huawei]sysname ce1 [ce1]interface LoopBack 0 [ce1-LoopBack0]ip address 1.1.1.1 32 [ce1-LoopBack0]quit [ce1]interface GigabitEthernet 0/0/0 [ce1-GigabitEthernet0/0/0]ip address 10.1.12.1 24 [ce1-GigabitEthernet0/0/0]quit [ce1]ospf 1 router-id 1.1.1.1 [ce1-ospf-1]area 0 [ce1-ospf-1-area-0.0.0.0]network 10.1.12.0 0.0.0.255 [ce1-ospf-1-area-0.0.0.0]network 1.1.1.1 0.0.0.0
  • #PE1配置
<Huawei>system-view [Huawei]sysname pe1 [pe1]interface GigabitEthernet 0/0/0 [pe1-GigabitEthernet0/0/0]ip address 10.1.12.2 24 [pe1-GigabitEthernet0/0/0]quit [pe1]interface GigabitEthernet 0/0/1 [pe1-GigabitEthernet0/0/1]ip address 10.1.23.2 24 [pe1-GigabitEthernet0/0/1]quit [pe1]interface LoopBack 0 [pe1-LoopBack0]ip address 2.2.2.2 32 [pe1-LoopBack0]quit #Backbone内运行OSPF [pe1]ospf 100 router-id 2.2.2.2 [pe1-ospf-100]area 0 [pe1-ospf-100-area-0.0.0.0]network 2.2.2.2 0.0.0.0 [pe1-ospf-100-area-0.0.0.0]network 10.1.23.0 0.0.0.255 [pe1-ospf-100-area-0.0.0.0]quit [pe1-ospf-100]quit #Backbone内运行MPLS LDP [pe1]mpls lsr-id 2.2.2.2 #配置设备的LSR ID [pe1]mpls #全局激活MPLS [pe1-mpls]quit [pe1]mpls ldp #全局激活LDP [pe1-mpls-ldp]quit [pe1]interface GigabitEthernet 0/0/1 [pe1-GigabitEthernet0/0/1]mpls #接口激活MPLS [pe1-GigabitEthernet0/0/1]mpls ldp #接口激活LDP [pe1-GigabitEthernet0/0/1]quit #PE1及PE2创建VPN实例,并运行PE-CE路由协议 [pe1]ip vpn-instance testvpn #创建VPN实例 [pe1-vpn-instance-testvpn]route-distinguisher 2345:1 #配置RD值 [pe1-vpn-instance-testvpn-af-ipv4]vpn-target 2345:11 #配置RT值 [pe1-vpn-instance-testvpn-af-ipv4]quit [pe1-vpn-instance-testvpn]quit [pe1]interface GigabitEthernet 0/0/0 [pe1-GigabitEthernet0/0/0]ip binding vpn-instance testvpn #将该接口绑定VPN实例 [pe1-GigabitEthernet0/0/0]ip address 10.1.12.2 24 [pe1-GigabitEthernet0/0/0]quit [pe1]ospf 1 vpn-instance testvpn #运行基于VPN实例的OSPF进程 [pe1-ospf-1]area 0 [pe1-ospf-1-area-0.0.0.0]network 10.1.12.0 0.0.0.255 [pe1-ospf-1]quit #PE1及PE2创建MP-BGP进程,并且建立MP-iBGP邻居关系 [pe1]bgp 2345 [pe1-bgp]router-id 2.2.2.2 #因为本实验中PE1-PE2之间无需交互IPv4路由,因此取消IPv4单播协议的邻居关系自动建立 [pe1-bgp]undo default ipv4-unicast [pe1-bgp]peer 5.5.5.5 as-number 2345 [pe1-bgp]peer 5.5.5.5 connect-interface LoopBack 0 [pe1-bgp]ipv4-family vpnv4 unicast #进入IPv4的VPNv4地址族 [pe1-bgp-af-vpnv4]peer 5.5.5.5 enable #激活邻居5.5.5.5 [pe1-bgp-af-vpnv4]quit [pe1-bgp]quit #PE1及PE2上配置VPN路由与BGP路由的互重发布 pe1]bgp 2345 #将OSPF进程1的路由导入到BGP的VPN实例对应的IPv4地址族中 [pe1-bgp]ipv4-family vpn-instance testvpn [pe1-bgp-testvpn]import-route ospf 1 [pe1-bgp-testvpn]quit [pe1-bgp]quit [pe1]ospf 1 vpn-instance testvpn [pe1-ospf-1]import-route bgp permit-ibgp #将BGP路由导入到OSPF进程1 [pe1-ospf-1]quit
  • #P1配置,OSPF骨干网路由,mpls ldp配置
<Huawei>system-view [Huawei]sysname p1 [p1]interface GigabitEthernet 0/0/0 [p1-GigabitEthernet0/0/0]ip add 10.1.23.3 24 [p1-GigabitEthernet0/0/0]quit [p1]interface GigabitEthernet 0/0/1 [p1-GigabitEthernet0/0/1]ip address 10.1.34.3 24 [p1-GigabitEthernet0/0/1]quit [p1]interface LoopBack 0 [p1-LoopBack0]ip add 3.3.3.3 32 [p1-LoopBack0]quit [p1]ospf 100 router-id 3.3.3.3 [p1-ospf-100]area 0 [p1-ospf-100-area-0.0.0.0]network 3.3.3.3 0.0.0.0 [p1-ospf-100-area-0.0.0.0]network 10.1.23.0 0.0.0.255 [p1-ospf-100-area-0.0.0.0]network 10.1.34.0 0.0.0.255 [p1-ospf-100-area-0.0.0.0]quit [p1-ospf-100]quit [p1]mpls lsr-id 3.3.3.3 [p1]mpls [p1-mpls]quit [p1]mpls ldp [p1-mpls-ldp]quit [p1]interface GigabitEthernet 0/0/0 [p1-GigabitEthernet0/0/0]mpls [p1-GigabitEthernet0/0/0]mpls ldp [p1-GigabitEthernet0/0/0]quit [p1]interface GigabitEthernet 0/0/1 [p1-GigabitEthernet0/0/1]mpls [p1-GigabitEthernet0/0/1]mpls ldp [p1-GigabitEthernet0/0/1]quit
  • #P2配置,OSPF骨干网路由,mpls ldp配置
<Huawei>system-view [Huawei]sysname p2 [p2]interface GigabitEthernet 0/0/0 [p2-GigabitEthernet0/0/0]ip add 10.1.34.4 24 [p2-GigabitEthernet0/0/0]quit [p2]interface GigabitEthernet 0/0/1 [p2-GigabitEthernet0/0/1]ip address 10.1.45.4 24 [p2-GigabitEthernet0/0/1]quit [p2]interface LoopBack 0 [p2-LoopBack0]ip address 4.4.4.4 32 [p2-LoopBack0]quit [p2]ospf 100 router-id 4.4.4.4 [p2-ospf-100]area 0 [p2-ospf-100-area-0.0.0.0]network 4.4.4.4 0.0.0.0 [p2-ospf-100-area-0.0.0.0]network 10.1.34.0 0.0.0.255 [p2-ospf-100-area-0.0.0.0]network 10.1.45.0 0.0.0.255 [p2-ospf-100-area-0.0.0.0]quit [p2-ospf-100]quit [p2]mpls lsr-id 4.4.4.4 [p2]mpls [p2-mpls]quit [p2]mpls ldp [p2-mpls-ldp]quit [p2]interface GigabitEthernet 0/0/0 [p2-GigabitEthernet0/0/0]mpls [p2-GigabitEthernet0/0/0]mpls ldp [p2-GigabitEthernet0/0/0]quit [p2]interface GigabitEthernet 0/0/1 [p2-GigabitEthernet0/0/1]mpls [p2-GigabitEthernet0/0/1]mpls ldp [p2-GigabitEthernet0/0/1]quit
  • #pe2配置,与pe1类似,配置ospf,pe-ce协议,ldp
<Huawei>system-view [Huawei]sysname pe2 [pe2]interface GigabitEthernet 0/0/0 [pe2-GigabitEthernet0/0/0]ip add 10.1.45.5 24 [pe2-GigabitEthernet0/0/0]quit [pe2]interface GigabitEthernet 0/0/1 [pe2-GigabitEthernet0/0/1]ip add 10.1.56.5 24 [pe2-GigabitEthernet0/0/1]quit [pe2]interface LoopBack 0 [pe2-LoopBack0]ip address 5.5.5.5 32 [pe2-LoopBack0]quit [pe2]ospf 100 router-id 5.5.5.5 [pe2-ospf-100]area 0 [pe2-ospf-100-area-0.0.0.0]network 5.5.5.5 0.0.0.0 [pe2-ospf-100-area-0.0.0.0]network 10.1.45.0 0.0.0.255 [pe2-ospf-100-area-0.0.0.0]quit [pe2-ospf-100]quit [pe2]mpls lsr-id 5.5.5.5 [pe2]mpls [pe2-mpls]quit [pe2]mpls ldp [pe2-mpls-ldp]quit [pe2]interface GigabitEthernet 0/0/0 [pe2-GigabitEthernet0/0/0]mpls [pe2-GigabitEthernet0/0/0]mpls ldp [pe2-GigabitEthernet0/0/0]quit [pe2]ip vpn-instance testvpn [pe2-vpn-instance-testvpn]route-distinguisher 2345:1 [pe2-vpn-instance-testvpn-af-ipv4]vpn-target 2345:11 [pe2-vpn-instance-testvpn-af-ipv4]quit [pe2-vpn-instance-testvpn]quit [pe2]interface g 0/0/1 [pe2-GigabitEthernet0/0/1]ip binding vpn-instance testvpn [pe2-GigabitEthernet0/0/1]ip address 10.1.56.5 24 [pe2-GigabitEthernet0/0/1]quit [pe2]ospf 1 vpn-instance testvpn [pe2-ospf-1]area 0 [pe2-ospf-1-area-0.0.0.0]network 10.1.56.0 0.0.0.255 [pe2-ospf-1-area-0.0.0.0]quit [pe2-ospf-1]quit [pe2]bgp 2345 [pe2-bgp]router-id 5.5.5.5 [pe2-bgp]undo default ipv4-unicast [pe2-bgp]peer 2.2.2.2 as-number 2345 [pe2-bgp]peer 2.2.2.2 connect-interface LoopBack 0 [pe2-bgp]ipv4-family vpnv4 unicast [pe2-bgp-af-vpnv4]peer 2.2.2.2 enable [pe2-bgp-af-vpnv4]quit [pe2-bgp]quit [pe2]bgp 2345 [pe2-bgp]ipv4-family vpn-instance testvpn [pe2-bgp-testvpn]import-route ospf 1 [pe2-bgp-testvpn]quit [pe2-bgp]quit [pe2]ospf 1 vpn-instance testvpn [pe2-ospf-1]import-route bgp permit-ibgp
  • #ce2配置,普通IP和OSPF配置
<Huawei>system-view [Huawei]sysname ce2 [ce2]interface g 0/0/0 [ce2-GigabitEthernet0/0/0]ip address 10.1.56.6 24 [ce2-GigabitEthernet0/0/0]quit [ce2]interface LoopBack 0 [ce2-LoopBack0]ip address 6.6.6.6 32 [ce2-LoopBack0]quit [ce2]ospf 1 router-id 6.6.6.6 [ce2-ospf-1]area 0 [ce2-ospf-1-area-0.0.0.0]network 10.1.56.0 0.0.0.255 [ce2-ospf-1-area-0.0.0.0]network 6.6.6.6 0.0.0.0
  • #验证

#在PE1上查看路由6.6.6.6/32的详细信息。该条路由是通过MP-iBGP从PE2传递过来的。从详细信息的输出我们可以看到路由的下一跳是5.5.5.5。并且该路由捆绑的VPN标签是1027。因此当PE1收到IP数据包要去往6.6.6.6时,会为数据包压入VPN标签1027,同时为了让这个标签包能够正常的穿越骨干网并到达PE2上,还需为该标签包再增加一层标签。由于去往6.6.6.6的下一跳是5.5.5.5,因此在外层压入5.5.5.5路由对应的标签。

[pe1]display bgp vpnv4 all routing-table 6.6.6.6 BGP local router ID : 2.2.2.2 Local AS number : 2345 Total routes of Route Distinguisher(2345:1): 1 BGP routing table entry information of 6.6.6.6/32: Label information (Received/Applied): 1027/NULL From: 5.5.5.5 (5.5.5.5) Route Duration: 00h01m32s Relay IP Nexthop: 10.1.23.3 Relay IP Out-Interface: GigabitEthernet0/0/1 Relay Tunnel Out-Interface: GigabitEthernet0/0/1 Relay token: 0x5 Original nexthop: 5.5.5.5 Qos information : 0x0 Ext-Community:RT <2345 : 11>, OSPF DOMAIN ID <0.0.0.0 : 0>, OSPF RT <0.0.0.0 : 1 : 0>, OSPF ROUTER ID <10.1.56.5 : 0> AS-path Nil, origin incomplete, MED 2, localpref 100, pref-val 0, valid, intern al, best, select, pre 255, IGP cost 3 Not advertised to any peer yet VPN-Instance testvpn, Router ID 2.2.2.2: Total Number of Routes: 1 BGP routing table entry information of 6.6.6.6/32: Label information (Received/Applied): 1027/NULL From: 5.5.5.5 (5.5.5.5) Route Duration: 00h01m32s Relay Tunnel Out-Interface: GigabitEthernet0/0/1 Relay token: 0x5 Original nexthop: 5.5.5.5 Qos information : 0x0 Ext-Community:RT <2345 : 11>, OSPF DOMAIN ID <0.0.0.0 : 0>, OSPF RT <0.0.0.0 : 1 : 0>, OSPF ROUTER ID <10.1.56.5 : 0> AS-path Nil, origin incomplete, MED 2, localpref 100, pref-val 0, valid, intern al, best, select, active, pre 255, IGP cost 3 Not advertised to any peer yet
[pe1]display mpls lsp ------------------------------------------------------------------------------- LSP Information: BGP LSP ------------------------------------------------------------------------------- FEC In/Out Label In/Out IF Vrf Name 1.1.1.1/32 1027/NULL -/- testvpn 10.1.12.0/24 1028/NULL -/- testvpn ------------------------------------------------------------------------------- LSP Information: LDP LSP ------------------------------------------------------------------------------- FEC In/Out Label In/Out IF Vrf Name 2.2.2.2/32 3/NULL -/- 3.3.3.3/32 NULL/3 -/GE0/0/1 3.3.3.3/32 1024/3 -/GE0/0/1 4.4.4.4/32 NULL/1025 -/GE0/0/1 4.4.4.4/32 1025/1025 -/GE0/0/1 5.5.5.5/32 NULL/1026 -/GE0/0/1 5.5.5.5/32 1026/1026 -/GE0/0/1
#在PE1上Tracert 6.6.6.6,可以查看到整个数据层面的过程 [pe1]tracert -vpn-instance testvpn -v -a 10.1.12.2 6.6.6.6 traceroute to testv pn 6.6.6.6(6.6.6.6), max hops: 30 ,packet length: 40,press CTRL_C to break 1 10.1.23.3[MPLS Label=1026/1027 Exp=0/0 S=0/1 TTL=1/1] 50 ms 40 ms 40 ms 2 10.1.34.4[MPLS Label=1026/1027 Exp=0/0 S=0/1 TTL=1/2] 40 ms 40 ms 30 m 3 10.1.56.5 30 ms 40 ms 40 ms 4 10.1.56.6 30 ms 30 ms 40 ms
#在ce1上可以查看ce2路由信息 [ce1]display ip routing-table protocol ospf Route Flags: R - relay, D - download to fib ------------------------------------------------------------------------------ Public routing table : OSPF Destinations : 2 Routes : 2 OSPF routing table status : <Active> Destinations : 2 Routes : 2 Destination/Mask Proto Pre Cost Flags NextHop Interface 6.6.6.6/32 OSPF 10 3 D 10.1.12.2 GigabitEthernet 0/0/0 10.1.56.0/24 O_ASE 150 1 D 10.1.12.2 GigabitEthernet 0/0/0 OSPF routing table status : <Inactive> Destinations : 0 Routes : 0
#在ce1上ping ce2,通过Wireshark跟踪可以看到MPLS信息 [ce1]ping 10.1.56.6 PING 10.1.56.6: 56 data bytes, press CTRL_C to break Reply from 10.1.56.6: bytes=56 Sequence=1 ttl=251 time=70 ms Reply from 10.1.56.6: bytes=56 Sequence=2 ttl=251 time=60 ms Reply from 10.1.56.6: bytes=56 Sequence=3 ttl=251 time=50 ms Reply from 10.1.56.6: bytes=56 Sequence=4 ttl=251 time=60 ms Reply from 10.1.56.6: bytes=56 Sequence=5 ttl=251 time=50 ms --- 10.1.56.6 ping statistics --- 5 packet(s) transmitted 5 packet(s) received 0.00% packet loss round-trip min/avg/max = 50/58/70 ms
MPLS从入门到精通

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/108295.html

(0)

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信