What has to match for two EIGRP routers to become neighbors?
Show the answer
Say this first
The same autonomous system number, the same K values, primary addresses in the same subnet on the shared link, matching authentication if it is configured, and the interface must not be passive on either side. Hello and hold timers do not have to match, and neither does MTU, which surprises people who come from OSPF.
Go deeper
The checklist and how each failure looks
| Mismatch | What you see |
|---|---|
| AS number | Nothing at all. Hellos from another AS are ignored silently. |
| K values | Log message is down: K-value mismatch, repeating |
| Subnet | Log message saying the neighbor is not on a common subnet |
| Authentication | No neighbor; debug eigrp packets shows the packets being ignored for authentication |
| Passive interface | No hellos sent on that side, so no neighbor and no log |
| ACL or firewall | Silent. Protocol 88 or 224.0.0.10 is being dropped. |
The commands I run
R1# show ip eigrp neighbors
R1# show ip eigrp interfaces
R1# show ip protocolsshow ip eigrp interfaces tells me EIGRP is really running on the link (passive interfaces are not
listed there). show ip protocols shows the AS and the K values.
What does not need to match
- Hello and hold timers. Each router puts its own hold time in its hellos and the neighbor uses it.
- MTU. EIGRP does not check it when forming the neighbor.
- Router ID, as long as it is not duplicated (duplicates break external routes).
They will ask next
Can EIGRP form a neighbor over a secondary address?
No. Hellos are sourced from the primary address, and the neighbor's primary address must fall in your primary subnet. Secondary subnets are advertised, but never used to form neighbors.
Timers do not need to match, so can they ever cause a problem?
Yes, when one router's own settings are inconsistent. If R2 sends hellos every 20 seconds but advertises a hold time of 15, R1 times it out between hellos and the neighbor flaps. When I change
hello-interval, I changehold-timetoo, because the hold time does not follow automatically.
Traps
- Saying hello and hold timers must match. That is OSPF.
- Expecting a log message for an AS mismatch. There is none, which is why it wastes so much time.