EIGRP – Overview and Neighbours

Game got real!

Time to get back aboard the study express and go back to the beginning with some EIGRP! Ok, here’s the lowdown:

  • ‘Advanced Distance Vector’ or Hydrid Routing Protocol
  • Layer 4 Protocol 88
  • Uses both Mulitcast (224.0.0.10) and Unicast for communication
  • Cisco Proprietary…

Huh? Proprietary? Usually not good unless you’re an all Cisco shop, why use it then?

  • Fast Convergence – with the use of low – by default – Hold Times and the concept of Feasible Successors EIGRP reacts to quickly to any major changes.
  • Partial Updates – rather than broadcasting the entire routing table (a la RIP) or re-transmitting LSA’s (OSPF) EIGRP only sends updates should an event e.g. metric or topology change occurs.
  • VLSM support – no great shakes, even RIPv2 does this…
  • Seamless Connectivity and Operation over L2 protocols – OSPF requires different config
  • Sophisticated metric – much more granular than IGRP and can also allow for uneven link load balancing.
  • Manual Summarisation – you can summarise on an interface level giving you greater control over routes advertised to neighbours.
  • Multiple L3 protocol support – again, not a huge advantage nowadays…many people still using IPX?

Let’s become friends….the mechanics of EIGRP neighbours

Adjancies is a better description than Neighbors as EIGRP routers will only become neighbours with directly connected (adjacent) routers. Their entire knowledge of the network consists of routes learned from neighbours whereas OSPF routers know about all routers in the area, even those not directly connected.

Facts:

  • Hellos are multicasted to 224.0.0.10
  • Every 5 seconds by default on a LAN interface (or Serial quicker than T1)
  • Every 60 seconds on slower interfaces (180 Hold)
  • Hold Time is 3 x Hello so 15 seconds

Hellos and Hold Time are configured per interface and can be changed….however if you change the Hello don’t forget to also change the Hold Time as the router won’t do it automatically. You could end up with flapping neighbours if your Hello time is greater than your Hold!

All Hellos are sourced from an Interfaces primary address so don’t think you can configure a secondary address and see an adjanceny form.

Several things need to match between 2 routers before an adjacency will form:

  • Routers must belong to the same EIGRP AS
  • Routers must be on the same Subnet
  • K Values must match
  • Authentication must pass
Once established Neighbours will appear in the EIGRP Table which lists all Neighbours and their properties such as Handle, Address, Interface, Hold Time, Uptime, SRTT, and RTO. Most of these fields are self-explanatory but SRTT and RTO need more explaining.
SRTT – Smooth Round Trip Timer – the average time in milliseconds it takes for a packet to be sent to this router and an acknowledgement to be received back.
RTO – Router Timeout? – the time in milliseconds the router will wait for an before retransmitting a reliable packet.

Passive Interfaces

Sometimes we’ll want to seed a connected subnet but not form any relationships on that interface. For this the passive interface command is used. This command essentially suppresses Hellos for the configured interface to prevent adjacencies from forming.

An alternative way of doing this would be not to use network statements and  just redistribute the connected subnets into EIGRP but this could cause problems as these routes will be classed as EIGRP External and thus have a higher Administrative Distance (170)

 

Commands

Seed subnet into EIGRP and run on all matching interfaces :

R1(config)#router eigrp 10
network x.x.x.x y.y.y.y (where x is subnet and y is wildcard mask)

Alter hello and hold timers on interface:
(config-if)#ip hello-interval eigrp 10 3
(config-if)#ip hold-time eigrp 10 9

Configure Passive Interfaces:

R1(config)#router eigrp 10
R1(config-router)#passive-interface FastEthernet0/0

We can also configure EIGRP to make all interfaces passive by default and then just turn on the ones we need:

R1(config)#router eigrp 10
R1(config-router)#passive-interface default
R1(config-router)#no passive interface FastEthernet1/0
R1(config-router)#no passive interface FastEthernet1/1

….pretty cool!