While studying for CCIE, i realized that no scenario will be without connecting different OSPF areas. So, what are the rules when having multiple areas in OSPF to have a fully converged network with full route propagation? The rule is one
Every Area is OSPF should be connected to Area 0
That is the requirement, but is it possible to have them all connected. Yes, specially in a green network (new network design). But what happens when different networks get connected randomly cause of some older design that existed (this what happens in real life). For that there are few methods to resolve this issue. Namely:
- Virtual Links
- GRE Tunnels
- Different OSPF instances
Lets have a look at diagram 1 to get the feeling of the scenario at hand. We have three routers in Area 0, one router between area 1 and 2. and one router between area 2 and 3.
Now routers in Area 1 will not have any issue, since they are connected to Area 0 through R1 and R2. But routers in Area 2 will suffer (other than R3) as they are not connected to Area 0. All routers in Area 3 won’t have any interarea routes as they are not connected to Area 0.
Virtual links by their name, it means a link that will virtually connected any area to another area. For the above Scenario, we can create a virtual link between R3 and R1/R2. Once that is done, R2 will be virtually part of Area 0. Thus Area 2 will be directly connected to Area 0, and route propagation will work as intended. A second virtual link will be required between R4 and R3. Since R3 is part of Area 0, a Virtual link from R4 will make R4 part of Area 0.
Can a Virtual link extend from R4 to R1/R2 directly? No. that is not possible. Virtual links can connected two routers in the same Area.
Will GRE tunnel are functionally the same as Virtual links, the only real issue with these tunnels is that you don’t want to learn the tunnel destination through the tunnel itself. (a common issue that should be aware of when creating GRE tunnels).
Once the GRE tunnels are created, we make the Tunnel interface in Area 0. Thus connecting the OSPF areas. A Tunnel can form between R3 and R1/R2. While another Tunnel between R4 and R3.
The GRE tunnel can be formed directly between R4 and R1/R2. But how will the route of tunnel destination be reached without functioning routing table? Not possible, unless we run other protocols in the same routers, which defies the purpose of having OSPF. So the solution is Two Tunnels.
Unlike EIGRP, different routers using different OSPF instances can become neighbors. Since Area 1 has no issues. The solution is to run two instances of OSPF in R3. OSPF 1 for Area 1, and OSPF 2 for Area 2. Then do mutual route redistribute between OSPF 1 and OSPF 2 in R3. This will give full routing information in Area 2. Once that is done, the same exercise should be done in R4. R4 will have OSPF 1 for Area 2 and OSPF 2 for Area 3, then perform Mutual redistribution.