What happens if you create a connection between two non-backbone OSPF areas that already connect to area 0? We sometimes call this a backdoor link. Connecting two non-backbone areas was covered in part 1.
Will routes be shared between the two areas? Or will no routes be shared and traffic will travel via the backbone area?
What happens when we lab this out? We’ll look at both Junos and IOS-XE.
Before you read on, I want you to think about the following questions:
- Will routes be shared over the backdoor link?
- Will this behavior differ between Junos and IOS-XE?
The Juniper Lab
The lab is going to be set up as per the following diagram. All the OSPF configurations will be completed except the backdoor connection between areas 1 and 3.

- A mix of device types is used to add a little variety
- R4, R5, and R3 will be in area 0. Their loopback interfaces will be in this area too.
- R1 and R2 will be in areas 1 and 3 respectively.
- We’re using plain areas, no stub or NSSA area types.
Basic Configuration
The OSPF configuration for the devices is as follows:
R1
protocols {
ospf {
area 0.0.0.1 {
interface lo0.0 {
passive;
}
interface ge-0/0/1.0;
}
reference-bandwidth 100g;
}
}
R2
protocols {
ospf {
area 0.0.0.3 {
interface lo0.0 {
passive;
}
interface xe-0/0/1.0;
}
reference-bandwidth 100g;
}
}
R3
protocols {
ospf {
area 0.0.0.0 {
interface lo0.0 {
passive;
}
interface ge-0/0/1.0;
}
area 0.0.0.3 {
interface ge-0/0/0.0;
}
reference-bandwidth 100g;
}
}
R4
protocols {
ospf {
area 0.0.0.0 {
interface lo0.0 {
passive;
}
interface ge-0/0/0.0;
}
area 0.0.0.1 {
interface ge-0/0/1.0;
}
reference-bandwidth 100g;
}
}
R5
protocols {
ospf {
area 0.0.0.0 {
interface lo0.0 {
passive;
}
interface ge-0/0/0.0;
interface ge-0/0/1.0;
}
reference-bandwidth 100g;
}
}
Verification Of Basic Connectivity
With the basic connectivity and configuration in place, we can now perform a few simple checks.
Let’s look at the route table and OSPF database on R5
lab@vmx-R5> show route protocol ospf
inet.0: 14 destinations, 14 routes (14 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both
10.100.2.0/24 *[OSPF/10] 00:04:51, metric 110
> to 10.100.4.1 via ge-0/0/1.0
10.100.3.0/24 *[OSPF/10] 00:05:12, metric 200
> to 10.100.5.1 via ge-0/0/0.0
172.16.0.1/32 *[OSPF/10] 00:05:12, metric 200
> to 10.100.5.1 via ge-0/0/0.0
172.16.0.2/32 *[OSPF/10] 00:04:51, metric 110
> to 10.100.4.1 via ge-0/0/1.0
172.16.0.3/32 *[OSPF/10] 00:04:51, metric 100
> to 10.100.4.1 via ge-0/0/1.0
172.16.0.4/32 *[OSPF/10] 00:05:12, metric 100
> to 10.100.5.1 via ge-0/0/0.0
224.0.0.5/32 *[OSPF/10] 01:01:38, metric 1
MultiRecv
inet6.0: 9 destinations, 9 routes (9 active, 0 holddown, 0 hidden)
lab@vmx-R5> show ospf database
OSPF database, Area 0.0.0.0
Type ID Adv Rtr Seq Age Opt Cksum Len
Router 172.16.0.3 172.16.0.3 0x80000003 295 0x22 0x10df 48
Router 172.16.0.4 172.16.0.4 0x80000004 316 0x22 0x840b 48
Router *172.16.0.5 172.16.0.5 0x80000004 294 0x22 0xe649 60
Network *10.100.4.2 172.16.0.5 0x80000001 294 0x22 0x3949 32
Network *10.100.5.2 172.16.0.5 0x80000001 315 0x22 0x3c44 32
Summary 10.100.2.0 172.16.0.3 0x80000002 295 0x22 0xf908 28
Summary 10.100.3.0 172.16.0.4 0x80000003 295 0x22 0x6e36 28
Summary 172.16.0.1 172.16.0.4 0x80000001 376 0x22 0x3b1f 28
Summary 172.16.0.2 172.16.0.3 0x80000001 336 0x22 0xaf05 28
lab@vmx-R5>
We have routes to the loopback interfaces of all the other routers. And we can see summary LSA’s in the OSPF database for routes from areas 1 and 3.
Next, we will look at R1. In particular, we are interested in the path it will take to reach the loopback of R2. Remember the routers are in different areas and currently the direct connection between them is not up or configured in OSPF.
lab@vsrx-R1> show route protocol ospf
inet.0: 14 destinations, 14 routes (14 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both
10.100.2.0/24 *[OSPF/10] 00:07:53, metric 220
> to 10.100.3.2 via ge-0/0/1.0
10.100.4.0/24 *[OSPF/10] 00:08:14, metric 210
> to 10.100.3.2 via ge-0/0/1.0
10.100.5.0/24 *[OSPF/10] 00:53:17, metric 110
> to 10.100.3.2 via ge-0/0/1.0
172.16.0.2/32 *[OSPF/10] 00:07:53, metric 220
> to 10.100.3.2 via ge-0/0/1.0
172.16.0.3/32 *[OSPF/10] 00:07:53, metric 210
> to 10.100.3.2 via ge-0/0/1.0
172.16.0.4/32 *[OSPF/10] 00:53:17, metric 10
> to 10.100.3.2 via ge-0/0/1.0
172.16.0.5/32 *[OSPF/10] 00:08:14, metric 110
> to 10.100.3.2 via ge-0/0/1.0
224.0.0.5/32 *[OSPF/10] 00:54:31, metric 1
MultiRecv
inet6.0: 8 destinations, 8 routes (8 active, 0 holddown, 0 hidden)
lab@vsrx-R1> show ospf database
OSPF database, Area 0.0.0.1
Type ID Adv Rtr Seq Age Opt Cksum Len
Router *172.16.0.1 172.16.0.1 0x80000005 203 0x22 0xdc1b 48
Router 172.16.0.4 172.16.0.4 0x80000005 138 0x22 0x80e2 36
Network *10.100.3.1 172.16.0.1 0x80000002 207 0x22 0x4a40 32
Summary 10.100.2.0 172.16.0.4 0x80000001 480 0x22 0xcd6b 28
Summary 10.100.4.0 172.16.0.4 0x80000002 480 0x22 0x51ee 28
Summary 10.100.5.0 172.16.0.4 0x80000007 480 0x22 0x504e 28
Summary 172.16.0.2 172.16.0.4 0x80000001 480 0x22 0x8169 28
Summary 172.16.0.3 172.16.0.4 0x80000001 480 0x22 0x13e0 28
Summary 172.16.0.4 172.16.0.4 0x80000003 561 0x22 0x2d8c 28
Summary 172.16.0.5 172.16.0.4 0x80000001 500 0x22 0x1343 28
lab@vsrx-R1> traceroute 172.16.0.2 source 172.16.0.1
traceroute to 172.16.0.2 (172.16.0.2) from 172.16.0.1, 30 hops max, 52 byte packets
1 10.100.3.2 (10.100.3.2) 3.217 ms 2.677 ms 2.652 ms
2 10.100.5.2 (10.100.5.2) 5.869 ms 3.894 ms 5.336 ms
3 10.100.4.1 (10.100.4.1) 35.232 ms 5.992 ms 5.789 ms
4 172.16.0.2 (172.16.0.2) 112.995 ms 202.890 ms 210.678 ms
lab@vsrx-R1>
In the database output, the summary for 172.16.0.1 is advertised by 172.16.0.4.
We can repeat the above commands on R2 and confirm its behavior.
{master:0}
lab@vqfx-R2> show route protocol ospf
inet.0: 16 destinations, 16 routes (16 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both
10.100.3.0/24 *[OSPF/10] 00:09:17, metric 220
> to 10.100.2.2 via xe-0/0/1.0
10.100.4.0/24 *[OSPF/10] 00:35:41, metric 20
> to 10.100.2.2 via xe-0/0/1.0
10.100.5.0/24 *[OSPF/10] 00:09:17, metric 120
> to 10.100.2.2 via xe-0/0/1.0
172.16.0.1/32 *[OSPF/10] 00:09:17, metric 220
> to 10.100.2.2 via xe-0/0/1.0
172.16.0.3/32 *[OSPF/10] 00:35:41, metric 10
> to 10.100.2.2 via xe-0/0/1.0
172.16.0.4/32 *[OSPF/10] 00:09:17, metric 120
> to 10.100.2.2 via xe-0/0/1.0
172.16.0.5/32 *[OSPF/10] 00:09:17, metric 20
> to 10.100.2.2 via xe-0/0/1.0
224.0.0.5/32 *[OSPF/10] 00:35:51, metric 1
MultiRecv
inet6.0: 8 destinations, 8 routes (8 active, 0 holddown, 0 hidden)
{master:0}
lab@vqfx-R2> show ospf database
OSPF database, Area 0.0.0.3
Type ID Adv Rtr Seq Age Opt Cksum Len
Router *172.16.0.2 172.16.0.2 0x80000002 2149 0x22 0x7f1 48
Router 172.16.0.3 172.16.0.3 0x80000005 32 0x22 0x2a96 36
Network 10.100.2.2 172.16.0.3 0x80000002 279 0x22 0x3751 32
Summary 10.100.3.0 172.16.0.3 0x80000001 562 0x22 0xc870 28
Summary 10.100.4.0 172.16.0.3 0x80000006 562 0x22 0xdb20 28
Summary 10.100.5.0 172.16.0.3 0x80000001 562 0x22 0xc6d4 28
Summary 172.16.0.1 172.16.0.3 0x80000001 562 0x22 0x915b 28
Summary 172.16.0.3 172.16.0.3 0x80000003 603 0x22 0x3d7e 28
Summary 172.16.0.4 172.16.0.3 0x80000001 562 0x22 0x87c6 28
Summary 172.16.0.5 172.16.0.3 0x80000001 562 0x22 0x9120 28
{master:0}
lab@vqfx-R2> traceroute 172.16.0.1 source 172.16.0.2
traceroute to 172.16.0.1 (172.16.0.1) from 172.16.0.2, 30 hops max, 40 byte packets
1 10.100.2.2 (10.100.2.2) 108.519 ms 192.197 ms 206.526 ms
2 10.100.4.2 (10.100.4.2) 197.529 ms 199.467 ms 204.317 ms
3 10.100.5.1 (10.100.5.1) 204.517 ms 194.561 ms 202.367 ms
4 172.16.0.1 (172.16.0.1) 203.783 ms 200.459 ms 201.650 ms
{master:0}
lab@vqfx-R2>
This also looks as we expect, with the traceroute showing the path taken is via area 0.
Configuring Direct Connection Between Area 1 and Area 3
To attempt to make this work, either R1 or R2 will need to be configured with an additional area to match the other device.
In this case, I’ve chosen to do that on R1. The configurations now look like this:
R1
protocols {
ospf {
area 0.0.0.1 {
interface lo0.0 {
passive;
}
interface ge-0/0/1.0;
}
area 0.0.0.3 {
interface ge-0/0/0.0;
}
reference-bandwidth 100g;
}
}
R2
protocols {
ospf {
area 0.0.0.3 {
interface lo0.0 {
passive;
}
interface xe-0/0/1.0;
interface xe-0/0/0.0;
}
reference-bandwidth 100g;
}
}
Verification of R1 and R2
First, let’s check on R1. We will repeat the earlier steps of showing the OSPF routes in inet.0, the OSPF database, and show a traceroute.
lab@vsrx-R1> show route protocol ospf
inet.0: 15 destinations, 15 routes (15 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both
10.100.2.0/24 *[OSPF/10] 00:00:43, metric 20
> to 10.100.1.2 via ge-0/0/0.0
10.100.4.0/24 *[OSPF/10] 00:00:43, metric 30
> to 10.100.1.2 via ge-0/0/0.0
10.100.5.0/24 *[OSPF/10] 01:00:48, metric 110
> to 10.100.3.2 via ge-0/0/1.0
172.16.0.2/32 *[OSPF/10] 00:00:43, metric 10
> to 10.100.1.2 via ge-0/0/0.0
172.16.0.3/32 *[OSPF/10] 00:00:43, metric 20
> to 10.100.1.2 via ge-0/0/0.0
172.16.0.4/32 *[OSPF/10] 01:00:48, metric 10
> to 10.100.3.2 via ge-0/0/1.0
172.16.0.5/32 *[OSPF/10] 00:00:43, metric 30
> to 10.100.1.2 via ge-0/0/0.0
224.0.0.5/32 *[OSPF/10] 01:02:02, metric 1
MultiRecv
inet6.0: 9 destinations, 9 routes (9 active, 0 holddown, 0 hidden)
lab@vsrx-R1> show ospf database
OSPF database, Area 0.0.0.1
Type ID Adv Rtr Seq Age Opt Cksum Len
Router *172.16.0.1 172.16.0.1 0x80000006 118 0x22 0xdd18 48
Router 172.16.0.4 172.16.0.4 0x80000005 599 0x22 0x80e2 36
Network *10.100.3.1 172.16.0.1 0x80000002 668 0x22 0x4a40 32
Summary *10.100.1.0 172.16.0.1 0x80000003 58 0x22 0xff4 28
Summary 10.100.1.0 172.16.0.4 0x80000001 99 0x22 0x3df2 28
Summary *10.100.2.0 172.16.0.1 0x80000001 58 0x22 0x6c8e 28
Summary 10.100.2.0 172.16.0.4 0x80000001 941 0x22 0xcd6b 28
Summary 10.100.4.0 172.16.0.4 0x80000003 119 0x22 0x4fef 28
Summary 10.100.5.0 172.16.0.4 0x80000008 119 0x22 0x4e4f 28
Summary *172.16.0.2 172.16.0.1 0x80000001 58 0x22 0xbbfa 28
Summary 172.16.0.2 172.16.0.4 0x80000001 941 0x22 0x8169 28
Summary 172.16.0.3 172.16.0.4 0x80000001 941 0x22 0x13e0 28
Summary 172.16.0.4 172.16.0.4 0x80000004 67 0x22 0x2b8d 28
Summary 172.16.0.5 172.16.0.4 0x80000001 961 0x22 0x1343 28
OSPF database, Area 0.0.0.3
Type ID Adv Rtr Seq Age Opt Cksum Len
Router *172.16.0.1 172.16.0.1 0x80000004 58 0x22 0x28a0 36
Router 172.16.0.2 172.16.0.2 0x80000005 59 0x22 0x37c2 60
Router 172.16.0.3 172.16.0.3 0x80000005 411 0x22 0x2a96 36
Network 10.100.1.2 172.16.0.2 0x80000001 59 0x22 0x325b 32
Network 10.100.2.2 172.16.0.3 0x80000002 658 0x22 0x3751 32
Summary *10.100.3.0 172.16.0.1 0x80000002 58 0x22 0xfa08 28
Summary 10.100.3.0 172.16.0.3 0x80000001 941 0x22 0xc870 28
Summary 10.100.4.0 172.16.0.3 0x80000007 60 0x22 0xd921 28
Summary 10.100.5.0 172.16.0.3 0x80000002 60 0x22 0xc4d5 28
Summary *172.16.0.1 172.16.0.1 0x80000001 118 0x22 0x6160 28
Summary 172.16.0.1 172.16.0.3 0x80000001 941 0x22 0x915b 28
Summary 172.16.0.3 172.16.0.3 0x80000003 982 0x22 0x3d7e 28
Summary 172.16.0.4 172.16.0.3 0x80000001 941 0x22 0x87c6 28
Summary 172.16.0.5 172.16.0.3 0x80000001 941 0x22 0x9120 28
lab@vsrx-R1> traceroute 172.16.0.2 source 172.16.0.1
traceroute to 172.16.0.2 (172.16.0.2) from 172.16.0.1, 30 hops max, 52 byte packets
1 172.16.0.2 (172.16.0.2) 108.866 ms 206.099 ms 207.507 ms
lab@vsrx-R1>
In the database output for area 1, an additional summary for 172.16.0.2 is now advertised by R1 itself, 172.16.0.1. It also has the Router LSA for R2 directly from area3.
Now let’s repeat that on R2.
{master:0}
lab@vqfx-R2> show route protocol ospf
inet.0: 17 destinations, 17 routes (17 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both
10.100.3.0/24 *[OSPF/10] 00:03:44, metric 20
> to 10.100.1.1 via xe-0/0/0.0
10.100.4.0/24 *[OSPF/10] 00:44:50, metric 20
> to 10.100.2.2 via xe-0/0/1.0
10.100.5.0/24 *[OSPF/10] 00:18:26, metric 120
> to 10.100.2.2 via xe-0/0/1.0
172.16.0.1/32 *[OSPF/10] 00:03:44, metric 10
> to 10.100.1.1 via xe-0/0/0.0
172.16.0.3/32 *[OSPF/10] 00:44:50, metric 10
> to 10.100.2.2 via xe-0/0/1.0
172.16.0.4/32 *[OSPF/10] 00:18:26, metric 120
> to 10.100.2.2 via xe-0/0/1.0
172.16.0.5/32 *[OSPF/10] 00:18:27, metric 20
> to 10.100.2.2 via xe-0/0/1.0
224.0.0.5/32 *[OSPF/10] 00:45:01, metric 1
MultiRecv
inet6.0: 9 destinations, 9 routes (9 active, 0 holddown, 0 hidden)
{master:0}
lab@vqfx-R2> show ospf database
OSPF database, Area 0.0.0.3
Type ID Adv Rtr Seq Age Opt Cksum Len
Router 172.16.0.1 172.16.0.1 0x80000004 228 0x22 0x28a0 36
Router *172.16.0.2 172.16.0.2 0x80000005 227 0x22 0x37c2 60
Router 172.16.0.3 172.16.0.3 0x80000005 580 0x22 0x2a96 36
Network *10.100.1.2 172.16.0.2 0x80000001 227 0x22 0x325b 32
Network 10.100.2.2 172.16.0.3 0x80000002 827 0x22 0x3751 32
Summary 10.100.3.0 172.16.0.1 0x80000002 229 0x22 0xfa08 28
Summary 10.100.3.0 172.16.0.3 0x80000001 1110 0x22 0xc870 28
Summary 10.100.4.0 172.16.0.3 0x80000007 228 0x22 0xd921 28
Summary 10.100.5.0 172.16.0.3 0x80000002 228 0x22 0xc4d5 28
Summary 172.16.0.1 172.16.0.1 0x80000001 289 0x22 0x6160 28
Summary 172.16.0.1 172.16.0.3 0x80000001 1110 0x22 0x915b 28
Summary 172.16.0.3 172.16.0.3 0x80000004 86 0x22 0x3b7f 28
Summary 172.16.0.4 172.16.0.3 0x80000001 1110 0x22 0x87c6 28
Summary 172.16.0.5 172.16.0.3 0x80000001 1110 0x22 0x9120 28
{master:0}
lab@vqfx-R2> traceroute 172.16.0.1 source 172.16.0.2
traceroute to 172.16.0.1 (172.16.0.1) from 172.16.0.2, 30 hops max, 40 byte packets
1 172.16.0.1 (172.16.0.1) 110.391 ms 196.835 ms 202.827 ms
{master:0}
lab@vqfx-R2>
Again we see an additional summary in area 3, generated by R1 for the R1 loopback
It would appear, on Junos at least, that directly connecting two areas will allow them to directly share routes, even when the areas have a connection via area 0 already.
This isn’t too surprising given the behavior we saw in part 1.
Perhaps the interesting question is what R4 thinks of this situation. How do you think R4 will route traffic to R2’s loopback?
lab@vmx-R4> show route protocol ospf
inet.0: 15 destinations, 15 routes (15 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both
10.100.1.0/24 *[OSPF/10] 00:14:47, metric 220
> to 10.100.5.2 via ge-0/0/0.0
10.100.2.0/24 *[OSPF/10] 00:28:49, metric 210
> to 10.100.5.2 via ge-0/0/0.0
10.100.4.0/24 *[OSPF/10] 00:29:10, metric 200
> to 10.100.5.2 via ge-0/0/0.0
172.16.0.1/32 *[OSPF/10] 01:14:11, metric 100
> to 10.100.3.1 via ge-0/0/1.0
172.16.0.2/32 *[OSPF/10] 00:28:49, metric 210
> to 10.100.5.2 via ge-0/0/0.0
172.16.0.3/32 *[OSPF/10] 00:28:49, metric 200
> to 10.100.5.2 via ge-0/0/0.0
172.16.0.5/32 *[OSPF/10] 00:29:10, metric 100
> to 10.100.5.2 via ge-0/0/0.0
224.0.0.5/32 *[OSPF/10] 01:22:33, metric 1
MultiRecv
inet6.0: 9 destinations, 9 routes (9 active, 0 holddown, 0 hidden)
lab@vmx-R4> show ospf database
OSPF database, Area 0.0.0.0
Type ID Adv Rtr Seq Age Opt Cksum Len
Router 172.16.0.3 172.16.0.3 0x80000004 473 0x22 0xee0 48
Router *172.16.0.4 172.16.0.4 0x80000005 593 0x22 0x820c 48
Router 172.16.0.5 172.16.0.5 0x80000004 1734 0x22 0xe649 60
Network 10.100.4.2 172.16.0.5 0x80000001 1734 0x22 0x3949 32
Network 10.100.5.2 172.16.0.5 0x80000002 605 0x22 0x3a45 32
Summary 10.100.1.0 172.16.0.3 0x80000002 853 0x22 0x698f 28
Summary 10.100.2.0 172.16.0.3 0x80000003 853 0x22 0xf709 28
Summary *10.100.3.0 172.16.0.4 0x80000004 912 0x22 0x6c37 28
Summary *172.16.0.1 172.16.0.4 0x80000002 1125 0x22 0x3920 28
Summary 172.16.0.2 172.16.0.3 0x80000002 958 0x22 0xad06 28
OSPF database, Area 0.0.0.1
Type ID Adv Rtr Seq Age Opt Cksum Len
Router 172.16.0.1 172.16.0.1 0x80000006 913 0x22 0xdd18 48
Router *172.16.0.4 172.16.0.4 0x80000005 1391 0x22 0x80e2 36
Network 10.100.3.1 172.16.0.1 0x80000003 284 0x22 0x4841 32
Summary 10.100.1.0 172.16.0.1 0x80000003 852 0x22 0xff4 28
Summary *10.100.1.0 172.16.0.4 0x80000001 891 0x22 0x3df2 28
Summary 10.100.2.0 172.16.0.1 0x80000001 852 0x22 0x6c8e 28
Summary *10.100.2.0 172.16.0.4 0x80000002 96 0x22 0xcb6c 28
Summary *10.100.4.0 172.16.0.4 0x80000003 912 0x22 0x4fef 28
Summary *10.100.5.0 172.16.0.4 0x80000008 912 0x22 0x4e4f 28
Summary 172.16.0.2 172.16.0.1 0x80000001 852 0x22 0xbbfa 28
Summary *172.16.0.2 172.16.0.4 0x80000001 1733 0x22 0x8169 28
Summary *172.16.0.3 172.16.0.4 0x80000001 1733 0x22 0x13e0 28
Summary *172.16.0.4 172.16.0.4 0x80000004 859 0x22 0x2b8d 28
Summary *172.16.0.5 172.16.0.4 0x80000002 345 0x22 0x1144 28
lab@vmx-R4> traceroute 172.16.0.2 source 172.16.0.4
traceroute to 172.16.0.2 (172.16.0.2) from 172.16.0.4, 30 hops max, 52 byte packets
1 10.100.5.2 (10.100.5.2) 6.780 ms 39.184 ms 5.123 ms
2 10.100.4.1 (10.100.4.1) 6.225 ms 4.777 ms 4.521 ms
3 172.16.0.2 (172.16.0.2) 111.669 ms 205.213 ms 199.694 ms
lab@vmx-R4>
So R4 is taking the path via R5 and R3 to reach R2, rather than simply going via R1.
IOS-XE Lab
The lab is going to be set up similarly to the Juniper lab. All the OSPF configurations will be completed except the backdoor connection between areas 1 and 3.

- The devices are CSR1000v’s running IOS-XE 16.06.06
- R4, R5, and R3 will be in area 0. Their loopback interfaces will be in this area too.
- R1 and R2 will be in areas 1 and 3 respectively.
- We’re using plain areas, no stub or NSSA area types.
Basic Configuration
The OSPF configuration for the devices is as follows:
R1
interface Loopback0
ip address 172.16.0.1 255.255.255.255
!
interface GigabitEthernet3
ip address 10.100.3.1 255.255.255.0
negotiation auto
no mop enabled
no mop sysid
!
router ospf 1
network 10.100.3.0 0.0.0.255 area 1
network 172.16.0.1 0.0.0.0 area 1
R2
interface Loopback0
ip address 172.16.0.2 255.255.255.255
!
interface GigabitEthernet3
ip address 10.100.2.1 255.255.255.0
negotiation auto
no mop enabled
no mop sysid
!
router ospf 1
network 10.100.2.0 0.0.0.255 area 3
network 172.16.0.2 0.0.0.0 area 3
R3
interface Loopback0
ip address 172.16.0.3 255.255.255.255
!
interface GigabitEthernet2
ip address 10.100.4.1 255.255.255.0
negotiation auto
no mop enabled
no mop sysid
!
interface GigabitEthernet3
ip address 10.100.2.2 255.255.255.0
negotiation auto
no mop enabled
no mop sysid
!
router ospf 1
network 10.100.2.0 0.0.0.255 area 3
network 10.100.4.0 0.0.0.255 area 0
network 172.16.0.3 0.0.0.0 area 0
R4
interface Loopback0
ip address 172.16.0.4 255.255.255.255
!
interface GigabitEthernet3
ip address 10.100.3.2 255.255.255.0
negotiation auto
no mop enabled
no mop sysid
!
interface GigabitEthernet4
ip address 10.100.5.1 255.255.255.0
negotiation auto
no mop enabled
no mop sysid
!
router ospf 1
network 10.100.3.0 0.0.0.255 area 1
network 10.100.5.0 0.0.0.255 area 0
network 172.16.0.4 0.0.0.0 area 0
R5
interface Loopback0
ip address 172.16.0.5 255.255.255.255
!
interface GigabitEthernet2
ip address 10.100.4.2 255.255.255.0
negotiation auto
no mop enabled
no mop sysid
!
interface GigabitEthernet4
ip address 10.100.5.2 255.255.255.0
negotiation auto
no mop enabled
no mop sysid
!
router ospf 1
network 10.100.4.0 0.0.0.255 area 0
network 10.100.5.0 0.0.0.255 area 0
network 172.16.0.5 0.0.0.0 area 0
Verification Of Basic Connectivity
Time to perform a few simple checks and make sure things look like they should.
Let’s look at the route table and OSPF database on R5
CSR-R5#show ip route ospf
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, p - overrides from PfR
Gateway of last resort is not set
10.0.0.0/8 is variably subnetted, 8 subnets, 2 masks
O IA 10.100.2.0/24 [110/2] via 10.100.4.1, 00:12:43, GigabitEthernet2
O IA 10.100.3.0/24 [110/2] via 10.100.5.1, 00:13:55, GigabitEthernet4
172.16.0.0/32 is subnetted, 5 subnets
O IA 172.16.0.1 [110/3] via 10.100.5.1, 00:13:55, GigabitEthernet4
O IA 172.16.0.2 [110/3] via 10.100.4.1, 00:11:56, GigabitEthernet2
O 172.16.0.3 [110/2] via 10.100.4.1, 00:12:44, GigabitEthernet2
O 172.16.0.4 [110/2] via 10.100.5.1, 00:13:55, GigabitEthernet4
CSR-R5#show ip ospf database
OSPF Router with ID (172.16.0.5) (Process ID 1)
Router Link States (Area 0)
Link ID ADV Router Age Seq# Checksum Link count
172.16.0.3 172.16.0.3 769 0x80000004 0x005F97 2
172.16.0.4 172.16.0.4 844 0x80000004 0x007181 2
172.16.0.5 172.16.0.5 771 0x80000006 0x00FFF4 3
Net Link States (Area 0)
Link ID ADV Router Age Seq# Checksum
10.100.4.2 172.16.0.5 771 0x80000001 0x003949
10.100.5.1 172.16.0.4 844 0x80000001 0x005032
Summary Net Link States (Area 0)
Link ID ADV Router Age Seq# Checksum
10.100.2.0 172.16.0.3 771 0x80000001 0x00A16A
10.100.3.0 172.16.0.4 899 0x80000001 0x009079
172.16.0.1 172.16.0.4 899 0x80000001 0x006359
172.16.0.2 172.16.0.3 725 0x80000001 0x005F5D
CSR-R5#
We have routes to the loopback interfaces of the other routers. We can also see summary LSA’s in the OSPF database for areas 1 and 3.
Next, we will look at R1. We have not yet enabled the direct link to R2 in OSPF. Take note of what path R1 uses to reach R2’s loopback.
CSR-R1#show ip route ospf
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, p - overrides from PfR
Gateway of last resort is not set
10.0.0.0/8 is variably subnetted, 7 subnets, 2 masks
O IA 10.100.2.0/24 [110/4] via 10.100.3.2, 00:15:04, GigabitEthernet3
O IA 10.100.4.0/24 [110/3] via 10.100.3.2, 00:16:16, GigabitEthernet3
O IA 10.100.5.0/24 [110/2] via 10.100.3.2, 00:17:12, GigabitEthernet3
172.16.0.0/32 is subnetted, 5 subnets
O IA 172.16.0.2 [110/5] via 10.100.3.2, 00:14:17, GigabitEthernet3
O IA 172.16.0.3 [110/4] via 10.100.3.2, 00:15:04, GigabitEthernet3
O IA 172.16.0.4 [110/2] via 10.100.3.2, 00:17:12, GigabitEthernet3
O IA 172.16.0.5 [110/3] via 10.100.3.2, 00:16:16, GigabitEthernet3
CSR-R1#show ip ospf database
OSPF Router with ID (172.16.0.1) (Process ID 1)
Router Link States (Area 1)
Link ID ADV Router Age Seq# Checksum Link count
172.16.0.1 172.16.0.1 1035 0x80000007 0x001EDF 2
172.16.0.4 172.16.0.4 1028 0x80000006 0x008144 1
Net Link States (Area 1)
Link ID ADV Router Age Seq# Checksum
10.100.3.1 172.16.0.1 1035 0x80000001 0x004C3F
Summary Net Link States (Area 1)
Link ID ADV Router Age Seq# Checksum
10.100.2.0 172.16.0.4 908 0x80000001 0x00AF59
10.100.4.0 172.16.0.4 981 0x80000001 0x008F78
10.100.5.0 172.16.0.4 1036 0x80000001 0x007A8D
172.16.0.2 172.16.0.4 862 0x80000001 0x006D4C
172.16.0.3 172.16.0.4 908 0x80000001 0x005960
172.16.0.4 172.16.0.4 1036 0x80000001 0x003B7F
172.16.0.5 172.16.0.4 981 0x80000001 0x003B7D
CSR-R1#traceroute 172.16.0.2 source 172.16.0.1
Type escape sequence to abort.
Tracing the route to 172.16.0.2
VRF info: (vrf in name/id, vrf out name/id)
1 10.100.3.2 2 msec 2 msec 2 msec
2 10.100.5.2 2 msec 2 msec 1 msec
3 10.100.4.1 3 msec 3 msec 4 msec
4 10.100.2.1 5 msec * 5 msec
CSR-R1#
We can repeat this on R2.
CSR-R2#show ip route ospf
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, p - overrides from PfR
Gateway of last resort is not set
10.0.0.0/8 is variably subnetted, 7 subnets, 2 masks
O IA 10.100.3.0/24 [110/4] via 10.100.2.2, 00:17:14, GigabitEthernet3
O IA 10.100.4.0/24 [110/2] via 10.100.2.2, 00:17:14, GigabitEthernet3
O IA 10.100.5.0/24 [110/3] via 10.100.2.2, 00:17:14, GigabitEthernet3
172.16.0.0/32 is subnetted, 5 subnets
O IA 172.16.0.1 [110/5] via 10.100.2.2, 00:17:14, GigabitEthernet3
O IA 172.16.0.3 [110/2] via 10.100.2.2, 00:17:14, GigabitEthernet3
O IA 172.16.0.4 [110/4] via 10.100.2.2, 00:17:14, GigabitEthernet3
O IA 172.16.0.5 [110/3] via 10.100.2.2, 00:17:14, GigabitEthernet3
CSR-R2#show ip ospf database
OSPF Router with ID (172.16.0.2) (Process ID 1)
Router Link States (Area 3)
Link ID ADV Router Age Seq# Checksum Link count
172.16.0.2 172.16.0.2 1028 0x80000004 0x0006F8 2
172.16.0.3 172.16.0.3 1038 0x80000003 0x008B40 1
Net Link States (Area 3)
Link ID ADV Router Age Seq# Checksum
10.100.2.2 172.16.0.3 1038 0x80000001 0x003950
Summary Net Link States (Area 3)
Link ID ADV Router Age Seq# Checksum
10.100.3.0 172.16.0.3 1084 0x80000001 0x00AA5E
10.100.4.0 172.16.0.3 1084 0x80000001 0x008B7E
10.100.5.0 172.16.0.3 1084 0x80000001 0x008A7D
172.16.0.1 172.16.0.3 1084 0x80000001 0x007D3E
172.16.0.3 172.16.0.3 1084 0x80000001 0x004B71
172.16.0.4 172.16.0.3 1084 0x80000001 0x005564
172.16.0.5 172.16.0.3 1084 0x80000001 0x004178
CSR-R2#traceroute 172.16.0.1 source 172.16.0.2
Type escape sequence to abort.
Tracing the route to 172.16.0.1
VRF info: (vrf in name/id, vrf out name/id)
1 10.100.2.2 2 msec 1 msec 2 msec
2 10.100.4.2 2 msec 3 msec 2 msec
3 10.100.5.1 3 msec 5 msec 3 msec
4 10.100.3.1 5 msec * 4 msec
CSR-R2#
We can see that Area 3 has a bunch of summaries for links in areas 0 and 1. The traceroute is going via area 0 which is to be expected at this stage.
Configuring Direct Connection Between Area 1 and Area 3
R1 or R2 will need to be configured with an additional area to match the other device.
In this case, I’ve chosen to do that on R1. The configurations now look like this:
R1
interface Loopback0
ip address 172.16.0.1 255.255.255.255
!
interface GigabitEthernet2
ip address 10.100.1.1 255.255.255.0
negotiation auto
no mop enabled
no mop sysid
!
interface GigabitEthernet3
ip address 10.100.3.1 255.255.255.0
negotiation auto
no mop enabled
no mop sysid
!
router ospf 1
network 10.100.1.0 0.0.0.255 area 3
network 10.100.3.0 0.0.0.255 area 1
network 172.16.0.1 0.0.0.0 area 1
R2
interface Loopback0
ip address 172.16.0.2 255.255.255.255
!
interface GigabitEthernet2
ip address 10.100.1.2 255.255.255.0
negotiation auto
no mop enabled
no mop sysid
!
interface GigabitEthernet3
ip address 10.100.2.1 255.255.255.0
negotiation auto
no mop enabled
no mop sysid
!
router ospf 1
network 10.100.1.0 0.0.0.255 area 3
network 10.100.2.0 0.0.0.255 area 3
network 172.16.0.2 0.0.0.0 area 3
Verification of R1 and R2
First, let’s check on R1. We will repeat the earlier steps of showing the OSPF routes, the OSPF database, and show a traceroute.
CSR-R1#show ip route ospf
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, p - overrides from PfR
Gateway of last resort is not set
10.0.0.0/8 is variably subnetted, 9 subnets, 2 masks
O 10.100.2.0/24 [110/2] via 10.100.1.2, 02:51:41, GigabitEthernet2
O IA 10.100.4.0/24 [110/3] via 10.100.3.2, 03:17:34, GigabitEthernet3
[110/3] via 10.100.1.2, 02:51:41, GigabitEthernet2
O IA 10.100.5.0/24 [110/2] via 10.100.3.2, 03:18:30, GigabitEthernet3
172.16.0.0/32 is subnetted, 5 subnets
O 172.16.0.2 [110/2] via 10.100.1.2, 02:51:41, GigabitEthernet2
O IA 172.16.0.3 [110/3] via 10.100.1.2, 02:51:41, GigabitEthernet2
O IA 172.16.0.4 [110/2] via 10.100.3.2, 03:18:30, GigabitEthernet3
O IA 172.16.0.5 [110/3] via 10.100.3.2, 03:17:34, GigabitEthernet3
CSR-R1#show ip ospf database
OSPF Router with ID (172.16.0.1) (Process ID 1)
Router Link States (Area 1)
Link ID ADV Router Age Seq# Checksum Link count
172.16.0.1 172.16.0.1 1925 0x8000000C 0x0014E4 2
172.16.0.4 172.16.0.4 46 0x8000000C 0x00754A 1
Net Link States (Area 1)
Link ID ADV Router Age Seq# Checksum
10.100.3.1 172.16.0.1 1925 0x80000006 0x004244
Summary Net Link States (Area 1)
Link ID ADV Router Age Seq# Checksum
10.100.1.0 172.16.0.4 301 0x80000006 0x00BA49
10.100.2.0 172.16.0.4 46 0x80000007 0x00A35F
10.100.4.0 172.16.0.4 46 0x80000007 0x00837E
10.100.5.0 172.16.0.4 46 0x80000007 0x006E93
172.16.0.2 172.16.0.4 46 0x80000007 0x006152
172.16.0.3 172.16.0.4 46 0x80000007 0x004D66
172.16.0.4 172.16.0.4 46 0x80000007 0x002F85
172.16.0.5 172.16.0.4 46 0x80000007 0x002F83
Router Link States (Area 3)
Link ID ADV Router Age Seq# Checksum Link count
172.16.0.1 172.16.0.1 143 0x80000009 0x007855 1
172.16.0.2 172.16.0.2 398 0x8000000E 0x00AC55 3
172.16.0.3 172.16.0.3 1704 0x80000008 0x008145 1
Net Link States (Area 3)
Link ID ADV Router Age Seq# Checksum
10.100.1.2 172.16.0.2 398 0x80000006 0x002860
10.100.2.2 172.16.0.3 1704 0x80000006 0x002F55
Summary Net Link States (Area 3)
Link ID ADV Router Age Seq# Checksum
10.100.3.0 172.16.0.3 1704 0x80000006 0x00A063
10.100.4.0 172.16.0.3 1704 0x80000006 0x008183
10.100.5.0 172.16.0.3 1704 0x80000006 0x008082
172.16.0.1 172.16.0.3 1704 0x80000006 0x007343
172.16.0.3 172.16.0.3 1704 0x80000006 0x004176
172.16.0.4 172.16.0.3 1704 0x80000006 0x004B69
172.16.0.5 172.16.0.3 1704 0x80000006 0x00377D
CSR-R1#traceroute 172.16.0.2
Type escape sequence to abort.
Tracing the route to 172.16.0.2
VRF info: (vrf in name/id, vrf out name/id)
1 10.100.1.2 3 msec * 2 msec
CSR-R1#traceroute 172.16.0.2 source 172.16.0.1
Type escape sequence to abort.
Tracing the route to 172.16.0.2
VRF info: (vrf in name/id, vrf out name/id)
1 10.100.1.2 4 msec * 3 msec
CSR-R1#
There are a few things worth noting from the above output.
R1 has an OSPF internal route for 172.16.0.2, the loopback of R2. This is due to R1 now participating in area 3 since we established the OSPF neighbor with R2.
The OSPF database has information for both areas 1 and 3. Based on what we saw in part 1 however, R1 will not be acting as an ABR and advertising summaries from one area into another. It just has information from both areas as it has adjacencies in both.
Now let’s repeat that on R2.
CSR-R2#show ip route ospf
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, p - overrides from PfR
Gateway of last resort is not set
10.0.0.0/8 is variably subnetted, 9 subnets, 2 masks
O IA 10.100.3.0/24 [110/4] via 10.100.2.2, 03:19:36, GigabitEthernet3
O IA 10.100.4.0/24 [110/2] via 10.100.2.2, 03:19:36, GigabitEthernet3
O IA 10.100.5.0/24 [110/3] via 10.100.2.2, 03:19:36, GigabitEthernet3
172.16.0.0/32 is subnetted, 5 subnets
O IA 172.16.0.1 [110/5] via 10.100.2.2, 03:19:36, GigabitEthernet3
O IA 172.16.0.3 [110/2] via 10.100.2.2, 03:19:36, GigabitEthernet3
O IA 172.16.0.4 [110/4] via 10.100.2.2, 03:19:36, GigabitEthernet3
O IA 172.16.0.5 [110/3] via 10.100.2.2, 03:19:36, GigabitEthernet3
CSR-R2#show ip ospf database
OSPF Router with ID (172.16.0.2) (Process ID 1)
Router Link States (Area 3)
Link ID ADV Router Age Seq# Checksum Link count
172.16.0.1 172.16.0.1 386 0x80000009 0x007855 1
172.16.0.2 172.16.0.2 639 0x8000000E 0x00AC55 3
172.16.0.3 172.16.0.3 1946 0x80000008 0x008145 1
Net Link States (Area 3)
Link ID ADV Router Age Seq# Checksum
10.100.1.2 172.16.0.2 639 0x80000006 0x002860
10.100.2.2 172.16.0.3 1946 0x80000006 0x002F55
Summary Net Link States (Area 3)
Link ID ADV Router Age Seq# Checksum
10.100.3.0 172.16.0.3 1946 0x80000006 0x00A063
10.100.4.0 172.16.0.3 1946 0x80000006 0x008183
10.100.5.0 172.16.0.3 1946 0x80000006 0x008082
172.16.0.1 172.16.0.3 1946 0x80000006 0x007343
172.16.0.3 172.16.0.3 1946 0x80000006 0x004176
172.16.0.4 172.16.0.3 1946 0x80000006 0x004B69
172.16.0.5 172.16.0.3 1946 0x80000006 0x00377D
CSR-R2#traceroute 172.16.0.1
Type escape sequence to abort.
Tracing the route to 172.16.0.1
VRF info: (vrf in name/id, vrf out name/id)
1 10.100.2.2 2 msec 6 msec 2 msec
2 10.100.4.2 3 msec 2 msec 3 msec
3 10.100.5.1 3 msec 3 msec 4 msec
4 10.100.3.1 4 msec * 2 msec
CSR-R2#traceroute 172.16.0.1 source 172.16.0.2
Type escape sequence to abort.
Tracing the route to 172.16.0.1
VRF info: (vrf in name/id, vrf out name/id)
1 10.100.2.2 2 msec 2 msec 2 msec
2 10.100.4.2 3 msec 3 msec 3 msec
3 10.100.5.1 3 msec 3 msec 2 msec
4 10.100.3.1 2 msec * 3 msec
CSR-R2#
Based on the above you can see that R2 uses the inter-area route to reach R1’s loopback of 172.16.0.1. Remember on R1 the loopback interface is associated with area 1 and not area 3.
This causes traffic from R2 to take the long way via area 0 to reach R1’s loopback.
Due to this behavior, we have some asymmetry in the network. R1 will take the direct link to reach R2’s loopback, but R2’s response back will be via area 0.
This differs from the Junos example where R1 acted like an ABR and advertised summary LSA’s into the areas it connected to.
As a sanity check, we can look at R4 and check its behavior.
CSR-R4#show ip route ospf
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, p - overrides from PfR
Gateway of last resort is not set
10.0.0.0/8 is variably subnetted, 9 subnets, 2 masks
O IA 10.100.1.0/24 [110/4] via 10.100.5.2, 03:01:07, GigabitEthernet4
O IA 10.100.2.0/24 [110/3] via 10.100.5.2, 03:24:39, GigabitEthernet4
O 10.100.4.0/24 [110/2] via 10.100.5.2, 03:25:52, GigabitEthernet4
172.16.0.0/32 is subnetted, 5 subnets
O 172.16.0.1 [110/2] via 10.100.3.1, 03:26:47, GigabitEthernet3
O IA 172.16.0.2 [110/4] via 10.100.5.2, 03:23:53, GigabitEthernet4
O 172.16.0.3 [110/3] via 10.100.5.2, 03:24:39, GigabitEthernet4
O 172.16.0.5 [110/2] via 10.100.5.2, 03:25:52, GigabitEthernet4
CSR-R4#show ip ospf database
OSPF Router with ID (172.16.0.4) (Process ID 1)
Router Link States (Area 0)
Link ID ADV Router Age Seq# Checksum Link count
172.16.0.3 172.16.0.3 227 0x8000000A 0x00539D 2
172.16.0.4 172.16.0.4 548 0x8000000A 0x006587 2
172.16.0.5 172.16.0.5 229 0x8000000C 0x00F3FA 3
Net Link States (Area 0)
Link ID ADV Router Age Seq# Checksum
10.100.4.2 172.16.0.5 229 0x80000007 0x002D4F
10.100.5.1 172.16.0.4 548 0x80000007 0x004438
Summary Net Link States (Area 0)
Link ID ADV Router Age Seq# Checksum
10.100.1.0 172.16.0.3 1225 0x80000006 0x00AC5A
10.100.2.0 172.16.0.3 227 0x80000007 0x009570
10.100.3.0 172.16.0.4 548 0x80000007 0x00847F
172.16.0.1 172.16.0.4 548 0x80000007 0x00575F
172.16.0.2 172.16.0.3 227 0x80000007 0x005363
Router Link States (Area 1)
Link ID ADV Router Age Seq# Checksum Link count
172.16.0.1 172.16.0.1 402 0x8000000D 0x0012E5 2
172.16.0.4 172.16.0.4 548 0x8000000C 0x00754A 1
Net Link States (Area 1)
Link ID ADV Router Age Seq# Checksum
10.100.3.1 172.16.0.1 402 0x80000007 0x004045
Summary Net Link States (Area 1)
Link ID ADV Router Age Seq# Checksum
10.100.1.0 172.16.0.4 803 0x80000006 0x00BA49
10.100.2.0 172.16.0.4 548 0x80000007 0x00A35F
10.100.4.0 172.16.0.4 548 0x80000007 0x00837E
10.100.5.0 172.16.0.4 548 0x80000007 0x006E93
172.16.0.2 172.16.0.4 548 0x80000007 0x006152
172.16.0.3 172.16.0.4 548 0x80000007 0x004D66
172.16.0.4 172.16.0.4 548 0x80000007 0x002F85
172.16.0.5 172.16.0.4 548 0x80000007 0x002F83
CSR-R4#traceroute 172.16.0.2 source 172.16.0.4
Type escape sequence to abort.
Tracing the route to 172.16.0.2
VRF info: (vrf in name/id, vrf out name/id)
1 10.100.5.2 3 msec 2 msec 2 msec
2 10.100.4.1 3 msec 3 msec 4 msec
3 10.100.2.1 4 msec * 3 msec
CSR-R4#
Since R1 is not behaving as an ABR, R4 still sees only the one path to R2’s loopback, taking the path via R5 and R3. The summary for 172.16.0.2 in area 1 was advertised by R4 itself.
Conclusions
At the start, I asked you to think about these two questions:
- Will routes be shared over the backdoor link?
- Will this behavior differ between Junos and IOS-XE?
Similar to part 1, the answer depends on which vendor is in use. Junos is still letting R1 behave partly as an ABR, whereas IOS-XE isn’t.
The IOS-XE example shows some asymmetric routing between the loopbacks of R1 and R2. This could affect client traffic between areas 1 and 3 and is something to keep in mind.
For production networks, I would avoid using a direct connection between non-zero areas as we used in this example. The behavior is inconsistent between vendors and it raises the risk of unexpected consequences.
On the other hand, I thoroughly recommend doing things the “wrong way” and trying this out in a lab environment for yourself. Labbing scenarios like this make for great learning opportunities.