有时,后继路由器的路径发生故障,但没有任何可行后继路由器。 在这种情况下,DUAL 不能保证提供通往目的网络的无环备份路径,因此该路径不会在拓扑表中作为可行后继路由器。 如果拓扑表中没有任何可行后继路由器,则 DUAL 会将网络置于主动状态。 DUAL 将会主动向邻居查询,看是否存在新的后继路由器。

如图 1 所示,R1 当前使用 R3 作为通向 192.168.1.0/24 的后继路由器。 但是,由于 R2 不满足可行性条件,因此 R1 没有将 R2 列为可行后继路由器。 为了理解当没有可行后继路由器时 DUAL 如何搜索新的后继路由器,我们模拟 R1 和 R3 之间的链路故障。

在模拟链路故障之前,必须在 R1 上使用 debug eigrp fsm 命令启用 DUAL 调试,如图 2 所示。 然后,在 R1 的 Serial 0/0/1 接口上使用 shutdown 命令模拟一个链路故障。

当后继路由器不再可用而且没有可行后继路由器时,DUAL 会将该路由置于主动状态。 DUAL 会向其他路由器发送 EIGRP 查询,询问它们是否具有通向此网络的路径。 其他路由器会返回 EIGRP 应答,告知 EIGRP 查询的发送方它们是否有通向所需网络的路径。 如果所有的 EIGRP 应答都没有通向此网络的路径,则查询的发送方将没有通向此网络的路由。

在图 2 中,节选的调试输出显示 192.168.1.0/24 网络被置于主动状态,且向其他邻居发出了 EIGRP 查询。 R2 回应说具有一条通向此网络的路由,因此 R2 成为新的后继路由器且添加到路由表中。

如果该路由器收到了包含通向所需网络的路径的 EIGRP 应答,则会将首选路径作为新的后继路由器添加到路由表中。 此过程比 DUAL 的拓扑表中具有可行后继路由器的情况费时,如果 DUAL 的拓扑表中有可行后继路由器,DUAL 可以将新路由快速添加到路由表中。 在图 3 中,请注意 R1 有一个通向 192.168.1.0/24 网络的新路由。 新的 EIGRP 后继路由器是 R2。

图 4 显示了 R1 的拓扑表当前将 R2 作为后继路由器,并且没有新的可行后继路由器。 如果 R1 和 R3 之间的链路重新激活,则 R3 将重新作为后继路由器。 但是,由于 R2 不满足可行性条件,因此 R2 仍然不是可行后继路由器。