Genie's Tech Blog

Where knowledge has no dimensions

MPLS VPN - CSC Fundamentals

Hello All,

Today, I will be sharing an interesting post on MPLS VPN - Carrier Supporting Carrier (CsC). CsC is a situation where one Service Provider acts as a Provider (Backbone) for another Service Provider. In simple words, a small Service Provider acts as a customer for a bigger Service Provider. The service provider providing the transport is called the backbone carrier and the service provider using the services provided by the backbone carrier is called a customer carrier. The customer carrier is using MPLS VPN services provided by the backbone carrier to route traffic between user sites.  In the CsC model, the links between the backbone carrier and customer carrier are MPLS enabled to provide an end-to-end LSP path betweeeen the two POP sites located in the customer carrier network.  In the CsC model, the backbone carrier providing MPLS VPN services to the customer carrier has knowledge of only the customer carrier’s internal routes.  These routes are relevant for building the LSP path between the two POP sites and for forming the iBGP or MP-iBGP session between the POP sites.  User networks will then be transported across this iBGP or MP-iBGP session.

Label Exchange Methods in CsC Architecture

- Using BGP Label Exchange: In this method, BGP is used for routing and for label exchange.
- Using IGP and MPLS LDP for label exchange: This method employs the traditional approach of using an IGP to exchange routes between CsC-PE and CsC-CE routers. Label exchange is performed using LDP protocol. 

Note: BGP is the only supported label distribution protocol on the link between the PE and the CE on IOS-XR.

Lets now try to understand CsC with the help of an example. Consider the following topology:

In the above topology, as we can see, XR1 and XR2 are part of the backbone carrier where as XR3 and R5 as well as XR4 and R6 are part of Customer carrier. Both R7 and R8 are the end customer routers. Lets now have a look at the config. We will first start by looking at the Backbone Carrier config:

Config on XR1:
===========
interface Loopback0
 ipv4 address 1.1.1.1 255.255.255.255
!
interface GigabitEthernet0/0/0/0
 ipv4 address 12.12.12.1 255.255.255.0
!
interface GigabitEthernet0/0/0/1
 vrf Site1
 ipv4 address 172.16.13.1 255.255.255.0
!
route-policy pass-all
  pass
end-policy
!
router static
 vrf Site1
  address-family ipv4 unicast
   172.16.13.3/32 GigabitEthernet0/0/0/1
  !
 !
!
router isis XR1
 is-type level-1
 net 47.0001.0000.0000.0001.00
 address-family ipv4 unicast
  metric-style wide
 !
 interface Loopback0
  address-family ipv4 unicast
  !
 !
 interface GigabitEthernet0/0/0/0
  address-family ipv4 unicast
  !
 !
!
router bgp 100
 bgp router-id 1.1.1.1
 address-family ipv4 unicast
 !
 address-family vpnv4 unicast
 !
 neighbor 2.2.2.2
  remote-as 100
  update-source Loopback0
  address-family vpnv4 unicast
   next-hop-self
  !
 !
 vrf Site1
  rd 100:100
  address-family ipv4 unicast
   redistribute connected
   allocate-label all
  !
  neighbor 172.16.13.3
   remote-as 65000
   address-family ipv4 labeled-unicast
    route-policy pass-all in
    route-policy pass-all out
    as-override
    send-extended-community-ebgp
   !
  !
 !
!
mpls oam
!
mpls ldp
 router-id 1.1.1.1
 interface GigabitEthernet0/0/0/0
 !
!

Config on XR2:
===========
interface Loopback0
 ipv4 address 2.2.2.2 255.255.255.255
!
interface GigabitEthernet0/0/0/0
 ipv4 address 12.12.12.2 255.255.255.0
!
interface GigabitEthernet0/0/0/1
 vrf Site1
 ipv4 address 172.16.24.2 255.255.255.0
!
route-policy pass-all
  pass
end-policy
!
router static
 vrf Site1
  address-family ipv4 unicast
   172.16.24.4/32 GigabitEthernet0/0/0/1
  !
 !
!
router isis XR2
 is-type level-1
 net 47.0001.0000.0000.0002.00
 address-family ipv4 unicast
  metric-style wide
 !
 interface Loopback0
  address-family ipv4 unicast
  !
 !
 interface GigabitEthernet0/0/0/0
  address-family ipv4 unicast
  !
 !
!
router bgp 100
 bgp router-id 2.2.2.2
 address-family ipv4 unicast
 !
 address-family vpnv4 unicast
 !
 neighbor 1.1.1.1
  remote-as 100
  update-source Loopback0
  address-family vpnv4 unicast
   next-hop-self
  !
 !
 vrf Site1
  rd 100:100
  address-family ipv4 unicast
   redistribute connected
   allocate-label all
  !
  neighbor 172.16.24.4
   remote-as 65000
   address-family ipv4 labeled-unicast
    route-policy pass-all in
    route-policy pass-all out
    as-override
    send-extended-community-ebgp
   !
  !
 !
!
mpls oam
!
mpls ldp
 router-id 2.2.2.2
 interface GigabitEthernet0/0/0/0
 !
!

The above config is a very basic MPLS VPN config with the only difference is we are using BGP as the label distribution protocol between the PE and the CE (Since LDP is not supported as the label distribution mechanism on XR devices). Even if you enable LDP on the interface GigabitEthernet 0/0/0/1, the LDP session will never come up since the interface is in a VRF. Another interesting thing to note here is under the vrf Site1 neighbor configuration, we have configured "address-family ipv4 labeled-unicast". The purpose of this address-family is to exchange labels using BGP for the ipv4 unicast prefixes and the labels will be allocated by "allocate-label all" config under the vrf Site ipv4 unicast address-family. This is similar to having "neighbor x.x.x.x send-label" config under ipv4 unicast address-family on IOS based routers. 

Lets now have a look at the config of the Customer Carrier routers.

Config on XR3:
==========
interface Loopback0
 ipv4 address 3.3.3.3 255.255.255.255
!
interface GigabitEthernet0/0/0/0
 ipv4 address 172.16.13.3 255.255.255.0
!
interface GigabitEthernet0/0/0/1
 ipv4 address 172.16.35.3 255.255.255.0
!
route-policy pass-all
  pass
end-policy
!
router static
 address-family ipv4 unicast
  172.16.13.1/32 GigabitEthernet0/0/0/0
 !
!
router ospf 100
 router-id 3.3.3.3
 redistribute bgp 65000
 area 0
  interface Loopback0
  !
  interface GigabitEthernet0/0/0/1
  !
 !
!
router bgp 65000
 bgp router-id 3.3.3.3
 address-family ipv4 unicast
  network 3.3.3.3/32
  redistribute connected
  redistribute ospf 100
  allocate-label all
 !
 address-family vpnv4 unicast
 !
 neighbor 172.16.13.1
  remote-as 100
  address-family ipv4 labeled-unicast
   send-community-ebgp
   route-policy pass-all in
   route-policy pass-all out
  !
 !
!
mpls oam
!
mpls ldp
 router-id 3.3.3.3
 interface GigabitEthernet0/0/0/1
 !
!

Config on R5:
=========
interface Loopback0
 ip address 5.5.5.5 255.255.255.255
!
interface GigabitEthernet0/0
 ip address dhcp
 duplex auto
 speed auto
 media-type rj45
!
interface GigabitEthernet0/1
 ip address 172.16.35.5 255.255.255.0
 duplex auto
 speed auto
 media-type rj45
 mpls ip
!
router ospf 100
 router-id 5.5.5.5
 network 5.5.5.5 0.0.0.0 area 0
 network 172.16.35.5 0.0.0.0 area 0
!
mpls ldp router-id Loopback0 force
!

Config on XR4:
==========
interface Loopback0
 ipv4 address 4.4.4.4 255.255.255.255
!
interface GigabitEthernet0/0/0/0
 ipv4 address 172.16.24.4 255.255.255.0
!
interface GigabitEthernet0/0/0/1
 ipv4 address 172.16.46.4 255.255.255.0
!
route-policy pass-all
  pass
end-policy
!
router static
 address-family ipv4 unicast
  172.16.24.2/32 GigabitEthernet0/0/0/0
 !
!
router ospf 100
 router-id 4.4.4.4
 redistribute bgp 65000
 area 0
  interface Loopback0
  !
  interface GigabitEthernet0/0/0/1
  !
 !
!
router bgp 65000
 bgp router-id 4.4.4.4
 address-family ipv4 unicast
  network 4.4.4.4/32
  redistribute connected
  redistribute ospf 100
  allocate-label all
 !
 address-family vpnv4 unicast
 !
 neighbor 172.16.24.2
  remote-as 100
  address-family ipv4 labeled-unicast
   send-community-ebgp
   route-policy pass-all in
   allowas-in 3
   route-policy pass-all out
  !
 !
!
mpls oam
!
mpls ldp
 router-id 4.4.4.4
 interface GigabitEthernet0/0/0/1
 !
!

Config on R6:
=========
interface Loopback0
 ip address 6.6.6.6 255.255.255.255
!
interface GigabitEthernet0/0
 ip address dhcp
 duplex auto
 speed auto
 media-type rj45
!
interface GigabitEthernet0/1
 ip address 172.16.46.6 255.255.255.0
 duplex auto
 speed auto
 media-type rj45
 mpls ip
!
router ospf 100
 router-id 6.6.6.6
 network 6.6.6.6 0.0.0.0 area 0
 network 172.16.46.6 0.0.0.0 area 0
!
mpls ldp router-id Loopback0 force
!

With the above config, we are able to exchange routes from one customer carrier site to another customer carrier site. Lets now check if we have the routes exchanged and the LSP completed.

Output on R5:
=========
R5#sh ip route
Codes: L - local, C - connected, S - static, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area 
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2
       i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
       ia - IS-IS inter area, * - candidate default, U - per-user static route
       o - ODR, P - periodic downloaded static route, H - NHRP, l - LISP
       a - application route
       + - replicated route, % - next hop override

Gateway of last resort is 10.11.12.1 to network 0.0.0.0

S*    0.0.0.0/0 [254/0] via 10.11.12.1
      3.0.0.0/32 is subnetted, 1 subnets
O        3.3.3.3 [110/2] via 172.16.35.3, 1d22h, GigabitEthernet0/1
      4.0.0.0/32 is subnetted, 1 subnets
O E2     4.4.4.4 [110/1] via 172.16.35.3, 01:42:33, GigabitEthernet0/1
      5.0.0.0/32 is subnetted, 1 subnets
C        5.5.5.5 is directly connected, Loopback0
      6.0.0.0/32 is subnetted, 1 subnets
O E2     6.6.6.6 [110/1] via 172.16.35.3, 01:42:33, GigabitEthernet0/1
      10.0.0.0/8 is variably subnetted, 2 subnets, 2 masks
C        10.11.12.0/24 is directly connected, GigabitEthernet0/0
L        10.11.12.7/32 is directly connected, GigabitEthernet0/0
      172.16.0.0/16 is variably subnetted, 4 subnets, 2 masks
O E2     172.16.24.0/24 [110/1] via 172.16.35.3, 01:42:33, GigabitEthernet0/1
C        172.16.35.0/24 is directly connected, GigabitEthernet0/1
L        172.16.35.5/32 is directly connected, GigabitEthernet0/1
O E2     172.16.46.0/24 [110/1] via 172.16.35.3, 01:42:33, GigabitEthernet0/1
R5#show mpls for
Local      Outgoing   Prefix           Bytes Label   Outgoing   Next Hop    
Label      Label      or Tunnel Id     Switched      interface              
16         Pop Label  3.3.3.3/32       0             Gi0/1      172.16.35.3 
17         16006      6.6.6.6/32       0             Gi0/1      172.16.35.3 
18         16000      4.4.4.4/32       0             Gi0/1      172.16.35.3 
20         16002      172.16.46.0/24   0             Gi0/1      172.16.35.3 
21         16001      172.16.24.0/24   0             Gi0/1      172.16.35.3 
R5#
R5#ping mpls ipv4 6.6.6.6 255.255.255.255
Sending 5, 100-byte MPLS Echos to 6.6.6.6/32, 
     timeout is 2 seconds, send interval is 0 msec:

Codes: '!' - success, 'Q' - request not sent, '.' - timeout,
  'L' - labeled output interface, 'B' - unlabeled output interface, 
  'D' - DS Map mismatch, 'F' - no FEC mapping, 'f' - FEC mismatch,
  'M' - malformed request, 'm' - unsupported tlvs, 'N' - no label entry, 
  'P' - no rx intf label prot, 'p' - premature termination of LSP, 
  'R' - transit router, 'I' - unknown upstream index,
  'X' - unknown return code, 'x' - return code 0

Type escape sequence to abort.
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 2/6/9 ms
R5#

From the above output, we can now see that we are exchanging routes between R5 and R6 and also our LSP is complete. Lets now try to understand few concepts / configs which are used here.

Testings:

1. as-override: If we notice the above backbone carrier config, we notice that for under the neighbor config of vrf Site1, we have configured as-override. The concept goes to the design of BGP protocol loop prevention mechanism. Loop prevention in BGP is done by verifying the AS number in the AS_PATH. If the receiving router sees its own AS number in the AS_PATH for a prefix, the prefix is dropped. The receiving Router assumes that the packet was originated from its own AS and has reached the same place from where it originated initially. But this mechanism could create a problem if the customer site is having the same AS number like above. The Customer carrier AS is 65000. In order to prevent the prefixes from getting dropped, we will have to use the as-override feature. AS-Override function causes to replace the AS number of originating router with the AS number of the sending BGP router. Lets have a look at the results with and without the as-override feature.

Output on XR3 when as-override is not present:

RP/0/0/CPU0:XR3#sh bgp ipv4 labeled-unicast 
Sun Feb 23 21:15:50.763 UTC
BGP router identifier 3.3.3.3, local AS number 65000
BGP generic scan interval 60 secs
BGP table state: Active
Table ID: 0xe0000000   RD version: 14
BGP main routing table version 14
BGP scan interval 60 secs

Status codes: s suppressed, d damped, h history, * valid, > best
              i - internal, r RIB-failure, S stale, N Nexthop-discard
Origin codes: i - IGP, e - EGP, ? - incomplete
   Network            Next Hop            Metric LocPrf Weight Path
*> 3.3.3.3/32         0.0.0.0                  0         32768 i
*> 5.5.5.5/32         172.16.35.5              2         32768 ?
*> 172.16.13.0/24     0.0.0.0                  0         32768 ?
*                     172.16.13.1              0             0 100 ?
*> 172.16.24.0/24     172.16.13.1                            0 100 ?
*> 172.16.35.0/24     0.0.0.0                  0         32768 ?

Processed 5 prefixes, 6 paths
RP/0/0/CPU0:XR3#
RP/0/0/CPU0:XR3#

Output on XR3 with as-override present:

RP/0/0/CPU0:XR3#sh bgp ipv4 labeled-unicast 
Sun Feb 23 21:16:48.690 UTC
BGP router identifier 3.3.3.3, local AS number 65000
BGP generic scan interval 60 secs
BGP table state: Active
Table ID: 0xe0000000   RD version: 17
BGP main routing table version 17
BGP scan interval 60 secs

Status codes: s suppressed, d damped, h history, * valid, > best
              i - internal, r RIB-failure, S stale, N Nexthop-discard
Origin codes: i - IGP, e - EGP, ? - incomplete
   Network            Next Hop            Metric LocPrf Weight Path
*> 3.3.3.3/32         0.0.0.0                  0         32768 i
*> 4.4.4.4/32         172.16.13.1                            0 100 100 i
*> 5.5.5.5/32         172.16.35.5              2         32768 ?
*> 6.6.6.6/32         172.16.13.1                            0 100 100 ?
*> 172.16.13.0/24     0.0.0.0                  0         32768 ?
*                     172.16.13.1              0             0 100 ?
*> 172.16.24.0/24     172.16.13.1                            0 100 ?
*> 172.16.35.0/24     0.0.0.0                  0         32768 ?
*> 172.16.46.0/24     172.16.13.1                            0 100 100 ?

Processed 8 prefixes, 9 paths
RP/0/0/CPU0:XR3#

From the first output, we can see that 4.4.4.4/32, 6.6.6.6/32 and 172.16.46.0/24 were missing as they were being dropped in the Customer Carrier AS but once we have the as-override config, we are able to see those prefixes.

Coming back to our customer carrier config, Now since our LSP is completed from R5 to R6, now the next step is to provide services to the end customers which is the R7 and the R8. Since, we need to exchange vrf information between different boundaries, following the same logic of MPLS VPN, we need to have a vpnv4 neighborship between R5 and R6 and have relevant customer vrf configs at both sides. Also, lets have a different AS number for R6. Let R6 be in AS 65500.

Lets now have a look at the updated config of R5 & R6 along with R7 and R8. We will be using OSPF as the PE-CE protocol.

Config on R5:
==========
ip vrf Cust1
 rd 1:1
 route-target export 1:1
 route-target import 1:1
!
!
interface GigabitEthernet0/2
 ip vrf forwarding Cust1
 ip address 192.168.57.5 255.255.255.0
 duplex auto
 speed auto
 media-type rj45
!
router ospf 1 vrf Cust1
 redistribute bgp 65000 subnets
 network 192.168.57.5 0.0.0.0 area 0
!
router bgp 65000
 bgp router-id 5.5.5.5
 bgp log-neighbor-changes
 no bgp default ipv4-unicast
 neighbor 6.6.6.6 remote-as 65500
 neighbor 6.6.6.6 ebgp-multihop 255
 neighbor 6.6.6.6 update-source Loopback0
 !
 address-family ipv4
 exit-address-family
 !
 address-family vpnv4
  neighbor 6.6.6.6 activate
  neighbor 6.6.6.6 send-community extended
  neighbor 6.6.6.6 next-hop-unchanged
 exit-address-family
 !
 address-family ipv4 vrf Cust1
  redistribute ospf 1 match internal external 1 external 2
 exit-address-family
!

Config on R6:
==========
ip vrf Cust1
 rd 1:1
 route-target export 1:1
 route-target import 1:1
!
!
interface GigabitEthernet0/2
 ip vrf forwarding Cust1
 ip address 192.168.68.6 255.255.255.0
 duplex auto
 speed auto
 media-type rj45
!
router ospf 1 vrf Cust1
 redistribute bgp 65500 subnets
 network 192.168.68.6 0.0.0.0 area 0
!
router bgp 65500
 bgp router-id 6.6.6.6
 bgp log-neighbor-changes
 no bgp default ipv4-unicast
 neighbor 5.5.5.5 remote-as 65000
 neighbor 5.5.5.5 ebgp-multihop 255
 neighbor 5.5.5.5 update-source Loopback0
 !
 address-family ipv4
 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-unchanged
 exit-address-family
 !
 address-family ipv4 vrf Cust1
  redistribute ospf 1 match internal external 1 external 2
 exit-address-family
!

Config on R7:
==========
interface Loopback0
 ip address 7.7.7.7 255.255.255.255
!
interface GigabitEthernet0/1
 ip address 192.168.57.7 255.255.255.0
 duplex auto
 speed auto
 media-type rj45
!         
router ospf 1
 router-id 7.7.7.7
 network 7.7.7.7 0.0.0.0 area 0
 network 192.168.57.7 0.0.0.0 area 0
!

Config on R8:
==========
interface Loopback0
 ip address 8.8.8.8 255.255.255.255
!
interface GigabitEthernet0/1
 ip address 192.168.68.8 255.255.255.0
 duplex auto
 speed auto
 media-type rj45
!         
router ospf 1
 router-id 8.8.8.8
 network 8.8.8.8 0.0.0.0 area 0
 network 192.168.68.8 0.0.0.0 area 0
!

From the above config, we notice that we are having an MP-eBGP between R5 and R6. Also, we see that we have configured next-hop-unchanged. This command is being used so that the next-hop for the CE learnt routes doesn't change is it would change without this command. We can now see the routes being exchanged and the reachability is complete:

Output on R7:
==========
R7#sh ip route
Codes: L - local, C - connected, S - static, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area 
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2
       i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
       ia - IS-IS inter area, * - candidate default, U - per-user static route
       o - ODR, P - periodic downloaded static route, H - NHRP, l - LISP
       a - application route
       + - replicated route, % - next hop override

Gateway of last resort is 10.11.12.1 to network 0.0.0.0

S*    0.0.0.0/0 [254/0] via 10.11.12.1
      7.0.0.0/32 is subnetted, 1 subnets
C        7.7.7.7 is directly connected, Loopback0
      8.0.0.0/32 is subnetted, 1 subnets
O IA     8.8.8.8 [110/3] via 192.168.57.5, 00:08:58, GigabitEthernet0/1
      10.0.0.0/8 is variably subnetted, 2 subnets, 2 masks
C        10.11.12.0/24 is directly connected, GigabitEthernet0/0
L        10.11.12.9/32 is directly connected, GigabitEthernet0/0
      192.168.57.0/24 is variably subnetted, 2 subnets, 2 masks
C        192.168.57.0/24 is directly connected, GigabitEthernet0/1
L        192.168.57.7/32 is directly connected, GigabitEthernet0/1
O IA  192.168.68.0/24 [110/2] via 192.168.57.5, 00:08:58, GigabitEthernet0/1
R7#ping 8.8.8.8 so lo0
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 8.8.8.8, timeout is 2 seconds:
Packet sent with a source address of 7.7.7.7 
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 9/16/28 ms

Output on R5:
==========
R5#sh bgp vpnv4 unicast all 
BGP table version is 19, local router ID is 5.5.5.5
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal, 
              r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter, 
              x best-external, a additional-path, c RIB-compressed, 
Origin codes: i - IGP, e - EGP, ? - incomplete
RPKI validation codes: V valid, I invalid, N Not found

     Network          Next Hop            Metric LocPrf Weight Path
Route Distinguisher: 1:1 (default for vrf Cust1)
 *>  7.7.7.7/32       192.168.57.7             2         32768 ?
 *>  8.8.8.8/32       6.6.6.6                  2             0 65500 ?
 *>  192.168.57.0     0.0.0.0                  0         32768 ?
 *>  192.168.68.0     6.6.6.6                  0             0 65500 ?
R5#

From the above output, we see that the reachability is completed and we also notice that the next-hop is not changed for the prefixes learnt from R6 customer vrf Cust1. Hope this clarifies.

Testing:

2. Having same AS on Customer Carrier: What happens if we have the same AS (AS 65000) on both R5 and R6. How would the config look like and how would the route exchange happen. Lets have a look at the config first:

Config on R5:
==========
router bgp 65000
 bgp router-id 5.5.5.5
 bgp log-neighbor-changes
 no bgp default ipv4-unicast
 neighbor 6.6.6.6 remote-as 65000
 neighbor 6.6.6.6 update-source Loopback0
 !
 address-family ipv4
 exit-address-family
 !
 address-family vpnv4
  neighbor 6.6.6.6 activate
  neighbor 6.6.6.6 send-community extended
 exit-address-family
 !
 address-family ipv4 vrf Cust1
  redistribute ospf 1 match internal external 1 external 2
 exit-address-family
!

Config on R6:
==========
router bgp 65000
 bgp router-id 6.6.6.6
 bgp log-neighbor-changes
 no bgp default ipv4-unicast
 neighbor 5.5.5.5 remote-as 65000
 neighbor 5.5.5.5 update-source Loopback0
 !
 address-family ipv4
 exit-address-family
 !
 address-family vpnv4
  neighbor 5.5.5.5 activate
  neighbor 5.5.5.5 send-community extended
 exit-address-family
!

So the above is a very simple config. Lets now examine the route exchange on these routers.

Output on R5:
==========
R5#show bgp vpnv4 unicast all 
BGP table version is 7, local router ID is 5.5.5.5
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal, 
              r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter, 
              x best-external, a additional-path, c RIB-compressed, 
Origin codes: i - IGP, e - EGP, ? - incomplete
RPKI validation codes: V valid, I invalid, N Not found

     Network          Next Hop            Metric LocPrf Weight Path
Route Distinguisher: 1:1 (default for vrf Cust1)
 *>  7.7.7.7/32       192.168.57.7             2         32768 ?
 *>i 8.8.8.8/32       6.6.6.6                  2    100      0 ?
 *>  192.168.57.0     0.0.0.0                  0         32768 ?
 *>i 192.168.68.0     6.6.6.6                  0    100      0 ?
R5#

Output on R6:
==========
R6#show bgp vpnv4 unicast all
BGP table version is 7, local router ID is 6.6.6.6
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal, 
              r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter, 
              x best-external, a additional-path, c RIB-compressed, 
Origin codes: i - IGP, e - EGP, ? - incomplete
RPKI validation codes: V valid, I invalid, N Not found

     Network          Next Hop            Metric LocPrf Weight Path
Route Distinguisher: 1:1 (default for vrf Cust1)
 *>i 7.7.7.7/32       5.5.5.5                  2    100      0 ?
 *>  8.8.8.8/32       192.168.68.8             2         32768 ?
 *>i 192.168.57.0     5.5.5.5                  0    100      0 ?
 *>  192.168.68.0     0.0.0.0                  0         32768 ?
R6#

Thus, now we have seen that how the route-exchange will occur if the AS are same on both the sides. 

Hope this post was useful

Feel free to reach out if you have any queries.

Cheers...!!!

Comments (1) -

  • Valentine Wolslegel

    3/31/2014 7:54:39 AM |

    Hello,

Comments are closed