EIGRP Add Path Support
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.
EIGRP Add Path Support is only available in EIGRP named mode.
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
- Hub
- Spoke1
- Spoke2
- Spoke3
- Spoke4
Want to take a look for yourself? Here you will find the startup configuration of each device.
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.
To fix this, we have to make a simple change. On the hub router, we add the add-paths command:
Hub(config)#router eigrp ADDPATH
Hub(config-router)#address-family ipv4 unicast autonomous-system 1234
Hub(config-router-af)#af-interface Tunnel0
Hub(config-router-af-interface)#add-paths 4
There is nothing we have to configure on the spoke routers. After making this change, the routing tables of the spoke routers changes:
Spoke1#show ip route eigrp
D 192.168.34.0/24 [90/102405120] via 172.16.123.4, 00:00:44, Tunnel0
[90/102405120] via 172.16.123.3, 00:00:44, Tunnel0
Spoke2#show ip route eigrp
D 192.168.34.0/24 [90/102405120] via 172.16.123.4, 00:00:47, Tunnel0
[90/102405120] via 172.16.123.3, 00:00:47, Tunnel0
Spoke3#show ip route eigrp
D 192.168.12.0/24 [90/102405120] via 172.16.123.2, 00:00:49, Tunnel0
[90/102405120] via 172.16.123.1, 00:00:49, Tunnel0
Spoke4#show ip route eigrp
D 192.168.12.0/24 [90/102405120] via 172.16.123.2, 00:00:49, Tunnel0
[90/102405120] via 172.16.123.1, 00:00:49, Tunnel0
This is looking good, each spoke router now has two entries and can use load balancing to reach each destination! Also, if one the spoke routers fails, there’s no need for EIGRP to re-converge since we have two entries. If one entry disappears, we can still use the other one.
The variance command used for unequal cost load balancing and the add path support feature are not compatible. The variance has to be set to one (default value).
This is pretty much all there is to the add path support feature.
Conclusion
You have now learned how EIGRP supports the add path support feature so the hub router can advertise multiple equal cost routes to the spoke routers. This allows the spoke routers to install multiple routes to networks behind other spoke routers.
Table of Content
Unit 2: EIGRP Neighbor Adjacency
Unit 4: EIGRP Advanced Features