Enhanced Interior Gateway Routing Protocol (EIGRP) is typically considered a dynamic routing protocol, automatically discovering neighbors and exchanging routes. However, EIGRP also offers static neighbor functionality, creating an interesting hybrid between dynamic and static routing protocols.
Dynamic vs. Static Neighbor Discovery
Most dynamic routing protocols operate on these principles:
Automatically discover neighboring routers
Dynamically exchange routing information
Calculate optimal paths using protocol-specific algorithms
In standard EIGRP deployments, routers find neighbors by sending Hello packets to the multicast address 224.0.0.10. This allows for automatic discovery without manual configuration of peer relationships.
EIGRP Static Neighbor Functionality
EIGRP's static neighbor feature enables you to explicitly define neighbor relationships, similar to BGP's neighbor configuration model. When configured:
EIGRP switches from multicast to unicast communication with the specified neighbor
Hello packets and all other EIGRP messages are sent directly to the configured neighbor's IP address
Each neighbor must be individually defined with its specific IP address
Use Cases for Static Neighbors
The primary scenarios where static neighbors prove valuable include:
Non-Broadcast Networks: When the underlying network doesn't support multicast or broadcast traffic
Frame Relay Hub-and-Spoke: In hub-and-spoke topologies where direct communication between spokes is desired
Security Requirements: When multicast traffic is filtered for security reasons
DMVPN Environments: To control neighbor relationships in Dynamic Multipoint VPN deployments
Troubleshooting: For isolating specific neighbor relationships during network debugging
Configuration Commands
Cisco IOS/IOS XE (Numbered Mode)
Router(config)# router eigrp <AS-NUMBER>
Router(config-router)# neighbor <IP-ADDRESS> <OUTGOING-INTERFACE>
Cisco IOS XE (Named Mode)
Router(config)# router eigrp <PROCESS-NAME>
Router(config-router)# address-family ipv4 autonomous-system <AS-NUMBER>
Router(config-router-af)# neighbor <IP-ADDRESS> <OUTGOING-INTERFACE>
Cisco IOS XR
Router(config)# router eigrp <PROCESS-NAME>
Router(config-eigrp)# address-family ipv4
Router(config-eigrp-af)# interface <INTERFACE-NAME>
Router(config-eigrp-af-if)# neighbor <IP-ADDRESS>
Considerations and Limitations
When implementing static neighbors, be aware of these important considerations:
Bidirectional Configuration: Static neighbor relationships must be configured on both routers
Multicast Suppression: Interfaces with static neighbors configured will no longer send multicast Hello packets
Multiple Neighbors: Each static neighbor requires its own configuration line
Interface Specification: You must specify the outgoing interface to reach each neighbor
Mixed Environments: You can mix static and dynamic neighbors in the same EIGRP domain
Operational Differences
With static neighbors:
All EIGRP packets (Hellos, Updates, Queries, Replies) are unicast
The underlying routing process remains unchanged
Route calculation, metrics, and DUAL algorithm operate normally
Only the neighbor discovery mechanism changes from dynamic to manual
Verification
To verify static neighbor relationships:
Router# show ip eigrp neighbors details #IOS XE
Router# show eigrp neighbors details #IOS XR
The output will show these neighbors just like dynamically discovered ones, though they are established through the static configuration.