Hey there,
The following is an eNSP experiment of Inter-AS VPN Option C (Solution 1). The eNSP project is in the attachment. If you have any questions, please feel free to comment. Thank you!
Topology

The core of the Option C solution is to enable PEs/RRs in different MPLS domains to establish EBGP peer relationships and transmit data through labels.
The key configuration of solution 1 is to create policies on the ABSR to allocate BGP labels to the PE/RR in the local domain and the peer ASBR.
The below is the Main configuration (Configurations on the left and right MPLS domains are symmetrical. The following shows only the configuration on the left. . For all the configuration, please see the attachment.):
R1(PE)
#
ip vpn-instance A
ipv4-family
route-distinguisher 100:1
vpn-target 100:1 export-extcommunity
vpn-target 100:1 import-extcommunity
#
ip vpn-instance B
ipv4-family
route-distinguisher 100:2
vpn-target 100:2 export-extcommunity
vpn-target 100:2 import-extcommunity
#
mpls lsr-id 1.1.1.1
mpls
#
mpls ldp
#
interface GigabitEthernet0/0/0
ip address 10.1.12.1 255.255.255.0
mpls
mpls ldp
#
interface GigabitEthernet0/0/1
ip binding vpn-instance A
ip address 10.1.17.1 255.255.255.0
#
interface GigabitEthernet0/0/2
ip binding vpn-instance B
ip address 10.1.18.1 255.255.255.0
#
interface GigabitEthernet2/0/0
ip address 10.1.13.1 255.255.255.0
mpls
mpls ldp
#
interface LoopBack0
ip address 1.1.1.1 255.255.255.255
#
bgp 100
peer 2.2.2.2 as-number 100
peer 2.2.2.2 connect-interface LoopBack0
#
ipv4-family unicast
undo synchronization
peer 2.2.2.2 enable
peer 2.2.2.2 label-route-capability
#
ipv4-family vpnv4
policy vpn-target
peer 2.2.2.2 enable
#
ipv4-family vpn-instance A
peer 10.1.17.7 as-number 1
#
ipv4-family vpn-instance B
import-route ospf 1
#
ospf 1 vpn-instance B
import-route bgp
area 0.0.0.0
network 10.1.18.1 0.0.0.0
#
rip 1
version 2
network 10.0.0.0
network 1.0.0.0
#
--------------------------------------------
RR1
#
mpls lsr-id 2.2.2.2
mpls
#
mpls ldp
#
interface GigabitEthernet0/0/0
ip address 10.1.12.2 255.255.255.0
mpls
mpls ldp
#
interface GigabitEthernet0/0/1
ip address 10.1.23.2 255.255.255.0
mpls
mpls ldp
#
interface LoopBack0
ip address 2.2.2.2 255.255.255.255
#
bgp 100
peer 1.1.1.1 as-number 100
peer 1.1.1.1 connect-interface LoopBack0
peer 3.3.3.3 as-number 100
peer 3.3.3.3 connect-interface LoopBack0
peer 5.5.5.5 as-number 200
peer 5.5.5.5 ebgp-max-hop 100
peer 5.5.5.5 connect-interface LoopBack0
#
ipv4-family unicast
undo synchronization
peer 1.1.1.1 enable
peer 1.1.1.1 reflect-client
peer 1.1.1.1 label-route-capability
peer 3.3.3.3 enable
peer 3.3.3.3 reflect-client
peer 3.3.3.3 label-route-capability
peer 5.5.5.5 enable
peer 5.5.5.5 label-route-capability
#
ipv4-family vpnv4
undo policy vpn-target
peer 1.1.1.1 enable
peer 1.1.1.1 reflect-client
peer 1.1.1.1 next-hop-invariable
peer 5.5.5.5 enable
peer 5.5.5.5 next-hop-invariable
#
rip 1
version 2
network 10.0.0.0
network 2.0.0.0
#
----------------------------------------------------------
R3(ASBR)
#
mpls lsr-id 3.3.3.3
mpls
#
mpls ldp
#
interface GigabitEthernet0/0/0
ip address 34.34.34.3 255.255.255.0
mpls
#
interface GigabitEthernet0/0/1
ip address 10.1.23.3 255.255.255.0
mpls
mpls ldp
#
interface GigabitEthernet2/0/0
ip address 10.1.13.3 255.255.255.0
mpls
mpls ldp
#
interface LoopBack0
ip address 3.3.3.3 255.255.255.255
#
bgp 100
peer 2.2.2.2 as-number 100
peer 2.2.2.2 connect-interface LoopBack0
peer 34.34.34.4 as-number 200
#
ipv4-family unicast
network 1.1.1.1 255.255.255.255
network 2.2.2.2 255.255.255.255
peer 2.2.2.2 enable
peer 2.2.2.2 route-policy rr export
peer 2.2.2.2 label-route-capability
peer 34.34.34.4 enable
peer 34.34.34.4 route-policy asbr export
peer 34.34.34.4 label-route-capability
#
rip 1
version 2
network 3.0.0.0
network 10.0.0.0
#
route-policy asbr permit node 10
apply mpls-label
#
route-policy rr permit node 10
if-match mpls-label
apply mpls-label
#



