cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
884
Views
5
Helpful
1
Replies

OSPF Forward Address Selection/Suppression

acalderone
Level 1
Level 1

I'm trying to make sure I understand exactly how an ASBR sets the forwarding address on a Type 7 LSA, and am not quite putting the final pieces of the puzzle together.  I have a router, R7 that is redistributing EIGRP routes into an OSPF NSSA area.  

According to http://www.cisco.com/c/en/us/support/docs/ip/open-shortest-path-first-ospf/13682-10.html there are multiple conditions that must be met for setting the forward address to a non-zero value.  First, the next-hop interface for those routes needs to be running OSPF.  For this scenario, that would be interface E 0/1.79, which is the interface that I'm learning the EIGRP routes on

I'm expecting R7 to set the forwarding address to 0.0.0.0, as I do not have his E 0/1.79 interface running OSPF.  In this case however, he is still setting the FA:

R7# show ip ospf int br
Interface    PID   Area            IP Address/Mask    Cost  State Nbrs F/C
Lo0          1     10              150.1.7.7/32       1     LOOP  0/0
Et0/1.67     1     10              155.1.67.7/24      10    DR    1/1
Et0/1.37     1     10              155.1.37.7/24      10    DR    1/1

 

R7#show ip ospf data nssa-external

            OSPF Router with ID (150.1.7.7) (Process ID 1)

                Type-7 AS External Link States (Area 10)

  LS age: 514
  Options: (No TOS-capability, Type 7/5 translation, DC, Upward)
  LS Type: AS External Link
  Link State ID: 150.1.9.9 (External Network Number )
  Advertising Router: 150.1.7.7
  LS Seq Number: 80000004
  Checksum: 0x712D
  Length: 36
  Network Mask: /32
        Metric Type: 2 (Larger than any link state path)
        MTID: 0
        Metric: 20
        Forward Address: 150.1.7.7
        External Route Tag: 0

Why is R7, the ASBR, setting the FA for these routes?  Doesn't the interface between 7 and 9 need to be in OSPF for this condition to be met?

Further, after seeing that R7 has selected its loopback interface as the forwarding address, I'm setting the loopback interface to be passive, since not being a passive-interface is also one of the conditions for being used as the FA.  Yet, again, it makes no difference, and R7 continues to set 150.1.7.7 (the IP of his loopback interface) as the forward address on his Type 7 LSA.

What am I missing here?

1 Reply 1

Rolf Fischer
Level 9
Level 9

Hi,

this is one of the differences between Type-5 and Type-7 LSAs.

The conditions described in the linked Cisco document were defined in the OSPFv2 standard (RFC 2328). NSSAs are an extension to this standard and specified in RFC 3101; and with very few exceptions, a NSSA ASBR must always set the forwarding address to a non-zero value. You can find the details in chapter 2.3 (Type-7 LSAs).

In a nutshell:

  • when a next-hop IP address exists and it belongs to a network assigned to a local OSPF-enabled interface in that NSSA, then the next-hop IP address is selected as the forwarding address (RFC). In contrast to the Type-5 conditions, the interface can be OSPF-passive or type point-to-point.
  • otherwise,  a Cisco router selects the forwarding address using the following rules (Understand Selection of Forwarding Address in OSPF):
  • (1): If there is a loopback configured in the area then IP address of loopback is selected as forwarding address.
  • (2): If first condition is not met then IP address of first interface on the OSPF interface list is selected as forwarding address. You can see OSPF interface list by using "show ip ospf interface brief" command. The interface on top will be the last interface which was attached to OSPF.

In the case of loopback interfaces, the OSPF interface list seem to have always the one with the highest IP address on top; probably because this is also the prefered one in the router-ID selection.

HTH
Rolf