OSPF Path Selection explained

Hello Vlad

Wow, that’s an interesting discovery. I labbed this one up and found the same result. And actually, it’s interesting that in my case the ABR chose the non-backbone route to the destination.

For some reason, it seems that OSPF will not load balance to destinations that may exist in different areas. I have been unable to find any documentation that tells us why, but there is a possibility that this behavior is Cisco-specific or even IOS-specific. RFC 2328 regarding OSPF load balancing, states the following:

    There is no requirement that a router running OSPF keep track of
    all possible equal-cost routes to a destination.  An
    implementation may choose to keep only a fixed number of routes
    to any given destination.  This does not affect any of the
    algorithms presented in this specification.

This seems to jive with what is happening here. It would be interesting if you could experiment further to see what is used as the tiebreaker. Could it be the next hop IP address or the router ID of the advertising router? It would be an interesting experiment to undertake.

I hope this has been helpful!

Laz