Introduction
This document describes a new Open Shortest Path First version 3 (OSPFv3) configuration command on a Cisco IOS® XR router which is an OSPFv3 Area Border Router (ABR). This command enables the translation from a Type-7 LSA from a Not-So-Stubby Area (NSSA)
with a forwarding address zero, to a Type-5 LSA.
Problem
A Cisco IOS XR router which is an OSPFv3 ABR for a NSSA area stops the translation of Type-7 LSAs into Type-5 LSAs when the forwarding address is zero, after a software upgrade to Release 5.3.4, Release 6.2.1 or Release 6.4.1.
The RFC 3101 section 3.2 "Translating Type-7 LSAs into Type-5 LSAs" specifies that the ABR of an NSSA area does not translate Type-7 LSAs into Type-5 LSAs if the forwarding address is zero. This applies to OSPFv2 and OSPFv3.
However the Cisco IOS XR implementation of OSPFv3 allowed the translation of Type-7 LSA with zero forwarding address into Type-5 LSA.
Since the Type-7 to Type-5 LSA translation in that context was not RFC-compliant, this was removed by Cisco bug ID CSCva64125 in Release 5.3.4 and Release 6.2.1.
This change caused some reachability issues in production networks after a software upgrade, so the change was reverted back in Release 5.3.4 Service Pack 3, Release 6.2.2, and Release 6.3.1 by Cisco bug ID CSCvd81695.
Solution
At that point the Cisco IOS XR OSPFv3 implementation was again not RFC-compliant, so the final change was introduced by Cisco bug ID CSCvd81715 in Release 6.4.1.
-
In Cisco IOS XR Release 6.4.1 and later, by default, Cisco IOS XR does not translate Type-7 LSAs into Type-5 LSAs when the forwarding address is zero. So Cisco IOS XR is again RFC-compliant by default.
-
If you were relying on the non RFC-compliant behavior of old Cisco IOS XR versions, a new configuration command has been introduced in Release 6.4.1 in order to re-enable the translation of Type-7 LSA with a zero forwarding address into Type-5 LSA on the NSSA ABR. You must configure this command when upgrading to Release 6.4.1 or higher if you want to preserve the same non RFC-compliant behavior.
This new configuration command to enable the translation of Type-7 LSA with a zero forwarding address into Type-5 LSA on the NSSA ABR router is:
router ospfv3 <process>
capability type7 translate zero-forward-addr
Example
Before the new capability command is applied, the routing bit is not set on the Type-7 LSA, and no Type-5 LSA is originated. Notice that the Forward Address is not present:
RP/0/RP0/CPU0:NSSA_ABR#show ospfv3 database nssa 2001:db8:1:2::/64
OSPFv3 Router with ID (10.0.0.1) (Process ID 100)
Type-7 AS External Link States (Area 111)
LS age: 639
LS Type: AS External Link
Link State ID: 2
Advertising Router: 10.0.0.2
LS Seq Number: 80007ffa
Checksum: 0x83e3
Length: 36
Prefix Address: 2001:db8:1:2::
Prefix Length: 64, Options: P , Priority: Low
Metric Type: 1 (Comparable directly to link state metric)
Metric: 0
After the capability type7 translate zero-forward-addr configuration command is committed, the routing bit is set on the Type-7 LSA:
RP/0/RP0/CPU0:NSSA_ABR#show ospfv3 database nssa 2001:db8:1:2::/64
OSPFv3 Router with ID (10.0.0.1) (Process ID 100)
Type-7 AS External Link States (Area 111)
Routing Bit Set on this LSA
LS age: 125
LS Type: AS External Link
Link State ID: 2
Advertising Router: 10.0.0.2
LS Seq Number: 80007ffc
Checksum: 0x7fe5
Length: 36
Prefix Address: 2001:db8:1:2::
Prefix Length: 64, Options: P , Priority: Low
Metric Type: 1 (Comparable directly to link state metric)
Metric: 0
External Route Tag: 0
The Type-5 external LSA is now originated:
RP/0/RP0/CPU0:NSSA_ABR#show ospfv3 database external 2001:db8:1:2::/64
OSPFv3 Router with ID (10.0.0.1) (Process ID 100)
Type-5 AS External Link States
LS age: 190
LS Type: AS External Link
Link State ID: 0
Advertising Router: 10.0.0.1
LS Seq Number: 80000001
Checksum: 0x9ada
Length: 36
Prefix Address: 2001:db8:1:2::
Prefix Length: 64, Options: None, Priority: Low
Metric Type: 1 (Comparable directly to link state metric)
Metric: 0
External Route Tag: 0