EIGRP

EIGRP – Enhanced Interior Gateway Routing Protocol

This article explains how to configure Enhanced Interior Gateway Routing Protocol (EIGRP). In this tutorial you will learn EIGRP commands, metric and EIGRP configuration.


This is an enhanced version of the previous Cisco protocol IGRP.  Thus, as IGRP, even EIGRP can be only configured on Cisco hardware.

It is a Hybrid protocol also called an advanced Distance Vector routing protocol. Many rules that applied to RIP also apply to EIGRP like: Split horizon, Route poisoning etc.

It is called Hybrid because it has features of both Distance vector and link-state routing protocols

Below is some information about EIGRP:

–         It uses DUAL – Diffusing Update Algorithm to determine the best path among available paths. DUAL helps in a loop free routing.
–         It forms neighbors relationships with adjacent routers in the same Autonomous system number
–         Sends traffic using uni cast or as multicast, depending on the packet type. It use the multicast IP address 224.0.0.10
–         It uses Reliable Transport Protocol (RTP) for reliable delivery of packets
–         Easy in design ( Not complex like OSPF)
–         Incremental Updates: Means updates are sent when there is change in the topology. These updates are reliable and are acknowledged on being received.
–         Partial Updates: Means send only what has changed not the entire routing table, this conserves Network bandwidth
–         Uses Hello packets to maintain neighbor relationship
–         Fast convergence with concept of Successor and Feasible Successor
–         Supports VLSM
–         Classless Routing protocol
–         Includes all features of IGRP
–         Supports IP, IPX and Apple Talk protocols
–         Uses composite metric (Bandwidth, Load, Delay, MTU and Reliability), uses Bandwidth and delay of line by default.
–         Supports equal and Unequal cost load balancing
–         Supports Authentication (MD5)
–         Administrative Distance of 90 for routes that originate from within the local Autonomous System
–         Administrative Distance of 170 for external routes that come from outside the local autonomous system
–         The maximum hop count is 224, default is 100
–         EIGRP routes can be summarized. Auto and manual summarization supported.
–         Hello packets are sent every 5 seconds

EIGRP uses three tables to maintain a database, similar to OSPF:

  1. Neighbor Table: Lists the neighboring routers formed by using EIGRP Hellos. The neighbors must belong to the same Autonomous System number. Lists all directly connected neighbors. It shows the Next hop router and the interface through which it can reach there. ‘show ip eigrp neighbors’ 
  2. Topology Table: Lists all the path to destination of routes learned i.e. all routes in the Autonomous System. All the routes learnt from EIGRP neighbors. Shows destination and metric. ‘show ip eigrp topology’ 
  3. Routing Table:the best path to a destination is entered in this table. This is used to route traffic. Best routes from topology table are copied to the routing table. ‘show ip route’

EIGRP Packet Types

There are five packets type in EIGRP as mentioned below.

  1. Hello:Identifies neighbors and forms neighbor relationship. Hellos serve like the keepalive mechanism. They are multicast to IP address 224.0.0.10. If the router receives a hello packet from the neighbor its means the neighbor is up and available. 
  2. Update: These packets are sent reliably to which ever router that needs the information. The information contained is Routing information.  Sending Update packets help build topology and routing tables. The update can be either unicast if sending to single neighbor or multicast if sending to multiple neighbors. If multicast it is sent to IP address 224.0.0.10. 
  3. Query: These packets are sent when EIGRP loses a network and does have any backup paths i.e. if it loses a successor route and no feasible successor is available in the topology table. The packet is sent reliable requesting for route information and sent as multicast to address 224.0.0.10 
  4. Reply: These packets are the response to the Query packet. It is sent reliably to the querying router as unicast. 
  5. Acknowledgement: Also known as ACKs are hello packets without any information. It only contains the acknowledgement number. These packets acknowledge the receipt of Update, Query and Reply packets. Acknowledgement packets are sent as unicast.

Neighbor Discovery

In the neighbor discovery process we will understand what happens when you configure two routes for EIGRP.

1. Hellos Sent: When EIGRP first starts, Hellos are used to build the Neighbor table. These neighbor relationships are called adjacencies.

EIGRP first starts, Hellos

Once Router A and Router B are configured with EIGRP, hellos are sent. Here we see Router A sending the Hello first.

2. UPDATE: Then the Router B sends a Hello and Update packet. The update contain all the routing information

UPDATE3. Acknowledge the Update. : router A then acknowledge the update it received from router B

Acknowledge the Update4. Router A sends an update to Router B

Router A sends an update to Router B5. Router B now will acknowledge the update received from Router A

acknowledge the update received After forming neighbors EIGRP Routers send Hellos to each other as keepalives. Any new information will only be sent if a neighbor is lost or new is formed. EIGRP consider a neighbor lost if it does not receive 3 hellos. (Called hold-time i.e. 3X hello time)

The default hello and hold timer are as follows:

–         LAN and High speed WAN ( greater than T1) : Hellos sent every 5 seconds and Hold timer is 15 seconds ( 5 X 3 = 15)
–         Slower WAN Links ( T1 speed or lesser): Hellos sent every 60 seconds and Hold timer is 180 seconds

 EIGRP Route Selection / Metric

Each advertisement that a router receives from its neighbors has an Advertised Distance (AD) and Feasible Distance (FD) to a route.

The AD is a metric from neighbor to network

The FD is a metric from the router to the network through the neighbor.

EIGRP Route Selection / MetricAs per the diagram, we have some random metric value put on the links, in blue color. Here Router C tells Router B, that the destination is away from it at a metric of 10.

This is the information advertised by the Router C and is known as ‘Advertised Distance’. The same entry is noted in the Topology Table of Router B.

Now Router B is directly connected to Router C and knows that it has a cost of 30 to reach Router C, and Router C in turn has a cost of 10 to reach the destination. Thus the total cost for Router B to reach the destination is 30 + 10 = 40. This is known as the ‘Feasible Distance’ (Total path cost to the destination). This is also noted in the Topology table.

Feasible DistanceNow as we have one more router in the network running EIGRP, Router B will advertise the cost to reach the destination, in this case it is 40 ( Advertised Distance)

But since the cost for Router A to reach Router B is 10, the total cost for Router A to reach the Destination will be 50 (This will be the Feasible Distance) In simple terms:

  • Advertised distance:  Distance from your neighbor to destination.
  • Feasible distance: Total Distance from you till the destination.

Successor / Feasible Successor

The Successor is the best path to the destination. Since it is the best path to the destination, it will be copied from Topology table to routing table.

The Feasible Successor is the 2nd best path or backup path to the destination. To know if we have a backup route and which is it we need to use the below formula or condition also known as Feasible condition.

Advertised distance of feasible successor < Feasible distance of successor.

EIRGRP Metrics

EIGRP uses the below metrics to determine the best route to a destination. It is also known as K values.

  1. Bandwidth – K1: The minimum bandwidth along the path is considered.
  2. Load – K2: The cumulative load of all outgoing interfaces along the path
  3. Delay – K3: The cumulative delay of all outgoing interfaces along the path, measured in tens of microseconds
  4. Reliability – K4: The average reliability of all outgoing interfaces along the path
  5. MTU –K5: Maximum Transmission Unit. The smallest MTU in the path

EIGRP uses only Bandwidth and Delay by default. Thus below are the K-values.

K1 = 1
K2 = 0
K3 = 1
K4 = 0
K5 = 0

[10000000/bandwidth + delay] * 256

Here, bandwidth is the link with the lowest bandwidth along the path, measured in kilobits. Delay is the total delay of all outgoing interfaces along the path.

EIGRP Configuration

EIGRP configuration is very simple. Consider the following network in the diagram.

EIGRP Configuration

From PC 1 in network 192.168.1.0, if we try to ping other devices we are not able to reach them.

network 192.168.1.0

The routing table only show directly connected routes.

Router_ARouter_B

Router_B

Router_C

Router_CNow let us configure EIGRP on the devices and establish connectivity.

EIGRP Router_A

Router_B

EIGRP Router_BRouter_C

EIGRP Router_CNow that we have configured EIGRP, Let us try to ping the other network and see if they are reachable.

EIGRP

We see that when we ping from Network 192.168.1.0 to any of the PCs in the other network, we are getting successful pingsJ. We have configured EIGRP successfully and established connectivity.

Let’s verify the routing table as see if we have EIGRP routes.

Router_A

Router_AThe routes marked as ‘D’ are learnt from EIGRP

Router_B

Router_BRouter_C

Router_C

The show ip protocols command will give us good information about the protocol EIGRP

show ip protocols

It tells us, the protocol configured is EIGRP with AS 100. The metric or K-values are seen.  Information about networks which are being routed using EIGRP is also mentioned. The administrative distance is also seen in this output of show ip protocols.

The neighbor table looks like below

neighbor table The topology table looks like below:

topology table

The Routing Table is already shown before using the ‘show ip route’ command.

You can view additional information using different command like: To view the exchange process use debug ip eigrp packets, and to view the update process use debug ip eigrp.

Read more

    Free Cisco CCNA Study Guide