路由表:r1:缺省路由 汇总路由(192.168.0.0/22 12.1.1.2)
r2:缺省路由 汇总路由 (192.168.0.0/22 23.1.1.2)
r3:缺省路由
(直连路由等省略)
当一个目的IP为192.168.3.1/24 的数据包被发送至路由器r1时,因为最长匹配原则,r1校对路由表后数据包将被发送给r2(r1路由表内有汇总路由192.168.0.0/22 12.1.1.2)。同样的,r2收到数据包后将发送给r3(因为r2路由表内含有汇总路由192.168.0.0/24 23.1.1.2)。而当r3接收到数据包后,因为路由表内没有记录192.168.3.0/24的路由,所以会依照缺省路由(0.0.0.0 /0 23.1.1.1)将数据包发回给r2,但r2仍旧会依照最长匹配原则将数据包发回给r3。如此不断重复,就形成了环路。
解决方法:在r3中补充空接口路由: 192.168.0.0 22 NULL 0
之后当数据包再次发送至r3时,根据最长匹配原则,目的IP为192.168.3.0/24 的数据包将被丢弃,
但目的IP为192.168.1.0/24 192.168.2.0/24 的数据包会按照最长匹配原则,依然会被分配给pc1和pc2,环路也不在存在。