DMVPN Phase 3 EIGRP Routing

In the first DMVPN lesson we discussed the basics and the different phases. I also showed you how to configure DMVPN phase 1, phase 2 and phase 3. In this lesson we’ll take a look how we can configure EIGRP on a DMVPN phase 3 network.

Here’s the topology we will use:

DMVPN Example Topology with hub, two spokes and loopback interfaces.

Above we have a hub and two spoke routers. Each router has a loopback interface which we will advertise in EIGRP.

Configuration


Tunnel interfaces

Below you will find the configuration of the tunnel interfaces. This is a basic DMVPN phase 3 setup:

Hub(config)#interface Tunnel0
Hub(config-if)#ip address 172.16.123.1 255.255.255.0
Hub(config-if)#ip nhrp authentication DMVPN
Hub(config-if)#ip nhrp map multicast dynamic
Hub(config-if)#ip nhrp network-id 1
Hub(config-if)#tunnel source GigabitEthernet0/1
Hub(config-if)#tunnel mode gre multipoint
Hub(config-if)#ip nhrp redirect
Spoke1(config)#interface Tunnel0
Spoke1(config-if)#ip address 172.16.123.2 255.255.255.0
Spoke1(config-if)#ip nhrp authentication DMVPN
Spoke1(config-if)#ip nhrp map 172.16.123.1 192.168.123.1
Spoke1(config-if)#ip nhrp map multicast 192.168.123.1
Spoke1(config-if)#ip nhrp network-id 1
Spoke1(config-if)#ip nhrp nhs 172.16.123.1
Spoke1(config-if)#tunnel source GigabitEthernet0/1
Spoke1(config-if)#tunnel mode gre multipoint
Spoke1(config-if)#ip nhrp shortcut
Spoke2(config)#interface Tunnel0
Spoke2(config-if)#ip address 172.16.123.3 255.255.255.0
Spoke2(config-if)#ip nhrp authentication DMVPN
Spoke2(config-if)#ip nhrp map 172.16.123.1 192.168.123.1
Spoke2(config-if)#ip nhrp map multicast 192.168.123.1
Spoke2(config-if)#ip nhrp network-id 1
Spoke2(config-if)#ip nhrp nhs 172.16.123.1
Spoke2(config-if)#tunnel source GigabitEthernet0/1
Spoke2(config-if)#tunnel mode gre multipoint
Spoke1(config-if)#ip nhrp shortcut

Let’s do a quick test to make sure the hub has two NHRP registrations from the spoke routers:

Hub#show dmvpn 
Legend: Attrb --> S - Static, D - Dynamic, I - Incomplete
        N - NATed, L - Local, X - No Socket
        T1 - Route Installed, T2 - Nexthop-override
        C - CTS Capable
        # Ent --> Number of NHRP entries with same NBMA peer
        NHS Status: E --> Expecting Replies, R --> Responding, W --> Waiting
        UpDn Time --> Up or Down Time for a Tunnel
==========================================================================

Interface: Tunnel0, IPv4 NHRP Details 
Type:Hub, NHRP Peers:2, 

 # Ent  Peer NBMA Addr Peer Tunnel Add State  UpDn Tm Attrb
 ----- --------------- --------------- ----- -------- -----
     1 192.168.123.2      172.16.123.2    UP 00:00:04     D
     1 192.168.123.3      172.16.123.3    UP 00:00:03     D

That’s looking good, let’s do a quick ping:

Hub#ping 172.16.123.2
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 172.16.123.2, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 7/8/10 ms
Hub#ping 172.16.123.3
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 172.16.123.3, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 7/7/8 ms

Time to configure EIGRP…

EIGRP

First we advertise all tunnel interfaces and the loopback interfaces of the spoke routers in EIGRP:

Hub(config)#router eigrp 123
Hub(config-router)#no auto-summary 
Hub(config-router)#network 172.16.123.0 0.0.0.255
Spoke1(config)#router eigrp 123
Spoke1(config-router)#no auto-summary 
Spoke1(config-router)#network 172.16.123.0 0.0.0.255
Spoke1(config-router)#network 2.2.2.2 0.0.0.0
Spoke2(config)#router eigrp 123
Spoke2(config-router)#no auto-summary 
Spoke2(config-router)#network 172.16.123.0 0.0.0.255
Spoke2(config-router)#network 3.3.3.3 0.0.0.0

The spoke routers don’t require specific entries thanks to NHRP traffic indication. I will advertise a default route on the hub router:

Hub(config)#interface tunnel 0 
Hub(config-if)#ip summary-address eigrp 123 0.0.0.0 0.0.0.0

Let’s check the routing tables:

Hub#show ip route eigrp 

D*    0.0.0.0/0 is a summary, 00:00:19, Null0
      2.0.0.0/32 is subnetted, 1 subnets
D        2.2.2.2 [90/27008000] via 172.16.123.2, 00:01:19, Tunnel0
      3.0.0.0/32 is subnetted, 1 subnets
D        3.3.3.3 [90/27008000] via 172.16.123.3, 00:00:19, Tunnel0
Spoke1#show ip route eigrp 

D*    0.0.0.0/0 [90/28160000] via 172.16.123.1, 00:00:31, Tunnel0
Spoke2#show ip route eigrp 

D*    0.0.0.0/0 [90/28160000] via 172.16.123.1, 00:00:43, Tunnel0

The hub has two specific entries, the spoke routers only have a default route. Let’s see if direct spoke-to-spoke communication is possible:

Sign up for FREE to Get Started

Here's what you'll get:

  • Full Access to 393 lessons.
  • Learn CCNA, CCNP and CCIE R&S. Explained as simple as possible.
  • Unlock Access to this lesson + 423 more by becoming a member.
  • New Lessons Added Regularly. You'll Be the First to Know.
  • Content created by Rene Molenaar (CCIE #41726)

Takes 1 minute - No credit card needed

Tags: , ,


Forum Replies

  1. Avatar for williamlindberg williamlindberg says:

    Hello René.

    Great basic DMVPN lab but i have a request:

    A DMVPN lab with 2 ISP’s (Multihoming) and load balancing using EIGRP Add-Path Support. I have had a hard time understanding the concept of that.

  2. Avatar for ReneMolenaar ReneMolenaar says:

    Hi William,

    I just published two examples for this:

    DMVPN dual hub single cloud
    DMVPN dual hub dual cloud

    I haven’t included EIGRP Add-Path Support (yet) but this might be useful.

    Rene

  3. Avatar for shashipen shashipen says:

    Hi Rene,

    If I want to migrate DMVPN phase 2 to phase 3 with EIGRP configured … what are the 3 changes that need to be done ??

  4. Avatar for ReneMolenaar ReneMolenaar says:

    Hi Shashi,

    For a detailed answer you can take a look here:

    DMVPN Phase 3

    DMVPN Phase 3 EIGRP

    The short answer is this:

    Hub(config)#interface tunnel 0
    Hub(config-if)#ip nhrp redirect 
    
    Spoke(config)#interface Tunnel 0
    (config-if)#ip nhrp shortcut
    

    And you need to advertise a summary route on the hub towards your spoke routers that covers the networks behind your spoke routers.

  5. Avatar for sdmann22 sdmann22 says:

    I’m using the IOS image you said you were but for some reason when i try show ip route nhrp it doesn’t recognize “nhrp”

    R2#sho ip route nhrp
    Translating "nhrp"
                    ^
    % Invalid input detected at '^' marker.
    

    Also my dmvpn table looks a bit different but still says two entries only displays one line for them

    R2#show dmvpn
    Legend: Attrb --> S - Static, D - Dynamic, I - Incompletea
            N - NATed, L - Local, X - No Socket
            # Ent --> Number of NHRP entries with same NBMA peer
    
    Tunnel0, Type:Spoke, NHRP Peers:2,
     # Ent 
    ... Continue reading in our forum

18 more replies! Ask a question or join the discussion by visiting our Community Forum