In this post we'll take a look at Option B which is a VPNv4 eBGP peering in the global table to connect the 2 MPLS SPs together. The purpose of the VPNv4 AFI BGP peering is to easily exchange VPNv4 traffic with each other. Just like in Option C, we'll lay out the steps that are needed to get the configuration working.
What needs to be implemented ahead of time is the Intra AS VPN setup, IGP/LDP, MP-BGP, VRFs/PE-CE routing.
1. VPNv4 eBGP peering between the ASBRs.
2. Allow VPNv4 routes. We'll be using the IOS "no bgp default route-target filter" and XR "retain route-target all". This will just allow whatever route targets to be learned.
Option B is a pretty straightforward configuration overall. Not as configuration intensive as Option A or C. The Intra AS configuration is in place already. We have to configure the eBGP VPNv4 peering and disable the default route-target filter and enable retain route-target all under BGP.With that said, unlike Option C and CSC, we'll have 3 separate LSPs in our setup. I will break that down once the traceroute is complete.
R5
router bgp 50693
bgp log-neighbor-changes
no bgp default ipv4-unicast
no bgp default route-target filter
neighbor 100.64.56.6 remote-as 2
neighbor 192.0.2.8 remote-as 50693
neighbor 192.0.2.8 update-source Loopback0
!
address-family ipv4
exit-address-family
!
address-family vpnv4
neighbor 100.64.56.6 activate
neighbor 100.64.56.6 send-community extended
neighbor 192.0.2.8 activate
neighbor 192.0.2.8 send-community extended
neighbor 192.0.2.8 next-hop-self
exit-address-family
R6
router bgp 2
bgp log-neighbor-changes
no bgp default ipv4-unicast
no bgp default route-target filter
neighbor 100.64.56.5 remote-as 50693
neighbor 100.64.166.16 remote-as 50693
neighbor 192.0.2.23 remote-as 2
neighbor 192.0.2.23 update-source Loopback0
!
address-family ipv4
exit-address-family
!
address-family vpnv4
neighbor 100.64.56.5 activate
neighbor 100.64.56.5 send-community extended
neighbor 100.64.166.16 activate
neighbor 100.64.166.16 send-community extended
neighbor 192.0.2.23 activate
neighbor 192.0.2.23 send-community extended
neighbor 192.0.2.23 next-hop-self
exit-address-family
XR6
router bgp 50693
address-family vpnv4 unicast
retain route-target all
!
neighbor 100.64.166.6
remote-as 2
address-family ipv4 labeled-unicast
route-policy RPL_LOCAL_PREF in
route-policy RPL_EBGP_PEERINGS out
!
address-family vpnv4 unicast
route-policy RPL_EBGP_PEERINGS in
route-policy RPL_EBGP_PEERINGS out
With the configuration in place now, we'll verify.
R5#show bgp vpnv4 unicast all summary | b Neighbor
Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd
100.64.56.6 4 2 141 143 17 0 0 02:03:22 2
192.0.2.8 4 50693 152 150 17 0 0 02:10:42 4
R5#show bgp vpnv4 unicast all | b Network
Network Next Hop Metric LocPrf Weight Path
Route Distinguisher: 1:1 (default for vrf CSC)
*>i 100.64.21.0/24 192.0.2.1 0 100 0 i
*> 100.64.114.0/24 100.64.56.6 0 2 65004 i
*>i 100.64.165.0/24 192.0.2.15 0 100 0 65016 i
*>i 192.0.2.2/32 192.0.2.1 0 100 0 65002 i
*> 192.0.2.4/32 100.64.56.6 0 2 65004 i
*>i 192.0.2.16/32 192.0.2.15 0 100 0 65016 i
R6#sh bgp vpnv4 unicast all summary | b Neighbor
Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd
100.64.56.5 4 50693 145 142 15 0 0 02:04:46 4
100.64.166.16 4 50693 127 140 15 0 0 02:01:12 4
192.0.2.23 4 2 135 150 15 0 0 02:08:25 2
R6#sh bgp vpnv4 unicast all | b Network
Network Next Hop Metric LocPrf Weight Path
Route Distinguisher: 1:1 (default for vrf CSC)
* 100.64.21.0/24 100.64.166.16 0 50693 i
*> 100.64.56.5 0 50693 i
*>i 100.64.114.0/24 192.0.2.11 0 100 0 65004 i
* 100.64.165.0/24 100.64.166.16 0 50693 65016 i
*> 100.64.56.5 0 50693 65016 i
* 192.0.2.2/32 100.64.166.16 0 50693 65002 i
*> 100.64.56.5 0 50693 65002 i
*>i 192.0.2.4/32 192.0.2.11 0 100 0 65004 i
* 192.0.2.16/32 100.64.166.16 0 50693 65016 i
*> 100.64.56.5 0 50693 65016 i
RP/0/0/CPU0:XR6#show bgp vpnv4 unicast summary | b Neighbor
Wed Apr 11 21:16:57.455 UTC
Neighbor Spk AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down St/PfxRcd
100.64.166.6 0 2 186 169 17 0 0 02:03:57 2
RP/0/0/CPU0:XR6#show bgp vpnv4 unicast | b Network
Wed Apr 11 21:17:21.413 UTC
Network Next Hop Metric LocPrf Weight Path
Route Distinguisher: 1:1
*>i100.64.21.0/24 192.0.2.1 0 100 0 i
*> 100.64.114.0/24 100.64.166.6 0 2 65004 i
* i 192.0.2.5 0 100 0 2 65004 i
*>i100.64.165.0/24 192.0.2.15 0 100 0 65016 i
*>i192.0.2.2/32 192.0.2.1 0 100 0 65002 i
*> 192.0.2.4/32 100.64.166.6 0 2 65004 i
* i 192.0.2.5 0 100 0 2 65004 i
*>i192.0.2.16/32 192.0.2.15 0 100 0 65016 i
Processed 6 prefixes, 8 paths
Now that we have seen that the routes have been propagated and learned. We'll focus on the end to end connectivity the 3 LSPs.
R2#traceroute 192.0.2.4 source lo0 num
Type escape sequence to abort.
Tracing the route to 192.0.2.4
VRF info: (vrf in name/id, vrf out name/id)
1 100.64.21.1 [AS 50693] 5 msec 3 msec 4 msec
2 100.64.17.7 [MPLS: Labels 26/44 Exp 0] 9 msec 8 msec 10 msec
3 100.64.75.5 [MPLS: Label 44 Exp 0] 31 msec 31 msec 31 msec
4 100.64.56.6 [MPLS: Label 28 Exp 0] 30 msec 31 msec 32 msec
5 100.64.106.10 [MPLS: Labels 17/57 Exp 0] 21 msec 32 msec 31 msec
6 100.64.114.11 [AS 65004] [MPLS: Label 57 Exp 0] 19 msec 19 msec 72 msec
7 100.64.114.4 [AS 65004] 49 msec * 8 msec
R2#traceroute 192.0.2.4 source lo0 num
LSP1
1 100.64.21.1 [AS 50693] 5 msec 3 msec 4 msec
2 100.64.17.7 [MPLS: Labels 26/44 Exp 0] 9 msec 8 msec 10 msec
3 100.64.75.5 [MPLS: Label 44 Exp 0] 31 msec 31 msec 31 msec
LSP2
4 100.64.56.6 [MPLS: Label 28 Exp 0] 30 msec 31 msec 32 msec
LSP3
5 100.64.106.10 [MPLS: Labels 17/57 Exp 0] 21 msec 32 msec 31 msec
6 100.64.114.11 [AS 65004] [MPLS: Label 57 Exp 0] 19 msec 19 msec 72 msec
7 100.64.114.4 [AS 65004] 49 msec * 8 msec
The reason for the 3 LSPs, three separate next hops.
LSP1 - ingress PE to egress PE/ASBR
LSP2 - egress PE/ASBR to ingress PE/ASBR
LSP3 - ingress PE/ASBR to egress PE
No comments:
Post a Comment