关于 EIGRP 路由
思科开发的增强型内部网关路由协议 (EIGRP) 是 IGRP 的增强版本。与 IGRP 和 RIP 不同,EIGRP 不发送定期路由更新。仅在网络拓扑发生更改时才会发送 EIGRP 更新。将 EIGRP 与其他路由协议区分开来的主要功能包括快速收敛、支持可变长度子网掩码、支持部分更新以及支持多个网络层协议。
运行 EIGRP 的路由器会存储所有邻居路由表,以便可以迅速适应备用路由。如果不存在合适的路由,则 EIGRP 会查询其邻居以发现备用路由。这些查询会被传播直至找到备用路由为止。EIGRP 对可变长度子网掩码功能的支持允许在网络边界自动汇总路由。此外,还可以将 EIGRP 配置为在任何接口的任何位边界汇总。
EIGRP 不会定期更新。相反,它会在路由指标发生更改时发送部分更新。部分更新的传播是自动绑定的,因此只有需要该信息的路由器才会更新。得益于这两项功能,EIGRP 与 IGRP 相比可显著减少占用的带宽。
要动态地了解直接连接网络上的其他路由器,威胁防御会使用邻居发现。EIGRP 路由器发出组播 Hello 数据包,通告其在网络中的存在状态。当 EIGRP 设备收到来自新邻居的 Hello 数据包时,会将其包含初始化位集的拓扑表发送至邻居。当邻居收到包含初始化位集的拓扑更新时,邻居将其拓扑表发回到设备。
Hello 数据包作为组播消息发出。预期不会对 Hello 消息作出响应。静态定义的邻居不在此规则的范围内。如果手动配置邻居,则 Hello 消息、路由更新和确认将作为单播消息发送。
一旦邻居关系建立后,除非网络拓扑发生更改,否则便不会交换路由更新。邻居关系通过 Hello 数据包来维护。从邻居收到的每个 Hello 数据包均包括保持时间。保持时间是威胁防御预期收到该邻居的 Hello 数据包的时间。如果设备在保持时间内未收到由该邻居通告的 Hello 数据包,则设备会将该邻居视为不可用。
EIGRP 会使用邻居发现/恢复、可靠传输协议 (RTP) 和扩散更新算法 (DUAL) 进行路由计算。DUAL 将目标的所有路由都保存在拓扑表中,而不只是保存最低成本路由。最低成本路由会插入到路由表中。其他路由则保留在拓扑表中。如果主路由发生故障,可以从可行后继路由中选择另一个路由。后继路由是指用于进行数据包转发的具有到达目标的最低成本路径的邻居路由器。可行性计算可确保路径不是路由环路的一部分。
如果在拓扑表中找不到可行后继路由,则会重新计算路由。在路由重新计算期间,DUAL 会查询 EIGRP 邻居以获取路由。查询会被传播到连续的邻居。如果找不到可行的后继邻居,则会返回不可达消息。
在路由重新计算期间,DUAL 会将路由标记为活动状态。默认情况下,威胁防御会等待三分钟接收来自其邻居的响应。如果设备未收到来自邻居的响应,则会将路由标记为陷入主动状态。系统会删除拓扑表中作为可行性后继路由指向无响应邻居的所有路由。