6.2.0 MPLS VPN

BGP/MPLS IP VPN又被简称为MPLS VPN,是一种常见的L3VPN(Layer 3 VPN)技术。

MPLS VPN网络架构

MPLS VPN网络架构由三部分组成:

  • CE(Customer Edge)
    • 用户网络边缘设备,有接口直接与服务提供商网络相连。
    • CE可以是路由器或交换机,也可以是一台主机。
    • 通常情况下,CE“感知”不到VPN的存在,也不需要支持MPLS。
  • PE(Provider Edge)
    • 是服务提供商网络的边缘设备,与CE直接相连。
    • 在MPLS网络中,对VPN的所有处理都发生在PE上,对PE性能要求较高。
  • P(Provider)
    • 服务提供商网络中的骨干设备,不与CE直接相连。
    • P设备只需要具备基本MPLS转发能力,不维护VPN信息。

其中PE和P是运营商设备,CE是MPLS VPN用户设备。

PE和P设备仅由服务提供商管理;CE设备仅由用户管理,除非用户把管理权委托给服务提供商。

一台PE设备可以接入多台CE设备一台CE设备也可以连接属于相同或不同服务提供商的多台PE设备

在这里插入图片描述

MPLS VPN技术架构

MPLS VPN不是单一的一种VPN技术,是多种技术结合的综合解决方案,主要包含下列技术:

  • MP-BGP:负责在PE与PE之间传递站点内的路由信息。
  • LDP:负责PE与PE之间的隧道建立。
  • VRF:负责PE的VPN用户管理。
  • 静态路由、IGP、BGP:负责PE与CE之间的路由信息交换。

RD与RT技术

VRF(Virtual Routing and Forwarding,虚拟路由转发),又称VPN实例,是MPLS VPN架构中的关键技术,每个VPN实例使用独立的路由转发表项,实现VPN之间的逻辑隔离。

在这里插入图片描述
在这里插入图片描述

RD路由标识符

》解决CE到PE之间路由传递

PE收到不同VPN的CE发来的IPv4地址前缀,本地根据VPN实例配置去区分这些地址前缀。

但是VPN实例只是一个本地的概念,PE无法将VPN实例信息传递到对端PE,所以使用到RD(Route Distinguisher,路由标识符),主要用于本地标识不同的VPN实例路由,防止出现重叠的网段。

RD本地有效,类似于本地标签,主要用于区分来自不同VPN实例的路由。

在这里插入图片描述

RD的配置格式有四种,常用的两种如下:

  • 2字节自治系统号4字节用户自定义数字(例如:100:1)。
    • 自治系统号的取值范围是0~65535
  • 4字节IPv4地址2字节用户自定义数字(例如:172.1.1.1:1)。

不常用的另外两种:

  • 点分形式4字节自治系统号2字节用户自定义数(例如:0.2:1)
    • 点分形式自治系统号通常写成x.y的形式,x和y的取值范围都是0~65535,即最大为:
    • 65535.65535 : 65535
  • 整数形式4字节自治系统号2字节用户自定义数(例如:4294967295:1)
    • 自治系统号的取值范围是65536~4294967295

RD的结构使得每个运营商可以独立地分配RD,但为了在某些应用场景下保证路由正常,必须保证RD全局唯一

RD值与VPN路由一起被携带在BGP Update报文中发送给对端;

有了RD进行标识VPN路由,设备就能够在本地设备上区分出不同VPN实例的同段路由。

在这里插入图片描述

MP-BGP

》解决PE到PE之间的路由传递

问题:解决了设备本地识别不同VPN实例路由后,还需要解决PE到PE之间传递VPN路由的问题,而传统的BGP-4不支持处理VPNv4路由,故无法传递VPn实例路由。

原因:传统BGP只能传递32bit(4字节)的路由信息,而带有RD标识符的VPN路由有96bit(12字节)

VPNv4哪来的96bit(12字节)?

RD值占8字节,上文有提到。而剩下的4字节便是IPv4地址。

解决:使用MP-BGP技术解决,MP-BGP采用地址簇来区分不同的网络层协议,既可以支持传统的IPv4地址族,又可以支持其它地址族(比如VPN-IPv4地址族、IPv6地址族等)。

在这里插入图片描述

MP-BGP新增了两种路径属性,封装于Update报文中:

  • MP_REACH_NLRI:Multiprotocol Reachable NLRI,多协议可达NLRI。用于发布可达路由及下一跳信息。
  • MP_UNREACH_NLRI:Multiprotocol Unreachable NLRI,多协议不可达NLRI。用于撤销不可达路由。

在这里插入图片描述

RT路由标识符

》解决PE到PE之间不同VPN实例的路由传递

问题:当PE1将路由传递给PE2之后,由于并没有任何的标签可以进行区分不同实例路由,故对于PE2来说是无法归类路由的。

原因:RD值作为本地有效,无法传递给PE2。同时RD值的灵活程度有限,即使能够区分路由也无法进一步对VPN实例进行灵活的处理。

在这里插入图片描述

解决:引入RT值概念,在PE上,每一个VPN实例都会与一个或多个VPN Target属性绑定,有两类VPN Target属性:

  • **Export Target(**ERT):当PE向其它PE发布VPNv4路由时,将打上Export Target属性发布。Export Target属性作为BGP的扩展团体属性随路由发布,
  • Import Target(IRT):PE收到其它PE发布的VPN-IPv4路由时,检查其Export Target属性。当此属性与PE上某个VPN实例的Import Target匹配时,PE就把路由加入到该VPN实例的路由表。

如下图:

  • PE1将CE1的vpnv4路由打上ERT 100:1发给PE2。
  • PE2上CE3的IRT为100:1,故PE2会将CE1的vpvn4路由加入到CE3的VPN实例路由表中。

在这里插入图片描述

双重标签

MPLS VPN,传递vpnv4路由,其传输之间的链路需要支持标签转发才能实现通信。

如下图,PE1至PE2之间传递VPNv4路由,就必须在PE1-P-PE2设备之间运行MPLS协议,使得能够进行MPLS 标签转发。

外层/公网标签

1、由于PE1、PE2之间建立MP-BGP邻居,中间的P设备存在路由黑洞的原因,故需要通过MPLS-LDP实现PE1将路由正常传递给PE2的实例设备。而这实现的原理就是打上公网标签,使得路由在网络中通过标签转发而不是路由转发。

2、当PE2通过标签转发收到路由之后基于路由中的RT属性将学习到的路由放到对应的VPN实例中。

在这里插入图片描述

内层/私网标签

1、如图当R1访问R6(172.16.6.6)时,通过MPLS可以到达次末跳R4,R4剥离标签之后发给R5,由于数据包中并没有指定需要访问哪个VPN实例(因为数据包封装中就没有定义访问哪个vpn实例,只封装了源目的地址)所以这个时候R5并不知道需要将该目的(172.16.6.6)的路由传递到R6或R8。

2、这个时候如果再来一个MPLS标签,用来表示访问某个VPN实例的话,就完美解决了这个问题。

3、也就是说R1访问R6(172.16.6.6)时不仅封装外网标签,还封装一个私网标签,该私网标签就说明了需要访问R8还是R6。

在这里插入图片描述

公网标签通过MPLS-LDP进行标签分配,那么私网标签通过什么方式让对端知道呢

答:通过BGP的路径属性,传递BGP路由的时候不仅携带RT属性还有私网标签。

在这里插入图片描述

实验案例

配置一个基础的MPLS VPN实验,应用到MPLS、LDP、MP-BGP技术:

该拓扑最终实现效果为同VPN实例互通,不同VPN实例之间不能互通。CE1与CE3,CE2与CE4。

在这里插入图片描述

CE操作

CE设备作为用户边缘设备,感觉不到VPN实例存在,故正常配置与PE1的EBGP即可

CE1

[CE1]int lo 0
[CE1-LoopBack0]ip add 192.168.40.254 24
[CE1-LoopBack0]int g0/0/0
[CE1-GigabitEthernet0/0/0]ip add 10.1.11.1 30
[CE1-GigabitEthernet0/0/0]quit
[CE1]
[CE1]bgp 100
[CE1-bgp]network 192.168.40.0 24
[CE1-bgp]peer 10.1.11.2 as 500

CE2

[CE2]int lo 0
[CE2-LoopBack0]ip add 192.168.60.254 24
[CE2-LoopBack0]int g0/0/0
[CE2-GigabitEthernet0/0/0]ip add 10.1.12.2 30
[CE2-GigabitEthernet0/0/0]quit
[CE2]bgp 200
[CE2-bgp]network 192.168.60.0 24
[CE2-bgp]peer 10.1.12.1 as 500

CE3

[CE3]int lo 0
[CE3-LoopBack0]ip add 192.168.50.254 24
[CE3-LoopBack0]int g0/0/0
[CE3-GigabitEthernet0/0/0]ip add 10.1.23.2 30
[CE3-GigabitEthernet0/0/0]quit
[CE3]bgp 300
[CE3-bgp]network 192.168.50.0 24
[CE3-bgp]peer 10.1.23.1 as 500

CE4

[CE4]int lo0
[CE4-LoopBack0]ip add 192.168.70.254 24
[CE4-LoopBack0]int g0/0/0
[CE4-GigabitEthernet0/0/0]ip add 10.1.24.2 30
[CE4-GigabitEthernet0/0/0]quit
[CE4]bgp 400
[CE4-bgp]network 192.168.70.0 24
[CE4-bgp]peer 10.1.24.1 as 500

PE1配置

1、PE作为供应商边缘,连接着众多的用户,为了区分不同用户需要创建不同的VPN实例。

[PE1]ip vpn-instance A
[PE1-vpn-instance-A]route-distinguisher 125:1
[PE1-vpn-instance-A-af-ipv4]vpn-target 125:1 export-extcommunity
[PE1-vpn-instance-A-af-ipv4]vpn-target 125:1 import-extcommunity
[PE1-vpn-instance-A-af-ipv4]quit
[PE1-vpn-instance-A]quit

[PE1]ip vpn-instance B
[PE1-vpn-instance-B]route-distinguisher 125:2
[PE1-vpn-instance-B-af-ipv4]vpn-target 125:2 export-extcommunity
[PE1-vpn-instance-B-af-ipv4]vpn-target 125:2 import-extcommunity
[PE1-vpn-instance-B-af-ipv4]quit
[PE1-vpn-instance-B]quit

2、配置底层IGP协议。

[PE1]int g0/0/0
[PE1-GigabitEthernet0/0/0]ip binding vpn-instance A
[PE1-GigabitEthernet0/0/0]ip add 10.1.11.2 30
[PE1-GigabitEthernet0/0/0]quit
[PE1]int g0/0/1
[PE1-GigabitEthernet0/0/1]ip binding vpn-instance B
[PE1-GigabitEthernet0/0/1]ip add 10.1.12.1 30
[PE1-GigabitEthernet0/0/1]quit
[PE1]int g0/0/2
[PE1-GigabitEthernet0/0/2]ip add 10.1.15.1 30
[PE1-GigabitEthernet0/0/2]int loop0
[PE1-LoopBack0]ip add 1.1.1.1 32
[PE1-LoopBack0]quit

[PE1]ospf 1 router-id 1.1.1.1
[PE1-ospf-1]a 0
[PE1-ospf-1-area-0.0.0.0]network 10.1.15.1 0.0.0.0
[PE1-ospf-1-area-0.0.0.0]network 1.1.1.1 0.0.0.0
[PE1-ospf-1-area-0.0.0.0]quit
[PE1-ospf-1]quit

3、由于vpnv4路由需要进行标签转发,故需要配置MPLS,此实验使用LDP协议进行标签同步。

[PE1]mpls lsr 1.1.1.1
[PE1]mpls
[PE1-mpls]mpls ldp
[PE1-mpls-ldp]int g0/0/2
[PE1-GigabitEthernet0/0/2]mpls
[PE1-GigabitEthernet0/0/2]mpls ldp

4、配置BGP,与CE建立EBGP,与PE2建立MP-BGP传递VPNv4路由。

  • PE1与CE建立EBGP
[PE1]bgp 500
[PE1-bgp]ipv4-family vpn-instance A 
[PE1-bgp-A]peer 10.1.11.1 as 100
[PE1-bgp-A]quit

[PE1-bgp]ipv4-family vpn-instance B
[PE1-bgp-B]peer 10.1.12.2 as 200
[PE1-bgp-B]quit
  • PE1与PE2通过环回口建立MP-BGP邻居
[PE1-bgp]peer 2.2.2.2 as 500
[PE1-bgp]peer 2.2.2.2 connect-interface loop0

# 因为并不需要建立IPv4邻居,故关闭
[PE1-bgp]ipv4-family unicast
[PE1-bgp-af-ipv4]undo peer 2.2.2.2 ena
[PE1-bgp-af-ipv4]quit

# 于VPNv4邻居簇中建立邻居
[PE1-bgp]ipv4-family vpnv4
[PE1-bgp-af-vpnv4]peer 2.2.2.2 enable
[PE1-bgp-af-vpnv4]quit

P配置

P设备仅需配置好IGP协议与MPLS协议即可,无需参与MP-BGP配置。

因为P设备作为标签转发网络中的transit-lsr,仅需同步好MPLS标签实现标签转发即可。

1、配置IGP

[P]int loop0
[P-LoopBack0]ip add 5.5.5.5 32
[P-LoopBack0]int g0/0/0
[P-GigabitEthernet0/0/0]ip add 10.1.15.2 30
[P-GigabitEthernet0/0/0]int g0/0/1
[P-GigabitEthernet0/0/1]ip add 10.1.25.2 30
[P-GigabitEthernet0/0/1]quit
[P]ospf 1 router-id 5.5.5.5
[P-ospf-1]a 0
[P-ospf-1-area-0.0.0.0]network 5.5.5.5 0.0.0.0
[P-ospf-1-area-0.0.0.0]network 10.1.15.2 0.0.0.0
[P-ospf-1-area-0.0.0.0]network 10.1.25.2 0.0.0.0
[P-ospf-1-area-0.0.0.0]quit
[P-ospf-1]quit

2、配置MPLS

[P]mpls lsr 5.5.5.5
[P]mpls
[P-mpls]mpls ldp

[P-mpls-ldp]int g0/0/0
[P-GigabitEthernet0/0/0]mpls 
[P-GigabitEthernet0/0/0]mpls ldp

[P-GigabitEthernet0/0/0]int g0/0/1
[P-GigabitEthernet0/0/1]mpls
[P-GigabitEthernet0/0/1]mpls ldp
[P-GigabitEthernet0/0/1]quit

PE2配置

与PE1设备配置思路一致

1、创建并绑定VPN实例

[PE2]ip vpn-instance A
[PE2-vpn-instance-A]route-distinguisher 345:1
[PE2-vpn-instance-A-af-ipv4]vpn-target 345:1 export-extcommunity
[PE2-vpn-instance-A-af-ipv4]vpn-target 345:1 import-extcommunity
[PE2-vpn-instance-A-af-ipv4]quit
[PE2-vpn-instance-A]quit

[PE2]ip vpn-instance B
[PE2-vpn-instance-B]route-distinguisher 345:2
[PE2-vpn-instance-B-af-ipv4]vpn-target 345:2 export-extcommunity
[PE2-vpn-instance-B-af-ipv4]vpn-target 345:2 import-extcommunity
[PE2-vpn-instance-B-af-ipv4]quit
[PE2-vpn-instance-B]quit

2、配置IGP

[PE2]int g0/0/0
[PE2-GigabitEthernet0/0/0]ip binding vpn-instance A
[PE2-GigabitEthernet0/0/0]ip add 10.1.23.1 30
[PE2-GigabitEthernet0/0/0]quit
[PE2]int g0/0/1
[PE2-GigabitEthernet0/0/1]ip binding vpn-instance B
[PE2-GigabitEthernet0/0/1]ip add 10.1.24.1 30
[PE2-GigabitEthernet0/0/1]quit
[PE2]int g0/0/2
[PE2-GigabitEthernet0/0/2]ip add 10.1.25.1 30
[PE2-GigabitEthernet0/0/2]int loop0
[PE2-LoopBack0]ip add 2.2.2.2 32
[PE2-LoopBack0]quit

[PE2]ospf 1 router-id 2.2.2.2
[PE2-ospf-1]a 0
[PE2-ospf-1-area-0.0.0.0]network 10.1.25.1 0.0.0.0
[PE2-ospf-1-area-0.0.0.0]network 2.2.2.2 0.0.0.0
[PE2-ospf-1-area-0.0.0.0]quit
[PE2-ospf-1]quit

3、配置MPLS

[PE2]mpls lsr 2.2.2.2
[PE2]mpls
[PE2-mpls]mpls ldp
[PE2-mpls-ldp]int g0/0/2
[PE2-GigabitEthernet0/0/2]mpls
[PE2-GigabitEthernet0/0/2]mpls ldp

4、配置BGP

  • PE2与CE建立EBGP邻居
[PE2]bgp 500
[PE2-bgp]ipv4-family vpn-instance A 
[PE2-bgp-A]peer 10.1.23.2 as 300
[PE2-bgp-A]quit

[PE2-bgp]ipv4-family vpn-instance B
[PE2-bgp-B]peer 10.1.24.2 as 400
[PE2-bgp-B]quit

  • PE2与PE1建立MP-BGP邻居
[PE2-bgp]peer 1.1.1.1 as 500
[PE2-bgp]peer 1.1.1.1 connect-interface loop0

# 因为并不需要建立IPv4邻居,故关闭
[PE2-bgp]ipv4-family unicast
[PE2-bgp-af-ipv4]undo peer 1.1.1.1 ena
[PE2-bgp-af-ipv4]quit

# 于VPNv4邻居簇中建立邻居
[PE2-bgp]ipv4-family vpnv4
[PE2-bgp-af-vpnv4]peer 2.2.2.2 enable
[PE2-bgp-af-vpnv4]quit

检查结果

1、查看BGP邻居

  • 以PE1为例,可以看到PE1与PE2已经建立起了MP-BGP邻居,与CE1、CE2也建立起了EBGP邻居。
[PE1]display bgp vpnv4 all peer 

 BGP local router ID : 10.1.15.1
 Local AS number : 500
 
  Peer    V    AS  MsgRcvd  MsgSent  OutQ  Up/Down       State PrefRcv
  2.2.2.2    4   500       16       20     0 00:06:38 Established 2

  Peer of IPv4-family for vpn instance :
  
 VPN-Instance A, Router ID 10.1.15.1:
  10.1.11.1       4         100       18       18     0 00:15:28 Established  1

 VPN-Instance B, Router ID 10.1.15.1:
  10.1.12.2       4         200       18       18     0 00:15:07 Established  1

2、查看BGP路由

  • 于PE1上通过命令:display bgp vpnv4 all routing-table查看BGP的VPN实例路由表中是否学习到了对端的VPN实例路由。
[PE1]display bgp vpnv4 all routing-table 
  VPN-Instance A, Router ID 10.1.15.1:

 Total Number of Routes: 1
      Network            NextHop        MED        LocPrf    PrefVal Path/Ogn
 *>   192.168.40.0       10.1.11.1       0                     0      100i

 VPN-Instance B, Router ID 10.1.15.1:

 Total Number of Routes: 1
      Network            NextHop        MED        LocPrf    PrefVal Path/Ogn
 *>   192.168.60.0       10.1.12.2       0                     0      200i
  • 很遗憾的是,并没有学习到对端的VPN实例路由,因为只能看到AB实例中只有自己的路由。
  • 因为前面提到当VPN实例路由通过MP-BGP邻居到达其它PE之后,是通过RT值进行相应的路由引入。
  • 而此时的VPN实例正是缺省IRT的配置,所以并未看到相应路由。
  • 于PE1、PE2上完善VPN实例的IRT值:
[PE1]ip vpn A
[PE1-vpn-instance-A]vpn-target 345:1 import-extcommunity
[PE1-vpn-instance-A]quit
[PE1]ip vpn B
[PE1-vpn-instance-B]vpn-target 345:2 import-extcommunity
[PE2]ip vpn A
[PE2-vpn-instance-A]vpn-target 125:1 import-extcommunity
[PE2-vpn-instance-A]quit
[PE2]ip vpn B
[PE2-vpn-instance-B]vpn-target 125:2 import-extcommunity
  • 再次查看BGP路由,发现成功学习到对端PE2传来的VPN实例路由。
[PE1]display bgp vpnv4 all routing-table 
 BGP Local router ID is 10.1.15.1 

 VPN-Instance A, Router ID 10.1.15.1:

 Total Number of Routes: 2
      Network            NextHop        MED        LocPrf    PrefVal Path/Ogn

 *>   192.168.40.0       10.1.11.1       0                     0      100i
 *>i  192.168.50.0       2.2.2.2         0          100        0      300i

 VPN-Instance B, Router ID 10.1.15.1:

 Total Number of Routes: 2
      Network            NextHop        MED        LocPrf    PrefVal Path/Ogn

 *>   192.168.60.0       10.1.12.2       0                     0      200i
 *>i  192.168.70.0       2.2.2.2         0          100        0      40

3、查看MPLS标签

  • 以PE1为例查看MPLS标签信息
[PE1]display mpls lsp 
-------------------------------------------------------------------------------
                 LSP Information: BGP  LSP
-------------------------------------------------------------------------------
FEC                In/Out Label  In/Out IF                      Vrf Name       
192.168.40.0/24    1026/NULL     -/-                            A              
192.168.60.0/24    1027/NULL     -/-                            B              
-------------------------------------------------------------------------------
                 LSP Information: LDP LSP
-------------------------------------------------------------------------------
FEC                In/Out Label  In/Out IF                      Vrf Name       
1.1.1.1/32         3/NULL        -/-                                           
5.5.5.5/32         NULL/3        -/GE0/0/2                                     
5.5.5.5/32         1024/3        -/GE0/0/2                                     
2.2.2.2/32         NULL/1025     -/GE0/0/2                                     
2.2.2.2/32         1025/1025     -/GE0/0/2         
  • 标签中出现了两种标签,一种为BGP标签(私网标签),另一种是LDP标签(公网标签)。
  • 也就是前面所说到的私网标签与公网标签。

路由传递过程

  • 以CE1的路由为例,观察路由是怎样传递到CE3上的。

在这里插入图片描述

1、CE1与PE1建立了EBGP邻居,并将路由宣告入BGP中传递至PE1。

  • 通过该命令可以看到CE1将路由adver通告给了PE1。
<CE1>display bgp routing-table peer 10.1.11.2 advertised-routes 

 BGP Local router ID is 10.1.11.1 
 Total Number of Routes: 1
      Network            NextHop        MED        LocPrf    PrefVal Path/Ogn
      
 *>   192.168.40.0       10.1.11.1       0                     0      100i

2、PE1将CE1划分在VPN实例A中并建立了EBGP邻居,故当CE1的路由最终进入了PE1的VPN实例A路由表中。

  • 通过以下命令可以查看到CE1的路由的确是传递入了PE1的VPN实例A中。
<PE1>display bgp vpnv4 vpn-instance A routing-table peer 10.1.11.1 received-routes 

 VPN-Instance A, Router ID 10.1.15.1:

 Total Number of Routes: 1
      Network            NextHop        MED        LocPrf    PrefVal Path/Ogn

 *>   192.168.40.0       10.1.11.1       0                     0      100i
<PE1>display ip routing-table vpn-instance A

Destination/Mask    Proto   Pre  Cost      Flags NextHop         Interface

192.168.40.0/24  EBGP    255  0           D   10.1.11.1       GigabitEthernet0/0/0

3、PE1与PE2建立了MP-BGP,PE1会将自己的VPNv4路由同步到PE2上,故VPN实例A将通过MP-BGP到达PE2。

  • 以下命令查看通告给PE2的路由信息,可以看到已将CE1路由同步。
<PE1>display bgp vpnv4 all routing-table peer 2.2.2.2 advertised-routes 
 BGP Local router ID is 10.1.15.1 

 Route Distinguisher: 125:1 
      Network            NextHop        MED        LocPrf    PrefVal Path/Ogn

 *>   192.168.40.0       1.1.1.1         0          100        0      100i

 Route Distinguisher: 125:2 
      Network            NextHop        MED        LocPrf    PrefVal Path/Ogn

 *>   192.168.60.0       1.1.1.1         0          100        0      200i
  • 于PE2上查看received,可以看到已经成功接收。
<PE2>display bgp vpnv4 all routing-table peer 1.1.1.1 received-routes 
 Route Distinguisher: 125:1 
      Network            NextHop        MED        LocPrf    PrefVal Path/Ogn

 *>i  192.168.40.0       1.1.1.1         0          100        0      100i

 Route Distinguisher: 125:2 
      Network            NextHop        MED        LocPrf    PrefVal Path/Ogn

 *>i  192.168.60.0       1.1.1.1         0          100        0      200i

4、那么这些VPN路由是如何跨过P设备到达对端的呢?

PE1与PE2通过环回口建立起的MP-BGP邻居,两者在进行交互VPNv4路由的时候,会封装上公网标签进行传递。

在这里插入图片描述

  • 可以看到在PE1将VPNv4路由同步给PE2时,会封装上1025公网标签(LDP所分配),而此时看到MPLS 标签可以到,这个1025标签正是去往2.2.2.2的。
  • 有了这个公网标签,就不用担心P设备存在路由黑洞的问题。
<PE1>display mpls lsp
-------------------------------------------------------------------------------
                 LSP Information: BGP  LSP
-------------------------------------------------------------------------------
FEC                In/Out Label  In/Out IF                      Vrf Name       
192.168.40.0/24    1026/NULL     -/-                            A              
192.168.60.0/24    1027/NULL     -/-                            B              
-------------------------------------------------------------------------------
                 LSP Information: LDP LSP
-------------------------------------------------------------------------------
FEC                In/Out Label  In/Out IF                      Vrf Name       
1.1.1.1/32         3/NULL        -/-                                           
5.5.5.5/32         NULL/3        -/GE0/0/2                                     
5.5.5.5/32         1024/3        -/GE0/0/2                                     
2.2.2.2/32         NULL/1025     -/GE0/0/2                                     
【这里】2.2.2.2/32         1025/1025     -/GE0/0/2    

5、最终VPNv4路由不负众望成功到达PE2,但PE2如何归类这些VPNv4路由呢?

  • 再次展开PE1发来的Update报文,除了外层的公网标签,其中还有BGP路径属性的私网标签:

在这里插入图片描述

  • VPNv4路由的私网标签与PE2中VPN实例A的私网标签对应,故将这个PE1传递来的”CE1“路由放入”CE3“的路由表中。

关于MP-BGP实验实现的易错点

  • 1、PE上末给连接CE的接口绑定VPN实例
  • 2、PE1上配置BGP时不是通过VPN实例与CE建立EBGP(ipv4 vpn A,peer xxxx as xxx)
  • 以及图中所列:

在这里插入图片描述
汇总于:HCIA~HCIE个人笔记索引

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Hades_Ling

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值