In a next series of posts, we will explore configuration of Inter-provider L3 VPN configuration on Juniper and Cisco devices. More specifically, we will cover all three Options (A, B and C) as explained in RFC4364.

The most important excerpts of router configuration will be shown for each option and if necessary, some specific details will be discussed and explained in more details.

We start with the simplest, but least scalable, of options, Option A.

For a more detailed configuration example, see the following Juniper TechLibrary document: Example: Configuring Interprovider Layer 3 VPN Option A.

Configuration

Configuration

ASBR1

Routing instances

admin@ASBR1# show routing-instances 
ext-65003 {
instance-type vrf;
interface em0.34;
route-distinguisher 100.4.4.4:1;
vrf-target target:65101:101;
protocols {
bgp {
group ext-65003 {
neighbor 10.34.0.3 {
local-address 10.34.0.4;
family inet {
unicast;
}
peer-as 65003;
}
}
}
}
}

Route verification

admin@ASBR1# run show route advertising-protocol bgp 10.34.0.3 extensive    
ext-65003.inet.0: 4 destinations, 4 routes (4 active, 0 holddown, 0 hidden)
* 192.0.2.0/24 (1 entry, 1 announced)
BGP group ext-65003 type External
Nexthop: Self
AS path: [65002] 65101 I
Communities: target:65101:101
admin@ASBR1# run show route table bgp.l3vpn.0 
bgp.l3vpn.0: 1 destinations, 1 routes (1 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both
100.1.1.1:1:192.0.2.0/24
*[BGP/170] 00:15:45, localpref 100, from 100.1.1.1
AS path: 65101 I, validation-state: unverified
> to 10.24.0.2 via em0.24, Push 300608, Push 300256(top)
admin@ASBR1# run show route table ext-65003.inet.0 
ext-65003.inet.0: 4 destinations, 4 routes (4 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both
10.34.0.0/24 *[Direct/0] 01:59:30
> via em0.34
10.34.0.4/32 *[Local/0] 01:59:30
Local via em0.34
192.0.2.0/24 *[BGP/170] 00:21:30, localpref 100, from 100.1.1.1
AS path: 65101 I, validation-state: unverified
> to 10.24.0.2 via em0.24, Push 300608, Push 300256(top)
198.51.100.0/24 *[BGP/170] 00:21:07, localpref 100
AS path: 65003 65101 I, validation-state: unverified
> to 10.34.0.3 via em0.34

ASBR2

Routing instances

admin@ASBR2# show routing-instances                                                                                  
ext-65002 {
instance-type vrf;
interface em0.34;
route-distinguisher 100.3.3.3:1;
vrf-target target:65101:101;
protocols {
bgp {
group ext-65002 {
neighbor 10.34.0.4 {
local-address 10.34.0.3;
family inet {
unicast;
}
peer-as 65002;
}
}
}
}
}

Route verification

admin@ASBR2# run show route advertising-protocol bgp 10.34.0.4 extensive    
ext-65002.inet.0: 4 destinations, 4 routes (4 active, 0 holddown, 0 hidden)
* 198.51.100.0/24 (1 entry, 1 announced)
BGP group ext-65002 type External
Nexthop: Self
AS path: [65003] 65101 I
Communities: target:65101:101
admin@ASBR2# run show route table bgp.l3vpn.0                               
bgp.l3vpn.0: 1 destinations, 1 routes (1 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both
100.5.5.5:1:198.51.100.0/24
*[BGP/170] 00:23:01, localpref 100, from 100.5.5.5
AS path: 65101 I, validation-state: unverified
> to 10.36.0.6 via em0.36, Push 303520, Push 299824(top)
admin@ASBR2# run show route table ext-65002.inet.0 
ext-65002.inet.0: 4 destinations, 4 routes (4 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both
10.34.0.0/24 *[Direct/0] 00:28:09
> via em0.34
10.34.0.3/32 *[Local/0] 00:28:09
Local via em0.34
192.0.2.0/24 *[BGP/170] 00:23:57, localpref 100
AS path: 65002 65101 I, validation-state: unverified
> to 10.34.0.4 via em0.34
198.51.100.0/24 *[BGP/170] 00:23:35, localpref 100, from 100.5.5.5
AS path: 65101 I, validation-state: unverified
> to 10.36.0.6 via em0.36, Push 303520, Push 299824(top)