Enhanced Interior Gateway Routing Protocol or EIGRP is Cisco’s proprietary Distance Vector routing protocol that replaced the earlier IGRP routing protocol. EIGRP introduced significant improvements to the IGRP routing protocol including support for VLSM and CIDR, guaranteed “loop free” routes, and faster convergence times.
- VLSM & CIDR – EIGRP has support for variable length subnet masks (VLSM) and classless inter domain routing (CIDR).
- DUAL algorithm – The diffusing update algorithm or DUAL, provides guaranteed and optimized loop free routes.
- Successor & Feasible Successor routes – The successor route is the best route to a destination network. If available, DUAL and the EIGRP topology database will also calculate a guaranteed loop free backup route called the Feasible Successor route.
- Partial & Bounded Updates – for faster convergence times. No periodic updates like RIP. EIGRP only sends information when there is a change in the network, like a network link going down. EIGRP does not send the entire routing table, just the information that has changed and only to those routers that need the new information.
- Routing Metrics – EIGRP uses a 32 bit routing metric that is backwards compatible with IGRP’s 24 bit metric. EIGRP’s routing metric is not based on hop count like RIP, it is based instead on: Bandwidth, Load, Delay and Reliability, with Bandwidth and then Delay being the most important factors. EIGRP also features MTU and Hop Count as metric vectors, though they are not used in route calculations.
- RTP reliable transport protocol – EIGRP uses its own layer 3, layer 4 protocol to exchange routing updates, and information
- PDMs protocol dependent modules – can be added to EIGRP so that it can route other routed protocols like Apple Talk and IPX/SPX
- Unequal Cost Load Balancing – EIGRP is capable of being configured for unequal cost load balancing
EIGRP Routing Tables
- Routing Table – the best “loop free” network routes are placed in the routing table
- Neighbor Table – neighbor adjacencies are maintained in this table
- Topology Table – maintains “loop free” backup routes known as successor routes and feasible successor routes
IOS CLI Commands
The command to start the EIGRP routing process is router eigrp followed by the autonomous system number. The autonomous system number or (AS#) functions more as a process ID number. The AS number needs to be the same on all neighbor EIGRP routers.
router(config)# router eigrp <AS/ID-number>
EXAMPLE: router(config)# router eigrp 1
The command to add a network and interface to the EIGRP routing process is: network <network number> <wildcard mask>. The network number is the network ip address and the wildcard bits is the inverse of the subnet mask in decimal, so a /24 subnet mask or 255.255.255.0 in wildcard bits is 0.0.0.255 and a /16 or 255.255.0.0 would be 0.0.255.255.
router(config-router)# network <network-number> <wildcard-mask>
EXAMPLE: router(config-router)# network 192.168.1.0 0.0.0.255
router(config-router)# network 172.16.0.0 0.0.255.255
If the EIGRP router is a boundary router it will auto-summarize routes by default. A boundary router is a router with multiple interfaces having different classful network ranges and/or different subnet mask lengths. This can cause problems by working against EIGRPs ability to handle VLSM, CIDR, and general routing to non-contiguous networks. The command to turn off auto summarization is no auto-summary.
router(config-router)# no auto-summary
The redistribute static command will propagate all static routes including the default route to all other EIGRP routers in the network.
router(config-router)# redistribute static
The passive-interface command can be used to stop EIGRP packets from being sent out of a network interface where there are no other EIGRP routers present.
EXAMPLE: router(config-router)#passive-interface fastEthernet 0/0
The no auto-summary command is very useful to taking advantage of EIGRP’s ability to route to variable length and discontiguous subnets, however you may want to still use summary addresses in order to optimize your router’s routing tables. In this situation you can manually configure and advertise an EIGRP summary address with the ip summary-address command configured on a network interface.
router(config)# interface <int-type> <int-num>
router(config-if)# ip summary-address eigrp <as-number> <ip-summary-address> <subnet-mask> <administrative-distance>
EXAMPLE: router(config)# interface s0/0/0
router(config-if)# ip summary-address eigrp 1 192.168.0.0 255.255.252.0 5
The following commands will exit from router configuration mode
The following show commands are useful in verifying and troubleshooting EIGRP operation and configuration, as well as identifying the successor and feasible successor routes
router# show ip eigrp neighbor
router# show ip eigrp topology
router# show running-config
router# show ip protocols
router# show ip route