Showing results for 
Search instead for 
Did you mean: 

OSPF reliable conditional default routing




In conditional default routing, route-map attached under the "default-information originate" command check the matched subnets present in the IP routing table. Once uplink goes down, router removes route from routing table and the originated default route is withdrawn from OSPF domain. Monitoring layer 2 interface status is not accurate indication of end-to-end reachability. Sometimes it might be possible that interface status is showing UP/UP locally but the circuit itself could be down .In such situation router will not remove connected interface subnet or any configure static route to that interface can still cause default route advertisement. A good design is to employ IP SLA tracking which is more reliable than layer 2 interface status; this provides accurate end-to-end reachability information.


It is assumed that reader already has knowledge of  OSPF Conditional default routing and IP SLA.

To know about OSPF condition route advertisement please read this document:
Conditional default route advertisement in OSPF

OSPF default route advertisement

Configuration Steps:

1) Configure IP SLA instance and corresponding track object.
2) Use reliable static routing to configure a static host route for a bogus IP address pointing to null0 interface.
As best practices use bogus IP address as link local address because link-local address is intended only for communications within the segment of a local network that a host is connected to. Routers do not forward packets with link-local addresses. Address block for ipv4 is
3) Conditionally advertise default route into OSPF based on presence of the static host route.


R1 and R2 runs OSPF in area 0 .One end of the router R1 is connected to service provider router ISP1 through the Ethernet switch Sw1 while other end is connected to R2. If you configured a default conditional route on R1 matching interface prefix, R1 will advertise default route in OSPF domain R2.But the problem here is even if ISP1 link to Sw1 goes down, R1 links to Sw1 will be in UP/UP state and shows connected route in its routing table. Hence even if there is no end to end connectivity between R1 and ISP1, R1 still advertise default route to OSPF domain. To avoid such case you need to configure reliable default routing by using IP SLA.

Basic configuration:


interface FastEthernet0/0
ip address
duplex auto
speed auto

router ospf 100
network area 0

interface FastEthernet0/0
ip address
duplex auto
speed auto
interface FastEthernet0/1
ip address
duplex auto
speed auto
router ospf 100
network area 0

Topology Diagram




Configure Reliable default routing on R1:



Step1:Configure IP SLA and Tracking object: Configure IP SLA to check reachability of ISP1 interface IP address using ICMP.


R1#conf t

Enter configuration commands, one per line.  End with CNTL/Z.

R1(config)#ip sla 1

R1(config-ip-sla)#icmp-echo source-ip

R1(config-ip-sla-echo)#frequency 5


R1(config)#ip sla schedule 1 start-time now life forever

R1(config)#track 1 rtr 1 reachability


*Mar  1 01:28:25.683: %TRACKING-5-STATE: 1 rtr 1 reachability Down->Up


Step2:Configure a static host route for a bogus IP address pointing to null0 interface. When we attach track argument to static route, failure of track cause the static route to be remove from routing table.


R1(config)#ip route null 0 track 1


Step3:Conditionally advertise default route into OSPF based on presence of the above static route in routing table.

R1(config)#ip prefix-list default_route seq 10 permit

R1(config)#route-map OSPF_default permit 10

R1(config-route-map)# match ip address prefix-list default_route


R1(config)#router ospf 100

R1(config-router)#default-information originate always route-map OSPF_default



As per condition,
1) R1 will advertise default route when there is prefix present in routing table.
2) R1 will remove prefix from routing table when there is failure in tracking object.
3) Tracking object failure depends on the failure of ping response from ISP1 interface.

On R1 tracking object is showing UP

R1#sh track

Track 1

  Response Time Reporter 1 reachability

  Reachability is Up

    2 changes, last change 00:00:51

  Latest operation return code: OK

  Latest RTT (millisecs) 320

  Tracked by:



As tracking object is UP static route pointed to null 0 must be in routing Table:

R1#sh ip route | in Null0

S is directly connected, Null0


As configure bogus static route in routing table, R1 will advertise default route in OSPF domain. Let’s verify default route on R2.


R2#sh ip ospf database | in     282         0x80000001 0x001FC4 100

R2#sh ip route ospf

O*E2 [110/1] via, 00:04:48, FastEthernet0/0


If you disable ISP1 interface, R1 interface to Sw1 remain UP/UP but ICMP failure to R1 to ISP1 cause to tracking object failure. Due to same R1 remove static route from routing table that will instruct OSPF process to stop default route advertisement.

ISP1(config)#int fa0/0



*Mar  1 01:38:18.719: %LINK-5-CHANGED: Interface FastEthernet0/0, changed state to administratively down

*Mar  1 01:38:19.719: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/0, changed state to down


R1#sh ip int brief | exclude un

Interface                  IP-Address      OK? Method Status                Protocol

FastEthernet0/0          YES manual up                    up

FastEthernet0/1       YES manual up                    up



*Mar  1 01:38:30.683: %TRACKING-5-STATE: 1 rtr 1 reachability Up->Down

R1#sh track

Track 1

  Response Time Reporter 1 reachability

  Reachability is Down

    3 changes, last change 00:00:22

  Latest operation return code: Timeout

  Tracked by:



R1#sh ip route | in Null0



Turned on debug in R2 to get closer view of default route deletion.

R2#debug ip routing

IP routing debugging is on


*Mar  1 01:42:39.283: RT: del via, ospf metric [110/1]

*Mar  1 01:42:39.287: RT: delete network route to

*Mar  1 01:42:39.287: RT: NET-RED

*Mar  1 01:42:39.287: RT: NET-RED

Related Information

How Does OSPF Generate Default Routes?

How OSPF Injects a Default Route into a Normal Area




Base Initial configuration:





Any idea what we could do in the case when IP sla is not available? e.g multy-context firewall ?

How do we make a condition to remove the static route in the event when we lose an uplink for example ?

Content for Community-Ad