IOS XE 15.5
IOS XR 5.3
The topology for this demo:
This post will focus on getting the base configuration in place that is needed to get MPLS L3 VPN up and running. You'll notice that it is significantly more involved than L2VPN in almost any aspect. L2 VPN doesn't require VRFs, MP-BGP RT/RD for the most part, only the advanced configuration, all of those features are required for L3 VPN.
We are going to focus on getting the infrastructure up and running in this post, then we'll be able to test out a variety of scenarios. This foundation setup will be in place likely the remainder of the Intra AS testing of technologies. We'll be able to test all the L3 VPN scenarios around Intra AS design, MPLS TE, Multicast, QoS. We'll be adding to this design once we get into the Inter AS and CSC designs later on.
For those of you not familiar with MPLS L3 VPN there are a few things we need to cover before you start looking over the configuration. The components used to make L3 VPN work; VRF (RD/RT) MP-BGP, IGP/LDP are the minimum required configurations.
IGP and LDP: IGP is used to build a loop free topology, we'll use OSPF and IS-IS but can test with EIGRP or RIPv2 if needed. the DV IGPs don't have the flexibility that OSPF/IS-IS do. LDP relies on IGP to build a loop free topology. LDP can not operation without IGP. LDP requires that every PE advertise a /32 loopback into IGP used to terminate LSPs or Label Switch Paths.
VRFs: Virtual Routing and Forwarding: This is the same concept as a "VLAN" on a switch but unique to a router. They can be configured on a switch. VRF are to a Router what VLANs are to a switch. you can virtualize a router's routing table with VRFs. Each VRF gets a RD or Route Distinguisher and a RT or Route Target. The RD is prepended or added to the front of a customer prefix to make it globally unique. The Rt determines what routes/prefixes can be imported to or exported from the VRF. Import takes routes from MP-BGP and injects them into the VRF RIB. Export take routes from the VRF RIB and injects them into the MP-BGP RIB.
MP-BGP: Multi Protocol BGP - used to advertise VPNv4 and VPNv6 prefixes learned from customer to other PEs. Every PE needs to be peered in a full mesh with all the other PEs it needs to send routing information to or to peer with a Route Reflector (our design). The MP-BGP learned routes are what allocate the "VPN" label to a prefix learned from the customer. LDP is used to allocate "Transport" labels that the PE will use to reach the remote PE that connects to the CE the received traffic needs to reach.
I will give detailed breakdowns of how this works as we progress through the difference scenarios. For now, focus on the SP core and edge configuration.
We'll begin with enabling IGP/LDP, in this case it's OSPFv2 and LDP. We actually have this going, I enable OSPFv2 globally on all interfaces and use mpls ldp autoconfig to get everything up.
IOS
router ospf 1
network 0.0.0.0 255.255.255.255 area 0
mpls ldp autoconfig
mpls ldp label
allocate global host-routes
XR1
router ospf 1
area 0
interface Loopback0
!
interface GigabitEthernet0/0/0/0.111
!
interface GigabitEthernet0/0/0/0.1114
!
mpls ldp
address-family ipv4
label
local
allocate for host-routes
XR2
router ospf 1
area 0
mpls ldp auto-config
interface Loopback0
!
interface GigabitEthernet0/0/0/0.112
!
interface GigabitEthernet0/0/0/0.1213
!
interface GigabitEthernet0/0/0/0.1216
!
mpls ldp
address-family ipv4
label
local
allocate for host-routes
XR3
router ospf 1
area 0
mpls ldp auto-config
interface Loopback0
!
interface GigabitEthernet0/0/0/0.132
!
interface GigabitEthernet0/0/0/0.1213
!
mpls ldp
address-family ipv4
label
local
allocate for host-routes
XR4
router ospf 1
area 0
interface Loopback0
!
interface GigabitEthernet0/0/0/0.143
!
interface GigabitEthernet0/0/0/0.1114
!
interface GigabitEthernet0/0/0/0.1415
!
mpls ldp
address-family ipv4
label
local
allocate for host-routes
XR5
router ospf 1
area 0
mpls ldp auto-config
interface Loopback0
!
interface GigabitEthernet0/0/0/0.115
!
interface GigabitEthernet0/0/0/0.154
!
interface GigabitEthernet0/0/0/0.1415
!
interface GigabitEthernet0/0/0/0.1516
!
mpls ldp
address-family ipv4
label
local
allocate for host-routes
XR6
router ospf 1
area 0
mpls ldp auto-config
interface Loopback0
!
interface GigabitEthernet0/0/0/0.162
!
interface GigabitEthernet0/0/0/0.165
!
interface GigabitEthernet0/0/0/0.1216
!
interface GigabitEthernet0/0/0/0.1516
!
mpls ldp
address-family ipv4
label
local
allocate for host-routes
IGP and LDP should be fully converged in a few minutes, likely faster than that but it will take you longer to copy and paste the config's in that it will take OSPF to converge.
Now we need to configure the VRFs on IOS and IOS XR. Overall pretty straight forward. This is only done on the PEs for IOS and XR. I create 7 different VRFs, one for each IGP, one for BGP, one for Static routes and the last for PBR. I enable both IPv4 and IPv6 for each VRF. The RD is the AD value for BGP, IGP and Static routes, PBR just received 10 for simplicity. The RT or Route Target, which determines flood/learn policies for each VRF, also follows the RD format.
IOS
vrf definition BGP
rd 20:50693
!
address-family ipv4
route-target export 20:50693
route-target import 20:50693
exit-address-family
!
address-family ipv6
route-target export 20:50693
route-target import 20:50693
exit-address-family
!
!
!
vrf definition EIGRP
rd 90:50693
!
address-family ipv4
route-target export 90:50693
route-target import 90:50693
exit-address-family
!
address-family ipv6
route-target export 90:50693
route-target import 90:50693
exit-address-family
!
!
!
vrf definition IS-IS
rd 115:50693
!
address-family ipv4
route-target export 115:50693
route-target import 115:50693
exit-address-family
!
address-family ipv6
route-target export 115:50693
route-target import 115:50693
exit-address-family
!
!
!
vrf definition OSPF
rd 110:50693
!
address-family ipv4
route-target export 110:50693
route-target import 110:50693
exit-address-family
!
address-family ipv6
route-target export 110:50693
route-target import 110:50693
exit-address-family
!
!
!
vrf definition PBR
rd 10:50693
!
address-family ipv4
route-target export 10:50693
route-target import 10:50693
exit-address-family
!
address-family ipv6
route-target export 10:50693
route-target import 10:50693
exit-address-family
!
!
!
vrf definition RIPv2
rd 120:50693
!
address-family ipv4
route-target export 120:50693
route-target import 120:50693
exit-address-family
!
address-family ipv6
route-target export 120:50693
route-target import 120:50693
exit-address-family
!
!
!
vrf definition STATIC
rd 1:50693
!
address-family ipv4
route-target export 1:50693
route-target import 1:50693
exit-address-family
!
address-family ipv6
route-target export 1:50693
route-target import 1:50693
exit-address-family
IOS XR
vrf BGP
address-family ipv4 unicast
import route-target 20:50693
export route-target 20:50693
address-family ipv6 unicast
export route-target 20:50693
import route-target 20:50693
!
vrf OSPF
address-family ipv4 unicast
import route-target 110:50693
export route-target 110:50693
address-family ipv6 unicast
export route-target 110:50693
import route-target 110:50693
!
vrf EIGRP
address-family ipv4 unicast
import route-target 90:50693
export route-target 90:50693
address-family ipv6 unicast
export route-target 90:50693
import route-target 90:50693
!
vrf RIPv2
address-family ipv4 unicast
import route-target 120:50693
export route-target 120:50693
address-family ipv6 unicast
export route-target 120:50693
import route-target 120:50693
!
vrf IS-IS
address-family ipv4 unicast
import route-target 115:50693
export route-target 115:50693
address-family ipv6 unicast
export route-target 115:50693
import route-target 115:50693
!
vrf STATIC
address-family ipv4 unicast
import route-target 1:50693
export route-target 1:50693
address-family ipv6 unicast
export route-target 1:50693
import route-target 1:50693
!
vrf PBR
address-family ipv4 unicast
import route-target 10:50693
export route-target 10:50693
address-family ipv6 unicast
export route-target 10:50693
import route-target 10:50693
Now we have to apply the VRF to the appropriate interfaces. I am not applying IPv4/IPv6 addressing yet for the simple reason, each PE would have unique address spaces. I will show you the technique I use for IOS and XR for R1 and XR1 each. I use the CE router number and the PE router number, R13 (CE) and R1 (PE) for instance would get 131.0.0.0/24 and 2131:CC1E::/64 for all VRF defined interfaces. You can follow that stanza and address as we go or at one time.
IOS
interface GigabitEthernet1.1001
encapsulation dot1Q 1001
vrf forwarding STATIC
interface GigabitEthernet1.1010
encapsulation dot1Q 1010
vrf forwarding PBR
interface GigabitEthernet1.1020
encapsulation dot1Q 1020
vrf forwarding BGP
interface GigabitEthernet1.1090
encapsulation dot1Q 1090
vrf forwarding EIGRP
interface GigabitEthernet1.1110
encapsulation dot1Q 1110
vrf forwarding OSPF
interface GigabitEthernet1.1115
encapsulation dot1Q 1115
vrf forwarding IS-IS
interface GigabitEthernet1.1120
encapsulation dot1Q 1120
vrf forwarding RIPv2
IOS XR
interface GigabitEthernet0/0/0/0.1001
vrf STATIC
encapsulation dot1q 1001
!
interface GigabitEthernet0/0/0/0.1010
vrf PBR
encapsulation dot1q 1010
!
interface GigabitEthernet0/0/0/0.1020
vrf BGP
encapsulation dot1q 1020
!
interface GigabitEthernet0/0/0/0.1090
vrf EIGRP
encapsulation dot1q 1090
!
interface GigabitEthernet0/0/0/0.1110
vrf OSPF
encapsulation dot1q 1110
!
interface GigabitEthernet0/0/0/0.1115
vrf IS-IS
encapsulation dot1q 1115
!
interface GigabitEthernet0/0/0/0.1120
vrf RIPv2
encapsulation dot1q 1120
Onto the addressing piece.
IOS
interface GigabitEthernet1.1001
encapsulation dot1Q 1001
vrf forwarding STATIC
ip address 131.0.0.1 255.255.255.0
ipv6 address 2131:CC1E::1/64
!
interface GigabitEthernet1.1010
encapsulation dot1Q 1010
vrf forwarding PBR
ip address 131.0.0.1 255.255.255.0
ipv6 address 2131:CC1E::1/64
!
interface GigabitEthernet1.1020
encapsulation dot1Q 1020
vrf forwarding BGP
ip address 131.0.0.1 255.255.255.0
ipv6 address 2131:CC1E::1/64
!
interface GigabitEthernet1.1090
encapsulation dot1Q 1090
vrf forwarding EIGRP
ip address 131.0.0.1 255.255.255.0
ipv6 address 2131:CC1E::1/64
!
interface GigabitEthernet1.1110
encapsulation dot1Q 1110
vrf forwarding OSPF
ip address 131.0.0.1 255.255.255.0
ipv6 address 2131:CC1E::1/64
!
interface GigabitEthernet1.1115
encapsulation dot1Q 1115
vrf forwarding IS-IS
ip address 131.0.0.1 255.255.255.0
ipv6 address 2131:CC1E::1/64
!
interface GigabitEthernet1.1120
encapsulation dot1Q 1120
vrf forwarding RIPv2
ip address 131.0.0.1 255.255.255.0
ipv6 address 2131:CC1E::1/64
IOS XR
interface GigabitEthernet0/0/0/0.1001
vrf STATIC
ipv4 address 113.0.0.11 255.255.255.0
ipv6 address 2113:cc1e::11/64
encapsulation dot1q 1001
!
interface GigabitEthernet0/0/0/0.1010
vrf PBR
ipv4 address 113.0.0.11 255.255.255.0
ipv6 address 2113:cc1e::11/64
encapsulation dot1q 1010
!
interface GigabitEthernet0/0/0/0.1020
vrf BGP
ipv4 address 113.0.0.11 255.255.255.0
ipv6 address 2113:cc1e::11/64
encapsulation dot1q 1020
!
interface GigabitEthernet0/0/0/0.1090
vrf EIGRP
ipv4 address 113.0.0.11 255.255.255.0
ipv6 address 2113:cc1e::11/64
encapsulation dot1q 1090
!
interface GigabitEthernet0/0/0/0.1110
vrf OSPF
ipv4 address 113.0.0.11 255.255.255.0
ipv6 address 2113:cc1e::11/64
encapsulation dot1q 1110
!
interface GigabitEthernet0/0/0/0.1115
vrf IS-IS
ipv4 address 113.0.0.11 255.255.255.0
ipv6 address 2113:cc1e::11/64
encapsulation dot1q 1115
!
interface GigabitEthernet0/0/0/0.1120
vrf RIPv2
ipv4 address 113.0.0.11 255.255.255.0
ipv6 address 2113:cc1e::11/64
encapsulation dot1q 1120
Now that we have that part knocked out. We need to rollout the MP-BGP VPNv4 peerings. After that, we'll be in good shape to get the rest up and running and start playing with PE-CE routing. R2 and XR4 are both Route Reflectors in this design, they peer with each other as well.
IOS and IOS XR PE configs
IOS
router bgp 50693
bgp log-neighbor-changes
neighbor 192.168.1.2 remote-as 50693
neighbor 192.168.1.2 password CCIE
neighbor 192.168.1.2 update-source Loopback0
neighbor 192.168.1.14 remote-as 50693
neighbor 192.168.1.14 password CCIE
neighbor 192.168.1.14 update-source Loopback0
!
address-family vpnv4
neighbor 192.168.1.2 activate
neighbor 192.168.1.2 send-community extended
neighbor 192.168.1.14 activate
neighbor 192.168.1.14 send-community extended
exit-address-family
IOS XR
router bgp 50693
address-family vpnv4 unicast
!
address-family ipv6 unicast
!
address-family vpnv6 unicast
!
af-group VPN address-family vpnv4 unicast
!
af-group VPNv6 address-family vpnv6 unicast
!
session-group VPN
remote-as 50693
password encrypted 0130252D7E
update-source Loopback0
!
neighbor 192.168.1.2
use session-group VPN
address-family vpnv4 unicast
use af-group VPN
!
address-family vpnv6 unicast
use af-group VPNv6
!
!
neighbor 192.168.1.14
use session-group VPN
address-family vpnv4 unicast
use af-group VPN
!
address-family vpnv6 unicast
use af-group VPNv6
address-family vpnv4 unicast
!
address-family ipv6 unicast
!
address-family vpnv6 unicast
!
af-group VPN address-family vpnv4 unicast
!
af-group VPNv6 address-family vpnv6 unicast
!
session-group VPN
remote-as 50693
password encrypted 0130252D7E
update-source Loopback0
!
neighbor 192.168.1.2
use session-group VPN
address-family vpnv4 unicast
use af-group VPN
!
address-family vpnv6 unicast
use af-group VPNv6
!
!
neighbor 192.168.1.14
use session-group VPN
address-family vpnv4 unicast
use af-group VPN
!
address-family vpnv6 unicast
use af-group VPNv6
Now onto the Route Reflector configuration. R2 and XR4
R2
router bgp 50693
template peer-policy VPN
route-reflector-client
send-community both
exit-peer-policy
!
template peer-session VPN
remote-as 50693
password CCIE
update-source Loopback0
exit-peer-session
!
bgp log-neighbor-changes
neighbor 192.168.1.1 inherit peer-session VPN
neighbor 192.168.1.3 inherit peer-session VPN
neighbor 192.168.1.4 remote-as 50693
neighbor 192.168.1.4 update-source Loopback0
neighbor 192.168.1.5 remote-as 50693
neighbor 192.168.1.5 inherit peer-session VPN
neighbor 192.168.1.5 update-source Loopback0
neighbor 192.168.1.6 inherit peer-session VPN
neighbor 192.168.1.11 inherit peer-session VPN
neighbor 192.168.1.12 inherit peer-session VPN
neighbor 192.168.1.13 inherit peer-session VPN
neighbor 192.168.1.14 inherit peer-session VPN
!
address-family ipv4
neighbor 192.168.1.1 activate
neighbor 192.168.1.1 send-community extended
neighbor 192.168.1.1 inherit peer-policy VPN
neighbor 192.168.1.3 activate
neighbor 192.168.1.3 send-community extended
neighbor 192.168.1.3 inherit peer-policy VPN
neighbor 192.168.1.4 activate
neighbor 192.168.1.5 activate
neighbor 192.168.1.5 send-community extended
neighbor 192.168.1.5 inherit peer-policy VPN
neighbor 192.168.1.6 activate
neighbor 192.168.1.6 send-community extended
neighbor 192.168.1.6 inherit peer-policy VPN
neighbor 192.168.1.11 activate
neighbor 192.168.1.11 send-community extended
neighbor 192.168.1.11 inherit peer-policy VPN
neighbor 192.168.1.12 activate
neighbor 192.168.1.12 send-community extended
neighbor 192.168.1.12 inherit peer-policy VPN
neighbor 192.168.1.13 activate
neighbor 192.168.1.13 send-community extended
neighbor 192.168.1.13 inherit peer-policy VPN
neighbor 192.168.1.14 activate
neighbor 192.168.1.14 send-community extended
neighbor 192.168.1.14 inherit peer-policy VPN
exit-address-family
!
address-family vpnv4
neighbor 192.168.1.1 activate
neighbor 192.168.1.1 send-community extended
neighbor 192.168.1.1 inherit peer-policy VPN
neighbor 192.168.1.3 activate
neighbor 192.168.1.3 send-community extended
neighbor 192.168.1.3 inherit peer-policy VPN
neighbor 192.168.1.5 activate
neighbor 192.168.1.5 send-community extended
neighbor 192.168.1.5 inherit peer-policy VPN
neighbor 192.168.1.6 activate
neighbor 192.168.1.6 send-community extended
neighbor 192.168.1.6 inherit peer-policy VPN
neighbor 192.168.1.11 activate
neighbor 192.168.1.11 send-community extended
neighbor 192.168.1.11 inherit peer-policy VPN
neighbor 192.168.1.12 activate
neighbor 192.168.1.12 send-community extended
neighbor 192.168.1.12 inherit peer-policy VPN
neighbor 192.168.1.13 activate
neighbor 192.168.1.13 send-community extended
neighbor 192.168.1.13 inherit peer-policy VPN
neighbor 192.168.1.14 activate
neighbor 192.168.1.14 send-community extended
neighbor 192.168.1.14 inherit peer-policy VPN
exit-address-family
!
address-family vpnv6
neighbor 192.168.1.1 activate
neighbor 192.168.1.1 send-community extended
neighbor 192.168.1.1 inherit peer-policy VPN
neighbor 192.168.1.3 activate
neighbor 192.168.1.3 send-community extended
neighbor 192.168.1.3 inherit peer-policy VPN
neighbor 192.168.1.5 activate
neighbor 192.168.1.5 send-community extended
neighbor 192.168.1.5 inherit peer-policy VPN
neighbor 192.168.1.6 activate
neighbor 192.168.1.6 send-community extended
neighbor 192.168.1.6 inherit peer-policy VPN
neighbor 192.168.1.11 activate
neighbor 192.168.1.11 send-community extended
neighbor 192.168.1.11 inherit peer-policy VPN
neighbor 192.168.1.12 activate
neighbor 192.168.1.12 send-community extended
neighbor 192.168.1.12 inherit peer-policy VPN
neighbor 192.168.1.13 activate
neighbor 192.168.1.13 send-community extended
neighbor 192.168.1.13 inherit peer-policy VPN
neighbor 192.168.1.14 activate
neighbor 192.168.1.14 send-community extended
neighbor 192.168.1.14 inherit peer-policy VPN
exit-address-family
template peer-policy VPN
route-reflector-client
send-community both
exit-peer-policy
!
template peer-session VPN
remote-as 50693
password CCIE
update-source Loopback0
exit-peer-session
!
bgp log-neighbor-changes
neighbor 192.168.1.1 inherit peer-session VPN
neighbor 192.168.1.3 inherit peer-session VPN
neighbor 192.168.1.4 remote-as 50693
neighbor 192.168.1.4 update-source Loopback0
neighbor 192.168.1.5 remote-as 50693
neighbor 192.168.1.5 inherit peer-session VPN
neighbor 192.168.1.5 update-source Loopback0
neighbor 192.168.1.6 inherit peer-session VPN
neighbor 192.168.1.11 inherit peer-session VPN
neighbor 192.168.1.12 inherit peer-session VPN
neighbor 192.168.1.13 inherit peer-session VPN
neighbor 192.168.1.14 inherit peer-session VPN
!
address-family ipv4
neighbor 192.168.1.1 activate
neighbor 192.168.1.1 send-community extended
neighbor 192.168.1.1 inherit peer-policy VPN
neighbor 192.168.1.3 activate
neighbor 192.168.1.3 send-community extended
neighbor 192.168.1.3 inherit peer-policy VPN
neighbor 192.168.1.4 activate
neighbor 192.168.1.5 activate
neighbor 192.168.1.5 send-community extended
neighbor 192.168.1.5 inherit peer-policy VPN
neighbor 192.168.1.6 activate
neighbor 192.168.1.6 send-community extended
neighbor 192.168.1.6 inherit peer-policy VPN
neighbor 192.168.1.11 activate
neighbor 192.168.1.11 send-community extended
neighbor 192.168.1.11 inherit peer-policy VPN
neighbor 192.168.1.12 activate
neighbor 192.168.1.12 send-community extended
neighbor 192.168.1.12 inherit peer-policy VPN
neighbor 192.168.1.13 activate
neighbor 192.168.1.13 send-community extended
neighbor 192.168.1.13 inherit peer-policy VPN
neighbor 192.168.1.14 activate
neighbor 192.168.1.14 send-community extended
neighbor 192.168.1.14 inherit peer-policy VPN
exit-address-family
!
address-family vpnv4
neighbor 192.168.1.1 activate
neighbor 192.168.1.1 send-community extended
neighbor 192.168.1.1 inherit peer-policy VPN
neighbor 192.168.1.3 activate
neighbor 192.168.1.3 send-community extended
neighbor 192.168.1.3 inherit peer-policy VPN
neighbor 192.168.1.5 activate
neighbor 192.168.1.5 send-community extended
neighbor 192.168.1.5 inherit peer-policy VPN
neighbor 192.168.1.6 activate
neighbor 192.168.1.6 send-community extended
neighbor 192.168.1.6 inherit peer-policy VPN
neighbor 192.168.1.11 activate
neighbor 192.168.1.11 send-community extended
neighbor 192.168.1.11 inherit peer-policy VPN
neighbor 192.168.1.12 activate
neighbor 192.168.1.12 send-community extended
neighbor 192.168.1.12 inherit peer-policy VPN
neighbor 192.168.1.13 activate
neighbor 192.168.1.13 send-community extended
neighbor 192.168.1.13 inherit peer-policy VPN
neighbor 192.168.1.14 activate
neighbor 192.168.1.14 send-community extended
neighbor 192.168.1.14 inherit peer-policy VPN
exit-address-family
!
address-family vpnv6
neighbor 192.168.1.1 activate
neighbor 192.168.1.1 send-community extended
neighbor 192.168.1.1 inherit peer-policy VPN
neighbor 192.168.1.3 activate
neighbor 192.168.1.3 send-community extended
neighbor 192.168.1.3 inherit peer-policy VPN
neighbor 192.168.1.5 activate
neighbor 192.168.1.5 send-community extended
neighbor 192.168.1.5 inherit peer-policy VPN
neighbor 192.168.1.6 activate
neighbor 192.168.1.6 send-community extended
neighbor 192.168.1.6 inherit peer-policy VPN
neighbor 192.168.1.11 activate
neighbor 192.168.1.11 send-community extended
neighbor 192.168.1.11 inherit peer-policy VPN
neighbor 192.168.1.12 activate
neighbor 192.168.1.12 send-community extended
neighbor 192.168.1.12 inherit peer-policy VPN
neighbor 192.168.1.13 activate
neighbor 192.168.1.13 send-community extended
neighbor 192.168.1.13 inherit peer-policy VPN
neighbor 192.168.1.14 activate
neighbor 192.168.1.14 send-community extended
neighbor 192.168.1.14 inherit peer-policy VPN
exit-address-family
XR4
router bgp 50693
address-family ipv4 unicast
!
address-family vpnv4 unicast
!
address-family ipv6 unicast
!
address-family vpnv6 unicast
!
af-group VPN address-family vpnv4 unicast
route-reflector-client
!
af-group VPNv6 address-family vpnv6 unicast
route-reflector-client
!
session-group VPN
remote-as 50693
password encrypted 0130252D7E
update-source Loopback0
!
session-group VPNv6
remote-as 50693
password encrypted 1326343B2E
update-source Loopback0
!
neighbor 192.168.1.1
use session-group VPNv6
address-family vpnv4 unicast
use af-group VPN
!
address-family vpnv6 unicast
use af-group VPNv6
!
!
neighbor 192.168.1.2
use session-group VPN
address-family vpnv4 unicast
use af-group VPN
!
address-family vpnv6 unicast
use af-group VPNv6
!
!
neighbor 192.168.1.3
use session-group VPN
address-family vpnv4 unicast
use af-group VPN
!
address-family vpnv6 unicast
use af-group VPNv6
!
!
neighbor 192.168.1.5
use session-group VPN
address-family vpnv4 unicast
use af-group VPN
!
address-family vpnv6 unicast
use af-group VPNv6
!
!
neighbor 192.168.1.6
use session-group VPN
address-family vpnv4 unicast
use af-group VPN
!
address-family vpnv6 unicast
use af-group VPNv6
!
!
neighbor 192.168.1.11
use session-group VPN
address-family vpnv4 unicast
use af-group VPN
!
address-family vpnv6 unicast
use af-group VPNv6
!
!
neighbor 192.168.1.12
use session-group VPN
address-family vpnv4 unicast
use af-group VPN
!
address-family vpnv6 unicast
use af-group VPNv6
!
!
neighbor 192.168.1.13
use session-group VPN
address-family vpnv4 unicast
use af-group VPN
!
address-family vpnv6 unicast
use af-group VPNv6
address-family ipv4 unicast
!
address-family vpnv4 unicast
!
address-family ipv6 unicast
!
address-family vpnv6 unicast
!
af-group VPN address-family vpnv4 unicast
route-reflector-client
!
af-group VPNv6 address-family vpnv6 unicast
route-reflector-client
!
session-group VPN
remote-as 50693
password encrypted 0130252D7E
update-source Loopback0
!
session-group VPNv6
remote-as 50693
password encrypted 1326343B2E
update-source Loopback0
!
neighbor 192.168.1.1
use session-group VPNv6
address-family vpnv4 unicast
use af-group VPN
!
address-family vpnv6 unicast
use af-group VPNv6
!
!
neighbor 192.168.1.2
use session-group VPN
address-family vpnv4 unicast
use af-group VPN
!
address-family vpnv6 unicast
use af-group VPNv6
!
!
neighbor 192.168.1.3
use session-group VPN
address-family vpnv4 unicast
use af-group VPN
!
address-family vpnv6 unicast
use af-group VPNv6
!
!
neighbor 192.168.1.5
use session-group VPN
address-family vpnv4 unicast
use af-group VPN
!
address-family vpnv6 unicast
use af-group VPNv6
!
!
neighbor 192.168.1.6
use session-group VPN
address-family vpnv4 unicast
use af-group VPN
!
address-family vpnv6 unicast
use af-group VPNv6
!
!
neighbor 192.168.1.11
use session-group VPN
address-family vpnv4 unicast
use af-group VPN
!
address-family vpnv6 unicast
use af-group VPNv6
!
!
neighbor 192.168.1.12
use session-group VPN
address-family vpnv4 unicast
use af-group VPN
!
address-family vpnv6 unicast
use af-group VPNv6
!
!
neighbor 192.168.1.13
use session-group VPN
address-family vpnv4 unicast
use af-group VPN
!
address-family vpnv6 unicast
use af-group VPNv6
As you can see, the configuration is rather intense on the RRs. The PE side is pretty light.
XR4s output of BGP VPNv4:
RP/0/0/CPU0:XR4#sh bgp vpnv4 unicast summary
Wed Jan 4 23:10:51.337 UTC
BGP is operating in STANDALONE mode.
Process RcvTblVer bRIB/RIB LabelVer ImportVer SendTblVer StandbyVer
Speaker 1 1 1 1 1 0
Neighbor Spk AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down St/PfxRcd
192.168.1.1 0 50693 109 99 1 0 0 01:36:22 0
192.168.1.2 0 50693 114 103 1 0 0 01:40:44 0
192.168.1.3 0 50693 109 99 1 0 0 01:36:43 0
192.168.1.5 0 50693 109 99 1 0 0 01:36:43 0
192.168.1.6 0 50693 110 100 1 0 0 01:36:51 0
192.168.1.11 0 50693 98 98 1 0 0 01:35:09 0
192.168.1.12 0 50693 97 99 1 0 0 01:34:41 0
192.168.1.13 0 50693 97 98 1 0 0 01:34:27 0
As you can see we are peered with both PEs and the other RR. No routes have been learned or exchanged yet since we don't have any PE-CE routing in place yet. That will start in the next post.
Thanks for stopping by!
Rob Riker, CCIE #50693
No comments:
Post a Comment