一、問題描述:在學習重分布的過程中,有一個經典的問題,就是在雙點雙向網絡結構中,在ASBR路由器上會出現一些異常路由,導致網絡混亂,甚至形成環路。具體見下圖:
圖中,當ASBR路由器R1和R4完成路由雙向重分布后,在R1上觀察R2的環回口地址的路由為:R 2.2.2.0 [120/1] via 12.1.1.2 Serial 3/0 ;在R4上觀察R2的環回口地址路由為:o E2 2.2.2.0 [110/20] via 34.1.1.3 FastEthernet 0/0。我們希望無論在R1還是在R4上,R2環回口路由應直接分發最好。從R4上顯示的R2環回口路由顯然不是從R2直接通告的路由。這種情況顯然不能達到雙點雙向網路兩條鏈路互為備份的目的。
造成這種現象的原因是在不同路由域中進行重分布時,由於管理距離不同,導致路由選擇出現異常。具體在這里來說,R4中關於R2環回口路由,來源有兩條鏈路,一是從R2直接通告到R4,這條路由的管理距離是rip域的管理距離120;二是從R3通告的外部注入路由,其管理距離是ospf的管理距離110,根據同一條路由優選管理距離更小的原則,最終R4保留了從R3通告的路由條目。
二、解決辦法
既然問題是管理距離引起,可修改重分布的管理距離參數進行解決。
在ASBR路由器R1和R4路由器上的相關路由進程中修改重分布涉及的管理距離參數,即在ospf進程中修改重分布管理距離大於rip的管理距離120即可。
R1路由器命令如下:
R4(config-router)#distance 121 91.1.1.1 0.0.0.0 #91.1.1.1是ABR路由器R1的router-ID。
此時,再查看R4上關於R2環回口的路由:R 2.2.2.0 [120/1] via 24.1.1.2, 00:00:01, Serial3/1,已顯示該條路由從R2通告獲得,路由正常。
三、擴展思考
若把上圖的rip區更換為eirgp,是否還是會遇到上述問題?
答案是不會出現上述問題,這是因為eigrp的管理距離分為內部管理距離90,外部管理距離170。這樣可圓滿解決上述問題,因此,eigrp與ospf做重分布更簡單。