Lab11 MPLS + Same RD + Add-Path + Repair Path
Load lab11.init.cfg
#R1, R6
configure replace unix:lab11.init.cfg
#R2-R5, R7
configure
load bootflash:lab11.init.cfg
commit replace
y

The initial config for this lab is simply the completed lab 10 configuration. Perform these tasks:
Remove DMZ link bandwidth on R4 and R5
Configure R5 to set LP=50 again inbound from R6, and set MED=5 outbound to R6
Remove ECMP on R2, and achieve only a backup repair path on R2.
Answer
#R2
route-policy INSTALL_BACKUP
set path-selection backup 1 install
end-policy
!
router bgp 65000
address-family vpnv4 unicast
additional-paths selection route-policy INSTALL_BACKUP
!
address-family vpnv6 unicast
additional-paths selection route-policy INSTALL_BACKUP
!
vrf CUST_A
address-family ipv4 unicast
no maximum-paths ibgp 2
!
address-family ipv6 unicast
no maximum-paths ibgp 2
#R4
router bgp 65000
vrf CUST_A
neighbor 10.4.6.6
no dmz-link-bandwidth
!
neighbor fc00:10:4:6::6
no dmz-link-bandwidth
#R5
route-policy SELECT_BACKUP
set path-selection backup 1 advertise install
end-policy
!
router bgp 65000
address-family vpnv4 unicast
additional-paths send
additional-paths selection route-policy SELECT_BACKUP
!
address-family vpnv6 unicast
additional-paths send
additional-paths selection route-policy SELECT_BACKUP
!
vrf CUST_A
neighbor 10.5.6.6
remote-as 65006
no dmz-link-bandwidth
address-family ipv4 unicast
route-policy SET_LP_TO_X(50) in
route-policy SET_MED_TO_X(5) out
!
!
neighbor fc00:10:5:6::6
remote-as 65006
no dmz-link-bandwidth
address-family ipv6 unicast
route-policy SET_LP_TO_X(50) in
route-policy SET_MED_TO_X(5) out
#R7
router bgp 65000
address-family vpnv4 unicast
additional-paths receive
!
address-family vpnv6 unicast
additional-paths receive
Explanation
In Russo’s SPv4 guide, he states that using add-path with VPNv4/v6 at the rd-level does not work. He theorizes that when the RD is the same, bestpath happens before the VRF import and you cannot install the repair path in the FIB. Instead you must use unique RDs.
This appears to be fixed in current versions of XRv. I am able to use add-path with VPNv4/VPNv6 and install the repair path in the FIB.
Currently, R5’s bestpath is via R4. We use add-path for VPNv4/VPNv6 to force R5 to advertise its less preferred path to the RR (R7). R5 also locally installs this eBGP path as a repair path.
#R5
route-policy SELECT_BACKUP
set path-selection backup 1 advertise install
end-policy
!
router bgp 65000
address-family vpnv4 unicast
additional-paths send
additional-paths selection route-policy SELECT_BACKUP
!
address-family vpnv6 unicast
additional-paths send
additional-paths selection route-policy SELECT_BACKUP

R7 reflects both routes to R2 using Add-Path.


Unlike in Nick Russo’s lab, R2 is able to install both paths into the BGP VRF tables:


R2 is therefore able to install the repair path into the FIB:


Note that IOS-XE does not support add-path for VPNv4/VPNv6. IOS-XE supports “bgp advertise-best-external” under VPNv4/VPNv6 and “bgp additional-paths install|select” only. IOS-XR on the other hand supports Add-Path for every BGP AFI/SAFI.
Last updated