Lesson Contents
The EIGRP Add Path Support is a feature that allows the hub in a DMVPN topology to advertise multiple best paths to its spoke routers. This feature is needed if you have two or more spoke routers that advertise the same subnet. The hub router will learn about the subnet from both spoke routers so it can use ECMP (Equal Cost Multipath) with both spoke routers. EIGRP however, will only advertise one path to other spoke routers. Without this feature, you can’t use ECMP between spoke routers and when one of your spoke routers fail, EIGRP has to re-converge.
The Add Path Support feature is best explained with an example. I’ll show you a “before” and “after” scenario so you can see the difference.
Configuration
Here is the topology I will use:
Above we have a hub router and four spoke routers. These routers are connected to each other using their GigabitEthernet0/1 interfaces and the 192.168.123.0/24 subnet. The tunnel interfaces for DMVPN use the 172.16.123.0/24 subnet.
Spoke1 and spoke2 are connected to the 192.168.12.0/24 subnet, spoke3 and spoke4 to the 192.168.34.0/24 subnet.
This network is configured to use DMVPN phase 2 and EIGRP has been pre-configured to advertise the GigabitEthernet0/2 interfaces of the spoke routers.
Configurations
Want to take a look for yourself? Here you will find the startup configuration of each device.
Hub
hostname Hub
!
ip cef
!
interface Tunnel0
ip address 172.16.123.254 255.255.255.0
ip nhrp authentication DMVPN
ip nhrp map multicast dynamic
ip nhrp network-id 1
ip nhrp redirect
tunnel source GigabitEthernet0/1
tunnel mode gre multipoint
!
interface GigabitEthernet0/1
ip address 192.168.123.254 255.255.255.0
!
router eigrp ADDPATH
!
address-family ipv4 unicast autonomous-system 1234
!
af-interface Tunnel0
no next-hop-self
no split-horizon
exit-af-interface
!
topology base
exit-af-topology
network 172.16.123.0 0.0.0.255
exit-address-family
!
end
Spoke1
hostname Spoke1
!
ip cef
!
interface Tunnel0
ip address 172.16.123.1 255.255.255.0
ip nhrp authentication DMVPN
ip nhrp map 172.16.123.254 192.168.123.254
ip nhrp map multicast 192.168.123.254
ip nhrp network-id 1
ip nhrp nhs 172.16.123.254
tunnel source GigabitEthernet0/1
tunnel mode gre multipoint
!
interface GigabitEthernet0/1
ip address 192.168.123.1 255.255.255.0
!
interface GigabitEthernet0/2
ip address 192.168.12.1 255.255.255.0
!
router eigrp ADDPATH
!
address-family ipv4 unicast autonomous-system 1234
!
topology base
exit-af-topology
network 172.16.123.0 0.0.0.255
network 192.168.12.0
exit-address-family
!
end
Spoke2
hostname Spoke2
!
ip cef
!
interface Tunnel0
ip address 172.16.123.2 255.255.255.0
ip nhrp authentication DMVPN
ip nhrp map 172.16.123.254 192.168.123.254
ip nhrp map multicast 192.168.123.254
ip nhrp network-id 1
ip nhrp nhs 172.16.123.254
tunnel source GigabitEthernet0/1
tunnel mode gre multipoint
!
interface GigabitEthernet0/1
ip address 192.168.123.2 255.255.255.0
!
interface GigabitEthernet0/2
ip address 192.168.12.2 255.255.255.0
!
router eigrp ADDPATH
!
address-family ipv4 unicast autonomous-system 1234
!
topology base
exit-af-topology
network 172.16.123.0 0.0.0.255
network 192.168.12.0
exit-address-family
!
end
Spoke3
hostname Spoke3
!
ip cef
!
interface Tunnel0
ip address 172.16.123.3 255.255.255.0
ip nhrp authentication DMVPN
ip nhrp map 172.16.123.254 192.168.123.254
ip nhrp map multicast 192.168.123.254
ip nhrp network-id 1
ip nhrp nhs 172.16.123.254
tunnel source GigabitEthernet0/1
tunnel mode gre multipoint
!
interface GigabitEthernet0/1
ip address 192.168.123.3 255.255.255.0
!
interface GigabitEthernet0/2
ip address 192.168.34.3 255.255.255.0
!
router eigrp ADDPATH
!
address-family ipv4 unicast autonomous-system 1234
!
topology base
exit-af-topology
network 172.16.123.0 0.0.0.255
network 192.168.34.0
exit-address-family
!
end
Spoke4
hostname Spoke4
!
ip cef
!
interface Tunnel0
ip address 172.16.123.4 255.255.255.0
ip nhrp authentication DMVPN
ip nhrp map 172.16.123.254 192.168.123.254
ip nhrp map multicast 192.168.123.254
ip nhrp network-id 1
ip nhrp nhs 172.16.123.254
tunnel source GigabitEthernet0/1
tunnel mode gre multipoint
!
interface GigabitEthernet0/1
ip address 192.168.123.4 255.255.255.0
!
interface GigabitEthernet0/2
ip address 192.168.34.4 255.255.255.0
!
router eigrp ADDPATH
!
address-family ipv4 unicast autonomous-system 1234
!
topology base
exit-af-topology
network 172.16.123.0 0.0.0.255
network 192.168.34.0
exit-address-family
!
end
Let’s take a look at the routing tables of all routers:
Hub#show ip route eigrp
D 192.168.12.0/24 [90/76805120] via 172.16.123.2, 00:03:24, Tunnel0
[90/76805120] via 172.16.123.1, 00:03:24, Tunnel0
D 192.168.34.0/24 [90/76805120] via 172.16.123.4, 00:03:24, Tunnel0
[90/76805120] via 172.16.123.3, 00:03:24, Tunnel0
The output of the hub’s routing table is looking good. The hub can load balance to both 192.168.12.0/24 and 192.168.34.0/24. Let’s take a look at the spoke routers:
Spoke1#show ip route eigrp
D 192.168.34.0/24 [90/102405120] via 172.16.123.3, 00:03:24, Tunnel0
Spoke2#show ip route eigrp
D 192.168.34.0/24 [90/102405120] via 172.16.123.3, 00:03:25, Tunnel0
Spoke3#show ip route eigrp
D 192.168.12.0/24 [90/102405120] via 172.16.123.1, 00:03:24, Tunnel0
Spoke4#show ip route eigrp
D 192.168.12.0/24 [90/102405120] via 172.16.123.1, 00:03:25, Tunnel0
The spoke routers each have only a single entry. This is because the hub won’t advertise two routes for a single network. We have reachability, but it’s a shame that for example, spoke1 can only reach 192.168.34.0/24 by going through spoke3. It would be nice if it could also use spoke4. Also, if spoke3 fails, EIGRP has to re-converge.
Hi Rene,
Hub(config-router-af-interface)#add-paths <1-4> "Number of add paths to be advertised"
Can you explain more about when we use the number of 1, 2, 3, or 4?
Even though I tested with add-paths of 1-2-3-4, the result’s nothing change.
Hello Dawn
The add-paths is used when you have multiple paths from the hub to a specific network that can be reached via multiple spokes. EIGRP however advertises only one path as the best path to connected spokes. The add-paths command allows EIGRP to advertise up to an additional four. This will only be seen if multiple paths are present to the same network.
For the topology in question:
//cdn-forum.networklessons.com/uploads/default/original/2X/1/14541df83e62421372b52356d2ec3999bfecd95c.png
As can be seen, there are two routes to the 192.168.12.0/24 netwo... Continue reading in our forumHi Laz,
Thanks for your kind explanation.
I understood.
IN EIGRP with DMVPN how to change the next hop on SPOKE router for all learned routes from HUB. The end result is all received routes from HUB will need to change its next hop to different IP which is behind the HUB,and when spoke tries to reach other spoke it goes to IP Behind the HUB for next hop and that IP will reroute the traffic back to HUB.As HUB already has the destination path it will forward it out to SPOKE 2.
Hello Kaza
Note that the configuration in this lesson is using DMVPN Phase 2. This means that the routing information found in each spoke contains the IP address of the spoke as the next-hop IP. This is because Phase 2 allows for spoke-to-spoke GRE tunnels.
The hub will never change its next hop to an IP that is “behind” the hub, but it will inform the spokes of the topology of the IP addresses of the other spokes, using NHRP. You can find out more about this in the following lessons:
https://networklessons.com/cisco/ccie-routing-switching-written/dmvpn-phase
... Continue reading in our forum