OSPF Virtual Links

OSPF Virtual Links

Problem

You want to configure a virtual link between two routers to link up a fragmented Area.

Solution

Use the area virtual-link command to configure an OSPF virtual link between two routers:

Router9#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Router9(config)#router ospf 1
Router9(config-router)#area 10 virtual-link 10.54.0.1
Router9(config-router)#exit
Router9(config)#end
Router9#

Discussion

This feature is commonly used when an area has become fragmented and two routers need to tunnel their OSPF neighbor relationship across multiple links. This is usually not a problem if the two routers and the intervening networks are all in the same area. However, it can be a serious problem in particular if you have an ABR that is buried inside a nonbackbone area without a direct connection to area 0.

You can see the status of a virtual link with the show ip ospf virtual-links command:

Router9#show ip ospf virtual-links
Virtual Link OSPF_VL1 to router 10.54.0.1 is up
Run as demand circuit
DoNotAge LSA allowed.
Transit area 10, via interface Serial0/0, Cost of using 74
Transmit Delay is 1 sec, State POINT_TO_POINT,
Timer intervals configured, Hello 10, Dead 40, Wait 40, Retransmit 5
Hello due in 00:00:00
Router9#

There are a few tricks to this command. First, you must configure the virtual link command on both of the routers that you wish to connect. Second, the IP address that you configure in this command must be the OSPF router ID of the other router. This also means that you must make sure that you can ping this router ID address:

Router9(config)#router ospf 1
Router9(config-router)#area 10 virtual-link 10.54.0.1

And finally, the OSPF area indicated as the second field in the command is the area that the virtual link must pass through to reach the destination router. It needn't have anything to do with the fragmented area that you are trying to reconnect.