2010-04-14 07:45:39
EIGRP Troubleshooting
Enhanced Interior Gateway Protocol (EIGRP)
EIGRP is a Cisco proprietary hybrid routing protocol or an advance distance vector routing protocol.
There are four components that make up EIGRP:
1. Protocol-dependent modules — Supports several routed protocols.
2. Reliable Transport Protocol (RTP) — Send packets reliably using IP protocol 88.
3. Neighbor discovery and recovery — Uses hellos to identify its neighbors quickly and learn when neighbors are down.
4. Diffusing Update Algorithm (DUAL) — Finds the best path and feasible failover paths.
EIGRP uses three tables to track state:
1. EIGRP interface table — Interfaces participating in EIGRP, troubleshoot with the command sh ip eigrp int.
2. EIGRP neighbor table — Tracks routers which have exchanged Hello packets. Hello packets are sent regularly out all interfaces participating in EIGRP to multicast address 224.0.0.10 in order to maintain neighborship. Neighbors are removed if no hello packet is received within the holdtime. Troubleshoot the neighbor table by using sh ip eigrp neigh or debug eigrp packets.
3. EIGRP topology table — After the router discovers its neighbors it is able to create the topology table and assigns successors and feasible successors. Passive is good, active is a bad state in the topology table, it is active because the router is actively attempting to find a path. DUAL acts upon the topology table to populate the routing table. Troubleshoot the topology table with sh ip eigrp top.
Other EIGRP Definitions:
— Advertised Distance — The metric from a neighbor to the destination network.
— Feasible Distance — The best metric to the destination network, including the metric to the neighbor advertising that path.
— Feasible Successor — Advertised distance is less than the feasible distance or current best path. This is called the feasibility requirement and this route will not result in a loop if installed in the routing table.
— Variance — EIGRP automatically load balance across equal-cost links. In order to turn on unequal cost load balancing use the variance command.
sh ip eigrp int
Display all interfaces designated to participate in EIGRP.
R4#sh ip eigrp int IP-EIGRP interfaces for process 10 Xmit Queue Mean Pacing Time Multicast Pending Interface Peers Un/Reliable SRTT Un/Reliable Flow Timer Routes Fa0/0 1 0/0 2 0/1 50 0 Fa0/1 1 0/0 5 0/1 50 0
sh ip eigrp neigh
She routers EIGRP neighbors.
R4#sh ip eigrp neigh IP-EIGRP neighbors for process 10 H Address Interface Hold Uptime SRTT RTO Q Seq (sec) (ms) Cnt Num 1 10.1.4.10 Fa0/1 14 1w5d 5 200 0 75 0 10.1.4.6 Fa0/0 12 3w0d 2 200 0 75
sh ip eigrp top
Displays all routes known to the EIGRP process.
R4#sh ip eigrp top IP-EIGRP Topology Table for AS(10)/ID(10.1.4.5) Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply, r - reply Status, s - sia Status P 10.2.4.12/30, 2 successors, FD is 30720 via 10.1.4.6 (30720/15360), FastEthernet0/0 via 10.1.4.10 (30720/15360), FastEthernet0/1 P 0.0.0.0/0, 1 successors, FD is 28160 via Summary (28160/0), Null0 P 10.1.4.8/30, 1 successors, FD is 28160 via Connected, FastEthernet0/1 P 10.2.1.0/24, 1 successors, FD is 28416 via 10.1.4.6 (28416/2816), FastEthernet0/0 P 10.2.2.0/24, 1 successors, FD is 28416 via 10.1.4.10 (28416/2816), FastEthernet0/1 P 10.1.4.4/30, 1 successors, FD is 28160 via Connected, FastEthernet0/0 <strong>sh ip route eigrp</strong> Shows the routes in the IP routing table that were installed by the EIGRP process. R4#sh ip route eigrp 10.0.0.0/8 is variably subnetted, 8 subnets, 2 masks D 10.2.4.12/30 [90/30720] via 10.1.4.10, 1w5d, FastEthernet0/1 [90/30720] via 10.1.4.6, 1w5d, FastEthernet0/0 D 10.2.1.0/24 [90/28416] via 10.1.4.6, 3w0d, FastEthernet0/0 D 10.2.2.0/24 [90/28416] via 10.1.4.10, 1w5d, FastEthernet0/1 D* 0.0.0.0/0 is a summary, 3w0d, Null0
debug ip routing
Display routing table updates, not EIGRP specific.
IP routing debugging is on R4# Apr 4 22:32:06.331: RT: NET-RED 0.0.0.0/0 R4# Apr 4 22:33:06.327: RT: NET-RED 0.0.0.0/0 R4# Apr 4 22:33:54.943: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/1, changed state to down Apr 4 22:33:54.943: RT: is_up: FastEthernet0/1 0 state: 4 sub state: 1 line: 0 has_route: True Apr 4 22:33:54.943: RT: interface FastEthernet0/1 removed from routing table Apr 4 22:33:54.943: RT: del 10.1.4.8/30 via 0.0.0.0, connected metric [0/0] Apr 4 22:33:54.943: RT: delete subnet route to 10.1.4.8/30 Apr 4 22:33:54.943: RT: NET-RED 10.1.4.8/30 Apr 4 22:33:54.943: RT: Pruning routes for FastEthernet0/1 (2) Apr 4 22:33:54.947: RT: delete route to 10.2.4.12 via 10.1.4.10, FastEthernet0/1 Apr 4 22:33:54.947: RT: NET-RED 10.2.4.12/30 Apr 4 22:33:54.947: RT: delete route to 10.2.2.0 via 10.1.4.10, FastEthernet0/1 Apr 4 22:33:54.947: RT: no routes to 10.2.2.0, flushing Apr 4 22:33:54.947: RT: NET-RED 10.2.2.0/24 R4# Apr 4 22:33:54.951: %DUAL-5-NBRCHANGE: IP-EIGRP(0) 10: Neighbor 10.1.4.10 (FastEthernet0/1) is down: interface down
debug eigrp packets
Shows EIGRP neighbor interaction.
R4#debug eigrp packets EIGRP Packets debugging is on (UPDATE, REQUEST, QUERY, REPLY, HELLO, IPXSAP, PROBE, ACK, STUB, SIAQUERY, SIAREPLY) R4# Apr 4 22:35:19.701: EIGRP: Sending HELLO on FastEthernet0/0 Apr 4 22:35:19.701: AS 10, Flags 0x0, Seq 0/0 idbQ 0/0 iidbQ un/rely 0/0 Apr 4 22:35:19.961: EIGRP: Sending HELLO on FastEthernet0/1 Apr 4 22:35:19.961: AS 10, Flags 0x0, Seq 0/0 idbQ 0/0 iidbQ un/rely 0/0 Apr 4 22:35:20.665: EIGRP: Received HELLO on FastEthernet0/1 nbr 10.1.4.10 Apr 4 22:35:20.665: AS 10, Flags 0x0, Seq 0/0 idbQ 0/0 iidbQ un/rely 0/0 peerQ un/rely 0/0
debug ip eigrp
Shows the information contained in EIGRP packets.
R4#debug ip eigrp IP-EIGRP Route Events debugging is on R4# Apr 4 22:36:10.745: IP-EIGRP(Default-IP-Routing-Table:10): Processing incoming QUERY packet Apr 4 22:36:10.745: IP-EIGRP(Default-IP-Routing-Table:10): Int 10.1.4.8/30 M 4294967295 - 0 4294967295 SM 4294967295 - 0 4294967295 Apr 4 22:36:10.769: IP-EIGRP(Default-IP-Routing-Table:10): 10.1.4.8/30 - don't advertise out FastEthernet0/0 Apr 4 22:36:10.769: IP-EIGRP(Default-IP-Routing-Table:10): Int 10.1.4.8/30 metric 28160 - 25600 2560 R4# Apr 4 22:36:14.933: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/1, changed state to down Apr 4 22:36:14.937: %DUAL-5-NBRCHANGE: IP-EIGRP(0) 10: Neighbor 10.1.4.10 (FastEthernet0/1) is down: interface down Apr 4 22:36:14.937: IP-EIGRP(Default-IP-Routing-Table:10): route installed for 10.2.4.12 () Apr 4 22:36:14.953: IP-EIGRP(Default-IP-Routing-Table:10): 10.1.4.8/30 - not in IP routing table Apr 4 22:36:14.953: IP-EIGRP(Default-IP-Routing-Table:10): Int 10.1.4.8/30 metric 4294967295 - 0 4294967295 Apr 4 22:36:14.953: IP-EIGRP(Default-IP-Routing-Table:10): 10.2.2.0/24 - not in IP routing table Apr 4 22:36:14.953: IP-EIGRP(Default-IP-Routing-Table:10): Int 10.2.2.0/24 metric 4294967295 - 25600 4294967295 Apr 4 22:36:14.985: IP-EIGRP(Default-IP-Routing-Table:10): Processing incoming REPLY packet R4# Apr 4 22:36:14.985: IP-EIGRP(Default-IP-Routing-Table:10): Int 10.1.4.8/30 M 4294967295 - 0 4294967295 SM 4294967295 - 0 4294967295 Apr 4 22:36:14.985: IP-EIGRP(Default-IP-Routing-Table:10): Int 10.2.2.0/24 M 4294967295 - 0 4294967295 SM 4294967295 - 0 4294967295
Administrative Distance
Believability of a routing protocol, the more believable the protocol the more likely it is to be added to the routing table.
Protocol | Administrative Distance |
Connected Interface | 0 Most believable |
Static route | 1 |
EIGRP Summary route | 5 |
EBGP | 20 |
Internal EIGRP | 90 |
IGRP | 100 |
OSPF | 110 |
IS-IS | 115 |
RIP | 120 |
EGP | 140 |
ODR | 160 |
External EIGRP | 170 |
Internal BGP | 200 |
Unknown | 255 Unreachable |
Source: TSHOOT Book p. 151
Other resources:
EIGRP Introduction
EIGRP