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 22.214.171.124
- 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:
- 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’
- 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’
- 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.
- Hello:Identifies neighbors and forms neighbor relationship. Hellos serve like the keepalive mechanism. They are multicast to IP address 126.96.36.199. If the router receives a hello packet from the neighbor its means the neighbor is up and available.
- 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 188.8.131.52.
- 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 184.108.40.206
- Reply: These packets are the response to the Query packet. It is sent reliably to the querying router as unicast.
- 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.
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.
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
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.
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.
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.
EIGRP uses the below metrics to determine the best route to a destination. It is also known as K values.
- Bandwidth – K1: The minimum bandwidth along the path is considered.
- Load – K2: The cumulative load of all outgoing interfaces along the path
- Delay – K3: The cumulative delay of all outgoing interfaces along the path, measured in tens of microseconds
- Reliability – K4: The average reliability of all outgoing interfaces along the path
- 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
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 is very simple. Consider the following network in the diagram.
From PC 1 in network 192.168.1.0, if we try to ping other devices we are not able to reach them.
The routing table only show directly connected routes.
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.
The show ip protocols command will give us good information about the protocol EIGRP
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
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.
- Routing and Routing Protocols
- Routing, Static Routing, Dynamic Routing
- Default Route and Static Routes Configuration