Inter-AS Option C

Scenario
This comparison shows an MPLS Inter-AS Option C setup as follows:

IOS-vs-XR_InterAS_Option_C

This setup shows both the ASBRs and the Route Reflectors with the following conditions:

  • An eBGP VPNv4 multi-hop session is configured between the route-reflectors.
  • An eBGP IPv4 session, with labels, is configured between the ASBRs.
  • The loopback from the opposing AS are redistributed into the local OSPF IGP.
  • Templates and Neighbor groups are used on the route-reflector.
  • MPLS LDP autoconfig and LDP IGP Sync are used.
  • Only host routes have labels assigned for the IGP and a label range has been configured.

For more information on how Inter-AS options work, including Option C, see this document.

IOS Config – ASBR

hostname ASBR1
!
mpls label range 1000 1999
mpls ldp label
allocate global host-routes
!
!
interface Loopback0
ip address 1.1.1.1 255.255.255.255
ip ospf 1 area 0
!
interface GigabitEthernet1.122
encapsulation dot1Q 122
ip address 10.1.22.1 255.255.255.0
mpls bgp forwarding
!
router ospf 1
router-id 1.1.1.1
log-adjacency-changes detail
redistribute bgp 100 subnets
passive-interface Loopback0
mpls ldp sync
mpls ldp autoconfig
!
router bgp 100
bgp router-id 1.1.1.1
bgp log-neighbor-changes
no bgp default ipv4-unicast
neighbor 5.5.5.5 remote-as 100
neighbor 5.5.5.5 update-source Loopback0
neighbor 10.1.22.22 remote-as 200
!
address-family ipv4
network 1.1.1.1 mask 255.255.255.255
network 2.2.2.2 mask 255.255.255.255
network 3.3.3.3 mask 255.255.255.255
network 5.5.5.5 mask 255.255.255.255
neighbor 10.1.22.22 activate
neighbor 10.1.22.22 route-map MATCH_LOOPBACKS out
neighbor 10.1.22.22 send-label
exit-address-family
!
address-family vpnv4
neighbor 5.5.5.5 activate
neighbor 5.5.5.5 send-community extended
neighbor 5.5.5.5 next-hop-self
exit-address-family
!
!
ip prefix-list MATCH_LOOPBACKS seq 5 permit 1.1.1.1/32
ip prefix-list MATCH_LOOPBACKS seq 10 permit 2.2.2.2/32
ip prefix-list MATCH_LOOPBACKS seq 15 permit 3.3.3.3/32
ip prefix-list MATCH_LOOPBACKS seq 20 permit 5.5.5.5/32
!
route-map MATCH_LOOPBACKS permit 10
match ip address prefix-list MATCH_LOOPBACKS
set mpls-label
!
mpls ldp router-id Loopback0
!

IOS Config – Route Reflector

hostname RR1
!
router bgp 100
bgp router-id 5.5.5.5
template peer-policy IBGP_PEER
route-reflector-client
exit-peer-policy
!
template peer-session IBGP_PEER
remote-as 100
update-source Loopback0
exit-peer-session
!
bgp log-neighbor-changes
neighbor 1.1.1.1 inherit peer-session IBGP_PEER
neighbor 2.2.2.2 inherit peer-session IBGP_PEER
neighbor 20.20.20.20 remote-as 200
neighbor 20.20.20.20 ebgp-multihop 255
neighbor 20.20.20.20 update-source Loopback0
!
address-family vpnv4
neighbor 1.1.1.1 activate
neighbor 1.1.1.1 send-community extended
neighbor 1.1.1.1 inherit peer-policy IBGP_PEER
neighbor 2.2.2.2 activate
neighbor 2.2.2.2 send-community extended
neighbor 2.2.2.2 inherit peer-policy IBGP_PEER
neighbor 20.20.20.20 activate
neighbor 20.20.20.20 send-community extended
neighbor 20.20.20.20 next-hop-unchanged
exit-address-family
!

XR Config – ASBR

XR Config – Router Reflector

hostname RR1
!
router bgp 100
bgp router-id 5.5.5.5
address-family vpnv4 unicast
!
neighbor-group IBGP_PEERS
remote-as 100
update-source Loopback0
address-family vpnv4 unicast
route-reflector-client
!
!
neighbor 20.20.20.20
remote-as 200
ebgp-multihop 255
update-source Loopback0
address-family vpnv4 unicast
route-policy PASS in
route-policy PASS out
next-hop-unchanged
!
!
neighbor 1.1.1.1
use neighbor-group IBGP_PEERS
address-family vpnv4 unicast
!
!
neighbor 2.2.2.2
use neighbor-group IBGP_PEERS
address-family vpnv4 unicast
!
!
!

Back to top