notes taken to help study for CCIE...used Enabling IP Routing with Cisco Routers by R. Das & K.Chakrabarty, CCIE Routing and Switching by A. Anthony Bruno, Enhanced Interior Gateway Routing Protocol (Cisco Document ID: 16406), Pearson's CCNA Routing and Switching 200-101 Complete Video Course, as well as lots of Internet resources. A lot of this stuff is plagarized from the stated sources, and should be re-worked if ever put into an official publication

EIGRP

Table of Contents

Highlights

Concepts

Protocol-Dependent Modules - Uses different modules to support IP, IPX, Appletalk.

EIGRP Metrics

bandwidth (K1 - default) big
delay (K3 - default) dogs
reliability (K5) really
load (K2) like
mtu me

Default K values

router eigrp 100
  metric weight 0 1 1 1 0 0 (last 5 numbers are K values)
                            (EIGRP neighbors have to have matching K values)

Default Formula -
256*(Bw + Delay)
256 * ( (10,000,000 / min bw in kbs) + (sum of interface delays / 10) )
Full Formula -
                 K2*Bw                       K5
256*([K1*Bw + ---------- + K3*Delay]*[----------------])
              (256-Load)              (Reliability+K4)


Values to right of decimals get dropped during calculation.

Stub routers - hub router contains info, performs routing for all networks. Spike routers have only enough info to reach hub router.

Timer Comparison

 Hello(RIP-Invalid)
(OSPF-Suspicious)
Dead
(RIP-Flush)
Holddown
RIP30180 (6x)240 (8x)180
OSPF10 BMA
30 NBMA
90 (3x)120 (4x)5 second delay +
10 seconds Hold
EIGRP5
60 WAN < 1.544Mbps
15 (3x)
STP220 blocking
15 listening
15 learning
forwarding

Packets


EIGRP
Opcode
  
Description  
5 Hello Multicast to 224.0.0.10. Default timer is (5 seconds (60 seconds on WAN links with 1.544Mbps or less)). Holddown timer is 3x hello timer
  Acknowledgment   hello packet with no data. Acks reception of update packet. Sent to unicast address of sender of update packet.
1 Update contain routing info of destinations. unicast to newly discovered neighbors or multicast to 224.0.0.10 when link or metric changes. Uses RTP.
3 Query Multicast to find feasible successors to destination.
4 Reply Sent in response to query packets. Unicast to sender of query in order to provide feasible successor.
6 IPX, SAP  

Tables

neighbor table – establish relationship with neighbor
    successor  is neighbor that can give you best path to destination
        feasible distance – value of network to successor
        reported distance – router reports FD to next router
        feasible distance = my FD + Reported distance
    feasible successor is next best router that can get to destination based on
    feasibility condition – reported distance has to be less than my own feasible
                distance through successor
   sh ip eigrp neighbors
interface table
Interfaces participating in eigrp AS
sh ip eigrp interfaces
topology table
routes that eigrp knows about
    feasible successor goes in here (not in routing table)
    2 successors – load balancing
    sh ip eigrp topology
    sh ip eigrp topology all-links (will see everything including bad links)
routing table

Type/Length/Value (TLV)

Taken from http://www.rhyshaden.com/eigrp.htm .
There are a number of TLVs, all of them begin with a 16 bit Type field and a 16 bit Length field. There then follows a number of fields that vary depending on the type as given below.

Commands

router eigrp [as]   (AS used to be 2 bytes - 65335, may now be 4
                    bytes (4billion+?))
                    (one AS doesn't play with another unless you
                    resdistribute)
network [ip subnet to participate in routing proc -classful or
        classless if you leave off subnet]

no auto-summary
ip summary-address eigrp AS IP-Addr Mask eigrp stub [receive-only | connected | static | summary]
default network <ip addr or exit interface> (like default gw for router)
redistribute ospf  <BW> <D> <R> <L> <M>
    (e.g. redistribute ospf 10000 100 255 1 15000)

show ip eigrp neighbor
show ipv6 eigrp neighbor
show ipv6 eigrp interfaces
show ip eigrp topology
show ipv6 eigrp topology
show ip protocols (gets info about eigrp and other routing protocols) show ipv6 protocols
show ip route
show ipv6 route

(Show's route w/ weights advert fr diff rtr IDs)
    (FD - Feasible Distance - calc'ed distanced connected)
    (RD - Received Distance - Distance recieved from neighbor)
sh ip eigrp topology all-links (will see all incl bad links)
show ip protocols
debug ip eigrp events

IPv4 config

Router One
router eigrp 2000 (The "2000" is the autonomous system - must match on neighboring routers) 
  network 172.16.1.0 0.0.0.255 
metric weight 0 1 1 1 0 0 (last 5 numbers are K values) (EIGRP neighbors have to have matching K values)
AUTHENTICATION
key chain DEMO
  key 1
  key-string DaKEYstring
int fa 0/1
  ip authentication key-chain eigrp 100 DEMO
  ip authentication mode eigrp 100 md5 (send hash of key string)
  
Unequal cost routing
Figure variance based on max FD.
FD 1 - 390123
FD 2 - 2304357

variance = roundup(2304357/390123) = 6

router eigrp 100
  variance 6

show ip route (will show unequal cost routes in routing table)
Autosummarization
router eigrp 100
  auto-summary

doesn't work well with discontinguous networks...
Passive interface
listen but don't advertise
router eigrp 100
  passive-interface fa 0/0

show ip protocols (will show passive interfaces)
show ip eigrp neighbors
show ip eigrp interfaces
Router Two
router eigrp 2000
  redistribute eigrp 1000 route-map to-eigrp2000
  network 172.16.1.0 0.0.0.255 
router eigrp 1000 
  redistribute eigrp 2000 route-map to-eigrp1000
  network 10.1.0.0 0.0.255.255
  
route-map to-eigrp1000 deny 10
  match tag 1000
route-map to-eigrp1000 permit 20
  set tag 2000
route-map to-eigrp2000 deny 10
  match tag 2000
route-map to-eigrp2000 permit 20
  set tag 1000

IPv6 config

ipv6 router eigrp 1 (1 is autonomous system)
  router-id 1.1.1.1
int lo0
  ipv6 eigrp 1 (tell interface to participate in as 1)
int fa 0/1
  ipv6 eigrp 1

Troubleshooting

sh ip route (check admin distances and FD)
show ip eigrp topology (FD / advertised distance)
show ip eigrp interfaces
show ip eigrp neighbors
NIT
show ip protocols