DMVPN Phases in distance vector

Distance vector routing over the DMVPN Phases

In my previous post, I explained the difference in the phases of DMVPN. The setup is as follows: R1 is the hub, R2 and R3 are spokes. Each has a loopback of 1.1.1.1, 2.2.2.2 and 3.3.3.3 respectively:

DMVPN Lay-out

So, we have the tunnels set up, but how do we route over it? It is not so difficult. Phase 1 and phase 3 both want all routes pointing to the hub, phase 2 want the routes pointing to the respective routers originating them. For the distance vector routing this boils down to:

Phase 1 2 3
EIGRP split-horizon OFF & next-hop-self ON split-horizon OFF & next-hop-self OFF Summarise
RIP split-horizon OFF split-horizon OFF & use RIPv2 Summarise and turn ON split horizon

Below are the explanations and parts of the configurations, as they differ from using the routing protocol on normal Ethernet interfaces. If you want full configurations, you can see examples of each on Fryguy’s Blog

The outputs below will have the DMVPN phase followed by the routernumber used as hostname. So, Phase3-1 is R1 (the hub) in Phase 3.

RIP

At first I thought that in RIP, you can’t turn of third party next hop, meaning that RIP shouldn’t work in Phase 1 and 3. Turns out I was wrong. First off, you can turn it off by running RIP version 1. But, even with third party next hop, you can send a packet through the tunnel with another spokes tunnel IP as destination, and the Hub will happily forward it. So long as you turn off split horizon on the hub, you are fine:

Let’s route through the hub:

This setup works for any phase. If you want to make sure to have the hub as the next hub, run RIPv1, other than that, it just works.

RIP and phase 3 optimisations

One of the points of DMVPN Phase 3 is being able to summarise your routes for a smaller RIB. However, if you turn on summarisation on the Hub’s tunnel interface, you will actually increase the number of routes in the RIB1:

The kicker? Now, when you turn ON split-horizon, it does work:

Yes, turn ON both summarisation and split-horizon, and you will get the effect you want! This will of course also work for Phase 1.

EIGRP phases one and two:

So, does this hold true for EIGRP as well? Well, kind of. If you want to advertise all the routes, turn off split-horizon and turn on next-hop-self:

If you want to summarise, it turns out that split-horizon and next-hop-self just don’t matter at all. Any combination of split-horizon and next-hop-self will result in the same behaviour[^3]:

Well I say any combination, but there is one exception: Summarising to the same subnet as you are receiving from the spoke, will need split-horizon turned off:

EIGRP in Phase 2

Phase 2 is simple, you forget all the things we did so far and just turn off split horizon on the hub:

And you will have full connectivity. Next time, OSPF over DMVPN.


  1. The RegEx used here matches anything with ” 2.” (Space + two + dot) 

Leave a Reply

Your email address will not be published. Required fields are marked *