「MPLS/L3VPN」- Inter-Provider Backbones Option C

  CREATED BY JENKINSBOT

Option C Solution 1 without RR

第零步、域内 IGP OSPF、MPLS LDP 配置

配置域内设备网络地址,并配置 IGP 实现互通;
配置域内 MPLS 协议,实现 MPLS LDP 报文转发;

第一步、配置 PE1 <==> PE2 互通,以建立 EBGP 邻居

PE1 PE2 路由通告,双向配置:
1)PE1=(IGP)=>ASBR=(EBGP)=>ASBR=(IBGP)=>PE2
2)PE1<=(IBGP)=ASBR<=(EBGP)=ASBR<=(IGP)=PE2

PE1 PE2 数据互通,Labeled IPv4-Route:

// ---------------------------------------------------------------------------- // Route(=>PE1) => PE2

routle-policy xxxx permit node 10
--- apply mpls-lable
peer xxxx route-policy xxxx export
peer xxxx label-route-capability

routle-policy xxxx permit node 10
--- if-match mpls-label
--- apply mpls-label
peer xxxx route-policy xxxx export
peer xxxx label-route-capablity

// ---------------------------------------------------------------------------- // PE1 <= Route(=>PE2)

双向配置,反之亦然;

PE1 PE2 网络互通测试:

<PE2> ping -a PE2 PE1

第二步、建立 PE1 <==> PE2 邻居,以通告 VPNv4 路由

1)创建 PE1 <==> PE2 的 EBGP 邻居关系,注意配置 ebgp-max-hop 参数;
2)配置路由通告,诸如 VRF-Instance、RD、RT、network 等等;

第三步、网络访问测试

[PC1] ping PC3
[PC2] ping PC4

Option C Solution 1 with RR

第一步、配置 RR 互通,以建立 EBGP 邻居

MPLS LDP (AR8, AR3, AR1, AR13)
MPLS LDP (AR2, AR4, AR6, AR14)

AR1 =(EBPG, network AR13, Labeled IPv4 Route)=> AR2 =(IBGP, Labeled IPv4 Route)=> AR14
AR1 <=(IBGP, Labeled IPv4 Route)= AR1 <=(EBPG, network AR14, Labeled IPv4 Route)= AR2

ping -a AR13 AR14

EBGP (AR12 ⇔ AR14, ebgp-max-hop)

第二步、配置 VRF 实例,实现网络互通

AR8 <=(MP-BGP VPNv4)=> AR13
AR8 <=(EBGP)=> AR5
AR8 <=(EBGP)=> AR9

AR6 <=(MP-BGP VPNv4)=> AR14
AR6 <=(EBGP)=> AR7
AR6 <=(EBGP)=> AR10

[PC3] ping PC1

第三步、路径优化,以解决次优路径问题

但是,这里存在次优路径(Suboptimal Path),即:路由经过 RR 跨 BGP 转发,Nexthop 已经变成 RR 地址。
我们能够知道这个查找过程,但在设备上查看相关信息时,略显繁琐,暂时没有找到查找模式;
InLabel、BGPNextHop

通过不改变下一跳的方式,使路由保持原始下一跳:
AR13=(next-hop-invariable)=>AR14=(next-hop-invariable)=>AR6
AR14=(next-hop-invariable)=>AR13=(next-hop-invariable)=>AR8

同时,需要通告原始下一跳,以使得路由有效(否则 BGP 将其显示为无效路由):
AR1=(EBGP, network AR8, labeled-ipv4-route)=>AR2=(IBGP, labeled-ipv4-route)=>AR14=(RR, ipv4-family, labeled-ipv4-route)=>AR6
AR2=(EBGP, network AR6, labeled-ipv4-route)=>AR1=(IBGP, labeled-ipv4-route)=>AR13=(RR, ipv4-family, labeled-ipv4-route)=>AR8

Option C Solution 2 without RR

第一步、配置 PE 互通,以建立 EBGP 邻居

域内:MPLS LDP, IGP

AR1=(EBGP, network AR8, IPv4, Labeled)=>AR2=(IGP, import BGP, lsp-trigger bgp-labeled-route)=>AR6
AR2=(EBGP, network AR6, IPv4, Labeled)=>AR1=(IGP, import BGP, lsp-trigger bgp-labeled-route)=>AR8

ping -a AR6 AR8

AR8<=(EBGP, VPNv4)=>AR6

第二步、配置 VRF 实例,实现网络互通

AR5<=(BGP,IPv4,network PC1)=>AR8
AR9<=(BGP,IPv4,network PC2)=>AR8

AR6<=(BGP,IPv4,network PC1)=>AR7
AR6<=(BGP,IPv4,network PC2)=>AR10

[PC1] ping PC3

Option C Solution 2 with RR

第一步、配置 RR 互通,以建立 EBGP 邻居

域内:MPLS LDP, IGP

AR1=(EBPG, network AR13 AR8, IPv4, Labeled;)=>AR2=(IGP, import BGP; lsp-trigger bgp-labeled-route;)=>AR14
AR2=(EBPG, network AR14 AR6, IPv4, Labeled;)=>AR1=(IGP, import BGP; lsp-trigger bgp-labeled-route;)=>AR13

ping -a AR13 AR14

AR13<=(EBGP, VPNv4)=>AR14

Q:通告 AR8, AR6 的原因?
A:仍旧是为了修复次优路径问题,AR13 AR14 将进行 bgp nethop-invariable 配置,所以需要通告 AR8 AR6 路由;

第二步、配置 VRF 实例,实现网络互通

AR5<=(BGP, IPv4, network PC1;)=>AR8
AR9<=(BGP, IPv4, network PC2;)=>AR8

AR6<=(BGP, IPv4, network PC1;)=>AR7
AR6<=(BGP, IPv4, network PC2;)=>AR10

[PC1] ping PC3