路由器故障:IBGP鄰居的OSPF路由表不同
IBGP鄰居的OSPF路由表不同的故障解決步驟如下:
網絡環境
在下圖的網絡中,RouterA分別與RouterB和RouterC建立OSPF連接,而RouterB和RouterC之間建立IBGP鄰居。RouterA以network方式分別向RouterB和RouterC發布了網段192.168.0.0/18。結果,RouterB的OSPF路由表中可以看到,但RouterC的OSPF路由表中沒有該路由。
圖IBGP鄰居的OSPF路由表不同

故障分析
步驟 1 查看RouterC的OSPF LSDB,故障的時候,可以看到LSDB中有該18位網段的信息,但是沒有生成OSPF路由。把192.168.0.0/18分為兩個19位掩碼的網段發布,在RouterB和RouterC上都可以看到此網段OSPF路由信息。
- <RouterB> display bgp routing-table 192.168.0.0
- BGP local router ID : 61.141.17.237
- Local AS number : 64862
- Paths: 1 available, 1 best
- BGP routing table entry information of 192.168.0.0/18:
- From: 61.141.17.235 (61.141.17.235)
- Relay Nexthop: 61.141.14.93
- Original nexthop: 61.141.17.235
- AS-path Nil, origin igp, MED 11, localpref 100, pref-val 0, valid, internal, be
- st, pre 100
- Advertised to such 4 peers:
- 61.141.14.86
- 59.43.1.109
- 61.141.14.114
- 61.141.14.122
- <RouterB> display ip routing-table 192.168.0.0
- Routing Table : Public
- Summary Count : 1
- Destination/Mask Proto Pre Cost NextHop Interface
- 192.168.0.0/19 O_ASE 150 11 61.141.14.130 GigabitEthernet4/0/0
步驟 2 在RouterC上,執行display ip routing-table命令查看全局路由表,發現18位掩碼的此網段路由是通過BGP的方式,從RouterB學習過來,且優先級為100。
步驟 3 在RouterC上,執行display current-configuration查看配置,發現在BGP IPv4單播地址族視圖下,配置了preference 20 100 200,該命令導致IBGP路由優先級為100,高于OSPF的路由優先級(150),所以當網段掩碼為18位的時候,選擇了優先級更高的IBGP路由,導致OSPF LSDB不能生成OSPF路由。
----結束
處理步驟
在RouterC上分別執行如下操作。
步驟 1 執行命令system-view,進入系統視圖。
步驟 2 執行bgp命令,進入BGP視圖。
步驟 3 執行undo preference命令,取消之前的優先級設置。
步驟 4 執行preference 20 180 200命令重新設置路由優先級。將IBGP路由優先級設置為180(低于OSPF路由優先級)。
步驟 5 執行命令return退回到用戶視圖,執行命令save,保存對配置的修改。
----結束
配置完成后,在RouterC上執行display ospf routing命令查看OSPF路由,發現存在路由192.168.0.0/18,故障排除。
案例總結
當RouterA發布的網段改為19位掩碼后,RouterC從RouterB學習的的IBGP路由優先級雖然高于150,但是掩碼位為18位。自然本地的LSDB既可以計算出19位掩碼的路由了,因為19位掩碼網段對于RouterC更精確。問題的根本原因還在于各協議路由優先級的設置,在做配置時,建議充分考慮組網需求。
【編輯推薦】

















