OSPF路由彙總教程

來源:文萃谷 1.7W

路由彙總,又被稱為路由聚合(Route Aggregation or Route Summarization),指的是把一組路由匯聚成一條路由條目的操作。這組路由被稱為明細路由,而所匯聚成的路由被稱為彙總路由。路由彙總是一種重要的思想,在大型的項目中是必須考慮的一個重點事項。我們都知道,隨着網絡的規模越來越大,網絡中的設備所需維護的路由表項也就會越來越多,路由表的規模也就會逐漸變大,而路由表是需要佔用設備的內存空間的,路由的查詢也是需要佔用設備的資源的,因此我們需要考慮(尤其在一些大型的網絡中)在保證網絡中路由暢通的同時,減小路由表的規模。路由彙總就是一個有效的手段。幾乎所有的路由協議都支持路由彙總。RIP、EIGRP等協議支持自動及手工路由彙總,而OSPF只支持手工路由彙總。OSPF支持兩種形式的手工自動彙總:一種部署在ABR上,另一種則部署在ASBR上。

OSPF路由彙總教程

  1. OSPF路由彙總案例

網絡拓撲如上圖所示。R1、R2、R3、R4及R5運行OSPF,OSPF區域的規劃如圖。

R5將三個直連網段(、及)都network到OSPF。

R1將三個直連網段(、及)都重發布到OSPF。

完成上述配置後,所有的路由器應該都能學習到全網的路由。

1.1 在ABR上執行路由彙總

在R3(ABR)上對Area2內的路由執行彙總:

R3(config)# router ospf 1

R3(config-router)# area 2 range cost ?

注意,這種彙總方式(area range)只能在ABR上配置,而且只能對ABR直接連接的區域中的Intra-Area路由(區域內部路由)執行彙總。R3執行彙總後,R1及R2的路由表中將出現的彙總路由,而不會再學習到明細路由。如此一來,R1及R2的路由表就精簡了,而且當它們需要訪問R5下掛的那三個網段時,可以通過這條彙總路由到達。

要強點的是,如果不是在R3,而是在R2上對R5下掛的網段進行彙總,則無法實現。因此此時R3作為ABR,已經將描述這些網段的3類LSA注入到了Area0,而在R2上,是無法對這些3類LSA進行路由彙總的。

1.2 在ASBR上執行路由彙總

在R1上對其自己重發布進OSPF的路由執行彙總:

router ospf 1

summary-address

完成上述配置後,R2、R3、R4及R5都會學習到一條的彙總路由(使用Type-5 LSA描述),而不會再學習到、以及這三條明細路由。

2.3 在NSSA的ABR上執行路由彙總

將網絡做一點小小的變更,Area1被配置為NSSA。R1將三條直連路由引入NSSA,R2會學習到這三條外部路由(Type-7 LSA),並執行Type-7 LSA轉Type-5 LSA的動作,因此其實R2既是ABR又是ASBR,這些Type-5 LSA是由其產生的,那麼R2也能執行路由彙總:

router ospf 1

summary-address

  2. OSPF彙總路由的防環設計

在上圖所示的'場景中,R3將R5下掛的三個子網彙總成並向R2通告這條彙總路由。R1則下發一條OSPF默認路由到整個OSPF域。此時R5下掛的某個子網裏有PC中毒,瘋狂掃描一個並不存在的子網的IP地址(如子網),這些數據包被髮給網關R5,R5通過路由表查詢,最終將這些報文依照默認路由進行轉發,也就是發送給R4,而R4也一樣,將報文依照默認路由轉發給R3,R3再轉給R2,而R2由於已經收到R3傳遞過來的彙總路由(),因此經過路由表查詢後,數據包的目的地址匹配上了這條彙總路由,於是它又把這些數據包丟回去給R3,數據包的目的地址在R3處匹配了默認路由,又被丟回R2,如此反覆,直到報文的TTL遞減為0。這就出現了環路。

OSPF為了解決這個問題,在執行路由彙總時,會在本地自動產生一條指向Null0的路由。例如在R3處執行了路由彙總,則它會自動產生一條指向Null0的路由:

O is a summary, 00:00:02, Null0

這樣一來當再有類似事件發生,數據包將在R3這就被丟棄(匹配Null0路由)。

實際上,當執行路由彙總時,自動在本地路由表產生一條指向Null0的路由是一種非常常規的防環手段,許多動態路由協議都具備這個特徵。

熱門標籤