Routing

What is EIGRP? DUAL, Feasible Successors and Configuration

G Gurpreet Singh April 10, 2024 6 min read
Animated diagram for What is EIGRP? DUAL, Feasible Successors and Configuration, showing four routers in a line with a packet travelling hop by hop and a route table lookup highlighting each column in turn

EIGRP (Enhanced Interior Gateway Routing Protocol) is an interior gateway protocol developed by Cisco. It is usually described as a hybrid: it exchanges distance-vector information with neighbours rather than building a full topology map, but it uses the DUAL algorithm to precompute loop-free backup paths, which gives it convergence behaviour closer to a link-state protocol.

Cisco published it as informational RFC 7868 in 2016, but multi-vendor adoption never materialised. In practice, running EIGRP means running Cisco.

The Three Tables

TableContainsCommand
Neighbour tableDirectly connected EIGRP routers, per interfaceshow ip eigrp neighbors
Topology tableEvery route learned, with successors and feasible successorsshow ip eigrp topology
Routing tableOnly the best route (successor) per destinationshow ip route eigrp

The topology table is where EIGRP’s advantage lives. It holds backup paths that have already been verified loop-free, so failover requires no recalculation at all.

Successor and Feasible Successor

For each destination EIGRP tracks two distances:

  • Feasible Distance (FD), this router’s own best metric to the destination.
  • Reported Distance (RD), a neighbour’s metric to the destination, as it advertised it.

The successor is the neighbour offering the lowest FD, and its route goes into the routing table.

A neighbour becomes a feasible successor, a precomputed backup, only if it satisfies the feasibility condition:

RD (neighbour's distance) < FD (my current best distance)

The logic behind that inequality: if the neighbour’s own distance to the destination is lower than mine, it cannot possibly be routing through me. So switching to it cannot create a loop, and it can be installed instantly with no query and no recalculation.

This is why EIGRP fails over in well under a second when a feasible successor exists, and why it is markedly slower when one does not.

When there is no feasible successor

The route goes active and EIGRP sends queries to its neighbours asking whether they have a path. It waits for every reply. If a reply never arrives, a dead neighbour, a saturated link, or simply too many neighbours on a flat network, the route becomes Stuck In Active (SIA) and EIGRP eventually tears down the adjacency.

SIA is EIGRP’s characteristic failure mode, and it is a scaling problem: the further queries propagate, the more likely one goes unanswered.

The Metric

EIGRP’s composite metric uses K-values to weight bandwidth, delay, load and reliability. By default only K1 (bandwidth) and K3 (delay) are enabled:

metric = 256 × (10⁷ / slowest bandwidth in Kbps + cumulative delay in tens of µs)

Two things matter operationally:

  • Bandwidth is the slowest link along the path, not the sum or average.
  • Delay is cumulative across every hop.

That makes delay the correct knob for influencing EIGRP path selection. Changing bandwidth also affects QoS reservations, SNMP reporting and other protocols, it is the wrong lever even though it works.

Router(config-if)# delay 2000

Do not enable K2 (load) or K5 (reliability). Both change constantly with traffic, which makes the metric unstable and the topology churn. K-values must also match exactly on both sides or the adjacency will not form.

Neighbour Requirements

An EIGRP adjacency forms only if all of these match:

  • Autonomous system number
  • K-values
  • Primary subnet, the interfaces must be in the same subnet
  • Authentication, if configured

Notably, hello and hold timers do not need to match, unlike OSPF. A mismatch causes instability rather than a failure to adjacency, because the hold time is advertised in the hello packet itself.

Router# show ip eigrp neighbors
Router# debug eigrp packets hello

Basic Configuration

Classic mode

Router(config)# router eigrp 100
Router(config-router)# no auto-summary
Router(config-router)# network 10.10.10.0 0.0.0.255
Router(config-router)# network 192.168.1.0 0.0.0.255
Router(config-router)# eigrp router-id 1.1.1.1
Router(config-router)# passive-interface default
Router(config-router)# no passive-interface GigabitEthernet0/1

Two things to note. The network statement uses a wildcard mask, not a subnet mask, and it selects interfaces to run EIGRP on, it does not advertise a network directly. And no auto-summary matters: with auto-summary on, EIGRP summarises at classful boundaries, which breaks discontiguous networks. It defaults to off on modern IOS but is worth stating explicitly.

Named mode

Router(config)# router eigrp CORP
Router(config-router)# address-family ipv4 unicast autonomous-system 100
Router(config-router-af)# network 10.10.10.0 0.0.0.255
Router(config-router-af)# af-interface GigabitEthernet0/1
Router(config-router-af-interface)# authentication mode md5
Router(config-router-af-interface)# hello-interval 5

Named mode consolidates IPv4, IPv6 and per-interface settings under one configuration and is the current recommendation for new deployments.

Scaling EIGRP

EIGRP has no area concept, so the tools for bounding query propagation are summarisation and stub routers.

Summarisation, anywhere

Router(config-if)# ip summary-address eigrp 100 10.20.0.0 255.255.0.0

Unlike OSPF, which only summarises at area borders, EIGRP summarises on any interface. A summary boundary also stops queries, the router replies authoritatively rather than passing the query on.

Stub routers

Router(config-router)# eigrp stub connected summary

A stub router announces that it is not a transit path, so neighbours never send it queries. On a hub-and-spoke WAN with a hundred spokes, marking every spoke as a stub reduces the hub’s query load by a factor of a hundred. This is the single most effective EIGRP scaling measure and it should be standard on any spoke site.

Unequal-Cost Load Balancing

Router(config-router)# variance 2
Router(config-router)# maximum-paths 4

With variance 2, any feasible successor whose metric is up to twice the successor’s is also installed, and traffic is shared in inverse proportion to metric. This is unique to EIGRP, OSPF and most other IGPs only load balance across equal-cost paths, and it is genuinely useful where a fast primary and a slower backup link would otherwise leave capacity idle.

Note the constraint: only feasible successors qualify. A path that fails the feasibility condition is never used, no matter how high you set variance.

Authentication

Router(config)# key chain EIGRP-KEYS
Router(config-keychain)# key 1
Router(config-keychain-key)# key-string SecretValue

Router(config)# interface GigabitEthernet0/1
Router(config-if)# ip authentication mode eigrp 100 md5
Router(config-if)# ip authentication key-chain eigrp 100 EIGRP-KEYS

Troubleshooting Checklist

SymptomLikely causeCheck
Neighbour will not formAS number, K-values, subnet, or authentication mismatchshow ip eigrp neighbors, show ip protocols
Neighbour forms then dropsLayer 1/2 instability, or MTU mismatchshow interfaces error counters
Route missing from routing tableIn the topology table but not the best pathshow ip eigrp topology all-links
SIA messagesQuery propagating too farAdd stubs and summarisation
Suboptimal path chosenBandwidth statement not matching realityshow interfaces | include BW
Discontiguous network brokenAuto-summary enabledno auto-summary

Frequently Asked Questions

Is EIGRP distance-vector or link-state?

Distance-vector at its core, it learns from neighbour advertisements, not a topology map. DUAL gives it convergence behaviour resembling link-state, which is why it is often called hybrid or “advanced distance-vector”.

What is the difference between feasible distance and reported distance?

Feasible distance is your own best metric to the destination. Reported distance is what a neighbour says its metric is. A neighbour qualifies as a feasible successor when its reported distance is lower than your feasible distance.

Why does EIGRP have administrative distances of 90 and 170?

90 for internal routes learned natively by EIGRP; 170 for external routes redistributed in from another source, which are trusted less. Forgetting this catches people out after redistribution, see administrative distance.

Can EIGRP run on non-Cisco equipment?

Technically, since RFC 7868 published the specification. Practically, almost nothing else implements it, so EIGRP ties you to Cisco. If multi-vendor is a possibility, choose OSPF. Both come up constantly in networking interviews, alongside SD-WAN interview questions for WAN roles.

What does “stuck in active” mean?

A query for a route went unanswered within the SIA timer, so EIGRP could not determine a new path and tears down the adjacency. It signals that queries are propagating too far, fix it with stub routers and summarisation, not by raising the timer.

How does EIGRP differ from OSPF?

EIGRP converges faster when a feasible successor exists, supports unequal-cost load balancing, summarises anywhere, and needs no area hierarchy. OSPF is an open standard, builds a full topology map, and scales through areas. Full comparison in EIGRP vs OSPF.

GU
Written by

Gurpreet Singh

Hey! I"m Gurpreet Singh and I Have 7+ Years of experience in the Network & Security Domain as well as the Cloud Infra Domain. I am Certified with Cisco ( CCNA ), CheckPoint ( CCSA ), 1xAWS, 3xAZURE, and 3xNSE. So I love to share my tech knowledge with you.

2 responses to “What is EIGRP? DUAL, Feasible Successors and Configuration”

  1. Wow! After all I got a weblog from where
    I can in fact get valuable facts regarding my study and knowledge.

Leave a Reply

Your email address will not be published. Required fields are marked *