OSPF Virtual Link


Scenario:

You are a freelance network engineer specialized in routing and switching. One of your customers (a local butcher) has some trouble setting up their OSPF network. Some of the networks are not reachable and it’s up to you to provide them with a solu

Goal:

  • All IP addresses have been preconfigured for you as specified in the topology picture.
  • Each router has a loopback0 interface.
  • Configure OSPF on all routers.
  • Ensure you restore connectivity for the discontigious backbone area 0.
  • Ensure area 2 has connectivity to the backbone area.

It took me 1000s of hours reading books and doing labs, making mistakes over and over again until I mastered all the protocols for CCNP.

Would you like to be a master of networking too? In a short time without having to read 900 page books or google the answers to your questions and browsing through forums?

I collected all my knowledge and created a single ebook for you that has everything you need to know to become a master of CCNP.

You will learn all the secrets about OSPF virtual links, discontigious backbones and more.

Does this sound interesting to you? Take a look here and let me show you how to Master CCNP ROUTE!

IOS:

c3640-jk9s-mz.124-16.bin

Topology:

OSPF Virtual Link Network Topology

Video Solution:

Configuration Files

You need to register to download the GNS3 topology file. (Registration is free!)

Once you are logged in you will find the configuration files right here.

Opt In Image
Do you want your CCNA or CCNP Certificate?

The How to Master series helps you to understand complex topics like spanning-tree, VLANs, trunks, OSPF, EIGRP, BGP and more.

Written by René Molenaar - CCIE #41726

You May Also Like

About the Author: Rene Molenaar

René - CCIE #41726 is the creator of GNS3Vault.com where he shares CCNA, CCNP and CCIE R&S labs. He also blogs about networking on http://networklessons.com

21 Comments

  1. I am not sure why router FISH would need a virtual link setup on it as it already has connectivity to the backbone because BEEF is the ABR and has an interface in area 0

  2. Router beef is internal area 1 router, not ABR. Virtual link between Pork an Chicken do not make router beef an ABR. So we need at least 2 virtual links i this lab:
    1. Pork – Chicken
    2. Fish – Pork or Fish – Chicken

    1. This is correct. Router Beef is just an internal router for area 1. Fix those two virtual links and you have fixed this issue.

      Keep in mind you can also use GRE tunnels instead of the virtual links to fix these problems. That’s not something you would normally do but it’s something the CCIE students should remember 🙂

  3. Hello

    Out of curiosity I wanted to try out the solution with the GRE tunnels.
    I use tunnels only to connect router Fish with router Chicken. For Chicken and Pork I use the virtual link.

    So, what I configured is this. 10.1.1.0/24 is used for the tunnel interface.

    On Chicken:
    interface Tunnel1
    ip address 10.1.1.1 255.255.255.0
    tunnel source FastEthernet0/0
    tunnel destination 192.168.24.4

    router ospf 1
    log-adjacency-changes
    area 1 virtual-link 3.3.3.3
    network 1.1.1.0 0.0.0.255 area 0
    network 10.1.1.0 0.0.0.255 area 2
    network 192.168.12.0 0.0.0.255 area 1

    On Fish:
    interface Tunnel1
    ip address 10.1.1.4 255.255.255.0
    tunnel source FastEthernet0/0
    tunnel destination 192.168.12.1

    router ospf 1
    log-adjacency-changes
    network 4.4.4.0 0.0.0.255 area 2
    network 10.1.1.0 0.0.0.255 area 2
    network 192.168.24.0 0.0.0.255 area 1

    Fish#sh ip ospf ne

    Neighbor ID Pri State Dead Time Address Interface
    2.2.2.2 1 FULL/DR 00: 00 :34 192.168.24.2 FastEthernet0/0
    1.1.1.1 0 FULL/ – 00: 00 :35 10.1.1.1 Tunnel1

    And now I can ping:
    Fish#ping 1.1.1.1 source lo0

    Type escape sequence to abort.
    Sending 5, 100-byte ICMP Echos to 1.1.1.1, timeout is 2 seconds:
    Packet sent with a source address of 4.4.4.4
    !!!!!
    Success rate is 100 percent (5/5), round-trip min/avg/max = 44/53/68 ms

    Is this the correct way to go about it?

    1. Yes that looks fine to me! Create a GRE tunnel, configure a subnet on it and run OSPF on it 🙂

  4. Renee,

    Thank you so much for all the labs it really helps solidify materials learned.

    Can you please explain to me why you would only connect router fish to either Chicken or Portk and not both with virtual links.

    1. HI,

      Fish technically only needs one connection to Area 0 (backbone area), not 2, so connecting it to either Pork or Chicken meets the requirement.

  5. I didn’t have to set up a virtual link between Pork and Chicken. When I set up OSPF, router beef sent the routes from each router to them. I don’t know why you had to do that…. can you explain?

    1. But i think it’s needed. area 0 is discontiguous, so virtual-link should be created between chicken and pork.

      Indeed, if you don’t create virtual-link you will see 1.1.1.0/24 from Pork and 3.3.3.0/24 from chicken, but you will see them as inter-area routes.. Creating the virtual-link between this 2 routers, you will see the route as intra-area (which is correct, as both routers belong to area 0)

  6. Hi Rene,

    Im Beginner on ospf.
    How I can using virtual link with another process ID in every area?

    Maybe you have some examples LAB, how to play the OSPF with different process ID

    Thanks
    Ael

    1. Hi Ael,

      With OSPF the process ID does not matter, they will still form a neighbor relationship no matter what, i.e. ‘router ospf 1’ for RID 1.1.1.1 or ‘router ospf 4’ for RID 4.4.4.4.

      Kind Regards
      Daniel

  7. When I configure OSPF on all routers, Fish router has all routes, (from area 0), so I dont need configure virtual link?
    I don’t understand

    1. This goal make Router on All area connect directly to Area 0 so, we use virtual link to make this connection to Area 0 and you must have 1 same subnet for router on Area 0 and Area 2

      CMIIW

  8. Hi,

    Without configuring VL between chicken and pork, they can reach each other.. Routes are also appearing as intra area only. Can you explain why thr is requirement of VL between chicken and pork.. Instead fish can have 2 VL for chicken and pork..

    Chicken#sh run | sec ospf
    router ospf 1
    log-adjacency-changes
    area 1 virtual-link 4.4.4.4
    network 1.1.1.0 0.0.0.255 area 0
    network 192.168.12.0 0.0.0.255 area 1
    Chicken#sh ip route
    Codes: C – connected, S – static, R – RIP, M – mobile, B – BGP
    D – EIGRP, EX – EIGRP external, O – OSPF, IA – OSPF inter area
    N1 – OSPF NSSA external type 1, N2 – OSPF NSSA external type 2
    E1 – OSPF external type 1, E2 – OSPF external type 2
    i – IS-IS, su – IS-IS summary, L1 – IS-IS level-1, L2 – IS-IS level-2
    ia – IS-IS inter area, * – candidate default, U – per-user static route
    o – ODR, P – periodic downloaded static route

    Gateway of last resort is not set

    C 192.168.12.0/24 is directly connected, FastEthernet0/0
    1.0.0.0/24 is subnetted, 1 subnets
    C 1.1.1.0 is directly connected, Loopback0
    3.0.0.0/32 is subnetted, 1 subnets
    O 3.3.3.3 [110/3] via 192.168.12.2, 00:06:34, FastEthernet0/0
    4.0.0.0/32 is subnetted, 1 subnets
    O IA 4.4.4.4 [110/3] via 192.168.12.2, 00:06:34, FastEthernet0/0
    O 192.168.24.0/24 [110/2] via 192.168.12.2, 00:06:58, FastEthernet0/0
    O 192.168.23.0/24 [110/2] via 192.168.12.2, 00:06:58, FastEthernet0/0
    Chicken#

  9. Hi Rene and the other participants

    Thanks a lot RENNE for your hard work …

    I agree with dheer …i did the same and have full connectivity …

    The way RENE did is another way to solve the problem and both ways the number of commands and time taken to get full connectivity is the same

  10. when i opened, after extraction the configuratiom files in gns 3 i found this error in gns 3
    =>
    Error in loading .net file:
    Invalid line at line “1”.
    {

    Press ENTER to continue
    what should i do now?

  11. Question: If I were to build Virtual links between Fish and Chicken and Fish and Pork, would that also serve to link Area 0 behind Pork and Chicken together?

    In a split Area 0 condition, what exactly would be broken? If that were to happen in a production network where a link between two area 0 routers went down, how would I detect that?

    1. A virtual link makes another router an ABR, so daisy chaining VLs should technically be possible, despite terrible design.

      An ABR cannot accept an LSA3 on a non-area 0 interface. For example, if I am an ABR and I receive an LSA3 on an area 1 interface, that means someone else is an ABR that I don’t know about, and i will never install the router (unless area 0 is inactive, meaning I have no neighbors).

  12. You need to update this labs with the new version of GNS3 because it is giving errors to the customers and users.

    Best Regards,

    Cesar Morera
    CCNA Routing and Switching certified

Comments are closed.