Of all the interior routing protocols I’ve deployed, EIGRP is the one that consistently surprises people with how fast it converges and how little tuning it needs to just work well. It’s Cisco proprietary (though it was opened up as an informational RFC years back), which limits it to Cisco-heavy environments, but if that’s what you’re running, it’s genuinely one of the easiest protocols to get right.
Let me walk through how it actually works and how to configure it properly, because there are some conceptual pieces — successors, feasible successors, the DUAL algorithm — that are worth understanding rather than memorizing.
What EIGRP Is
Enhanced Interior Gateway Routing Protocol is an advanced distance-vector protocol (Cisco calls it a “hybrid” protocol because it has some link-state-like behaviors) that uses the Diffusing Update Algorithm (DUAL) to calculate loop-free paths and, crucially, to keep a backup path ready before it’s even needed.
Fundamentals
- Metric composition: EIGRP’s default metric is based on bandwidth and delay (with load and reliability available but not used by default), combined into a composite value — this is fundamentally different from OSPF’s simpler cost or RIP’s hop count.
- Successor: the current best loop-free path to a destination, installed in the routing table.
- Feasible successor: a backup path that’s guaranteed loop-free, kept in the topology table and ready for instant use if the successor fails — no recalculation needed.
- Autonomous System Number: EIGRP uses an AS number to group routers, but unlike BGP, this is purely a local process tag — it has nothing to do with internet ASNs and must simply match between routers that want to be neighbors.
How EIGRP Operates
- Routers discover neighbors via multicast hello packets (224.0.0.10) and form adjacencies if the AS number, K-values (metric weighting values), and subnet match.
- Routers exchange their full topology table with new neighbors, then only incremental updates afterward — this is much lighter than periodic full-table broadcasts.
- DUAL calculates the best path (successor) and, where possible, a feasible successor as backup.
- If a successor fails and a feasible successor exists, EIGRP switches to it instantly — no recomputation, no query process, near-instant convergence.
- If no feasible successor exists, EIGRP goes “active” for that route, querying neighbors to recompute a loop-free path — this is the slower convergence path, and it’s the main thing to watch for in large topologies (a stuck query can hold the process open for a long time).
Basic EIGRP Configuration (Classic Mode)
R1:
R1(config)# router eigrp 100
R1(config-router)# network 192.168.1.0 0.0.0.255
R1(config-router)# network 10.0.0.0 0.0.0.3
R1(config-router)# no auto-summary
R2:
R2(config)# router eigrp 100
R2(config-router)# network 192.168.2.0 0.0.0.255
R2(config-router)# network 10.0.0.0 0.0.0.3
R2(config-router)# no auto-summary
The AS number (100 here) must match on both routers. I always disable auto-summary explicitly, even on modern IOS where it’s off by default in most cases, just to be certain — auto-summary at classful boundaries has caused more than one routing black hole in networks I’ve inherited.
Named Mode Configuration (Modern Best Practice)
Cisco’s newer “named mode” syntax is what I use for anything built today — it’s clearer, groups address-family configuration properly, and is required for some newer features:
R1(config)# router eigrp MyEIGRP
R1(config-router)# address-family ipv4 unicast autonomous-system 100
R1(config-router-af)# network 192.168.1.0 0.0.0.255
R1(config-router-af)# network 10.0.0.0 0.0.0.3
R1(config-router-af)# af-interface default
R1(config-router-af-interface)# exit
R1(config-router-af)# exit-address-family
Verifying EIGRP
R1# show ip eigrp neighbors
EIGRP-IPv4 Neighbors for AS(100)
H Address Interface Hold Uptime SRTT RTO Q Seq
(sec) (ms) Cnt Num
0 10.0.0.2 Gi0/0 13 00:05:41 5 100 0 8
R1# show ip route eigrp
D 192.168.2.0/24 [90/28160] via 10.0.0.2, 00:05:38, GigabitEthernet0/0
R1# show ip eigrp topology
IP-EIGRP Topology Table for AS(100)/ID(1.1.1.1)
Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply,
r - Reply status
P 192.168.2.0/24, 1 successors, FD is 28160
via 10.0.0.2 (28160/28) 156, Serial0/0/0
The “D” code in show ip route means EIGRP-derived; the number in brackets [90/28160] shows administrative distance (90 for internal EIGRP) and the composite metric.
Enterprise Scenario: WAN Bandwidth Control
I once had a customer with a hub-and-spoke Frame-Relay-turned-MPLS WAN where EIGRP kept overwhelming low-bandwidth spoke links with routing updates. The fix was tuning the percentage of bandwidth EIGRP is allowed to use for its own control traffic:
R1(config-if)# ip bandwidth-percent eigrp 100 30
This caps EIGRP’s control traffic to 30% of the interface’s configured bandwidth, which is especially important on serial/WAN interfaces where the configured bandwidth statement often doesn’t match the actual circuit speed — worth double-checking with bandwidth statements on every WAN-facing interface.
Summarization for Faster Convergence
Manual route summarization at the edges of your topology reduces query scope and speeds up convergence when a link fails:
R1(config-if)# ip summary-address eigrp 100 192.168.0.0 255.255.252.0
This is one of my highest-value EIGRP tuning tricks — summarizing at strategic boundary points shrinks the number of routers that have to participate in DUAL queries when something changes.
Unequal-Cost Load Balancing
EIGRP has a feature most other IGPs lack out of the box: unequal-cost load balancing via the variance command.
R1(config-router)# variance 2
This tells EIGRP to install any feasible successor whose metric is within 2x the successor’s metric, splitting traffic proportionally across both paths — genuinely useful on networks with asymmetric-bandwidth redundant links.
Securing EIGRP
Always authenticate EIGRP adjacencies — an unauthenticated EIGRP process will happily form adjacencies with any rogue router that shows up on the segment.
R1(config)# key chain EIGRP-KEYS
R1(config-keychain)# key 1
R1(config-keychain-key)# key-string MyEigrpKey321
R1(config-if)# ip authentication mode eigrp 100 md5
R1(config-if)# ip authentication key-chain eigrp 100 EIGRP-KEYS
Common Configuration Mistakes
- Mismatched AS numbers between routers — neighbors simply never form, with no obvious error beyond an absent entry in
show ip eigrp neighbors. - Wildcard mask errors in
networkstatements, accidentally excluding an interface you meant to include. - Leaving auto-summary enabled in a discontiguous network, causing routes to be summarized at classful boundaries incorrectly.
- Ignoring the
bandwidthstatement on WAN interfaces, causing EIGRP to base its metric (and its 50% control-traffic default cap) on the wrong value. - Assuming feasible successors always exist — in some topologies (especially hub-and-spoke), they often don’t, meaning every failure triggers a full DUAL query process instead of instant failover.
Troubleshooting EIGRP
show ip eigrp neighbors
show ip eigrp topology
show ip eigrp topology all-links
show ip route eigrp
debug eigrp packets
debug ip eigrp
If a neighbor relationship keeps flapping, check for mismatched hello/hold timers, an MTU mismatch, or authentication key issues. If a route is “stuck in active” (SIA), that’s a strong sign of a slow or unresponsive neighbor somewhere downstream in the query chain — usually resolved by summarization or stub configuration to limit query scope.
Performance Tuning
- Use
eigrp stubon spoke/branch routers so they never receive queries for routes they don’t need to know about, dramatically reducing SIA risk in hub-and-spoke topologies:
R2(config-router)# eigrp stub connected
- Summarize aggressively at logical network boundaries.
- Set accurate
bandwidthvalues on all WAN interfaces so both the EIGRP metric and the control-traffic cap behave as intended. - Tune hello/hold timers only on point-to-point or low-latency links where faster failure detection genuinely matters.
FAQs
Is EIGRP still relevant, or has everyone moved to OSPF? Both are actively used. EIGRP is Cisco-specific but generally easier to deploy and converges faster with good design; OSPF is the standards-based choice for multi-vendor environments. The right choice depends on your vendor mix and team familiarity.
What administrative distance does EIGRP use? 90 for internal EIGRP routes, 170 for external (redistributed) EIGRP routes, 5 for EIGRP summary routes.
Can EIGRP route IPv6? Yes, via the address-family ipv6 configuration under named mode.
What causes a “stuck in active” (SIA) route? A query sent to a neighbor that doesn’t reply within the active timer (default 3 minutes), usually because that neighbor is overloaded, has a slow link, or is itself waiting on further-downstream replies.
Summary
EIGRP earns its reputation for fast convergence honestly — the successor/feasible-successor model means most link failures in a well-designed network are handled instantly, with no recalculation delay. The real skill isn’t in the basic configuration, which is genuinely simple; it’s in designing the topology (summarization boundaries, stub routers) so that DUAL rarely has to fall back to its slower query-based convergence path.