EIGRP Facts
Enhanced IGRP is a Cisco-proprietary balanced hybrid routing protocol
that combines the best features of distance vector and link state routing. EIGRP:
- Sends the subnet mask in the routing update. It supports route
summarization and VLSM.
- Supports automatic classful route summarization at major network
boundaries (this is the default in EIGRP). Unlike IGRP and RIP, manual route
summarization can also be configured on arbitrary network boundaries to
reduce the routing table size.
- Is not susceptible to routing loops. Instead, EIGRP uses built-in loop
avoidance techniques. Under certain conditions, EIGRP will use split
horizon, but not hold downs or flush timers.
- Is scalable and does not have the 16 hop limitation of RIP.
- Uses hello packets to discover neighbor routers. Hello intervals on
EIGRP routers do not need to match.
- Exchanges the full routing table at startup, and then partial routing
updates thereafter.
- Uses unicasts or multicasts to 224.0.0.10 for routing updates. Hello
packets always use the multicast address.
- Uses bandwidth, delay, reliability, and load for the route metric. The
metric is expressed as the number of microseconds.
- The degree to which each value is used to calculate the metric can
be customized by modifying one of five K values.
- By default, K1 and K3 are set to 1, while K2, K4, and K5 are set to
0. These settings mean that with the default configuration, only delay
and bandwidth have an effect on the metric.
- On serial links, a default bandwidth of 1544 is used. EIGRP does not
detect the actual bandwidth on the link. You must manually configure
bandwidth values for accurate metric calculations.
- Uses an autonomous system (AS) number to identify routers that are to
share EIGRP information. The AS number on both routers must match.
- Maintains partial network topology information in addition to routes.
- Supports load balancing on equal-cost and unequal cost links. This means
that EIGRP can keep multiple paths to a single network, even if they have a
different cost. With IOS 12.4 and above, EIGRP supports up to 16 paths
(earlier versions supported up to 6), with the default being 4 equal-cost
paths.
- Minimizes network bandwidth usage for routing updates. During normal
operation EIGRP transmits only hello packets across the network. EIGRP does
not send periodic routing updates like RIP and IGRP. When change occurs,
only routing table changes are propagated in EIGRP not the entire table.
- Requires less processing and memory than link state protocols.
- Converges more quickly than distance vector protocols. In some cases,
convergence can be almost instantaneous because an EIGRP router stores
backup routes for destinations. If no appropriate route or backup exists in
the routing table, EIGRP will query neighbor routers to discover an
alternate route. In this manner, EIGRP can quickly adapt to alternate routes
when changes occur.
- Uses the DUAL link-state algorithm for calculating routes.
- Supports multiple protocols. EIGRP can exchange routes for IP, AppleTalk
and IPX/SPX networks.
- Uses a neighbors table to keep track of neighbor routers. The neighbors
table includes the following for each neighbor:
- A hold time. Each hello packet includes a hold time that identifies
how long the hello information is valid. If the hold time expires
without receipt of a hello packet, the neighbor is assumed to be
unreachable.
- Round-trip timers that help the router identify cost values to reach
the neighbor router.
- Uses a topology database to keep track of all known networks.
- The topology table has a list of each destination network and all
neighbor routers that reported routes to that network.
- The best routes that will be used for routing packets are copied
from the topology table into the routing table.
- The topology table holds up to 16 known routes (previously up to 6
before IOS version 12.4).
To understand how EIGRP can provide load balancing and fast recovery for
failed links, you need to understand the following concepts:
Advertised Distance (AD) |
The advertised distance (AD) is the cost to the destination
network as reported by the neighbor router. The AD is also called the
reported distance (RD). |
Feasible Distance (FD) |
The feasible distance (FD) is the lowest total cost to a
destination network. The feasible distance is identified for each
destination network, and is determined as follows:
- For each neighbor, a total cost to the network through the
neighbor is calculated by adding the AD to the cost required to
reach the neighbor router (the cost of the link used to reach the
neighbor router).
- The router compares the total cost of all routes. The lowest
total cost to the destination network is the feasible distance to
the network.
Note: Sometimes the total cost for each neighbor route is
referred to as a feasible distance. However, the term more correctly
identifies the lowest known cost to the network, not the total cost for
each reported (possible) route. |
Successor |
A successor is the route to a destination network with the
lowest total cost.
- When a new route is first learned, the total cost to the
successor route is used as the feasible distance to that network.
- The successor route is copied from the topology table into the
routing table.
- You can have multiple successor routes if multiple routes to the
same network exist with the same lowest metric.
|
Feasible Successor |
A feasible successor is an alternate route to a destination
network. The total cost to the route through the feasible successor is
higher than the total cost of successor routes. A route must meet the
following condition to qualify as a feasible successor route:
The advertised distance of the route through that neighbor must be
less than the feasible distance used for that network (AD < FD).
Be aware of the following regarding feasible successors:
- Satisfying the AD < FD condition ensures that the route is loop
free. In other words, the router knows for sure that the route does
not include itself in the path if the AD is lower than the FD.
Note: Successor routes must also meet this condition.
- Feasible successor routes are kept in the topology table but are
not copied to the routing table.
- Successor routes can also be classified as feasible successor
routes.
- When all successor routes to a network are lost, the router can
immediately begin to use the next best feasible successor route.
This provides for rapid recovery in the event of a topology change.
|
Be aware of the following regarding the EIGRP and routes:
- All known routes to a destination are kept in the topology table. Only
successor routes are copied to the routing table.
- If the successor route goes down and there are no feasible successors,
routes whose advertised distance is greater than the feasible distance for
the route are not used because they might be routes that include
loops.
- When the last feasible successor route to a network is lost, the router
recalculates all routes for the lost neighbor. Instead of using other routes
that are not feasible successor routes, it first communicates with neighbor
routers. If necessary, the router recalculates the feasible distance for the
route.
- A route whose AD is greater than the FD does not prove that a loop
exists, only that a loop might exist. After the last feasible
successor route is lost, a previously unacceptable route could be identified
as a feasible successor route as long as its AD is less than the
newly-calculated FD.
- By default, EIGRP uses equal-cost load balancing. To use unequal-cost
load balancing, configure the variance value. The variance is a
multiplier that identifies the degree to which alternate paths can be used.
- The variance value ranges from 1 to 255.
- The default variance is 1, meaning that only routes that match the
best route can be used.
- Setting the variance to 2 allows alternate routes to be used whose
total costs are within a factor of 2 (double or less) of the best cost
route.
- Only feasible successor routes can be used. This means that a route
whose AD is greater than the FD cannot be used as an alternate route,
even if its total cost is within the variance amount.
For an EIGRP router to share information with a neighbor, the following
conditions must be met:
- Both routers are on the same subnet with the same subnet mask.
- If used, authentication checks must pass.
- Both routers must be configured with the same AS number.
- Metric weight values (K values) must match on both routers.
EIGRP Command List
You configure EIGRP just the same as you would configure IGRP. The following
table lists the applicable commands.
Router(config)#router eigrp number |
Defines an EIGRP process.
The number must match between routers for information to be shared. |
Router(config-router)#network n.n.n.n
Router(config-router)#network n.n.n.n w.w.w.w
|
Identifies a network that participates in the routing process.
Networks can be specified with or without the wildcard mask. If you do
not use a wildcard mask, the network address you add will be
automatically truncated based on classful network boundaries.
You must use a wildcard mask to identify VLSM subnets. |
Router(config-router)#no auto-summary
|
Turn off automatic route summarization.
With automatic route summarization, subnets are summarized based on
classful boundaries when advertising routes on networks with a different
class boundary. You must disable automatic summarization if you have a
network address (such as 10.0.0.0) subnetted into smaller subnets and
separated by a network with a different classful network address (such
as 12.0.0.0). |
Example
The following commands enable EIGRP on a router and define three networks that
participate in the routing process.
Router(config)#router eigrp 2
Router(config-network)#network 172.16.1.0 0.0.0.255
Router(config-network)#network 172.16.2.0 0.0.0.255
Router(config-network)#network 172.16.3.0 0.0.0.255
Use the following commands to manage and monitor EIGRP.
show ip route
|
View EIGRP-learned routes. |
show eigrp neighbors
|
View neighboring routers from which EIGRP routes can be learned.
Lists the IP address of the connected router. |
show eigrp interfaces
|
View the interfaces that are running EIGRP and the number of
connected routers. |
EIGRP Troubleshooting Facts
When troubleshooting EIGRP, keep in mind that the following conditions must
be met for an EIGRP router to share information with a neighbor:
- Both routers must be on the same subnet with the same subnet mask.
- If used, authentication checks must pass.
- Both routers must be configured with the same AS number.
- Metric weight values (K values) must match on both routers.
Note: Hello intervals do not need to match for EIGRP.
The following table lists some commands you can use to verify EIGRP.
show ip protocols |
Use show ip protocols to view:
- EIGRP autonomous system number
- Configured networks
- K values and variance
- Neighbor router IP addresses
Note: In the labs, this is the only listed troubleshooting
command that has been enabled. |
show ip eigrp interfaces |
Use show ip eigrp interfaces to view interfaces that are
sending and receiving EIGRP updates. Passive interfaces will not
be shown. |
show ip eigrp neighbors |
Use show ip eigrp neighbors to view the following information
for neighbor routers:
- IP address
- Local interface to reach the neighbor router
|
show ip eigrp topology |
Use show ip eigrp topology to view the contents of the
topology table for EIGRP. Information for each known network includes:
- The number of successor routes to that network.
- The feasible distance (FD) for the network.
- Feasible successors to that network.
Show ip eigrp topology only shows feasible success routes (routes
whose AD is less than the network FD). To view all routes, including
those that did not qualify as feasible successor routes, use show ip
eigrp topology all-links.
|
The following example shows some sample output from the show ip eigrp
topology all-links command.
Router# show ip eigrp topology all-links
IP-EIGRP Topology Table for process 77
Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply,
r - Reply status
P 172.16.90.0 255.255.255.0, 2 successors, FD is 46251776
via 172.16.80.28 (46251776/46226176), Ethernet0
via 172.16.81.28 (46251776/46226176), Ethernet1
via 172.16.80.31 (46277376/46251000), Serial0
P 172.16.81.0 255.255.255.0, 1 successors, FD is 307200
via 172.16.82.28 (307200/281600), Ethernet1
via 172.16.80.28 (308500/281600), Ethernet0
via 172.16.80.31 (332800/307900), Serial0
Important items in the command output are explained in the following table:
Destination network |
Each destination network is indicated by a subsection in the command
output. For example, the route 172.16.90.0 has the following
information:
- P = The computational status of the route. A status of P
means that the route has been calculated and the router is not
waiting for information or calculating information for the route. A
passive state indicates a converged route.
- Network address and mask
- 2 successors = the number of successor routes to that
network. Successor routes are the best feasible successor routes.
Successor routes meet the following conditions:
- Their advertised distance (AD) is less than the feasible
distance for the network.
- Their total cost is the lowest of the total cost for all
feasible successor routes.
- FD is 46251776 = The feasible distance (FD) to the
network. The FD for the network is the lowest total cost of all
routes to the destination network at the time that routes were
calculated.
|
Known routes |
Known routes to the destination are identified by the via
entries. For example, the first route for network 172.16.90.0 shows the
following information:
- 172.16.80.28 = The next hop router address.
- 46251776 = The total cost to the destination network. The
total cost is calculated by the router by taking the advertised cost
and adding the actual bandwidth and delay to reach the next hop
router. Be aware that the total cost value is sometimes called the
feasible distance of the route; however, this is not the same thing
as the feasible distance of the network. Note: The total cost
of the first route typically matches the FD for the destination
network. However, the values will not necessarily match.
- 46226176 = The advertised distance (AD) to the
destination (also called the reported distance (RD)). This is the
distance as reported by the next hop router.
- Ethernet0 = The local router interface used to reach the
next hop router.
|
Successor routes |
Successor routes are identified by taking the number of successors
and counting down the list of known routes. In this example for network
172.16.90.0, there are 2 successors, meaning that 172.16.80.28 and
172.16.81.28 are both successor routes. |
Feasible successor routes |
Feasible successor routes are additional routes that match the
following requirement:
The AD for the route must be lower than the FD for the network.
Note: Any route that matches this condition is called a feasible
route. This includes those routes that are the successor routes (a
successor route is a feasible route, but not every feasible route is a
successor route).
This requirement ensures that the route is loop free. For network
172.16.90.0, all three routes listed are feasible routes because their
AD cost is less than 46251776. For network 172.16.81.0, the last
route is not a feasible successor route because its AD (307900)
is greater than the FD for the route (307200). Note: This
last route would not have shown if the show ip eigrp topology
command was used without the all-links parameter. |