1. 程式人生 > >AR2240 OSPF聚合外部路由後由於無指向NULL0的匯總路由導致環路

AR2240 OSPF聚合外部路由後由於無指向NULL0的匯總路由導致環路

OSPF

一、問題描述
技術分享圖片
模擬環境如上圖所示:AR2為AR2240替換原CISCO路由器的位置,在完成替換後開始正常,後來突然發現網絡出現環路,從AR1下面訪問192.168.1.0/24時出現業務不通,tracert 192.168.1.1發現數據包來回在1.1.1.1與1.1.1.2之間跳動,如下:

tracert 192.168.1.1

traceroute to 192.168.1.1(192.168.1.1), max hops: 30 ,packet length: 40,press CTRL_C to break

1 1.1.1.2 180 ms 20 ms 30 ms

2 1.1.1.1 80 ms 10 ms 10 ms

3 1.1.1.2 20 ms 10 ms 10 ms

4 1.1.1.1 20 ms 10 ms 40 ms

5 1.1.1.2 40 ms 20 ms 30 ms
檢查AR2240上的配置如下:

ospf 1
asbr-summary 192.168.0.0 255.255.0.0
import-route direct
area 0.0.0.0
network 1.1.1.0 0.0.0.255

ip route-static 0.0.0.0 0.0.0.0 1.1.1.1
二、處理過程

首先檢查配置,並沒有發現配置有何異常,只是直接的一個接口down掉了,該接口即為匯聚的192.168.1.0/24網段。分析AR1收到訪問192.168.1.1的數據包時查看路由表學習到一條到192.168.0.0/16的匯總路由,下一跳指向1.1.1.2,數據包將被丟給AR2,AR2再次查找路由表,又有一條靜態的默認路由指向AR1,因而出現了環路。恢復DOWN掉的接口後環路消失,業務恢復正常。

三、根因

可以看到此處是因為匯總路由並不知道其明細路由的狀態從而導致了環路,雖然在此場景的根因是由於明細路由已經消失而影響業務,同時也產生了環路。但是當有大量的數據訪問時同樣會因為環路給設備造成負擔。因而建議在做外部路由的匯總時手工配置一條指向NULL0的匯聚路由避免環路的出現。如下:

ip route-static 192.168.0.0 255.255.0.0 NULL 0

PS:目前思科的設備在做外部路由匯總時會自動向路由表裏面生成一條標識為“O”的NULL0的路由。如下:

O 192.168.0.0/16 is a summary, 00:34:54, Null0

四、解決方案
恢復DOWN掉的接口後業務恢復,同時配置指向NULL0的匯總路由避免因為環路給設備帶來負擔。

AR2240 OSPF聚合外部路由後由於無指向NULL0的匯總路由導致環路