Load Balancing, Configuration and Routing Guide for EIGRP
Need a step by step guide on how to do load balancing, configuration and routing of EIGRP? Check out our informative guide to achieve just that. Read here.
Notice: This blog post was originally published on Indeni before its acquisition by BlueCat.
The content reflects the expertise and perspectives of the Indeni team at the time of writing. While some references may be outdated, the insights remain valuable. For the latest updates and solutions, explore the rest of our blog
This article is a practical guide to configuring, tuning, and troubleshooting EIGRP (Enhanced Interior Gateway Protocol) for enterprise networks, addressing real-world needs for fast convergence, efficient bandwidth use, and scalable routing across complex topologies. It explains EIGRP components (neighbor discovery, RTP, DUAL FSM, and PDMs), key features such as partial updates, ECMP and unequal-cost load sharing, route summarization, stub routing, authentication, and metric manipulation, and provides concrete CLI commands for enabling EIGRP, summarization, stub configuration, variance-based load balancing, timer tuning, MD5 authentication, and bandwidth controls. The operational impact covers faster recovery from topology changes, reduced CPU and bandwidth load, prevention of query loops via manual summarization, and options for automation and proactive troubleshooting using Indeni to detect and resolve EIGRP malfunctions in environments with many routers and firewalls.
How do I enable unequal-cost load balancing in EIGRP and what limits apply?
To enable unequal-cost load balancing in EIGRP, set the variance multiplier under the EIGRP routing process with the command ‘router(config-router)# variance ‘. Feasible successors whose feasible distance is less than (best path FD * variance) become candidates for proportional traffic sharing. The variance value can range from 1 to 128; the default is 1 which permits only equal-cost balancing (ECMP). Ensure that the successor routes are feasible (i.e., meet the feasibility condition) before they are used for load sharing. Use metric and K-value tuning if necessary to influence path selection and which routes qualify as feasible successors.
What commands and practices prevent EIGRP query loops and SIA conditions in large networks?
To reduce routing query loops and avoid Stuck-In-Active (SIA) conditions, disable automatic classful summarization using ‘router(config-router)# no auto-summary’ and apply manual summarization on relevant interfaces using ‘router(config-if)# ip summary-address eigrp ‘. Efficient route summarization confines queries and reduces the scope of route recalculation. Additionally, configuring stub routing on branch routers with ‘router(config-router)# eigrp stub [options]’ limits query propagation from those routers. Proper summarization and the use of stub options (connected, static, summary, receive-only) lower CPU and memory use and prevent excessive query propagation that leads to SIA scenarios.
Which EIGRP timers and metric controls can I adjust to tune convergence and path selection?
You can tune EIGRP convergence and path selection by adjusting per-interface hello and hold timers, K-values for metric composition, and administrative bandwidth settings. Set hello intervals with ‘router(config-if)# ip hello-interval eigrp ‘; the default hold time is three times the hello interval but can be set explicitly with ‘router(config-if)# ip hold-time eigrp ‘. Modify metric components using ‘router(config-router)# metric weights 0 K1 K2 K3 K4 K5’ (defaults use bandwidth and delay). Administratively alter an interface’s perceived bandwidth with ‘router(config-if)# bandwidth ‘ and control EIGRP bandwidth usage with ‘router(config-if)# ip bandwidth-percent eigrp ‘ (default max is 50%). These controls influence convergence behavior and which routes qualify as feasible successors.
Many of you have problems finding a comprehensive guide to load balancing for EIGRP. Using routing capabilities is a must in today’s evolving networks. In an enterprise environment, using EIGRP (Enhanced Interior Gateway Protocol) is your best choice because EIGRP is fast and agile.
Here is brief recap of EIGRP attributes.
EIGRP has four basic components:
- Neighbor Discovery/Recovery
- Reliable Transport Protocol
- DUAL Finite State Machine
- Protocol Dependent Modules
Neighbor Discovery/Recovery is the process that routers use to dynamically learn of other routers on their directly attached networks. Routers must also discover when their neighbors become unreachable or non-operative.
This process is achieved with low overhead by periodically sending small hello packets. As long as hello packets are received, a router can determine that a neighbor is alive and functioning. Once this is determined, the neighboring routers can exchange routing information.
EIGRP offers the following features:
- Fast convergence — The DUAL algorithm allows routing information to converge as quickly as any currently available routing protocol.
- Partial updates — EIGRP sends incremental updates when the state of a destination changes, instead of sending the entire contents of the routing table. This feature minimizes the bandwidth required for EIGRP packets.
- Less CPU usage than IGRP — This occurs because full update packets need not be processed each time they are received.
- Neighbor discovery mechanism — This is a simple hello mechanism used to learn about neighboring routers. It is protocol-independent.
- Scaling — EIGRP scales to large networks.
ALSO:
- Variable – length subnet masks (VLSMs)
- Arbitrary route summarization
- Classless Inter-Domain Routing (CIDR) support
- Load balancing on parallel links between sites
- The ability to use different authentication passwords at different times
- MD5 authentication between two routers
- Sending topology changes, rather than sending the entire routing table when a route is changed
- Periodically checking if a route is available and propagating routing changes to neighboring routers if any changes have occurred
- Running separate routing processes for Internet Protocol (IP), IPv6, IPX and AppleTalk through the use of protocol-dependent modules (PDMs)
- Superior scaling of Interior Gateway Protocol (IGP) for large dynamic multipoint (DM) VPN deployments
- Easy transition to IPv6 with multi-address family support for both IPv4 and IPv6 networks
- Very fast rapid convergence times for changes in the network topology
- Propagating only routing table changes, not the entire routing table, when a change occurs
- More efficient use of links, through equal cost multipath (ECMP) and unequal cost load sharing
Configuring EIGRP
To enable EIGRP, run the following command:
Router(config)# router eigrp <ASN>
To add a network to EIGRP run the following command:
Router(config-router)# network <network> [wildcard mask]
All non-passive interfaces belonging to a specified network will become capable of forming EIGRP adjacencies and their attached networks will be advertised into EIGRP.
EIGRP will summarize to classful boundaries by default.
An interface can be set to passive operation to prevent advertisement:
Router(config-router)# passive-interface <interface>
If an interface is included in the network configuration but set to passive, it will still be included in EIGRP advertisements. If an interface is not included in an EIGRP network, it will not be advertised in EIGRP.
Efficient route summarization is key in preventing looping route queries (which leads to an SIA condition).
Disable automatic classful summarization:
Router(config-router)# no auto-summary
Configure manual summarization on an interface:
Router(config-if)# ip summary-address eigrp <ASN> <network> <subnet mask>
Stub Routing
Stub routers participate minimally in EIGRP, which reduces utilization of memory and CPU on the router.
Router(config-router)# eigrp stub [options]
- receive-only — Prevents the router from advertising any routes
- connected — Permits advertisement of connected networks (default)
- static — Permits redistribution of static routes
- summary — Advertises summary routes (default)
Load Balancing EIGRP
EIGRP automatically load balances across equal-cost links. Unequal-cost load balancing can be enabled by specifying a variance. Feasible successors with a feasible distance less than (best path FD * variance) will be proportionally utilized:
Router(config-router)# variance <multiplier>
The variance can be between 1 and 128; default is 1 (equal-cost balancing only).
EIGRP Tuning
EIGRP timers do not have to match for two routers to form an adjacency.
Hello timers are modified per interface:
Router(config-if)# ip hello-interval eigrp <ASN> <seconds>
The default hold timer is calculated as three times the hello timer value. However, configuring the hold timer manually is done in seconds:
Router(config-if)# ip hold-time eigrp <ASN> <seconds>
Manipulating EIGRP metrics with K-values (default is bandwidth and delay ) then values are : K1=Bandwidth K2=Load K3=Delay K4 = Reliability K5=MTU:
Router(config-router)# metric weights 0 1 1 1 1 1
Authentication
Configuring MD5 authentication on an interface:
Router(config-if)# ip authentication mode eigrp <ASN> md5 Router(config-if)# ip authentication key-chain eigrp <ASN> <chain name> Router(config)# key chain <chain name> Router(config-keychain)# key 1 Router(config-keychain-key)# key-string <password>
Bandwidth Manipulation
The perceived bandwidth of an interface can be administratively altered for the purpose of metric manipulation:
Router(config-if)# bandwidth <kilobits>
The bandwidth setting will not affect the actual interface speed, only the value used in metric calculation. This is useful for interfaces being rate-limited below line rate.
By default, EIGRP will use no more than 50% of an interface’s bandwidth. This can be adjusted as such:
Router(config-if)# ip bandwidth-percent eigrp <ASN> <percentage>
Verifying EIGRP Operation
Monitoring
-
show ip eigrp neighbors
-
show ip eigrp topology
-
show ip eigrp traffic
-
show ip eigrp interfaces
-
show ip route eigrp
Debugging
-
debug eigrp packet
-
debug ip eigrp neighbors
-
debug ip eigrp
-
debug ip eigrp summary
EIGRP configuration is pretty straightforward, but what happens in complex environments with many routers and firewalls if EIGRP stops working? The work load is almost impossible to bear.
It’s good to have indeni on your side. This cutting edge technology has complex algorithms. By connecting to the device and simulating human-like behavior, indeni automates the troubleshooting of EIGRP protocol network environments and provides solutions to EIGRP malfunctions.
If you enjoyed this post, wait until you see the power of predictive analytics for IT in your network environment.