EIGRP uses DUAL (Diffusing Update Algorithm) to select the best path and guarantee fast, loop-free routing per destination inside an autonomous system.
Facts
- Advanced Distance Vector (hybrid) → the DUAL algorithm
- Protocol 88 in the IP header · Multicast
224.0.0.10(224.0.0.9old EIGRP routers) - AD: internal 90 · external 170
Core concepts
| Term | Short explanation |
|---|---|
| Successor | Best route (lowest metric/FD) |
| Feasible Successor | Backup route, loop-free |
| Feasible Distance (FD) | Your total metric to the destination |
| Reported Distance (RD) | The neighbor’s metric to the destination |
| Feasibility Condition | RD < FD (successor) |
| Passive state | Stable route, no computation |
| Active state | DUAL running, queries being sent |
| Query / Reply | Used in active state |
| Stuck-in-Active (SIA) | Query-reply timeout |
| Topology table | All known EIGRP routes |
| Routing table (RIB) | Only the successor is installed |

- FD = your total metric to the destination via a neighbor – used to pick the successor and compare against RD
- RD (Advertised Distance) = what the neighbor itself says its distance is – always from the neighbor’s perspective
Packet types
| Packet | What it does | When used |
|---|---|---|
| Hello | Discovers and maintains neighbors | Periodically to keep adjacency alive |
| Update | Sends routing information (routes, metrics) | At startup, topology changes, partial updates |
| Query | Asks neighbors for alternative routes | Successor lost and no feasible successor |
| Reply | Answers a query | When the neighbor has an answer (route or “no route”) |
| ACK | Acknowledges reliable packets | Confirms Update, Query and Reply |
Timers
| Timer | Default | Applies to | Function |
|---|---|---|---|
| Hello | 5 s (LAN) / 60 s (WAN) | Neighbors | Keeps the adjacency alive |
| Hold | 15 s (LAN) / 180 s (WAN) | Neighbors | How long a neighbor is considered up |
| Active | 3 min (180 s) | Routes | Max time a route may stay active |
| SIA-Query | 90 s | Queries | Time before an “are you alive?” query |
| SIA-Reply | 180 s | Replies | Time before a neighbor is declared SIA |
| RTO | Dynamic | Reliable packets | Retransmission timeout |
| RTT | Dynamic | Reliable packets | Measured round-trip time |
Roles & the feasibility condition
- Successor: best route, lowest FD, installed in the routing table, used for forwarding
- Feasible Successor: backup route, already loop-free, usable instantly at failure – lives in the topology table, not the routing table
A neighbor can be an FS when:
RD < FD (successor)
If the condition holds, the neighbor’s path cannot point back at you → loop-free. 👉 EIGRP’s mathematical loop guarantee.
States
- Passive: normal, route stable, no queries (“passive = all is well”)
- Active: successor gone, no feasible successor → router sends queries and waits for replies → slower convergence
- Stuck-in-Active (SIA): replies missing/late – typically bad design, missing stubs, too-large query domains; the neighbor can be dropped
Failure handling – two scenarios
- A – FS exists (fastest): successor fails → FS promoted → no queries → fast convergence
- B – no FS: successor fails → destination goes active → queries → replies → new successor
Where is what?
| Table | Contains |
|---|---|
| Neighbor table | EIGRP neighbors |
| Topology table | All routes (successor + FS + candidates) |
| Routing table | Only the successor |
SIA vs dead timer
| Point | Hold/Dead timer | SIA |
|---|---|---|
| About | Neighbor liveness | Route computation |
| Trigger | Missing Hello | Missing Reply |
| Protocol | EIGRP (and OSPF) | EIGRP only |
| Time frame | 15/180 s | ~180 s |
| Fix | Stable link / timers | Stub, smaller query domain |
EIGRP Stub
Tells other EIGRP routers: “I am an end station – don’t send me queries for networks I can’t provide alternate paths to.” It limits the query domain, prevents SIA, and improves scalability and stability. Without stubs, queries can spread through the whole network, especially via spoke/access routers.
Advantages & disadvantages (CCNP)
| Category | Pros | Cons |
|---|---|---|
| Convergence | Very fast via DUAL + FS | Can be slow without FS (queries) |
| Loop-freedom | Mathematically guaranteed (FC) | Depends on correct design |
| Updates | Partial and triggered | Queries can stress the network |
| Load balancing | Unequal-cost via variance | More complex config |
| Scalability | Good in enterprise | SIA risk in large flat topologies |
| Design | Simple – no areas | Needs hierarchical design for stability |
| Vendor support | Strong in Cisco | Limited multi-vendor |
| Stub | Reduces query domain | Must be configured correctly |
| Standardization | Partially open | Not a full industry standard like OSPF |
| Failure handling | Fast local failover with FS | SIA on missing replies |
| Implementation | Easy to deploy and change | Harder to troubleshoot (DUAL) |
Configuration
router eigrp 100
network 192.168.1.0 0.0.0.255
network 192.168.2.0 0.0.0.255
no auto-summary
eigrp router-id 1.1.1.1
passive-interface default
no passive-interface GigabitEthernet0/0
!
eigrp stub ! variants: connected / connected summary / connected static
!
interface GigabitEthernet0/0
ip hello-interval eigrp 100 5
ip hold-time eigrp 100 15
Maintenance & troubleshooting
show ip eigrp neighbors
show ip route eigrp
show ip eigrp topology
show ip eigrp topology all-links
show ip protocols
show ip eigrp topology active
show ip eigrp neighbors detail
show ip eigrp traffic
debug eigrp packets ! use with care
debug eigrp fsm
undebug all
Filtering (CCNP important)
A) distribute-list + ACL:
access-list 10 permit 10.10.0.0 0.0.255.255
router eigrp 100
distribute-list 10 in GigabitEthernet0/0
! in = filter what you receive, out = filter what you advertise
B) prefix-list (best practice):
ip prefix-list EIGRP-FILTER permit 10.10.0.0/16 le 24
router eigrp 100
distribute-list prefix EIGRP-FILTER out GigabitEthernet0/0
C) route-map (most flexible):
ip prefix-list ALLOW permit 10.10.0.0/16
route-map EIGRP-FILTER permit 10
match ip address prefix-list ALLOW
router eigrp 100
distribute-list route-map EIGRP-FILTER out GigabitEthernet0/0
D) unequal-cost load balancing:
router eigrp 100
variance 2
! only feasible successors are used, and they must still satisfy the feasibility condition