MPLS Integrators Blog

To content | To menu | To search

Tag - Juniper

Entries feed - Comments feed

Friday 18 September 2015

Interprovider Layer 3 VPN - Option A (Juniper + Cisco)

coming soon....

Interprovider Layer 3 VPN - Option B (Juniper)

In this post we will explain Juniper version of configuration for Inter-AS MPLS Option B that was defined in RFC4364.

Configuration

Configuration Option B on Juniper is pretty straight forward. Here, only the most important details will be highlighted. A detailed configuration is available at http://www.juniper.net/documentation/en_US/junos15.1/topics/example/mpls-vpn-option2-configuration.html.

Key pieces for configuring Option B are to be found under the BGP configuration.

BGP configuration

PE1

group int-bgp-65002 {
type internal;
neighbor 4.4.4.4 {
local-address 1.1.1.1;
family inet-vpn {
unicast;
}
}
}

ASBR1

group ext-65003 {
type external;
peer-as 65003;
neighbor 10.34.0.3 {
family inet-vpn {
unicast;
}
peer-as 65003;
}
}
group int-65002 {
type internal;
neighbor 1.1.1.1 {
local-address 4.4.4.4;
family inet-vpn {
unicast;
}
}
}

ASBR2

group ext-65002 {
type external;
neighbor 10.34.0.4 {
family inet-vpn {
unicast;
}
peer-as 65002;
}
}
group int-65003 {
type internal;
neighbor 5.5.5.5 {
local-address 3.3.3.3;
family inet-vpn {
unicast;
}
}
}

PE2

group int-65003 {
type internal;
neighbor 3.3.3.3 {
local-address 5.5.5.5;
family inet-vpn {
unicast;
}
}
}

Trivia

What configuration error made on ASBR1 will result in following? 1.1.1.1 is the loopback IP of PE1 and 4.4.4.4 is the loopback IP of ASBR1.

admin@PE1> show route advertising-protocol bgp 4.4.4.4 extensive
vpn-a.inet.0: 3 destinations, 3 routes (3 active, 0 holddown, 0 hidden)
* 192.0.2.0/24 (1 entry, 1 announced)
BGP group int-bgp-65002 type Internal
Route Distinguisher: 1.1.1.1:1
VPN Label: 300176
Nexthop: Self
Flags: Nexthop Change
Localpref: 100
AS path: [65002] 65101 I
Communities: target:65101:101
admin@ASBR1> show route receive-protocol bgp 1.1.1.1 extensive 
inet.0: 12 destinations, 13 routes (12 active, 0 holddown, 0 hidden)
inet.3: 2 destinations, 2 routes (2 active, 0 holddown, 0 hidden)
iso.0: 1 destinations, 1 routes (1 active, 0 holddown, 0 hidden)
mpls.0: 7 destinations, 7 routes (7 active, 0 holddown, 0 hidden)

Interprovider Layer 3 VPN - Option A (Juniper)

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)