OSPF External Path Preference with RFC 3101 Active
OE1 vs ON1 routes
By default, Cisco Router simplement RFC 3101.
R1#sh ip os | i RFC
Supports NSSA (compatible with RFC 3101)
Supports Database Exchange Summary List Optimization (RFC 5243)
R1#
On R2, redistribute the prefix 100.0.0.0/24 as External Type-1 with metric 19.
R2(config)#router ospf 1
R2(config-router)#redistribute connected metric-type 1 metric 19
On R3, redistribute the prefix 100.0.0.0/24 as External Type-1 with default metric 20.
R3(config)#router os 1
R3(config-router)#redistribute connected subnets metric-type 1
Let's verify the Type-5 LSA advertised by R2. The redistributed metric is 19.
R1#sh ip os data ex ad 0.0.0.2
OSPF Router with ID (0.0.0.1) (Process ID 1)
Type-5 AS External Link States
LS age: 97
Options: (No TOS-capability, DC, Upward)
LS Type: AS External Link
Link State ID: 100.0.0.0 (External Network Number )
Advertising Router: 0.0.0.2
LS Seq Number: 80000002
Checksum: 0x3387
Length: 36
Network Mask: /24
Metric Type: 1 (Comparable directly to link state metric)
MTID: 0
Metric: 19
Forward Address: 0.0.0.0
External Route Tag: 0
R1#
Let's verify the Type-7 LSA advertised by R3. The redistributed metric is 20.
R1#sh ip os data nssa-ex ad 0.0.0.3
OSPF Router with ID (0.0.0.1) (Process ID 1)
Type-7 AS External Link States (Area 13)
LS age: 370
Options: (No TOS-capability, Type 7/5 translation, DC, Upward)
LS Type: AS External Link
Link State ID: 100.0.0.0 (External Network Number )
Advertising Router: 0.0.0.3
LS Seq Number: 80000001
Checksum: 0xE13D
Length: 36
Network Mask: /24
Metric Type: 2 (Larger than any link state path)
MTID: 0
Metric: 20
Forward Address: 13.0.0.3
External Route Tag: 0
R1#
Let's check that the cost of the interfaces facing the ASBRs R2 and R3 (Forward Address 13.0.0.3) is the same 10.
R1#sh ip os int br
Interface PID Area IP Address/Mask Cost State Nbrs F/C
Et0/0 1 0 12.0.0.1/24 10 BDR 1/1
Et0/1 1 13 13.0.0.1/24 10 BDR 1/1
R1#
Selection is based on the best metric (Sum of : Redistributed Metric + Metric to the ASBR or the Forward Address).
Let's verify the routing table, we confirm that the OE1 route through R2 is installed.
R1#sh ip route | s 100.0.0.0
100.0.0.0/24 is subnetted, 1 subnets
O E1 100.0.0.0 [110/29] via 12.0.0.2, 00:03:32, Ethernet0/0
R1#
Let's increase the cost toward R2.
R1(config)#int e0/0
R1(config-if)#ip os cost 12
Since the total cost through R3 is lower than the total cost through R2. R1 installs the ON1 route through R3.
R1#sh ip route | s 100.0.0.0
100.0.0.0/24 is subnetted, 1 subnets
O N1 100.0.0.0 [110/30] via 13.0.0.3, 00:00:30, Ethernet0/1
R1#
On R1's interface E0/0 facing R2, reconfigure the cost 10.
R1(config)#int e0/0
R1(config-if)#no ip os cost 12
R1(config-if)#ip os cost 10
On R3, let's redistribute the Type-7 LSA with a metric 19.
R3(config)#router os 1
R3(config-router)#redistribute connected metric-type 1 metric 19
Let's verify the Type-5 LSA advertised by R2. The redistributed metric is 19.
R1#sh ip os data ex ad 0.0.0.2 | i Metric|Link State ID
Link State ID: 100.0.0.0 (External Network Number )
Metric Type: 1 (Comparable directly to link state metric)
Metric: 19
R1#
Let's verify the Type-7 LSA advertised by R3. The redistributed metric is 19.
R1#sh ip os data nssa-ex ad 0.0.0.3 | i Metric|Link State ID
Link State ID: 100.0.0.0 (External Network Number )
Metric Type: 1 (Comparable directly to link state metric)
Metric: 19
R1#
If the total metric ((Sum of : Redistributed Metric + Metric to the ASBR or the Forward Address) is the same, the tie breaker is RFC 3101 section 2.5 Calculating Type-7 AS External Routes.
If the current LSA is functionally the same as an
installed LSA (i.e., same destination, cost and non-zero
forwarding address) then apply the following priorities in
deciding which LSA is preferred:
In this case the Type-7 LSA is always preferred than the Type-5 LSA, R1 installs the ON1 route through R3.
R1#sh ip route | s 100.0.0.0
100.0.0.0/24 is subnetted, 1 subnets
O N1 100.0.0.0 [110/29] via 13.0.0.3, 00:02:26, Ethernet0/1
R1#
OE2 vs ON2 routes
On R2, redistribute the prefix 100.0.0.0/24 as External Type-2 with metric 19.
R2(config-if)#router ospf 1
R2(config-router)#redistribute connected subnets metric 19
On R3, redistribute the prefix 100.0.0.0/24 as External Type-2 with default metric 20.
R3(config)#router os 1
R3(config-router)#redistribute connected subnets
Let's verify the Type-5 LSA advertised by R2. The redistributed metric is 19.
R1#sh ip os data ex ad 0.0.0.2 | i Metric|Link State ID
Link State ID: 100.0.0.0 (External Network Number )
Metric Type: 2 (Larger than any link state path)
Metric: 19
R1#
Let's verify the Type-7 LSA advertised by R3. The redistributed metric is 20.
R1#sh ip os data nssa-ex ad 0.0.0.3 | i Metric|Link State ID
Link State ID: 100.0.0.0 (External Network Number )
Metric Type: 2 (Larger than any link state path)
Metric: 20
R1#
Let's check that the cost of the interfaces facing the ASBRs R2 and R3 (Forward Address 13.0.0.3) is the same 10.
R1#sh ip os int br
Interface PID Area IP Address/Mask Cost State Nbrs F/C
Et0/0 1 0 12.0.0.1/24 10 BDR 1/1
Et0/1 1 13 13.0.0.1/24 10 BDR 1/1
R1#
Selection is based on the best Redistributed Metric (Metric to the ASBR or Forward Address IGNORED).
The redistributed metric in the Type-5 LSA's R2 is 19 and lower than the redistributed metric in the Type-7 LSA's R3 which is 20.
As a result R1 installs the OE2 route through R2.
R1#sh ip route | s 100.0.0.0
100.0.0.0/24 is subnetted, 1 subnets
O E2 100.0.0.0 [110/19] via 12.0.0.2, 00:02:24, Ethernet0/0
R1#
On R3, let's redistribute the prefix 100.0.0.0/24 with a metric 19.
R3(config)#router os 1
R3(config-router)#redistribute connected subnets metric 19
Let's verify the Type-5 LSA advertised by R2. The redistributed metric is 19.
R1#sh ip os data ex ad 0.0.0.2 | i Metric|Link State ID
Link State ID: 100.0.0.0 (External Network Number )
Metric Type: 2 (Larger than any link state path)
Metric: 19
R1#
Let's verify the Type-7 LSA advertised by R3. The redistributed metric is 19.
R1#sh ip os data nssa-ex ad 0.0.0.3 | i Metric|Link State ID
Link State ID: 100.0.0.0 (External Network Number )
Metric Type: 2 (Larger than any link state path)
Metric: 19
R1#
On R1, let's decrease the cost in the interface E0/0 facing the ASBR R2.
R1(config)#int e0/0
R1(config-if)#ip os cost 9
Verify the cost on the E0/0 and E0/1 interfaces.
R1#sh ip os int br
Interface PID Area IP Address/Mask Cost State Nbrs F/C
Et0/0 1 0 12.0.0.1/24 9 BDR 1/1
Et0/1 1 13 13.0.0.1/24 10 BDR 1/1
R1#
If the Redistributed Metric is equal, selection is based on the best metric to the ASBR or the Forward Address.
The redistributed metric on both Type-5 LSA and Type-7 LSA is equal 19. R1 looks at the cost to reach the ASBR R2 and the Forward Address 13.0.0.3 listed in the Type-7 LSA's R3.
The metric 9 is lower than 10, R1 installs the OE2 route through R2.
R1#sh ip route | s 100.0.0.0
100.0.0.0/24 is subnetted, 1 subnets
O E2 100.0.0.0 [110/19] via 12.0.0.2, 00:00:53, Ethernet0/0
R1#
On R1, let's decrease the cost in the interface facing the ASBR R3 to be the same as the cost to reach the ASBR R2.
R1(config)#int e0/1
R1(config-if)#ip os cost 9
R1#sh ip os int br
Interface PID Area IP Address/Mask Cost State Nbrs F/C
Et0/0 1 0 12.0.0.1/24 9 BDR 1/1
Et0/1 1 13 13.0.0.1/24 9 BDR 1/1
R1#
if the Redistributed Metric is equal AND the metric to the ASBR or the Forward Address is equal (not the Sum), the ON2 Route is preferred than OE2 Route (RFC 3101).
Since the redistributed metric on both Type-5 LSA and Type-7 LSA is the same, the cost to reach the ASBR R2 and the Forward Address 13.0.0.3 (ASBR R3) is also the same.
The tie breaker is RFC 3101 section 2.5 Calculating Type-7 AS External Routes :
If the current LSA is functionally the same as an
installed LSA (i.e., same destination, cost and non-zero
forwarding address) then apply the following priorities in
deciding which LSA is preferred:
In this case the Type-7 LSA is always preferred than the Type-5 LSA, R1 installs the ON2 route through R3.
R1#sh ip route | s 100.0.0.0
100.0.0.0/24 is subnetted, 1 subnets
O N2 100.0.0.0 [110/19] via 13.0.0.3, 00:00:37, Ethernet0/1
R1#
OSPF External Path Preference with RFC 1587 Active / RFC 1583 Active
OE1 vs ON1 routes
On R1 enable the RFC 1587.
R1(config)#router os 1
R1(config-router)#compatible rfc1587
R1#sh ip os | s RFC
Supports NSSA (compatible with RFC 1587)
Supports Database Exchange Summary List Optimization (RFC 5243)
R1#
On R2, redistribute the prefix 100.0.0.0/24 as External Type-1 with default metric 20.
R2(config)#router ospf 1
R2(config-router)#redistribute connected metric-type 1
On R3, redistribute the prefix 100.0.0.0/24 as External Type-1 with metric 19.
R3(config)#router os 1
R3(config-router)#redistribute connected subnets metric-type 1 metric 19
Let's verify the Type-5 LSA advertised by R2. The redistributed metric is 20.
R1#sh ip os data ex ad 0.0.0.2 | i Metric|Link State ID
Link State ID: 100.0.0.0 (External Network Number )
Metric Type: 1 (Comparable directly to link state metric)
Metric: 20
R1#
Let's verify the Type-7 LSA advertised by R3. The redistributed metric is 19.
R1#sh ip os data nssa-ex ad 0.0.0.3 | i Metric|Link State ID
Link State ID: 100.0.0.0 (External Network Number )
Metric Type: 1 (Comparable directly to link state metric)
Metric: 19
R1#
Verify the cost on the E0/0 and E0/1 interfaces. Ensure that it's the same.
R1#sh ip os int br
Interface PID Area IP Address/Mask Cost State Nbrs F/C
Et0/0 1 0 12.0.0.1/24 10 BDR 1/1
Et0/1 1 13 13.0.0.1/24 10 BDR 1/1
R1#
Selection is based on the best metric (Sum of : Redistributed Metric + Metric to the ASBR or the Forward Address).
Since the total cost to reach 100.0.0.0/24 through R3 is better, R1 installs the ON1 route through R3.
R1#sh ip route | s 100.0.0.0
100.0.0.0/24 is subnetted, 1 subnets
O N1 100.0.0.0 [110/29] via 13.0.0.3, 00:01:12, Ethernet0/1
R1#
On R1, increase the cost of the interface E0/1 facing the ASBR R3 with a value of 12.
R1(config)#int e0/1
R1(config-if)#ip os cost 12
Now, the total cost of both paths is:
Since the total cost to reach 100.0.0.0/24 through R2 is better, R1 installs the OE1 route through R2.
R1#sh ip route | s 100.0.0.0
100.0.0.0/24 is subnetted, 1 subnets
O E1 100.0.0.0 [110/30] via 12.0.0.2, 00:00:23, Ethernet0/0
R1#
R1(config)#int e0/1
R1(config-if)#no ip os cost 12
R1(config-if)#ip os cost 10
On R2, let's redistribute the Type-7 LSA with a metric 19.
R2(config)#router os 1
R2(config-router)#redistribute connected metric-type 1 metric 19
Let's verify the Type-5 LSA advertised by R2. The redistributed metric is 19.
R1#sh ip os data ex ad 0.0.0.2 | i Metric|Link State ID
Link State ID: 100.0.0.0 (External Network Number )
Metric Type: 1 (Comparable directly to link state metric)
Metric: 19
R1#
Let's verify the Type-7 LSA advertised by R3. The redistributed metric is 19.
R1#sh ip os data nssa-ex ad 0.0.0.3 | i Metric|Link State ID
Link State ID: 100.0.0.0 (External Network Number )
Metric Type: 1 (Comparable directly to link state metric)
Metric: 19
R1#
R1#sh ip os int br
Interface PID Area IP Address/Mask Cost State Nbrs F/C
Et0/0 1 0 12.0.0.1/24 10 BDR 1/1
Et0/1 1 13 13.0.0.1/24 10 BDR 1/1
R1#
If the total metric ((Sum of : Redistributed Metric + Metric to the ASBR or the Forward Address) is the same, the tie breaker is RFC 1587 section 3.5 Calculating Type-7 AS External Routes.
When a type-5 LSA and a type-7 LSA are found to have the
same type and an equal distance, the following priorities
apply (listed from highest to lowest) for breaking the tie.
address non-zero.
In this case the Type-5 LSA is always preferred than the Type-7 LSA, R1 installs the OE1 route through R2.
R1#sh ip route | s 100.0.0.0
100.0.0.0/24 is subnetted, 1 subnets
O E1 100.0.0.0 [110/29] via 12.0.0.2, 00:01:37, Ethernet0/0
R1#
OE2 vs ON2 routes
On R2, redistribute the prefix 100.0.0.0/24 as External Type-2 with default metric 20.
R2(config-if)#router ospf 1
R2(config-router)#redistribute connected subnets
On R3, redistribute the prefix 100.0.0.0/24 as External Type-2 with default metric 19.
R3(config)#router os 1
R3(config-router)#redistribute connected subnets metric 19
Let's verify the Type-5 LSA advertised by R2. The redistributed metric is 20.
R1#sh ip os data ex ad 0.0.0.2 | i Metric|Link State ID
Link State ID: 100.0.0.0 (External Network Number )
Metric Type: 2 (Larger than any link state path)
Metric: 20
R1#
Let's verify the Type-7 LSA advertised by R3. The redistributed metric is 19.
R1#sh ip os data nssa-ex ad 0.0.0.3 | i Metric|Link State ID
Link State ID: 100.0.0.0 (External Network Number )
Metric Type: 2 (Larger than any link state path)
Metric: 19
R1#
Verify the cost on the E0/0 and E0/1 interfaces. Ensure that it's the same.
R1#sh ip os int br
Interface PID Area IP Address/Mask Cost State Nbrs F/C
Et0/0 1 0 12.0.0.1/24 10 BDR 1/1
Et0/1 1 13 13.0.0.1/24 10 BDR 1/1
R1#
Selection is based on the best Redistributed Metric (Metric to the ASBR or Forward Address IGNORED).
The redistributed metric in the Type-7 LSA's R3 is 19 and lower than the redistributed metric in the Type-5 LSA's R2 which is 20.
As a result R1 installs the ON2 route through R3.
R1#sh ip route | s 100.0.0.0
100.0.0.0/24 is subnetted, 1 subnets
O N2 100.0.0.0 [110/19] via 13.0.0.3, 00:01:15, Ethernet0/1
R1#
To confirm, on R1 let's increase the cost of the interface E0/1 facing the ASBR R3.
R1(config)#int e0/1
R1(config-if)#ip os cost 12
R1#sh ip os int br
Interface PID Area IP Address/Mask Cost State Nbrs F/C
Et0/0 1 0 12.0.0.1/24 10 BDR 1/1
Et0/1 1 13 13.0.0.1/24 12 BDR 1/1
R1#
Let's verify the routing table of R1, even if the total cost to reach the ASBR R2 (20+10) is better than the total cost to reach the Forward Address 13.0.0.3 (ASBR R3) (19+12), R1 installs the ON2 route through R3. With OE2/ON2, when the redistributed metric is used as the tie breaker, the internal cost to the ASBR/Forward Address is IGNORED.
R1#sh ip route | s 100.0.0.0
100.0.0.0/24 is subnetted, 1 subnets
O N2 100.0.0.0 [110/19] via 13.0.0.3, 00:02:16, Ethernet0/1
R1#
But if the Redistributed Metric is equal, selection is based on the best metric to the ASBR or the Forward Address.
To confirm, on R2 let's redistribute the prefix with a metric 19.
R2(config-if)#router ospf 1
R2(config-router)#redistribute connected subnets metric 19
Let's verify the Type-5 LSA advertised by R2. The redistributed metric is 20.
R1#sh ip os data ex ad 0.0.0.2 | i Metric|Link State ID
Link State ID: 100.0.0.0 (External Network Number )
Metric Type: 2 (Larger than any link state path)
Metric: 19
R1#
Let's verify the Type-7 LSA advertised by R3. The redistributed metric is 19.
R1#sh ip os data nssa-ex ad 0.0.0.3 | i Metric|Link State ID
Link State ID: 100.0.0.0 (External Network Number )
Metric Type: 2 (Larger than any link state path)
Metric: 19
R1#
Let's verify the cost facing the ASBR R2 and the Forward Address 13.0.0.3 (ASBR R3).
R1#sh ip os int br
Interface PID Area IP Address/Mask Cost State Nbrs F/C
Et0/0 1 0 12.0.0.1/24 10 BDR 1/1
Et0/1 1 13 13.0.0.1/24 12 BDR 1/1
R1#
Since the Redistributed Metric is equal, selection is based on the best metric to the ASBR or the Forward Address.
In this case the metric 10 to reach the ASBR R2 is lower than the metric 12 to reach the Forward Address 13.0.0.3 (ASBR R3), therefore R1 installs the OE2 route through R2.
R1#sh ip route | s 100.0.0.0
100.0.0.0/24 is subnetted, 1 subnets
O E2 100.0.0.0 [110/19] via 12.0.0.2, 00:01:21, Ethernet0/0
R1#
To confirm once again, let's decrease the cost of the interface facing the ASBR R3.
R1(config)#int e0/1
R1(config-if)#ip os cost 9
Now the metric to reach the ASBR R2 is 10 while the metric to reach the Forward Address 13.0.0.3 (ASBR R3) is 9.
R1#sh ip os int br
Interface PID Area IP Address/Mask Cost State Nbrs F/C
Et0/0 1 0 12.0.0.1/24 10 BDR 1/1
Et0/1 1 13 13.0.0.1/24 9 BDR 1/1
R1#
The metric 9 to reach the Forward Address 13.0.0.3 (ASBR R3) is lower than the metric 10 to reach the ASBR R2, therefore R1 installs the ON2 route through R3.
R1#sh ip route | s 100.0.0.0
100.0.0.0/24 is subnetted, 1 subnets
O N2 100.0.0.0 [110/19] via 13.0.0.3, 00:00:34, Ethernet0/1
R1#
Let's decrease the cost in the interface facing the ASBR R2.
R1(config)#int e0/0
R1(config-if)#ip os cost 9
R1#sh ip os int br
Interface PID Area IP Address/Mask Cost State Nbrs F/C
Et0/0 1 0 12.0.0.1/24 9 BDR 1/1
Et0/1 1 13 13.0.0.1/24 9 BDR 1/1
R1#
if the Redistributed Metric is equal AND the metric to the ASBR or the Forward Address is equal (not the Sum), the OE2 Route is preferred than ON2 Route (RFC 1587).
Since the redistributed metric on both Type-5 LSA and Type-7 LSA is the same, the cost to reach the ASBR R2 and the Forward Address 13.0.0.3 (ASBR R3) is also the same.
The tie breaker is RFC 1587 section 3.5 Calculating Type-7 AS External Routes.
When a type-5 LSA and a type-7 LSA are found to have the
same type and an equal distance, the following priorities
apply (listed from highest to lowest) for breaking the tie.
address non-zero.
In this case the Type-5 LSA is always preferred than the Type-7 LSA, R1 installs the OE2 route through R2.
R1#sh ip route | s 100.0.0.0
100.0.0.0/24 is subnetted, 1 subnets
O E2 100.0.0.0 [110/19] via 12.0.0.2, 00:00:06, Ethernet0/0
R1#
OSPF External Path Preference with RFC 1587 Active / RFC 1583 Inactive (RFC 2328 Active)
OE1 vs ON1 routes
On R2, redistribute the prefix 100.0.0.0/24 as External Type-1 with default metric 20.
R2(config-if)#router os 1
R2(config-router)#redistribute connected subnets metric-type 1
On R3, redistribute the prefix 100.0.0.0/24 as External Type-1 with default metric 20.
R3(config-if)#router os 1
R3(config-router)#redistribute connected subnets metric-type 1
Verify that the cost to reach the ASBRs R2 and R3 is the same.
R1#sh ip os int br
Interface PID Area IP Address/Mask Cost State Nbrs F/C
Et0/0 1 0 12.0.0.1/24 10 DR 1/1
Et0/1 1 13 13.0.0.1/24 10 BDR 1/1
R1#
Let's verify the Type-5 LSA advertised by R2. The redistributed metric is 20.
R1#sh ip os data ex ad 0.0.0.2 | i Metric|Link State ID
Link State ID: 100.0.0.0 (External Network Number )
Metric Type: 1 (Comparable directly to link state metric)
Metric: 20
R1#
Let's verify the Type-7 LSA advertised by R3. The redistributed metric is 20.
R1#sh ip os data nssa-ex ad 0.0.0.3 | i Metric|Link State ID
Link State ID: 100.0.0.0 (External Network Number )
Metric Type: 1 (Comparable directly to link state metric)
Metric: 20
R1#
Check the cost on the interfaces facing the ASBRs R2 and R3 and ensure that it's the same.
R1#sh ip os int br
Interface PID Area IP Address/Mask Cost State Nbrs F/C
Et0/0 1 0 12.0.0.1/24 10 DR 1/1
Et0/1 1 13 13.0.0.1/24 10 BDR 1/1
R1#
Keep in mind that RFC 1587 section 3.5 Calculating Type-7 AS External Routes. states that for the same destination and equal distance, a Type-5 LSA is preferred than a Type-7 LSA, RFC 1587 is applied only if RFC 1583 is enabled.
The routing table confirms once again that the OE1 route is preferred than the ON1 route since both RFC 1587 and 1583 are enabled.
R1#sh ip route | s 100.0.0.0
100.0.0.0/24 is subnetted, 1 subnets
O E1 100.0.0.0 [110/30] via 12.0.0.2, 00:06:52, Ethernet0/0
R1#
RFC 1583 for OSPFv2 is replaced by RFC 2328 for OSPFv2. By default RFC 1583 is enabled. Notice that with OSPFv2, the show ip ospf command does display that RFC 1583 is enabled unlike with OSPFv3 using the show ipv6 ospf command.
R1#sh ip os | i RFC
Supports NSSA (compatible with RFC 1587)
Supports Database Exchange Summary List Optimization (RFC 5243)
R1#
To enable RFC 2328, execute the no compatible rfc1583 command on R1.
R1(config)#router os 1
R1(config-router)#no compatible rfc1583
Let's verify the routing table of R1, we can see that the ON1 route is installed instead of OE1 route, even if RFC 1587 is enabled and the section 3.5 Calculating Type-7 AS External Route states that OE1 (Type-5 LSA) is preferred that ON1 route (Type-7 LSA). As I said previsouly, the Section 3.5 rule defined on RFC 1587 is valid only if RFC 1583 is enabled.
Since RFC 1583 has been disabled previously using the no compatible rfc1583 command, the rule defined on section 3.5 is no longer valid.
The answer of the question "why the ON1 route is preferred than OE1 route" can be find on RFC 2328. By disabling RFC 1583, the router will be conform with RFC 2328.
Now if we look at the RFC 2328 section 16.4.1.External path preferences, the following rules indicate which paths are preferred when multiple intra-AS paths are available
to ASBRs or forwarding addresses:
These rules apply when the same ASBR is reachable through multiple areas, or when trying to decide which of several AS-external-LSAs should be preferred. In the former case the paths all terminate at the same ASBR, and in the latter the paths terminate at separate ASBRs or forwarding addresses. In either case, each path is represented by a separate routing table entry. This feature applies only when RFC 1583 compatibility is set to disabled using the no compatible rfc1583 command.
See below RFC 2328 section 16.4.1.External path preferences
When multiple intra-AS paths are available to
ASBRs/forwarding addresses, the following rules indicate
which paths are preferred. These rules apply when the same
ASBR is reachable through multiple areas, or when trying to
decide which of several AS-external-LSAs should be
preferred. In the former case the paths all terminate at the
same ASBR, while in the latter the paths terminate at
separate ASBRs/forwarding addresses. In either case, each
path is represented by a separate routing table entry as
defined in Section 11.
This section only applies when RFC1583Compatibility is set
to "disabled".
The path preference rules, stated from highest to lowest
preference, are as follows. Note that as a result of these
rules, there may still be multiple paths of the highest
preference. In this case, the path to use must be determined
based on cost, as described in Section 16.4.
o Intra-area paths using non-backbone areas are always the
most preferred.
o The other paths, intra-area backbone paths and inter-
area paths, are of equal preference.
So according to RFC 2328 section 16.4.1.External path preferences:
While the total cost for both route is the same, the selection is based on RFC 2328 section section 16.4.1.External path preferences, regardless the total metric.
If multiple paths through non-backbone and backbone area exist, Intra-area path using non-backbone area to the ASBR is preferred (RFC 2328) regardless the total metric (Sum of : Redistributed Metric + Metric to the ASBR or the Forward Address).
The ASBR R3 is reachable through the intra-area non-backbone area 13 while the ASBR R2 is reachable through the intra-area backbone area, and because RFC 2328 is enabled, the intra-area through the non-backbone area 13 is preferred. Therefore R1 installs the ON1 route.
R1#sh ip route | s 100.0.0.0
100.0.0.0/24 is subnetted, 1 subnets
O N1 100.0.0.0 [110/30] via 13.0.0.3, 00:00:11, Ethernet0/1
R1#
To confirm, on R3 let's redistribute the prefix 100.0.0.0/24 with a metric 21.
R3(config-if)#router os 1
R3(config-router)#redistribute connected subnets metric-type 1 metric 21
Let's verify the Type-7 LSA advertised by R3. The redistributed metric is 21.
R1#sh ip os data nssa-ex ad 0.0.0.3 | i Metric|Link State ID
Link State ID: 100.0.0.0 (External Network Number )
Metric Type: 1 (Comparable directly to link state metric)
Metric: 21
R1#
Let's verify the routing table of R1, the ON1 route through R3 is installed even if the total cost 31 to 100.0.0.0/24 is greater than the total cost 30 to 100.0.0.0/24 via R2.
R1#sh ip route | s 100.0.0.0
100.0.0.0/24 is subnetted, 1 subnets
O N1 100.0.0.0 [110/31] via 13.0.0.3, 00:00:38, Ethernet0/1
R1#
On R3, let's redistribute the prefix 100.0.0.0/24 with a metric 20.
R3(config)#router os 1
R3(config-router)#no redistribute connected subnets metric-type 1 metric 21
R3(config-router)#redistribute connected subnets metric-type 1
Let's increase the cost of the interface E0/1 facing R3.
R1(config)#int e0/1
R1(config-if)#ip os cost 12
The total cost to reach 100.0.0.0/24 through R2 is 20+10=30.
The total cost to reach 100.0.0.0/24 through R3 is 20+12=32.
Let's verify the routing table of R1, once again the ON1 route through R3 is installed even if the total cost 32 to 100.0.0.0/24 is greater than the total cost 30 to 100.0.0.0/24 via R2.
R1#sh ip route | s 100.0.0.0
100.0.0.0/24 is subnetted, 1 subnets
O N1 100.0.0.0 [110/32] via 13.0.0.3, 00:00:13, Ethernet0/1
R4
To summarize, if multiple paths through non-backbone and backbone area exist, Intra-area path using non-backbone area to the ASBR is preferred (according to RFC 2328 section 16.4.1.External path preferences) regardless the total metric (Sum of : Redistributed Metric + Metric to the ASBR or the Forward Address).
R1#sh ip os int br
Interface PID Area IP Address/Mask Cost State Nbrs F/C
Et0/1 1 13 13.0.0.1/24 10 BDR 1/1
Et0/2 1 14 14.0.0.1/24 10 BDR 1/1
R1#
Now what if multiple paths through non-backbone area exist?
Let's configure area 13 as NSSA while the area 14 is regular area.
On R3, redistribute the prefix 100.0.0.0/24 as External Type-1 with default metric 20.
R3(config)#router ospf 1
R3(config-router)#redistribute connected subnets metric-type 1
On R4, redistribute the prefix 100.0.0.0/24 as External Type-1 with default metric 20.
R4(config)#router os 1
R4(config-router)#redistribute connected subnets metric-type 1
Let's verify the Type-5 LSA advertised by R4. The redistributed metric is 20.
R1#sh ip os data ex ad 0.0.0.4 | i Metric|Link State ID
Link State ID: 100.0.0.0 (External Network Number )
Metric Type: 1 (Comparable directly to link state metric)
Metric: 20
R1#
Let's verify the Type-7 LSA advertised by R3. The redistributed metric is 20.
R1#sh ip os data nssa-ex ad 0.0.0.3 | i Metric|Link State ID
Link State ID: 100.0.0.0 (External Network Number )
Metric Type: 1 (Comparable directly to link state metric)
Metric: 20
R1#
If multiple paths through non-backbone area exist with the same metric (Sum of : Redistributed Metric + Metric to the ASBR or the Forward Address), OE1 is preferred than ON1 (RFC 1587 section 3.5 Calculating Type-7 AS External Routes).
The routing table of R1 shown that the OE1 route through R4 is installed.
R1#sh ip route | s 100.0.0.0
100.0.0.0/24 is subnetted, 1 subnets
O E1 100.0.0.0 [110/30] via 14.0.0.4, 00:00:20, Ethernet0/2
R1#
Now what If multiple paths through non-backbone area exist with different total metric?
On R3, let's redistribute the prefix 100.0.0.0/24 with a metric 19.
R3(config)#router osp 1
R3(config-router)#redistribute connected subnets metric-type 1 metric 19
R4 redistributes the prefix 100.0.0.0/24 with default metric 20.
R4(config)#router osp 1
R4(config-router)#redistribute connected subnets metric-type 1
Let's verify the Type-5 LSA advertised by R4. The redistributed metric is 20.
R1#sh ip os data ex ad 0.0.0.4 | i Metric|Link State ID
Link State ID: 100.0.0.0 (External Network Number )
Metric Type: 1 (Comparable directly to link state metric)
Metric: 20
R1#
Let's verify the Type-7 LSA advertised by R3. The redistributed metric is 19.
R1#sh ip os data nssa-ex ad 0.0.0.3 | i Metric|Link State ID
Link State ID: 100.0.0.0 (External Network Number )
Metric Type: 1 (Comparable directly to link state metric)
Metric: 19
R1#
Let's verify the routing table of R1. The ON1 route is installed because it has a better total metric 29 compared to the total metric 30 of the OE2 route via R4.
R1#sh ip route | s 100.0.0.0
100.0.0.0/24 is subnetted, 1 subnets
O N1 100.0.0.0 [110/29] via 13.0.0.3, 00:02:07, Ethernet0/1
R1#
If multiple paths through non-backbone area exist with different total metric, Selection is based on the best metric (Sum of : Redistributed Metric + Metric to the ASBR or the Forward Address).
To confirm, let's redistribute the prefix 100.0.0.0/24 on R3 with default metric as with R4.
R3(config)#router osp 1
R3(config-router)#no redistribute connected subnets metric-type 1 metric 19
R3(config-router)#redistribute connected subnets metric-type 1
If you check the routing table, once again if multiple paths through non-backbone area exist with the same metric (Sum of : Redistributed Metric + Metric to the ASBR or the Forward Address), OE1 is preferred than ON1 (RFC 1587 section 3.5 Calculating Type-7 AS External Routes).
R1#sh ip route | s 100.0.0.0
100.0.0.0/24 is subnetted, 1 subnets
O E1 100.0.0.0 [110/30] via 14.0.0.4, 00:00:16, Ethernet0/2
R1#
On R1, let's decrease the interface E0/1 facing the ASBR R3.
R1(config)#int e0/1
R1(config-if)#ip os cost 9
Let's check the cost of the interfaces facing the ASBRs R3 and R4.
R1#sh ip os int br
Interface PID Area IP Address/Mask Cost State Nbrs F/C
Et0/1 1 13 13.0.0.1/24 9 BDR 1/1
Et0/2 1 14 14.0.0.1/24 10 BDR 1/1
R1#
Let's verify the routing table of R1. The ON1 route is installed because it has a better total metric 29 compared to the total metric 30 of the OE2 route via R4.
R1#sh ip route | s 100.0.0.0
100.0.0.0/24 is subnetted, 1 subnets
O N1 100.0.0.0 [110/29] via 13.0.0.3, 00:00:01, Ethernet0/1
R1#
OE2 vs ON2 routes
On R2, redistribute the prefix 100.0.0.0/24 as External Type-2 with default metric 20.
R2(config)#router osp 1
R2(config-router)#redistribute connected subnets
On R3, redistribute the prefix 100.0.0.0/24 as External Type-2 with default metric 20.
R3(config)#router osp 1
R3(config-router)#redistribute connected subnets
Let's verify the Type-5 LSA advertised by R2. The redistributed metric is 20.
R1#sh ip os data ex ad 0.0.0.2 | i Metric|Link State ID
Link State ID: 100.0.0.0 (External Network Number )
Metric Type: 2 (Larger than any link state path)
Metric: 20
R1#
Let's verify the Type-7 LSA advertised by R3. The redistributed metric is 20.
R1#sh ip os data nssa-ex ad 0.0.0.3 | i Metric|Link State ID
Link State ID: 100.0.0.0 (External Network Number )
Metric Type: 2 (Larger than any link state path)
Metric: 20
R1#
Verify that the cost facing the two ASBRs R2 and R3 is the same.
R1#sh ip os int br
Interface PID Area IP Address/Mask Cost State Nbrs F/C
Et0/0 1 0 12.0.0.1/24 10 BDR 1/1
Et0/1 1 13 13.0.0.1/24 10 BDR 1/1
R1#
If the redistributed metric is the same. Intra-area path using non-backbone area to the ASBR is preferred (RFC 2328 section section 16.4.1.External path preferences) regardless the cost to the ASBR or the Forward Address (Metric to the ASBR or Forward Address ignored).
The Forward Address (13.0.0.3) ASBR R3 is reachable through the intra-area non-backbone area 13 while the ASBR R2 is reachable through the intra-area backbone area 12, and because RFC 2328 is enabled, the intra-area through the non-backbone area 13 is preferred. Therefore R1 installs the ON1 route. For OE2/ON2 routes, the rule of RFC 2328 is applied only if the redistributed metric is the same ((Metric to the ASBR or Forward Address ignored).
R1#sh ip route | s 100.0.0.0
100.0.0.0/24 is subnetted, 1 subnets
O N2 100.0.0.0 [110/20] via 13.0.0.3, 01:30:51, Ethernet0/1
R1#
Now what if multiple paths through non-backbone and backbone area exist with different redistributed metric?
On R2, let's redistribute the prefix 100.0.0.0/24 with a metric 19.
R2(config)#router osp 1
R2(config-router)#redistribute connected subnets metric 19
Let's verify the Type-5 LSA advertised by R2. The redistributed metric is 19.
R1#sh ip os data ex ad 0.0.0.2 | i Metric|Link State ID
Link State ID: 100.0.0.0 (External Network Number )
Metric Type: 2 (Larger than any link state path)
Metric: 19
R1#
If multiple paths through non-backbone and backbone area exist, selection is based on the Redistributed Metric (Metric to the ASBR or Forward Address ignored).
The redistributed metric 19 in the Type-5 LSA is lower than the redistributed metric 20 in the Type-7 LSA. Therefore R1 installs the OE2 route through R2.
R1#sh ip route | s 100.0.0.0
100.0.0.0/24 is subnetted, 1 subnets
O E2 100.0.0.0 [110/19] via 12.0.0.2, 00:00:19, Ethernet0/0
R1#
As mentioned previously, If multiple paths through non-backbone and backbone area exist, the Metric to the ASBR or Forward Address is ignored and the selection of the best path is based on the Redistributed Metric only listed in the Type-5 or Type-7 LSAs.
To confirm, on R2 let's redistribute the prefix 100.0.0.0/24 with default metric 20.
R2(config)#router osp 1
R2(config-router)#no redistribute connected subnets metric 19
R2(config)#router osp 1
R2(config-router)#redistribute connected subnets metric
Now The Type-5 LSA of R2 and the Type-7 LSA of R3 list the same redistributed metric 20.
So let's decrease the cost of the interface E0/0 facing the ASBR R2.
R1(config)#int e0/0
R1(config-if)#ip ospf cost 9
Let's verify the cost facing the ASBRs R2 and R3.
R1#sh ip os int br
Interface PID Area IP Address/Mask Cost State Nbrs F/C
Et0/0 1 0 12.0.0.1/24 9 BDR 1/1
Et0/1 1 13 13.0.0.1/24 10 BDR 1/1
R1#
Let's verify the routing table of R1, the ON1 route through R3 is the best path even if the cost 9 to reach the ASBR R2 is better or lower than the cost 10 to reach the Forward Address 13.0.0.3 (ASBR R3).
If the redistributed metric is the same. Intra-area path using non-backbone area to the ASBR is preferred (RFC 2328 section section 16.4.1.External path preferences) regardless the cost to the ASBR.
R1#sh ip route | s 100.0.0.0
100.0.0.0/24 is subnetted, 1 subnets
O N2 100.0.0.0 [110/20] via 13.0.0.3, 00:01:12, Ethernet0/1
R1#
Now what if multiple paths through non-backbone area exist?
On R3, let's redistribute the prefix 100.0.0.0/24 with default metric 20.
R3(config)#router osp 1
R3(config-router)#redistribute connected subnets
On R4, let's redistribute the prefix 100.0.0.0/24 with default metric 20.
R4(config)#router osp 1
R4(config-router)#redistribute connected subnets
Let's verify the Type-5 LSA advertised by R4. The redistributed metric is 20.
R1#sh ip os data ex ad 0.0.0.4 | i Metric|Link State ID
Link State ID: 100.0.0.0 (External Network Number )
Metric Type: 2 (Larger than any link state path)
Metric: 20
R1#
Let's verify the Type-7 LSA advertised by R3. The redistributed metric is 20.
R1#sh ip os data nssa-ex ad 0.0.0.3 | i Metric|Link State ID
Link State ID: 100.0.0.0 (External Network Number )
Metric Type: 2 (Larger than any link state path)
Metric: 20
R1#
Let's check the cost facing the ASBRs R3 and R4. The same cost is used.
R1#sh ip os int br
Interface PID Area IP Address/Mask Cost State Nbrs F/C
Et0/1 1 13 13.0.0.1/24 10 BDR 1/1
Et0/2 1 14 14.0.0.1/24 10 BDR 1/1
R1#
If multiple paths through non-backbone area exist, if the Redistributed Metric is equal AND the metric to the ASBR or the Forward Address is equal (not the Sum), OE2 is preferred than ON2 (RFC 1587 section 3.5 Calculating Type-7 AS External Routes).
If you check the routing table of R1, once again if multiple paths through non-backbone area exist with the the Redistributed Metric and the same metric to the ASBR or the Forward Address (not the Sum). OE2 is preferred than ON2 (RFC 1587 section 3.5 Calculating Type-7 AS External Routes).
R1#sh ip route | s 100.0.0.0
100.0.0.0/24 is subnetted, 1 subnets
O E2 100.0.0.0 [110/20] via 14.0.0.4, 00:01:23, Ethernet0/2
R1#
If multiple paths through non-backbone area exist, selection is based on the best Redistributed Metric (Metric to the ASBR or Forward Address ignored).
Let's verify. On R3, let's redistribute the prefix 100.0.0.0/24 with a metric 19.
R3(config)#router osp 1
R3(config-router)#redistribute connected subnets metric 19
Since the redistributed metric 19 listed in the Type-7 LSA's R3 is lower than the redistributed metric 20 listed in the Type-5 LSA's R4.
Therefore the ON2 route through R3 is installed in R1's routing table.
R1#sh ip route | s 100.0.0.0
100.0.0.0/24 is subnetted, 1 subnets
O N2 100.0.0.0 [110/19] via 13.0.0.3, 00:00:16, Ethernet0/1
R1#
If multiple paths through non-backbone area exist, if the Redistributed Metric is equal AND the metric to the ASBR or the Forward Address is equal (not the Sum), OE2 is preferred than ON2 (RFC 1587 section 3.5 Calculating Type-7 AS External Routes).
On R4, let's redistribute the prefix with a metric 19.
R4(config)#router osp 1
R4(config-router)#redistribute connected subnets metric 19
Let's verify the Type-5 LSA advertised by R4. The redistributed metric is 19.
R1#sh ip os data ex ad 0.0.0.4 | i Metric|Link State ID
Link State ID: 100.0.0.0 (External Network Number )
Metric Type: 2 (Larger than any link state path)
Metric: 19
R1#
Let's verify the Type-7 LSA advertised by R3. The redistributed metric is 19.
R1#sh ip os data nssa-ex ad 0.0.0.3 | i Metric|Link State ID
Link State ID: 100.0.0.0 (External Network Number )
Metric Type: 2 (Larger than any link state path)
Metric: 19
R1#
Let's check the cost facing the ASBR R3 and R4, both ASBRs are reachable with the same metric.
R1#sh ip os int br
Interface PID Area IP Address/Mask Cost State Nbrs F/C
Et0/1 1 13 13.0.0.1/24 10 BDR 1/1
Et0/2 1 14 14.0.0.1/24 10 BDR 1/1
R1#
If you check the routing table of R1, once again if multiple paths through non-backbone area exist with the same Redistributed Metric and the same metric to the ASBR or the Forward Address (not the Sum). OE2 is preferred than ON2 (RFC 1587 section 3.5 Calculating Type-7 AS External Routes).
R1#sh ip route | s 100.0.0.0
100.0.0.0/24 is subnetted, 1 subnets
O E2 100.0.0.0 [110/19] via 14.0.0.4, 00:03:31, Ethernet0/2
R1#
Now what happen if multiple paths through non-backbone area exist with same Redistributed Metric but different cost to ASBRs?
Let's decrease the cost of E0/1 interface facing the ASBR R3.
R1(config)#int e0/1
R1(config-if)#ip os cost 9
If multiple paths through non-backbone area exist, and If the Redistributed Metric is equal, selection is based on the best metric to the ASBR or the Forward Address.
Since the cost 9 to reach the Forward Address 13.0.0.3 (ASBR R3) is lower than the cost 10 to reach the ASBR R2, R1 prefers the Type-7 LSA's R3 and installs the ON2 route.
R1#sh ip route | s 100.0.0.0
100.0.0.0/24 is subnetted, 1 subnets
O N2 100.0.0.0 [110/19] via 13.0.0.3, 00:00:17, Ethernet0/1
R1#
Finally let's decrease the cost of E0/2 interface facing the ASBR R4.
R1(config)#int e0/2
R1(config-if)#ip os cost 9
Now both Type-7 and Type-5 LSAs advertised by R3 and R4 respectively has the same redistributed metric 19.
Also both the ASBR R2 and the Forward Address 13.0.0.3 (ASBR R3) are reachable with the same metric 9.
As we said previously and according to RFC 1587 section 3.5 Calculating Type-7 AS External Routes, if multiple paths through non-backbone area exist with the same Redistributed Metric and the same metric to the ASBR or the Forward Address (not the Sum), the Type-5 LSA is preferred than the Type-7 LSA.
Therefore the routing table of R1 shows that OE2 route is preferred than ON2 route.
R1#sh ip route | s 100.0.0.0
100.0.0.0/24 is subnetted, 1 subnets
O E2 100.0.0.0 [110/19] via 14.0.0.4, 00:00:02, Ethernet0/2
R1#
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community: