On this lecture notes, I will be exploring one important topic in OSPF which is called Virtual Links. On my previous post, I have gone through several OSPF Special Areas. We have also learned that in order for one OSPF Areas to talk to another OSPF Areas, it has to go through the Backbone Area. We will proved this on this post as I will be going through some examples and verifications about this principles of OSPF.

 Important Concepts about OSPF Virtual Link.

 

Here is my lab topology,

 

Below are the Laboratory Objective:

1. Established a virtual links between SYDNEY and SINGAPORE.

2. Verify that AREA 2 cannot reach directly to AREA 1 from the topology above.

3. Enable Virtual-Links and verify whether SINGAPORE router will be able to reach the networks of SYDNEY and MANILA.

Here are my router configurations based on my topology,

MANILA#sh run | sec ospf
router ospf 1
 router-id 11.11.11.11     
 redistribute connected subnets
 network 11.11.11.11 0.0.0.0 area 0
 network 192.168.12.0 0.0.0.255 area 1
 network 192.168.14.0 0.0.0.255 area 0

MELBOURNE#sh run | sec ospf
router ospf 1
 router-id 22.22.22.22
 network 20.20.20.0 0.0.0.255 area 1
 network 22.22.22.22 0.0.0.0 area 2
 network 192.168.12.0 0.0.0.255 area 1
 network 192.168.23.0 0.0.0.255 area 2



SINGAPORE#sh run | sec ospf
router ospf 1
 network 30.30.30.0 0.0.0.255 area 2
 network 33.33.33.33 0.0.0.0 area 2
 network 192.168.23.0 0.0.0.255 area 2

SINGAPORE#



SYDNEY#sh run | sec ospf
router ospf 1
 router-id 44.44.44.44
 redistribute connected subnets
 network 44.44.44.44 0.0.0.0 area 0
 network 192.168.14.0 0.0.0.255 area 0


VERIFICATIONS:


1. Let’s check the OSPF adjacency ( by simply checking the MANILA & MELBOURNE routers, we can determine if adjacency is formed)

MANILA#sh ip ospf neighbor


Neighbor ID     Pri   State           Dead Time   Address         Interface
44.44.44.44       0   FULL/  –        00:00:33    192.168.14.4    Serial3/3  <<<  Adjacency to SYDNEY router
22.22.22.22       0   FULL/  –        00:00:34    192.168.12.2    Serial3/0   <<< Adjacency to MELBOURNE router

MANILA#



MELBOURNE#sh ip ospf neighbor


Neighbor ID     Pri   State           Dead Time   Address         Interface
11.11.11.11       0   FULL/  –        00:00:39    192.168.12.1    Serial3/0  <<< Adjacency to MANILA router
30.30.30.1        0   FULL/  –        00:00:33    192.168.23.3    Serial3/1   <<< Adjacency to SINGAPORE router

MELBOURNE#



2. But let’s check the routing table of SINGAPORE whether it has an entry for the Loopback address of SYDNEY and also for MANILA Loopback addresses. So as seen below, nothing is found in the routing table.
 
SINGAPORE#show ip route 40.40.40.0
% Network not in table


SINGAPORE#show ip route 10.10.10.0
% Network not in table
SINGAPORE#show ip route 10.10.11.0
% Network not in table
SINGAPORE#show ip route 10.10.12.0
% Network not in table
SINGAPORE#show ip route 10.10.13.0
% Network not in table

3. Let’s check the LSDB of SINGAPORE router. From the results below, we can see Type 5 AS External routes which I have redistributed into OSPF from MANILA router. We cannot find SYDNEY router Loopback here. So why do you think on the LSDB? We can see the LINK ID of the networks advertise in MANILA but as notice the Advertising Router (11.11.11.11).  This is MANILA router, right? MANILA router is connected to MELBOURNE router through AREA 1 which is not reachable from SINGAPORE router. We can see from SINGAPORE LSDB the Type 5 AS External LSA’s because MELBOURNE have received this as Type 5 AS external LSA from MANILA and since MELBOURNE have formed the adjacency with SINGAPORE through AREA 2, it has to send an LSU with the new LSDB .


 SINGAPORE#sh ip ospf database

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

                Router Link States (Area 2)

Link ID         ADV Router      Age         Seq#       Checksum Link count
22.22.22.22     22.22.22.22     1230        0x80000001 0x006D28 2
30.30.30.1      30.30.30.1      1229        0x80000005 0x00B967 3

                Type-5 AS External Link States

Link ID         ADV Router      Age         Seq#       Checksum Tag
10.10.10.0      11.11.11.11     1209        0x80000001 0x003323 0
10.10.11.0      11.11.11.11     1209        0x80000001 0x00282D 0
10.10.12.0      11.11.11.11     1209        0x80000001 0x001D37 0
10.10.13.0      11.11.11.11     1209        0x80000001 0x001241 0


 4. Let’s explore a bit by pinging the other routers from SINGAPORE.
 
SINGAPORE#ping 192.168.23.2
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.23.2, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 88/114/132 ms

 
SINGAPORE#ping 20.20.20.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 20.20.20.1, timeout is 2 seconds:
…..
Success rate is 0 percent (0/5)

SINGAPORE#ping 192.168.12.2
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.12.2, timeout is 2 seconds:
…..
Success rate is 0 percent (0/5)

SINGAPORE#sh ip route 20.20.20.1
% Network not in table
SINGAPORE#sh ip route 192.168.12.2
% Network not in table
SINGAPORE#




SINGAPORE#ping 40.40.40.1  <<< Ping to SYDNEY
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 40.40.40.1, timeout is 2 seconds:
…..
Success rate is 0 percent (0/5)


SINGAPORE#ping 10.10.10.1   <<< Ping to MANILA
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.10.10.1, timeout is 2 seconds:
…..
Success rate is 0 percent (0/5)
SINGAPORE#



So what can we conclude from the results above? Here is my understanding,

a. I can reach the Serial 3/2 of MELBOURNE router (192.168.23.2) as this is an OSPF interface with the same Area as SINGAPORE.

b. I cannot reach both the Loopback Interface and the Serial 3/0 of MELBOURNE as they are on different OSPF Areas. This only proves that communications between AREA 2 and AREA 1 will not work if they are not passing through the backbone area (Area 0). I want to prove this later on as well.

 5. Another important requirements to check is the ROUTER ID. On this lab, I have intentionally created a ROUTER ID for the 4 routers. I will be using this to for my Virtual-Links later on.


MANILA#sh ip ospf interface s3/0
Serial3/0 is up, line protocol is up
  Internet Address 192.168.12.1/24, Area 1, Attached via Network Statement
  Process ID 1, Router ID 11.11.11.11, Network Type POINT_TO_POINT, Cost: 64
  Topology-MTID    Cost    Disabled    Shutdown      Topology Name



MELBOURNE# sh ip ospf interface s3/0
Serial3/0 is up, line protocol is up
  Internet Address 192.168.12.2/24, Area 1, Attached via Network Statement
  Process ID 1, Router ID 22.22.22.22, Network Type POINT_TO_POINT, Cost: 64
  Topology-MTID    Cost    Disabled    Shutdown      Topology Name
        0           64        no          no            Base


SINGAPORE#sh ip ospf interface s3/1
Serial3/1 is up, line protocol is up
  Internet Address 192.168.23.3/24, Area 2, Attached via Network Statement
  Process ID 1, Router ID 30.30.30.1, Network Type POINT_TO_POINT, Cost: 64
  Topology-MTID    Cost    Disabled    Shutdown      Topology Name
        0           64        no          no            Base


SYDNEY#sh ip ospf interface    serial 3/3
Serial3/3 is up, line protocol is up
  Internet Address 192.168.14.4/24, Area 0, Attached via Network Statement
  Process ID 1, Router ID 44.44.44.44, Network Type POINT_TO_POINT, Cost: 64
  Topology-MTID    Cost    Disabled    Shutdown      Topology Name
        0           64        no          no            Base
  Transmit Delay is 1 sec, State POINT_TO_POINT


6. Now, let’s enable the VIRTUAL LINKS between SYDNEY and SINGAPORE. This can be done via AREA 1. It means, I need to created the so called “Virtual Tunnels” via AREA 1. We have to take note that virtual – links should ONLY be created between ABR’s (one ABR is the router connected to Area 0 and the other ABR is the router that is connected to the  OSPF Area we wanted to link up with Area 0).


MANILA(config)#router ospf 1
MANILA(config-router)#area 1 virtual-link 22.22.22.22  <<< ROUTER ID of MELBOURNE
MANILA(config-router)#


MELBOURNE(config)#router ospf 1
MELBOURNE(config-router)#area 1 virtual-link 11.11.11.11  <<< ROUTER ID of MANILA
MELBOURNE(config-router)#^Z


Upon enabling, I can see that adjacency were formed between the Virtual-links

MANILA(config-router)#
*Aug  4 18:41:06.151: %OSPF-5-ADJCHG: Process 1, Nbr 22.22.22.22 on OSPF_VL0 from LOADING to FULL, Loading Done
MANILA(config-router)#


MELBOURNE#sh ip ospf
*Aug  4 18:41:05.527: %OSPF-5-ADJCHG: Process 1, Nbr 11.11.11.11 on OSPF_VL2 from LOADING to FULL, Loading Done
MELBOURNE#sh ip ospf vi



Let’s check the Virtual-Link Status,

MANILA#sh ip ospf virtual-links
Virtual Link OSPF_VL0 to router 22.22.22.22 is up
  Run as demand circuit
  DoNotAge LSA allowed.
  Transit area 1, via interface Serial3/0
 Topology-MTID    Cost    Disabled     Shutdown      Topology Name
        0           64        no          no            Base
  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:07
    Adjacency State FULL (Hello suppressed)
    Index 2/3, retransmission queue length 0, number of retransmission 0
    First 0x0(0)/0x0(0) Next 0x0(0)/0x0(0)
    Last retransmission scan length is 0, maximum is 0
    Last retransmission scan time is 0 msec, maximum is 0 msec



MELBOURNE#sh ip ospf virtual-links
Virtual Link OSPF_VL2 to router 11.11.11.11 is up
  Run as demand circuit
  DoNotAge LSA allowed.
 
Transit area 1, via interface Serial3/0
 Topology-MTID    Cost    Disabled     Shutdown      Topology Name
        0           64        no          no            Base
  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:02
    Adjacency State FULL (Hello suppressed)
    Index 1/3, retransmission queue length 0, number of retransmission 0
    First 0x0(0)/0x0(0) Next 0x0(0)/0x0(0)
    Last retransmission scan length is 0, maximum is 0
    Last retransmission scan time is 0 msec, maximum is 0 msec




7. Now, Let’s check the routing information of  SINGAPORE whether it can already see the Loopback Interface address of SYDNEY and MANILA.


SINGAPORE#show ip route 40.40.40.0
Routing entry for 40.40.40.0/24
  Known via “ospf 1”, distance 110, metric 20, type extern 2, forward metric 192
  Last update from 192.168.23.2 on Serial3/1, 00:10:09 ago
  Routing Descriptor Blocks:
  * 192.168.23.2, from 44.44.44.44, 00:10:09 ago, via Serial3/1
      Route metric is 20, traffic share count is 1
 


SINGAPORE#show ip route 10.10.10.0
Routing entry for 10.10.10.0/24
  Known via “ospf 1”, distance 110, metric 20, type extern 2, forward metric 128
  Last update from 192.168.23.2 on Serial3/1, 00:12:58 ago
  Routing Descriptor Blocks:
  * 192.168.23.2, from 11.11.11.11, 00:12:58 ago, via Serial3/1
      Route metric is 20, traffic share count is 1
 


SINGAPORE#show ip route 10.10.11.0
Routing entry for 10.10.11.0/24
  Known via “ospf 1”, distance 110, metric 20, type extern 2, forward metric 128
  Last update from 192.168.23.2 on Serial3/1, 00:13:03 ago
  Routing Descriptor Blocks:
  * 192.168.23.2, from 11.11.11.11, 00:13:03 ago, via Serial3/1
      Route metric is 20, traffic share count is 1


SINGAPORE#show ip route 10.10.12.0
Routing entry for 10.10.12.0/24
  Known via “ospf 1”, distance 110, metric 20, type extern 2, forward metric 128
  Last update from 192.168.23.2 on Serial3/1, 00:13:07 ago
  Routing Descriptor Blocks:
  * 192.168.23.2, from 11.11.11.11, 00:13:07 ago, via Serial3/1
      Route metric is 20, traffic share count is 1
 


SINGAPORE#show ip route 10.10.13.0
Routing entry for 10.10.13.0/24
  Known via “ospf 1”, distance 110, metric 20, type extern 2, forward metric 128
  Last update from 192.168.23.2 on Serial3/1, 00:13:10 ago
  Routing Descriptor Blocks:
  * 192.168.23.2, from 11.11.11.11, 00:13:10 ago, via Serial3/1
      Route metric is 20, traffic share count is 1


SINGAPORE#ping 40.40.40.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 40.40.40.1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 184/204/228 ms
SINGAPORE#
SINGAPORE#ping 40.40.40.1 sou
SINGAPORE#ping 40.40.40.1 source 30.30.30.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 40.40.40.1, timeout is 2 seconds:
Packet sent with a source address of 30.30.30.1
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 124/188/268 ms


SINGAPORE#ping 10.10.10.1  source 30.30.30.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.10.10.1, timeout is 2 seconds:
Packet sent with a source address of 30.30.30.1
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 124/140/164 ms

SINGAPORE#

As observed, we have now the full connectivity between SINGAPORE and SYDNEY routers.   

Leave a comment

Quote of the week

"People ask me what I do in the winter when there's no baseball. I'll tell you what I do. I stare out the window and wait for spring."

~ Rogers Hornsby