• 產品與解決方案
  • 行業解決方案
  • 服務
  • 支持
  • 合作夥伴
  • 關於我們

06-三層技術-IP路由配置指導

目錄

04-OSPF配置

本章節下載 04-OSPF配置  (1.55 MB)

04-OSPF配置

  錄

1 OSPF

1.1 OSPF簡介

1.1.1 OSPF的特點

1.1.2 OSPF報文類型

1.1.3 LSA類型

1.1.4 OSPF區域

1.1.5 路由器類型

1.1.6 路由類型

1.1.7 OSPF路由的計算過程

1.1.8 OSPF的網絡類型

1.1.9 DR/BDR

1.1.10 協議規範

1.2 OSPF配置任務簡介

1.3 使能OSPF功能

1.3.1 配置準備

1.3.2 使能OSPF功能

1.4 配置OSPF區域

1.4.1 配置準備

1.4.2 配置Stub區域

1.4.3 配置NSSA區域

1.4.4 配置虛連接

1.5 配置OSPF使用接口的從IP地址建立鄰居關係

1.5.1 功能簡介

1.5.2 配置限製和指導

1.5.3 配置步驟

1.6 配置M-LAG組網中的OSPF鄰居建立

1.6.1 功能簡介

1.6.2 配置步驟

1.7 配置OSPF的網絡類型

1.7.1 配置準備

1.7.2 配置OSPF接口網絡類型為廣播

1.7.3 配置OSPF接口網絡類型為NBMA

1.7.4 配置OSPF接口網絡類型為P2MP

1.7.5 配置OSPF接口網絡類型為P2P

1.8 配置OSPF的路由信息控製

1.8.1 配置準備

1.8.2 配置OSPF路由聚合

1.8.3 配置OSPF對通過接收到的LSA計算出來的路由信息進行過濾

1.8.4 配置過濾Type-3 LSA

1.8.5 配置OSPF接口的開銷值

1.8.6 配置OSPF通告給鄰居的鏈路開銷值保持最大值的持續時間

1.8.7 配置OSPF與Track聯動

1.8.8 配置OSPF最大等價路由條數

1.8.9 配置OSPF協議的優先級

1.8.10 配置NULL0路由

1.8.11 配置OSPF引入外部路由

1.8.12 配置OSPF引入缺省路由

1.8.13 配置發布一條主機路由

1.8.14 配置允許區域下的接口從標準拓撲中分離

1.9 調整和優化OSPF網絡

1.9.1 配置準備

1.9.2 配置OSPF報文定時器

1.9.3 配置接口傳送LSA的延遲時間

1.9.4 配置OSPF路由計算的時間間隔

1.9.5 配置LSA重複到達的最小時間間隔

1.9.6 配置OSPF更新LSA的時間間隔

1.9.7 禁止接口收發OSPF報文

1.9.8 配置Stub路由器

1.9.9 配置OSPF isolate功能

1.9.10 配置OSPF shutdown功能

1.9.11 配置OSPF驗證

1.9.12 配置DD報文中的MTU

1.9.13 配置OSPF發送協議報文的DSCP優先級

1.9.14 配置LSDB中External LSA的最大數量

1.9.15 配置OSPF嚐試退出overflow狀態的定時器時間間隔

1.9.16 配置兼容RFC 1583的外部路由選擇規則

1.9.17 配置鄰居狀態變化的輸出開關

1.9.18 配置OSPF網管功能

1.9.19 配置OSPF記錄鄰居關係斷開故障檢測信息的最大條數

1.9.20 配置發送LSU報文的速率

1.9.21 配置ISPF

1.9.22 配置前綴抑製

1.9.23 配置OSPF的前綴按優先級收斂功能

1.9.24 配置PIC

1.9.25 配置OSPF的日誌信息個數

1.9.26 過濾接口出方向的LSA

1.9.27 過濾發送給指定鄰居的LSA

1.9.28 配置OSPF GTSM功能

1.10 配置OSPF GR

1.10.1 配置GR Restarter

1.10.2 配置GR Helper

1.10.3 以GR方式重啟OSPF進程

1.11 配置OSPF NSR

1.12 配置OSPF與BFD聯動

1.12.1 control報文雙向檢測

1.12.2 echo報文單跳檢測

1.13 配置OSPF快速重路由

1.13.1 功能簡介

1.13.2 配置準備

1.13.3 配置步驟

1.14 配置允許設備將OSPF鏈路狀態信息發布到BGP

1.15 OSPF顯示和維護

1.16 典型配置舉例

1.16.1 OSPF基本功能配置舉例

1.16.2 OSPF引入自治係統外部路由配置舉例

1.16.3 OSPF發布聚合路由配置舉例

1.16.4 OSPF Stub區域配置舉例

1.16.5 OSPF NSSA區域配置舉例

1.16.6 OSPF的DR選擇配置舉例

1.16.7 OSPF虛連接配置舉例

1.16.8 OSPF GR配置舉例

1.16.9 OSPF NSR配置舉例

1.16.10 OSPF與BFD聯動配置舉例

1.16.11 OSPF快速重路由配置舉例

1.17 常見配置錯誤舉例

1.17.1 OSPF鄰居無法建立

1.17.2 OSPF路由信息不正確

 


1 OSPF

1.1  OSPF簡介

OSPF(Open Shortest Path First,開放最短路徑優先)是IETF(Internet Engineering Task Force,互聯網工程任務組)組織開發的一個基於鏈路狀態的內部網關協議。目前針對IPv4協議使用的是OSPF Version 2。

下文中所提到的OSPF均指OSPF Version 2。

1.1.1  OSPF的特點

OSPF具有如下特點:

·     適應範圍廣:支持各種規模的網絡,最多可支持幾百台路由器。

·     快速收斂:在網絡的拓撲結構發生變化後立即發送更新報文,使這一變化在自治係統中同步。

·     無自環:由於OSPF根據收集到的鏈路狀態用最短路徑樹算法計算路由,從算法本身保證了不會生成自環路由。

·     區域劃分:允許自治係統的網絡被劃分成區域來管理。路由器鏈路狀態數據庫的減小降低了內存的消耗和CPU的負擔;區域間傳送路由信息的減少降低了網絡帶寬的占用。

·     等價路由:支持到同一目的地址的多條等價路由。

·     路由分級:使用4類不同的路由,按優先順序來說分別是:區域內路由、區域間路由、第一類外部路由、第二類外部路由。

·     支持驗證:支持基於區域和接口的報文驗證,以保證報文交互和路由計算的安全性。

·     組播發送:在某些類型的鏈路上以組播地址發送協議報文,減少對其他設備的幹擾。

1.1.2  OSPF報文類型

OSPF協議報文直接封裝為IP報文,協議號為89。

OSPF有五種類型的協議報文:

·     Hello報文:周期性發送,用來發現和維持OSPF鄰居關係,以及進行DR(Designated Router,指定路由器)/BDR(Backup Designated Router,備份指定路由器)的選舉。

·     DD(Database Description,數據庫描述)報文:描述了本地LSDB(Link State DataBase,鏈路狀態數據庫)中每一條LSA(Link State Advertisement,鏈路狀態通告)的摘要信息,用於兩台路由器進行數據庫同步。

·     LSR(Link State Request,鏈路狀態請求)報文:向對方請求所需的LSA。兩台路由器互相交換DD報文之後,得知對端的路由器有哪些LSA是本地的LSDB所缺少的,這時需要發送LSR報文向對方請求所需的LSA。

·     LSU(Link State Update,鏈路狀態更新)報文:向對方發送其所需要的LSA。

·     LSAck(Link State Acknowledgment,鏈路狀態確認)報文:用來對收到的LSA進行確認。

1.1.3  LSA類型

OSPF中對鏈路狀態信息的描述都是封裝在LSA中發布出去,常用的LSA有以下幾種類型:

·     Router LSA(Type-1):由每個路由器產生,描述路由器的鏈路狀態和開銷,在其始發的區域內傳播。

·     Network LSA(Type-2):由DR產生,描述本網段所有路由器的鏈路狀態,在其始發的區域內傳播。

·     Network Summary LSA(Type-3):由ABR(Area Border Router,區域邊界路由器)產生,描述區域內某個網段的路由,並通告給其他區域。

·     ASBR Summary LSA(Type-4):由ABR產生,描述到ASBR(Autonomous System Boundary Router,自治係統邊界路由器)的路由,通告給相關區域。

·     AS External LSA(Type-5):由ASBR產生,描述到AS(Autonomous System,自治係統)外部的路由,通告到所有的區域(除了Stub區域和NSSA區域)。

·     NSSA External LSA(Type-7):由NSSA(Not-So-Stubby Area)區域內的ASBR產生,描述到AS外部的路由,僅在NSSA區域內傳播。

·     Opaque LSA:用於OSPF的擴展通用機製,目前有Type-9、Type-10和Type-11三種。其中,Type-9 LSA僅在本地鏈路範圍進行泛洪,用於支持GR(Graceful Restart,平滑重啟)的Grace LSA就是Type-9的一種類型;Type-10 LSA僅在區域範圍進行泛洪,用於支持MPLS TE的LSA就是Type-10的一種類型;Type-11 LSA可以在一個自治係統範圍進行泛洪。

1.1.4  OSPF區域

1. 區域劃分

隨著網絡規模日益擴大,當一個大型網絡中的路由器都運行OSPF協議時,LSDB會占用大量的存儲空間,並使得運行SPF(Shortest Path First,最短路徑優先)算法的複雜度增加,導致CPU負擔加重。

在網絡規模增大之後,拓撲結構發生變化的概率也增大,網絡會經常處於“震蕩”之中,造成網絡中會有大量的OSPF協議報文在傳遞,降低了網絡的帶寬利用率。更為嚴重的是,每一次變化都會導致網絡中所有的路由器重新進行路由計算。

OSPF協議通過將自治係統劃分成不同的區域來解決上述問題。區域是從邏輯上將路由器劃分為不同的組,每個組用區域號來標識。如圖1-1所示。

圖1-1 OSPF區域劃分

 

區域的邊界是路由器,而不是鏈路。一個路由器可以屬於不同的區域,但是一個網段(鏈路)隻能屬於一個區域,或者說每個運行OSPF的接口必須指明屬於哪一個區域。劃分區域後,可以在區域邊界路由器上進行路由聚合,以減少通告到其他區域的LSA數量,還可以將網絡拓撲變化帶來的影響最小化。

2. 骨幹區域與虛連接

(1)     骨幹區域(Backbone Area)

OSPF劃分區域之後,並非所有的區域都是平等的關係。其中有一個區域是與眾不同的,它的區域號是0,通常被稱為骨幹區域。骨幹區域負責區域之間的路由,非骨幹區域之間的路由信息必須通過骨幹區域來轉發。對此,OSPF有兩個規定:

·     所有非骨幹區域必須與骨幹區域保持連通;

·     骨幹區域自身也必須保持連通。

在實際應用中,可能會因為各方麵條件的限製,無法滿足上麵的要求。這時可以通過配置OSPF虛連接予以解決。

(2)     虛連接(Virtual Link)

虛連接是指在兩台ABR之間通過一個非骨幹區域建立的一條邏輯上的連接通道。它的兩端必須是ABR,而且必須在兩端同時配置方可生效。為虛連接兩端提供一條非骨幹區域內部路由的區域稱為傳輸區(Transit Area)。

圖1-2中,Area2與骨幹區域之間沒有直接相連的物理鏈路,但可以在ABR上配置虛連接,使Area2通過一條邏輯鏈路與骨幹區域保持連通。

圖1-2 虛連接示意圖之一

 

虛連接的另外一個應用是提供冗餘的備份鏈路,當骨幹區域因鏈路故障不能保持連通時,通過虛連接仍然可以保證骨幹區域在邏輯上的連通性。如圖1-3所示。

圖1-3 虛連接示意圖之二

 

虛連接相當於在兩個ABR之間形成了一個點到點的連接,因此,在這個連接上,和物理接口一樣可以配置接口的各參數,如發送Hello報文間隔等。

兩台ABR之間直接傳遞OSPF報文信息,它們之間的OSPF路由器隻是起到一個轉發報文的作用。由於協議報文的目的地址不是中間這些路由器,所以這些報文對於它們而言是透明的,隻是當作普通的IP報文來轉發。

3. Stub區域和Totally Stub區域

Stub區域是一些特定的區域,該區域的ABR會將區域間的路由信息傳遞到本區域,但不會引入自治係統外部路由,區域中路由器的路由表規模以及LSA數量都會大大減少。為保證到自治係統外的路由依舊可達,該區域的ABR將生成一條缺省路由Type-3 LSA,發布給本區域中的其他非ABR路由器。

為了進一步減少Stub區域中路由器的路由表規模以及LSA數量,可以將區域配置為Totally Stub(完全Stub)區域,該區域的ABR不會將區域間的路由信息和自治係統外部路由信息傳遞到本區域。為保證到本自治係統的其他區域和自治係統外的路由依舊可達,該區域的ABR將生成一條缺省路由Type-3 LSA,發布給本區域中的其他非ABR路由器。

4. NSSA區域和Totally NSSA區域

NSSA(Not-So-Stubby Area)區域是Stub區域的變形,與Stub區域的區別在於NSSA區域允許引入自治係統外部路由,由ASBR發布Type-7 LSA通告給本區域。當Type-7 LSA到達NSSA的ABR時,由ABR將Type-7 LSA轉換成Type-5 LSA,傳播到其他區域。

可以將區域配置為Totally NSSA(完全NSSA)區域,該區域的ABR不會將區域間的路由信息傳遞到本區域。為保證到本自治係統的其他區域的路由依舊可達,該區域的ABR將生成一條缺省路由Type-3 LSA,發布給本區域中的其他非ABR路由器。

圖1-4所示,運行OSPF協議的自治係統包括3個區域:區域0、區域1和區域2,另外兩個自治係統運行RIP協議。區域1被定義為NSSA區域,區域1接收的RIP路由傳播到NSSA ASBR後,由NSSA ASBR產生Type-7 LSA在區域1內傳播,當Type-7 LSA到達NSSA ABR後,轉換成Type-5 LSA傳播到區域0和區域2。

另一方麵,運行RIP的自治係統的RIP路由通過區域2的ASBR產生Type-5 LSA在OSPF自治係統中傳播。但由於區域1是NSSA區域,所以Type-5 LSA不會到達區域1。

圖1-4 NSSA區域

 

1.1.5  路由器類型

OSPF路由器根據在AS中的不同位置,可以分為以下四類:

1. 區域內路由器(Internal Router)

該類路由器的所有接口都屬於同一個OSPF區域。

2. 區域邊界路由器ABR

該類路由器可以同時屬於兩個以上的區域,但其中一個必須是骨幹區域。ABR用來連接骨幹區域和非骨幹區域,它與骨幹區域之間既可以是物理連接,也可以是邏輯上的連接。

3. 骨幹路由器(Backbone Router)

該類路由器至少有一個接口屬於骨幹區域。因此,所有的ABR和位於Area0的內部路由器都是骨幹路由器。

4. 自治係統邊界路由器ASBR

與其他AS交換路由信息的路由器稱為ASBR。ASBR並不一定位於AS的邊界,它有可能是區域內路由器,也有可能是ABR。隻要一台OSPF路由器引入了外部路由的信息,它就成為ASBR。

圖1-5 OSPF路由器的類型

 

1.1.6  路由類型

OSPF將路由分為四類,按照優先級從高到低的順序依次為:

·     區域內路由(Intra Area)

·     區域間路由(Inter Area)

·     第一類外部路由(Type1 External):這類路由的可信程度較高,並且和OSPF自身路由的開銷具有可比性,所以到第一類外部路由的開銷等於本路由器到相應的ASBR的開銷與ASBR到該路由目的地址的開銷之和。

·     第二類外部路由(Type2 External):這類路由的可信度比較低,所以OSPF協議認為從ASBR到自治係統之外的開銷遠遠大於在自治係統之內到達ASBR的開銷。所以計算路由開銷時將主要考慮前者,即到第二類外部路由的開銷等於ASBR到該路由目的地址的開銷。如果計算出開銷值相等的兩條路由,再考慮本路由器到相應的ASBR的開銷。

區域內和區域間路由描述的是AS內部的網絡結構,外部路由則描述了應該如何選擇到AS以外目的地址的路由。

1.1.7  OSPF路由的計算過程

同一個區域內,OSPF路由的計算過程可簡單描述如下:

·     每台OSPF路由器根據自己周圍的網絡拓撲結構生成LSA,並通過更新報文將LSA發送給網絡中的其它OSPF路由器。

·     每台OSPF路由器都會收集其它路由器通告的LSA,所有的LSA放在一起便組成了LSDB。LSA是對路由器周圍網絡拓撲結構的描述,LSDB則是對整個自治係統的網絡拓撲結構的描述。

·     OSPF路由器將LSDB轉換成一張帶權的有向圖,這張圖便是對整個網絡拓撲結構的真實反映。各個路由器得到的有向圖是完全相同的。

·     每台路由器根據有向圖,使用SPF算法計算出一棵以自己為根的最短路徑樹,這棵樹給出了到自治係統中各節點的路由。

1.1.8  OSPF的網絡類型

OSPF根據鏈路層協議類型將網絡分為下列四種類型:

·     廣播(Broadcast)類型:本設備缺省情況下,OSPF認為網絡類型是Broadcast。在該類型的網絡中,通常以組播形式(OSPF路由器的預留IP組播地址是224.0.0.5;OSPF DR/BDR的預留IP組播地址是224.0.0.6)發送Hello報文、LSU報文和LSAck報文;以單播形式發送DD報文和LSR報文。

·     NBMA(Non-Broadcast Multi-Access,非廣播多路訪問)類型:在該類型的網絡中,以單播形式發送協議報文。

·     P2MP(Point-to-MultiPoint,點到多點)類型:沒有一種鏈路層協議會被缺省的認為是P2MP類型。P2MP必須是由其他的網絡類型強製更改的,常用做法是將NBMA網絡改為P2MP網絡。在該類型的網絡中,缺省情況下,以組播形式(224.0.0.5)發送協議報文。可以根據用戶需要,以單播形式發送協議報文。

·     P2P(Point-to-Point,點到點)類型:在該類型的網絡中,以組播形式(224.0.0.5)發送協議報文。

NBMA與P2MP網絡之間的區別如下:

·     NBMA網絡是全連通的;P2MP網絡並不需要一定是全連通的。

·     NBMA網絡中需要選舉DR與BDR;P2MP網絡中沒有DR與BDR。

·     NBMA網絡采用單播發送報文,需要手工配置鄰居;P2MP網絡采用組播方式發送報文,通過配置也可以采用單播發送報文。

1.1.9  DR/BDR

1. DR/BDR簡介

在廣播網和NBMA網絡中,任意兩台路由器之間都要交換路由信息。如果網絡中有n台路由器,則需要建立n(n-1)/2個鄰接關係。這使得任何一台路由器的路由變化都會導致多次傳遞,浪費了帶寬資源。為解決這一問題,OSPF提出了DR的概念,所有路由器隻將信息發送給DR,由DR將網絡鏈路狀態發送出去。

另外,OSPF提出了BDR的概念。BDR是對DR的一個備份,在選舉DR的同時也選舉BDR,BDR也和本網段內的所有路由器建立鄰接關係並交換路由信息。當DR失效後,BDR會立即成為新的DR。

OSPF網絡中,既不是DR也不是BDR的路由器為DR Other。DR Other僅與DR和BDR建立鄰接關係,DR Other之間不交換任何路由信息。這樣就減少了廣播網和NBMA網絡上各路由器之間鄰接關係的數量,同時減少網絡流量,節約了帶寬資源。

圖1-6所示,進行DR/BDR選舉後,5台路由器之間隻需要建立7個鄰接關係就可以了。

圖1-6 DR和BDR示意圖

 

說明

在OSPF中,鄰居(Neighbor)和鄰接(Adjacency)是兩個不同的概念。路由器啟動後,會通過接口向外發送Hello報文,收到Hello報文的路由器會檢查報文中所定義的參數,如果雙方一致就會形成鄰居關係。隻有當雙方成功交換DD報文,交換LSA並達到LSDB同步之後,才形成鄰接關係。

 

2. DR/BDR選舉過程

DR/BDR是由同一網段中所有的路由器根據路由器優先級和Router ID通過Hello報文選舉出來的,隻有優先級大於0的路由器才具有選舉資格。

進行DR/BDR選舉時每台路由器將自己選出的DR寫入Hello報文中,發給網段上每台運行OSPF協議的路由器。當處於同一網段的兩台路由器同時宣布自己是DR時,路由器優先級高者勝出。如果優先級相等,則Router ID大者勝出。

需要注意的是:

·     隻有在廣播或NBMA網絡中才會選舉DR;在P2P或P2MP網絡中不需要選舉DR。

·     DR是某個網段中的概念,是針對路由器的接口而言的。某台路由器在一個接口上可能是DR,在另一個接口上有可能是BDR,或者是DR Other。

·     DR/BDR選舉完畢後,即使網絡中加入一台具有更高優先級的路由器,也不會重新進行選舉,替換該網段中已經存在的DR/BDR成為新的DR/BDR。DR並不一定就是路由器優先級最高的路由器接口;同理,BDR也並不一定就是路由器優先級次高的路由器接口。

1.1.10  協議規範

與OSPF相關的協議規範有:

·     RFC 1245:OSPF protocol analysis

·     RFC 1246:Experience with the OSPF protocol

·     RFC 1370:Applicability Statement for OSPF

·     RFC 1403:BGP OSPF Interaction

·     RFC 1745:BGP4/IDRP for IP---OSPF Interaction

·     RFC 1765:OSPF Database Overflow

·     RFC 1793:Extending OSPF to Support Demand Circuits

·     RFC 2154:OSPF with Digital Signatures

·     RFC 2328:OSPF Version 2

·     RFC 3101:OSPF Not-So-Stubby Area (NSSA) Option

·     RFC 3166:Request to Move RFC 1403 to Historic Status

·     RFC 3509:Alternative Implementations of OSPF Area Border Routers

·     RFC 4167:Graceful OSPF Restart Implementation Report

·     RFC 4577:OSPF as the Provider/Customer Edge Protocol for BGP/MPLS IP Virtual Private Networks (VPNs)

·     RFC 4750:OSPF Version 2 Management Information Base

·     RFC 4811:OSPF Out-of-Band LSDB Resynchronization

·     RFC 4812:OSPF Restart Signaling

·     RFC 4915:Multi-Topology (MT) Routing in OSPF

·     RFC 5088:OSPF Protocol Extensions for Path Computation Element (PCE) Discovery

·     RFC 5250:The OSPF Opaque LSA Option

·     RFC 5613:OSPF Link-Local Signaling

·     RFC 5642:Dynamic Hostname Exchange Mechanism for OSPF

·     RFC 5709:OSPFv2 HMAC-SHA Cryptographic Authentication

·     RFC 5786:Advertising a Router's Local Addresses in OSPF Traffic Engineering (TE) Extensions

·     RFC 6571:Loop-Free Alternate (LFA) Applicability in Service Provider (SP) Networks

·     RFC 6860:Hiding Transit-Only Networks in OSPF

·     RFC 6987:OSPF Stub Router Advertisement

1.2  OSPF配置任務簡介

無論是哪種類型的路由器,都必須先使能OSPF,否則OSPF協議將無法正常運行。在進行各項配置的時候應該先做好網絡規劃,錯誤的配置可能會導致相鄰路由器之間無法相互傳遞信息,甚至導致路由信息的阻塞或者產生路由環路。

表1-1 OSPF配置任務簡介

配置任務

說明

詳細配置

使能OSPF功能

必選

1.3 

配置OSPF區域

配置Stub區域

可選

1.4.2 

配置NSSA區域

可選

1.4.3 

配置虛連接

可選

1.4.4 

配置OSPF使用接口的從IP地址建立鄰居關係

可選

1.5 

配置M-LAG組網中的OSPF鄰居建立

可選

1.6 

配置OSPF的網絡類型

配置OSPF接口網絡類型為廣播

可選

1.7.2 

配置OSPF接口網絡類型為NBMA

可選

1.7.3 

配置OSPF接口網絡類型為P2MP

可選

1.7.4 

配置OSPF接口網絡類型為P2P

可選

1.7.5 

配置OSPF的路由信息控製

配置OSPF路由聚合

可選

1.8.2 

配置OSPF對通過接收到的LSA計算出來的路由信息進行過濾

可選

1.8.3 

配置過濾Type-3 LSA

可選

1.8.4 

配置OSPF接口的開銷值

可選

1.8.5 

配置OSPF通告給鄰居的鏈路開銷值保持最大值的持續時間

可選

1.8.6 

配置OSPF與Track聯動

可選

1.8.7 

配置OSPF最大等價路由條數

可選

1.8.8 

配置OSPF協議的優先級

可選

1.8.9 

配置OSPF引入外部路由

可選

1.8.11 

配置OSPF引入缺省路由

可選

1.8.12 

配置發布一條主機路由

可選

1.8.13 

配置允許區域下的接口從標準拓撲中分離

可選

1.8.14 

調整和優化OSPF網絡

配置OSPF報文定時器

可選

1.9.2 

配置接口傳送LSA的延遲時間

可選

1.9.3 

配置OSPF路由計算的時間間隔

可選

1.9.4 

配置LSA重複到達的最小時間間隔

可選

1.9.5 

配置LSA重新生成的時間間隔

可選

1.9.6 

禁止接口收發OSPF報文

可選

1.9.7 

配置Stub路由器

可選

1.9.8 

配置OSPF isolate功能

可選

1.9.9 

配置OSPF shutdown功能

可選

1.9.10 

配置OSPF驗證

可選

1.9.11 

配置DD報文中的MTU

可選

1.9.12 

配置報文的DSCP值

可選

1.9.13 

配置LSDB中External LSA的最大數量

可選

1.9.14 

配置OSPF嚐試退出overflow狀態的定時器時間間隔

可選

1.9.15 

配置兼容RFC1583的外部路由選擇規則

可選

1.9.16 

配置鄰居狀態變化的輸出開關

可選

1.9.17 

配置OSPF網管功能

可選

1.9.18 

配置OSPF記錄鄰居關係斷開故障檢測信息的最大條數

可選

1.9.19 

配置發送LSU報文的速率

可選

1.9.20 

配置ISPF

可選

1.9.21 

配置前綴抑製

可選

1.9.22 

配置前綴按優先權收斂

可選

1.9.23 

配置PIC

可選

1.9.24 

配置OSPF的日誌信息個數

可選

1.9.25 

過濾接口出方向的LSA

可選

1.9.26 

過濾發送給指定鄰居的LSA

可選

1.9.27 

配置OSPF GTSM功能

可選

1.9.28 

配置OSPF GR

配置GR Restarter

可選

1.10.1 

配置GR Helper

可選

1.10.2 

重啟OSPF GR進程

可選

1.10.3 

配置OSPF NSR

可選

1.11 

配置OSPF與BFD聯動

可選

1.12 

配置OSPF快速重路由

可選

1.13 

配置允許設備將OSPF鏈路狀態信息發布到BGP

可選

1.14 

 

1.3  使能OSPF功能

在OSPF的各項配置任務中,必須先使能OSPF功能,其它功能的配置才能生效。

1.3.1  配置準備

在使能OSPF功能之前,需完成以下任務:

·     配置鏈路層協議,保證鏈路層通信正常

·     配置接口的網絡層地址,使各相鄰節點網絡層可達

1.3.2  使能OSPF功能

要在路由器上使能OSPF功能,必須先創建OSPF進程、指定該進程關聯的區域以及區域包括的網段;對於當前路由器來說,如果某個路由器的接口IP地址落在某個區域的網段內,則該接口屬於這個區域並使能了OSPF功能,OSPF將把這個接口的直連路由宣告出去。

Router ID用來在一個自治係統中唯一地標識一台路由器,一台路由器如果要運行OSPF協議,則必須存在Router ID。

·     用戶可以在創建OSPF進程的時候指定Router ID,配置時,必須保證自治係統中任意兩台路由器的ID都不相同。通常的做法是將路由器的ID配置為與該路由器某個接口的IP地址一致。

·     如果在創建OSPF進程的時候沒有指定Router ID,則缺省使用全局Router ID。建議用戶在創建OSPF進程的時候指定Router ID。

目前,係統支持OSPF多進程和OSPF多實例:

·     當在一台路由器上啟動多個OSPF進程時,需要指定不同的進程號。OSPF進程號是本地概念,不影響與其它路由器之間的報文交換。因此,不同的路由器之間,即使進程號不同也可以進行報文交換。

·     可以指定OSPF進程所屬的VPN。如果未指定VPN,則表示OSPF位於公網中。VPN的相關內容請參見“MPLS配置指導”中的“MPLS L3VPN”。

提示

·     接口配置優先,接口使能OSPF優於命令network的配置。

·     接口使能OSPF時,如果不存在進程和區域,則創建對應的進程和區域;接口去使能OSPF時,不刪除已經創建的進程和區域。

 

1. 在指定網段上使能OSPF

表1-2 使能OSPF功能

操作

命令

說明

進入係統視圖

system-view

-

(可選)配置全局Router ID

router id router-id

缺省情況下,未配置全局Router ID

如果沒有配置全局路由器ID,則按照下麵的規則進行選擇:

(1)     如果存在配置IP地址的Loopback接口,則選擇Loopback接口地址中最大的作為Router ID

(2)     如果沒有配置IP地址的Loopback接口,則從其他接口的IP地址中選擇最大的作為Router ID(不考慮接口的up/down狀態)

啟動OSPF,並進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

缺省情況下,係統沒有運行OSPF

(可選)配置OSPF進程描述

description text

缺省情況下,未配置進程描述

建議用戶為每個OSPF進程配置進程描述信息,幫助識別進程的用途,以便於記憶和管理

創建OSPF區域,並進入OSPF區域視圖

area area-id

缺省情況下,不存在OSPF區域

(可選)配置區域描述

description text

缺省情況下,未配置區域描述

建議用戶為每個區域配置區域描述信息,幫助識別區域的用途,以便於記憶和管理

配置區域所包含的網段並在指定網段的接口上使能OSPF

network ip-address wildcard-mask

缺省情況下,接口不屬於任何區域且OSPF功能處於關閉狀態

一個網段隻能屬於一個區域

 

2. 在指定接口上使能OSPF

表1-3 在指定接口上使能OSPF

操作

命令

說明

進入係統視圖

system-view

-

進入接口視圖

interface interface-type interface-number

-

配置接口使能OSPF

ospf process-id area area-id [ exclude-subip ]

缺省情況下,未配置接口使能OSPF

 

1.4  配置OSPF區域

網絡管理員對整個網絡劃分區域完畢後,可以根據組網需要進一步將區域配置成Stub區域或NSSA區域。

當非骨幹區域不能與骨幹區域保持連通,或者骨幹區域因為各方麵條件的限製無法保持連通時,可以通過配置OSPF虛連接予以解決。

1.4.1  配置準備

在配置OSPF的區域之前,需完成以下任務:

·     配置接口的網絡層地址,使相鄰節點網絡層可達

·     使能OSPF功能

1.4.2  配置Stub區域

對於位於AS邊緣的一些非骨幹區域,我們可以在該區域的所有路由器上配置stub命令,把該區域配置為Stub區域。這樣,描述自治係統外部路由的Type-5 LSA不會在Stub區域裏泛洪,減小了路由表的規模。ABR生成一條缺省路由,所有到達自治係統外部的報文都交給ABR進行轉發。

如果想進一步減少Stub區域路由表規模以及路由信息傳遞的數量,那麼在ABR上配置stub命令時指定no-summary參數,可以將該區域配置為Totally Stub區域。這樣,自治係統外部路由和區域間的路由信息都不會傳遞到本區域,所有目的地是自治係統外和區域外的報文都交給ABR進行轉發。

Stub區域和Totally Stub區域內不能存在ASBR,即自治係統外部的路由不能在本區域內傳播。

表1-4 配置Stub區域

操作

命令

說明

進入係統視圖

system-view

-

進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

-

進入OSPF區域視圖

area area-id

-

配置當前區域為Stub區域

stub [ default-route-advertise-always | no-summary ] *

缺省情況下,沒有區域被設置為Stub區域

(可選)配置ABR發送到Stub區域缺省路由的開銷

default-cost cost-value

缺省情況下,ABR發送到Stub區域缺省路由的開銷為1

本命令隻有在Stub區域和Totally Stub區域的ABR上配置才能生效

 

配置時需要注意以下幾點:

·     骨幹區域不能配置成Stub區域或Totally Stub區域。

·     如果要將一個區域配置成Stub區域,則該區域中的所有路由器必須都要配置stub命令。

·     如果要將一個區域配置成Totally Stub區域,該區域中的所有路由器必須配置stub命令,該區域的ABR路由器需要配置stub no-summary命令。

1.4.3  配置NSSA區域

Stub區域不能引入外部路由,為了在允許將自治係統外部路由通告到OSPF路由域內部的同時,保持其餘部分的Stub區域的特征,網絡管理員可以將區域配置為NSSA區域。NSSA區域也是位於AS邊緣的非骨幹區域。

配置nssa命令時指定no-summary參數可以將該區域配置為Totally NSSA區域,該區域的ABR不會將區域間的路由信息傳遞到本區域。

表1-5 配置NSSA區域

操作

命令

說明

進入係統視圖

system-view

-

進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

-

進入OSPF區域視圖

area area-id

-

配置當前區域為NSSA區域

nssa [ default-route-advertise [ cost cost-value | nssa-only | route-policy route-policy-name | type type ] * | no-import-route | no-summary | suppress-fa | [ [ [ translate-always ] [ translate-ignore-checking-backbone ] ] | translate-never ] | translator-stability-interval value ] *

缺省情況下,沒有區域被設置為NSSA區域

(可選)配置發送到NSSA區域缺省路由的開銷

default-cost cost-value

缺省情況下,發送到NSSA區域的缺省路由的開銷為1

本命令隻有在NSSA區域和Totally NSSA區域的ABR/ASBR上配置才能生效

 

配置時需要注意以下幾點:

·     骨幹區域不能配置成NSSA區域或Totally NSSA區域。

·     如果要將一個區域配置成NSSA區域,則該區域中的所有路由器必須都要配置nssa命令。

·     如果要將一個區域配置成Totally NSSA區域,該區域中的所有路由器必須配置nssa命令,該區域的ABR路由器需要配置nssa no-summary命令。

1.4.4  配置虛連接

在劃分區域之後,非骨幹區域之間的OSPF路由更新是通過骨幹區域來完成交換的。對此,OSPF要求所有非骨幹區域必須與骨幹區域保持連通,並且骨幹區域自身也要保持連通。

但在實際應用中,可能會因為各方麵條件的限製,無法滿足這個要求。這時可以通過在ABR上配置OSPF虛連接予以解決。

虛連接不能穿過Stub區域和Totally Stub區域;虛連接不能穿過NSSA區域和Totally NSSA區域。

表1-6 配置虛連接

操作

命令

說明

進入係統視圖

system-view

-

進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

-

進入OSPF區域視圖

area area-id

-

創建並配置虛連接

vlink-peer router-id [ dead seconds | hello seconds | [ authentication-none | { hmac-md5 | hmac-sha-256 | md5 } [ key-id { cipher | plain } string ] | keychain keychain-name | simple [ { cipher | plain } string ] ] | retransmit seconds | trans-delay seconds ] *

缺省情況下,不存在虛鏈接

為使虛連接生效,在虛連接的兩端都需配置此命令,並且兩端配置的hellodead參數必須一致

 

1.5  配置OSPF使用接口的從IP地址建立鄰居關係

1.5.1  功能簡介

使能OSPF功能後,缺省情況下,OSPF隻能使用接口的主IP地址建立鄰居關係。雖然可以通告從地址的網段信息,但是無法使用從地址建立鄰居關係。如果希望OSPF使用接口的從IP地址建立鄰居關係,則需要開啟本功能。

1.5.2  配置限製和指導

使用從地址建立鄰居關係時,需要注意:

·     使用接口的主IP地址、多個從IP地址分別建立鄰居關係時,需要在同一OSPF進程的相同區域下通告該接口的主地址和從地址所在的網段;否則,未在同一OSPF進程相同區域下通告的從IP地址,不會建立鄰居關係。

·     接口的主IP地址不建立鄰居關係,僅使用接口的一個或多個從IP地址建立鄰居關係時,需要在同一OSPF進程的相同區域下通告這些從地址所在的網段。否則,OSPF會選取通告最小從IP地址所在網段的OSPF區域,並為該區域內通告的、所有該接口的從IP地址分別建立鄰居關係。

·     P2P鏈路兩端使用不同的網段時,不支持使用從地址建立鄰居關係。

1.5.3  配置步驟

表1-7 配置OSPF使用接口的從IP地址建立鄰居關係

操作

命令

說明

進入係統視圖

system-view

-

進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

-

進入接口視圖

interface interface-type interface-number

-

開啟OSPF使用接口的從IP地址建立鄰居關係的功能

ospf peer sub-address enable

缺省情況下,OSPF使用接口的從IP地址建立鄰居關係的功能處於關閉狀態

 

1.6  配置M-LAG組網中的OSPF鄰居建立

1.6.1  功能簡介

在用戶側設備通過M-LAG雙歸接入OSPF網絡的場景中,M-LAG設備作為網關進行三層轉發。不同M-LAG設備上的網關接口(例如VLAN接口)具有相同的IP地址和MAC地址時,M-LAG設備與用戶側設備之間無法建立OSPF鄰居關係。為了解決上述問題,需要配置OSPF使用M-LAG虛擬IPv4地址建立鄰居關係。關於M-LAG的詳細介紹,請參見“二層技術-以太網交換配置指導”中的“M-LAG”。

圖1-7所示,Device C通過M-LAG雙歸接入OSPF網絡,M-LAG設備Device A和Device B作為三層網關,Device A和Device B上的網關接口Vlan-int100具有相同的IP地址和MAC地址,為了保證Device A和Device C、Device B和Device C之間能夠建立OSPF鄰居關係,需要執行如下配置:

(1)     在Device A和Device B上的VLAN接口下配置不同的M-LAG虛擬IPv4地址。

(2)     在Device A和Device B上配置OSPF使用M-LAG虛擬IPv4地址建立鄰居關係。

圖1-7 M-LAG組網中的OSPF鄰居建立

 

1.6.2  配置步驟

表1-8 配置M-LAG組網中的OSPF鄰居建立

操作

命令

說明

進入係統視圖

system-view

-

進入接口視圖

interface interface-type interface-number

-

配置接口的M-LAG虛擬IPv4地址

port m-lag virtual-ip ipv4-address { mask-length | mask }

缺省情況下,未配置接口的M-LAG虛擬IPv4地址

通過本命令配置的虛擬IPv4地址類似於接口的從地址。關於本命令的詳細介紹,請參見“二層技術-以太網交換命令參考”中的“M-LAG”

配置OSPF使用M-LAG虛擬IPv4地址建立鄰居關係

ospf peer sub-address enable ip-address

缺省情況下,OSPF使用接口的主IP地址建立鄰居關係

本命令指定的ip-address需要與port m-lag virtual-ip配置的虛擬IPv4地址一致

 

1.7  配置OSPF的網絡類型

OSPF的網絡類型有四種:廣播、NBMA、P2MP和P2P。

本設備上,OSPF接口網絡類型的缺省值為廣播類型。

用戶可以根據需要更改接口的網絡類型,例如:

·     當NBMA網絡通過配置地址映射成為全連通網絡時(即網絡中任意兩台路由器之間都存在一條虛電路而直接可達),可以將網絡類型更改為廣播,不需要手工配置鄰居,簡化配置。

·     當廣播網絡中有部分路由器不支持組播時,可以將網絡類型更改為NBMA。

·     NBMA網絡要求必須是全連通的,即網絡中任意兩台路由器之間都必須有一條虛電路直接可達;如果NBMA網絡不是全連通而是部分連通時,可以將網絡類型更改為P2MP,達到簡化配置、節省網絡開銷的目的。

·     如果路由器在NBMA網絡中隻有一個對端,也可將接口類型配置為P2P,節省網絡開銷。

如果接口配置為廣播、NBMA或者P2MP網絡類型,隻有雙方接口在同一網段才能建立鄰居關係。

1.7.1  配置準備

在配置OSPF的網絡類型之前,需完成以下任務:

·     配置接口的網絡層地址,使相鄰節點之間網絡層可達

·     使能OSPF功能

1.7.2  配置OSPF接口網絡類型為廣播

表1-9 配置OSPF接口網絡類型為廣播

操作

命令

說明

進入係統視圖

system-view

-

進入接口視圖

interface interface-type interface-number

-

配置OSPF接口網絡類型為廣播

ospf network-type broadcast

缺省情況下,OSPF接口網絡類型為廣播類型

 

1.7.3  配置OSPF接口網絡類型為NBMA

把接口類型配置為NBMA後,需要進行一些特殊的配置。

由於無法通過廣播Hello報文的形式動態發現相鄰路由器,必須手工為接口指定相鄰接口的IP地址、該相鄰接口是否有選舉權等(dr-priority參數的值僅表示路由器是否具有DR選舉權,為0表示不具有DR選舉權,大於0時表示具有DR選舉權)。

表1-10 配置OSPF接口網絡類型為NBMA

操作

命令

說明

進入係統視圖

system-view

-

進入接口視圖

interface interface-type interface-number

-

配置OSPF接口的網絡類型為NBMA

ospf network-type nbma

缺省情況下,接口的網絡類型根據接口封裝的鏈路層協議而定

(可選)配置OSPF接口的路由器優先級

ospf dr-priority priority

缺省情況下,接口的路由器優先級為1

本命令設置的優先級用於實際的DR選舉

退回係統視圖

quit

-

進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

-

配置NBMA網絡的鄰居

peer ip-address [ dr-priority priority ]

缺省情況下,未配置鄰居

本命令設置的優先級用於表示鄰居是否具有選舉權。如果在配置鄰居時將優先級指定為0,則本地路由器認為該鄰居不具備選舉權,不向該鄰居發送Hello報文,這種配置可以減少在DR和BDR選舉過程中網絡上的Hello報文數量。但如果本地路由器是DR或BDR,它也會向優先級為0的鄰居發送Hello報文,以建立鄰接關係

 

1.7.4  配置OSPF接口網絡類型為P2MP

表1-11 配置OSPF接口網絡類型為P2MP

操作

命令

說明

進入係統視圖

system-view

-

進入接口視圖

interface interface-type interface-number

-

配置OSPF接口的網絡類型為P2MP

ospf network-type p2mp [ unicast ]

缺省情況下,接口的網絡類型根據接口封裝的鏈路層協議而定

當把接口類型配置為P2MP單播後,OSPF協議在該接口上發送的報文均為單播報文。由於無法通過廣播Hello報文的形式動態發現相鄰路由器,必須手工為接口指定相鄰接口的IP地址

退回係統視圖

quit

-

進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

-

(可選)配置P2MP單播網絡的鄰居

peer ip-address [ cost cost-value ]

缺省情況下,未配置鄰居

如果接口類型為P2MP單播,必選

 

1.7.5  配置OSPF接口網絡類型為P2P

表1-12 配置OSPF接口網絡類型為P2P

操作

命令

說明

進入係統視圖

system-view

-

進入接口視圖

interface interface-type interface-number

-

配置OSPF接口的網絡類型為P2P

 ospf network-type p2p [ multicast | peer-address-check ] *

缺省情況下,接口的網絡類型根據接口封裝的鏈路層協議而定

 

1.8  配置OSPF的路由信息控製

通過本節的配置,可以控製OSPF的路由信息的發布與接收,並引入其他協議的路由。

1.8.1  配置準備

在配置OSPF路由信息控製之前,需完成以下任務:

·     配置接口的網絡層地址,使相鄰節點之間網絡層可達

·     使能OSPF功能

·     如果對路由信息進行過濾,則需要配置對應的過濾列表

1.8.2  配置OSPF路由聚合

路由聚合是指ABR或ASBR將具有相同前綴的路由信息聚合,隻發布一條路由到其它區域。

AS被劃分成不同的區域後,每一個區域通過OSPF區域邊界路由器(ABR)相連,區域間可以通過路由聚合來減少路由信息,減小路由表的規模,提高路由器的運算速度。

ABR在計算出一個區域的區域內路由之後,根據聚合相關設置,將其中多條OSPF路由聚合成一條發送到區域之外。例如,某個區域內有三條區域內路由19.1.1.0/24,19.1.2.0/24,19.1.3.0/24,如果在ABR上配置了路由聚合,將三條路由聚合成一條19.1.0.0/16,則ABR就隻生成一條聚合後的LSA,並發布給其它區域的路由器。

1. 配置ABR路由聚合

如果區域裏存在一些連續的網段,則可以在ABR上配置路由聚合,將這些連續的網段聚合成一個網段,ABR向其它區域發送路由信息時,以網段為單位生成Type-3 LSA。

這樣ABR隻發送一條聚合後的LSA,所有屬於聚合網段範圍的LSA將不再會被單獨發送出去,既可以減少其它區域中LSDB的規模,也減小了因為網絡拓撲變化帶來的影響。

表1-13 配置ABR路由聚合

操作

命令

說明

進入係統視圖

system-view

-

進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

-

進入OSPF區域視圖

area area-id

-

配置ABR路由聚合

abr-summary ip-address { mask-length | mask } [ advertise | not-advertise ] [ cost cost-value ]

缺省情況下,ABR不對路由進行聚合

 

2. 配置ASBR路由聚合

ASBR引入外部路由後,每一條路由都會放在單獨的一條Type-5 LSA中向外宣告;通過配置路由聚合,路由器隻把聚合後的路由放在Type-5 LSA中向外宣告,減少了LSDB中LSA的數量。

在ASBR上配置路由聚合後,將對聚合地址範圍內的Type-5 LSA進行聚合;如果ASBR在NSSA區域裏麵,將對聚合地址範圍內的Type-7 LSA進行聚合。

如果本地路由器同時是ASBR和ABR,並且是NSSA區域的轉換路由器,將對由Type-7 LSA轉化成的Type-5 LSA進行聚合處理;如果不是NSSA區域的轉換路由器,則不進行聚合處理。

表1-14 配置ASBR路由聚合

操作

命令

說明

進入係統視圖

system-view

-

進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

-

配置ASBR路由聚合

asbr-summary ip-address { mask-length | mask } [ cost cost-value | not-advertise | nssa-only | tag tag ] *

缺省情況下,ASBR不對路由進行聚合

 

1.8.3  配置OSPF對通過接收到的LSA計算出來的路由信息進行過濾

OSPF是基於鏈路狀態的動態路由協議,路由信息是根據接收到的LSA計算出來的,可以對通過接收到的LSA計算出來的OSPF路由信息進行過濾。

一共有四種過濾方式:

·     基於要加入到路由表的路由信息的目的地址進行過濾,可以通過配置訪問控製列表或IP地址前綴列表來指定過濾條件;

·     基於要加入到路由表的路由信息的下一跳進行過濾,可以通過在命令中配置gateway參數來指定過濾條件;

·     基於要加入到路由表的路由信息的目的地址和下一跳進行過濾,可以通過配置訪問控製列表或IP地址前綴列表指定過濾目的地址的條件,同時配置gateway參數來指定過濾下一跳的條件;

·     基於路由策略對要加入到路由表的路由信息進行過濾,可以通過在命令中配置route-policy參數來指定過濾條件。

表1-15 配置OSPF對通過接收到的LSA計算出來的路由信息進行過濾

操作

命令

說明

進入係統視圖

system-view

-

進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

-

配置OSPF對通過接收到的LSA計算出來的路由信息進行過濾

filter-policy { ipv4-acl-number [ gateway prefix-list-name ] | gateway prefix-list-name | prefix-list prefix-list-name [ gateway prefix-list-name ] | route-policy route-policy-name } import

缺省情況下,OSPF不對通過接收到的LSA計算出來的路由信息進行過濾

 

1.8.4  配置過濾Type-3 LSA

通過在ABR上配置Type-3 LSA過濾,可以對進入ABR所在區域或ABR向其它區域發布的Type-3 LSA進行過濾。

表1-16 配置過濾Type-3 LSA

操作

命令

說明

進入係統視圖

system-view

-

進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

-

進入OSPF區域視圖

area area-id

-

配置對Type-3 LSA進行過濾

filter { ipv4-acl-number | prefix-list prefix-list-name | route-policy route-policy-name } { export | import }

缺省情況下,不對Type-3 LSA進行過濾

 

1.8.5  配置OSPF接口的開銷值

OSPF有兩種方式來配置接口的開銷值:

·     在接口視圖下直接配置開銷值;

·     配置接口的帶寬參考值,OSPF根據帶寬參考值自動計算接口的開銷值,計算公式為:接口開銷=帶寬參考值÷接口期望帶寬(接口期望帶寬通過命令bandwidth進行配置,具體情況請參見接口分冊命令參考中的介紹)。當計算出來的開銷值大於65535時,開銷取最大值65535;當計算出來的開銷值小於1時,開銷取最小值1。

如果沒有在接口視圖下配置此接口的開銷值,OSPF會根據該接口的帶寬自動計算其開銷值。

1. 配置接口的開銷值

表1-17 配置OSPF接口的開銷值

操作

命令

說明

進入係統視圖

system-view

-

進入接口視圖

interface interface-type interface-number

-

設置OSPF接口的開銷值

ospf cost cost-value

缺省情況下,接口按照當前的帶寬自動計算接口運行OSPF協議所需的開銷。對於Loopback接口,缺省值為0

 

2. 配置帶寬參考值

表1-18 配置帶寬參考值

操作

命令

說明

進入係統視圖

system-view

-

進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance instance-name ] *

-

配置帶寬參考值

bandwidth-reference value

缺省情況下,帶寬參考值為100Mbps

 

1.8.6  配置OSPF通告給鄰居的鏈路開銷值保持最大值的持續時間

1. 功能簡介

OSPF網絡中,鏈路發生故障並從故障中恢複,或接口狀態變化時,OSPF會重新建立鄰接關係,路由會重新進行收斂。在路由重新收斂的過程中,由於各個節點的路由收斂速度不一致,可能會形成環路,造成流量丟失。為了在路由收斂過程中保持轉發路徑不變,可以使用本功能使OSPF在一段時間內向鄰居通告最大鏈路開銷,這段時間結束後OSPF向鄰居通告的鏈路開銷從最大值恢複為原始開銷值,OSPF重新進行路由優選。

2. 配置步驟

表1-19 配置OSPF通告給鄰居的鏈路開銷值保持最大值的持續時間

操作

命令

說明

進入係統視圖

system-view

-

進入接口視圖

interface interface-type interface-number

-

配置OSPF通告給鄰居的鏈路開銷值保持最大值的持續時間

ospf peer hold-max-cost duration time

缺省情況下,未配置OSPF通告給鄰居的鏈路開銷值保持最大值的持續時間

 

 

1.8.7  配置OSPF與Track聯動

1. 功能簡介

配置本功能後,OSPF接口將根據關聯的Track項的狀態調整接口開銷值,以便鄰居重新進行路徑優選。具體機製如下:

(1)     Track項的狀態變為Negative時,OSPF將接口的開銷值調大。

(2)     Track項的狀態變為Positive時,OSPF將接口的開銷值恢複為調整前的值。

本功能可以解決用戶側設備通過M-LAG雙歸接入OSPF網絡的場景中,流量繞行peer-link鏈路的問題。如圖1-8所示,用戶側設備通過M-LAG雙歸接入OSPF網絡。正常情況下,Device A和Device B以負載分擔方式在用戶網絡和OSPF網絡之間轉發流量。當Device B和Device C之間的M-LAG接口故障時,上、下行流量轉發路徑的變化情況如下:

·     上行流量感知到接口故障,Device C去往OSPF網絡的流量轉發路徑由Device C->Device B->Device D切換為Device C->Device A->Device D;

·     下行流量感知不到接口故障,Device D仍然會通過Device B轉發流量。由於Device B無法直接將流量轉發給Device C,導致這部分流量的轉發路徑由Device D->Device B->Device C切換為Device D->Device B->Device A->Device C,即流量繞行peer-link鏈路。

圖1-8 M-LAG接口故障對流量轉發路徑的影響

 

為了避免流量繞行peer-link鏈路,需要在Device B上執行如下配置:

(3)     通過track interface命令創建與作為M-LAG接口的聚合接口鏈路狀態關聯的Track項。關於track interface命令的詳細介紹,請參見“可靠性命令參考”中的“Track”。

(4)     通過ospf track adjust-cost命令將網關接口與Track項關聯。

完成上述配置後,Device B的網關接口根據關聯的Track項的狀態調整接口開銷值,具體機製如下:

(5)     作為M-LAG接口的聚合接口故障時,Track項的狀態變為Negative,OSPF將網關接口的開銷值調大。Device D去往用戶側的流量優選下一跳Device A,即Device D去往用戶側的流量轉發路徑切換為Device D->Device A->Device C,從而避免流量繞行peer-link鏈路,如圖1-9所示。

(6)     作為M-LAG接口的聚合接口故障恢複時,Track項的狀態變為Positive,OSPF將網關接口的開銷值恢複為調整前的值,Device B正常轉發流量。

圖1-9 OSPF根據Track項狀態調整接口開銷值後的流量轉發路徑

 

2. 功能簡介

表1-20 配置OSPF與Track聯動

操作

命令

說明

進入係統視圖

system-view

-

進入接口視圖

interface interface-type interface-number

-

配置OSPF接口與Track項關聯,並根據Track項的狀態調整接口開銷值

ospf track track-entry-number adjust-cost { cost-offset | max }

缺省情況下,未配置OSPF接口與Track項關聯

 

1.8.8  配置OSPF最大等價路由條數

如果到一個目的地有幾條開銷相同的路徑,可以實現等價路由負載分擔,IP報文在這幾個鏈路上負載分擔,以提高鏈路利用率。該配置用以設置OSPF協議的最大等價路由條數。

例如,如圖1-10所示,Device A和Device B均運行OSPF,Device A和Device B之間存在三條路由,且這三條路由的OSPF開銷值相同,那麼這三條路由就形成了等價路由,可以進行負載分擔。

圖1-10 等價路由組網圖

 

表1-21 配置OSPF最大等價路由條數

操作

命令

說明

進入係統視圖

system-view

-

進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

-

配置OSPF最大等價路由條數

maximum load-balancing number

缺省情況下,OSPF支持的等價路由的最大條數與係統支持最大等價路由的條數相同

 

1.8.9  配置OSPF協議的優先級

由於路由器上可能同時運行多個動態路由協議,就存在各個路由協議之間路由信息共享和選擇的問題。係統為每一種路由協議設置一個優先級,在不同協議發現同一條路由時,優先級高的路由將被優先選擇。

表1-22 配置OSPF協議的優先級

操作

命令

說明

進入係統視圖

system-view

-

進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

-

配置OSPF協議的路由優先級

preference [ ase ] { preference | route-policy route-policy-name } *

缺省情況下,OSPF協議對自治係統內部路由的優先級為10,對自治係統外部路由的優先級為150

 

1.8.10  配置NULL0路由

本命令用來配置是否產生NULL0路由以及產生NULL0路由的優先級。

表1-23 配置NULL0路由

操作

命令

說明

進入係統視圖

system-view

-

進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

-

配置NULL0路由以及NULL0路由的優先級

discard-route { external { preference | suppression } | internal { preference | suppression } } *

缺省情況下,產生引入聚合NULL0路由和區域間聚合NULL0路由,且NULL0路由優先級為255

 

1.8.11  配置OSPF引入外部路由

當OSPF網絡中的設備需要訪問運行其他協議的網絡中的設備時,需要將其他協議的路由引入OSPF網絡中。例如,引入IS-IS、BGP生成的路由信息,將這些路由信息通過Type5 LSA或Type7 LSA向外宣告。

OSPF是一個無環的動態路由協議,但這是針對域內路由和域間路由而言的。OSPF對於引入的外部路由引發的路由環路沒有很好的防範機製,因此在配置OSPF引入外部路由時一定要慎重,防止手工配置引發的環路。

隻能引入路由表中狀態為active的路由,是否為active狀態可以通過display ip routing-table protocol命令來查看。

表1-24 配置OSPF引入其它協議的路由

操作

命令

說明

進入係統視圖

system-view

-

進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

-

配置OSPF引入其它協議的路由

import-route bgp [ as-number ] [ allow-ibgp ] [ [ cost cost-value | inherit-cost ] | nssa-only | route-policy route-policy-name | tag tag | type type ] *

import-route { direct | static } [ [ cost cost-value | inherit-cost ] | nssa-only | route-policy route-policy-name | tag tag | type type ] *

import-route { isis | ospf | rip } [ process-id | all-processes ] [ allow-direct | [ cost cost-value | inherit-cost ] | nssa-only | route-policy route-policy-name | tag tag | type type ] *

缺省情況下,不引入外部路由

執行import-route命令引入BGP路由時,未指定allow-ibgp參數表示隻引入EBGP路由;指定allow-ibgp參數表示將IBGP路由也引入,容易引起路由環路,請慎用

(可選)配置對引入的路由進行過濾

filter-policy { ipv4-acl-number | prefix-list prefix-list-name } export [ protocol [ process-id ] ]

缺省情況下,不對引入的路由信息進行過濾

 

1.8.12  配置OSPF引入缺省路由

OSPF組網中,區域邊界和自治係統邊界通常是由多台設備組成的多出口冗餘備份或者負載分擔。此時,為了減少路由表的容量,可以配置缺省路由,減輕設備的處理負擔。

OSPF缺省路由通常應用於下麵兩種情況:

·     由區域邊界路由器發布Type3 LSA,用來指導區域內路由器進行區域之間報文的轉發。

·     由自治係統邊界路由器發布Type5 LSA或Type7 LSA,用來指導OSPF路由域內路由器進行域外報文的轉發。

當路由器無精確匹配的路由時,就可以通過缺省路由進行報文轉發。Type3 LSA生成的缺省路由的優先級高於Type5 LSA生成的缺省路由的優先級。

OSPF缺省路由的發布方式取決於引入缺省路由的區域類型,具體如表1-25所示。

表1-25 缺省路由發布方式

區域類型

產生條件

發布方式

產生LSA的類型

LSA泛洪範圍

普通區域

配置default-route-advertise命令

ASBR發布

Type5 LSA

普通區域

STUB區域

自動產生

ABR發布

Type3 LSA

STUB區域

NSSA區域

配置nssa [ default-route-advertise ]命令

ASBR發布

Type7 LSA

NSSA區域

完全NSSA區域

自動產生

ABR發布

Type3 LSA

NSSA區域

 

OSPF不能通過import-route命令從其它協議引入缺省路由,如果想把缺省路由引入到OSPF路由區域,必須在ASBR上執行本配置。

ASBR通告缺省路由後,如果該區域中某台設備上配置了靜態路由,要使ASBR通告的缺省路由加入到該設備的路由表中,則必須保證配置的靜態路由的優先級低於OSPF通告的缺省路由的優先級。

表1-26 配置OSPF引入缺省路由

操作

命令

說明

進入係統視圖

system-view

-

進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

-

配置OSPF引入缺省路由

default-route-advertise [ [always | permit-calculate-other ] | cost cost-value | route-policy route-policy-name | type type ] *

default-route-advertise [ summary cost cost-value ]

缺省情況下,不引入缺省路由

default-route-advertise summary cost命令僅在VPN中應用,以Type-3 LSA引入缺省路由,PE路由器會將引入的缺省路由發布給CE路由器

配置路由引入時的參數缺省值(開銷、標記、類型)

default { cost cost-value | tag tag | type type } *

缺省情況下,OSPF引入的路由的度量值為1,引入的路由的標記為1,引入的路由類型為2

 

1.8.13  配置發布一條主機路由

表1-27 配置發布一條主機路由

操作

命令

說明

進入係統視圖

system-view

-

進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

-

進入OSPF區域視圖

area area-id

-

配置並發布一條主機路由

host-advertise ip-address cost-value

缺省情況下,OSPF不發布所包含網段之外的主機路由

 

1.8.14  配置允許區域下的接口從標準拓撲中分離

缺省情況下,OSPF區域下的接口會自動加入標準拓撲。本命令允許區域下的接口從標準拓撲中分離出來。

表1-28 配置允許區域下的接口從標準拓撲中分離

操作

命令

說明

進入係統視圖

system-view

-

進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

-

進入OSPF區域視圖

area area-id

-

配置允許區域下的接口從標準拓撲中分離

capability default-exclusion

缺省情況下,OSPF區域下的接口自動加入標準拓撲

 

1.9  調整和優化OSPF網絡

用戶可以從以下幾個方麵來調整和優化OSPF網絡:

·     通過改變OSPF的報文定時器,可以調整OSPF網絡的收斂速度以及協議報文帶來的網絡負荷。在一些低速鏈路上,需要考慮接口傳送LSA的延遲時間。

·     通過調整SPF計算間隔時間,可以抑製由於網絡頻繁變化帶來的資源消耗問題。

·     在安全性要求較高的網絡中,可以通過配置OSPF驗證特性,來提高OSPF網絡的安全性。

1.9.1  配置準備

在調整和優化OSPF網絡之前,需完成以下任務:

·     配置接口的網絡層地址,使相鄰節點之間網絡層可達

·     使能OSPF功能

1.9.2  配置OSPF報文定時器

用戶可以在接口上配置下列OSPF報文定時器:

·     Hello定時器:接口向鄰居發送Hello報文的時間間隔,OSPF鄰居之間的Hello定時器的值要保持一致。

·     Poll定時器:在NBMA網絡中,路由器向狀態為down的鄰居路由器發送輪詢Hello報文的時間間隔。

·     鄰居失效時間:在鄰居失效時間內,如果接口還沒有收到鄰居發送的Hello報文,路由器就會宣告該鄰居無效。

·     接口重傳LSA的時間間隔:路由器向它的鄰居通告一條LSA後,需要對方進行確認。若在重傳間隔時間內沒有收到對方的確認報文,就會向鄰居重傳這條LSA。

表1-29 配置OSPF報文定時器

操作

命令

說明

進入係統視圖

system-view

-

進入接口視圖

interface interface-type interface-number

-

配置Hello定時器

ospf timer hello seconds

缺省情況下,P2P、Broadcast類型接口發送Hello報文的時間間隔為10秒,P2MP、NBMA類型接口發送Hello報文的時間間隔為30秒

修改了網絡類型後,Hello定時器將恢複缺省值

配置Poll定時器

ospf timer poll seconds

缺省情況下,發送輪詢Hello報文的時間間隔為120秒

輪詢Hello報文的時間間隔至少應為Hello時間間隔的4倍

配置鄰居失效時間

ospf timer dead seconds

缺省情況下,P2P、Broadcast類型接口的OSPF鄰居失效時間為40秒,P2MP、NBMA類型接口的OSPF鄰居失效時間為120秒

鄰居失效時間應至少為Hello時間間隔的4倍

修改了網絡類型後,鄰居失效時間將恢複缺省值

配置接口重傳LSA的時間間隔

ospf timer retransmit seconds

缺省情況下,時間間隔為5秒

相鄰路由器重傳LSA時間間隔的值不要設置得太小,否則將會引起不必要的重傳。通常應該大於一個報文在兩台路由器之間傳送一個來回的時間

 

1.9.3  配置接口傳送LSA的延遲時間

考慮到OSPF報文在鏈路上傳送時也需要花費時間,所以LSA的老化時間(age)在傳送之前要增加一定的延遲時間,在低速鏈路上需要對該項配置進行重點考慮。

表1-30 配置接口傳送LSA的延遲時間

操作

命令

說明

進入係統視圖

system-view

-

進入接口視圖

interface interface-type interface-number

-

配置接口傳送LSA的延遲時間

ospf trans-delay seconds

缺省情況下,接口傳送LSA的延遲時間為1秒

 

1.9.4  配置OSPF路由計算的時間間隔

當OSPF的LSDB發生改變時,需要重新計算最短路徑。如果網絡頻繁變化,且每次變化都立即計算最短路徑,將會占用大量係統資源,並影響路由器的效率。通過調節路由計算的時間間隔,可以抑製由於網絡頻繁變化帶來的影響。

本命令在網絡變化不頻繁的情況下將連續路由計算的時間間隔縮小到minimum-interval,而在網絡變化頻繁的情況下可以進行相應懲罰,將路由計算的時間間隔按照配置的懲罰增量延長,增加incremental-interval×2n-2(n為連續觸發路由計算的次數),最大不超過maximum-interval

表1-31 配置SPF計算時間間隔

操作

命令

說明

進入係統視圖

system-view

-

進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

-

配置OSPF路由計算的時間間隔

spf-schedule-interval maximum-interval [ minimum-interval [ incremental-interval ] ]

缺省情況下,OSPF路由計算的最大時間間隔為5秒,最小時間間隔為50毫秒,時間間隔懲罰增量為200毫秒

 

1.9.5  配置LSA重複到達的最小時間間隔

如果在重複到達的最小時間間隔內連續收到一條LSA類型、LS ID、生成路由器ID均相同的LSA則直接丟棄,這樣就可以抑製網絡頻繁變化可能導致的帶寬資源和路由器資源被過多占用的問題。

在網絡相對穩定且對路由收斂速度要求較高的組網環境中,可以將LSA重複到達的時間間隔配置為0,使得拓撲或者路由的變化可以立即被感知到,從而加快路由的收斂。

表1-32 配置LSA的重複接收最小間隔

操作

命令

說明

進入係統視圖

system-view

-

進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

-

配置LSA重複到達的最小時間間隔

lsa-arrival-interval interval

缺省情況下,LSA重複到達的最小時間間隔為1000毫秒

 

說明

建議lsa-arrival-interval命令配置的interval小於或等於lsa-generation-interval命令所配置的minimum-interval

 

1.9.6  配置OSPF更新LSA的時間間隔

通過調節OSPF更新LSA的時間間隔,可以抑製網絡頻繁變化可能導致的帶寬資源和路由器資源被過多占用的問題。

缺省情況下,OSPF會自動調節更新LSA的時間間隔,在網絡變化不頻繁的情況下將OSPF更新LSA的時間間隔縮小到minimum-interval,而在網絡變化頻繁的情況下可以進行相應懲罰,將OSPF更新LSA的時間間隔按照配置的懲罰增量延長,增加incremental-interval×2n-2(n為連續觸發路由計算的次數),最大不超過maximum-interval

表1-33 配置LSA發送間隔

操作

命令

說明

進入係統視圖

system-view

-

進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

-

配置OSPF更新LSA的時間間隔

lsa-generation-interval maximum-interval [ minimum-interval [ incremental-interval ] ]

缺省情況下,OSPF更新LSA的最大時間間隔為為5秒,最小時間間隔為50毫秒,懲罰增量為200毫秒

 

1.9.7  禁止接口收發OSPF報文

如果要使OSPF路由信息不被某一網絡中的路由器獲得,可以禁止接口收發OSPF報文。

將運行OSPF協議的接口指定為Silent狀態後,該接口的直連路由仍可以由同一路由器的其它接口通過Router LSA發布出去,但OSPF報文將被阻塞,接口上無法建立鄰居關係。這樣可以增強OSPF的組網適應能力,減少係統資源的消耗。

表1-34 禁止接口收發OSPF報文

操作

命令

說明

進入係統視圖

system-view

-

進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

-

禁止接口收發OSPF報文

silent-interface { interface-type interface-number | all }

缺省情況下,允許接口收發OSPF報文

不同的進程可以對同一接口禁止收發OSPF報文,但本命令隻對本進程已經使能的OSPF接口起作用,對其它進程的接口不起作用

 

1.9.8  配置Stub路由器

Stub路由器用來控製流量,它告知其他OSPF路由器不要使用這個Stub路由器來轉發數據,但可以擁有一個到Stub路由器的路由。

通過將當前路由器配置為Stub路由器,在該路由器發布的Router LSA中,當鏈路類型取值為3表示連接到Stub網絡時,鏈路度量值不變;當鏈路類型為1、2、4分別表示通過P2P鏈路與另一路由器相連、連接到傳送網絡、虛連接時,鏈路度量值將設置為最大值65535。通過增加include-stub參數可以將路由器發布的Router LSA中,鏈路類型為3的Stub鏈路度量值設置為最大值65535。

這樣其鄰居計算出這條路由的開銷就會很大,如果鄰居上有到這個目的地址開銷更小的路由,則數據不會通過這個Stub路由器轉發。

例如,如圖1-11所示,Device A、Device B、Device C和Device D運行OSPF協議,並建立IBGP連接。Device C為Device B的備份設備。當網絡環境穩定時,設備上的BGP和OSPF是完全收斂的。正常情況下,Device A到10.3.1.0/30的流量會經過Device B。當Device B發生故障後,流量切換到Device C。Device B故障恢複後,流量回切到Device B,由於IGP收斂速度比BGP快,因此OSPF先收斂,BGP還沒有完成收斂,導致Device B上沒有去往10.3.1.0/30的路由,這些流量就會被丟棄。在Device B上配置本功能,使得Device B在等待BGP路由收斂期間作為Stub路由器。這樣,在BGP收斂完成前,Device A不會把流量轉發到Device B上,而是繼續將流量轉發給備份設備Device C,直到Device B上的BGP路由完成收斂。

圖1-11 Stub路由器應用場景舉例

 

表1-35 配置Stub路由器

操作

命令

說明

進入係統視圖

system-view

-

進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

-

配置當前路由器為Stub路由器

stub-router [ external-lsa [ max-metric-value ] | include-stub | on-startup { seconds | wait-for-bgp [ seconds ] } | summary-lsa [ max-metric-value ] ] *

缺省情況下,當前路由器沒有被配置為Stub路由器

Stub路由器與Stub區域無關

 

1.9.9  配置OSPF isolate功能

1. 功能簡介

Isolate是一種對網絡設備進行軟件或硬件維護的方式。Isolate使用網絡中的冗餘路徑,平滑移除需要維護的設備。當完成設備維護後,該設備可以重新投入使用。

當用戶需要對網絡中某台設備的OSPF協議進行升級時,為了不對當前網絡中通過該設備發布的OSPF路由指導轉發的流量產生影響,可以使用OSPF isolate功能把該設備上的OSPF協議從當前網絡中隔離出來,具體工作機製如下:

(1)     開啟OSPF isolate功能後,OSPF將鏈路度量值調大,以便鄰居重新進行路徑優選。OSPF調整鏈路度量值的機製如下:

¡     發布的Type-1 LSA(Router LSA)中,OSPF將鏈路度量值調整為最大值65535。

¡     發布的Type-3 LSA(Network Summary LSA)、Type-5 LSA(AS External LSA)和Type-7 LSA(NSSA External LSA)中,OSPF將鏈路度量值調整為16711680。

(2)     鄰居收到LSA完成路由計算後,將選擇更優的路徑轉發流量,不再將流量發往OSPF isolate設備。此時,設備的OSPF協議完全從當前組網中隔離出來,可以對該設備上的OSPF協議進行升級處理。

(3)     對OSPF協議的維護結束後,關閉OSPF isolate功能將鏈路度量值恢複為調整前的值,從而讓該設備的OSPF協議重新加入網絡。

2. 配置限製和指導

單獨配置isolate enable命令的效果與單獨配置stub-router external-lsa 16711680 summary-lsa 16711680 include-stub命令的效果相同。

同時配置OSPF isolate功能和OSPF stub路由器功能時,需要注意:

·     OSPF isolate功能和OSPF stub路由器功能均生效時,發布的Type-3 LSA、Type-5 LSA、Type-7 LSA的鏈路度量值為Isolate功能和Stub路由器功能中該類LSA鏈路度量值的較大者。

·     如果stub-router命令中指定了on-startup參數,在Stub路由器功能未生效期間,僅Isolate功能會影響流量轉發路徑。

3. 配置步驟

表1-36 配置OSPF isolate功能

操作

命令

說明

進入係統視圖

system-view

-

進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

-

使用OSPF isolate功能對設備的OSPF協議進行維護

開啟OSPF協議的隔離功能,將設備的OSPF協議從網絡中隔離出來

isolate enable

缺省情況下,OSPF協議的隔離功能處於關閉狀態

OSPF協議維護結束後,關閉OSPF協議的隔離功能,讓設備的OSPF協議重新加入網絡

undo isolate enable

 

1.9.10  配置OSPF shutdown功能

當用戶需要對某台設備進行調試或升級等維護操作時,可以使用OSPF shutdown功能暫時關閉設備的OSPF進程,並通知鄰居設備自己要離開網絡。鄰居設備將流程切換到備份路徑上,不再通過該設備轉發流量,從而降低設備維護對網絡的影響。具體工作機製如下:

·     開啟OSPF shutdown功能的OSPF進程向鄰居發送1-way Hello報文。

鄰居收到1-way Hello報文後,斷開與發送該報文的設備的鄰居關係。

·     開啟OSPF shutdown功能的OSPF進程停止收發OSPF協議報文,清除鄰居信息、LSDB(包括自己產生的LSP和接收到的LSP)以及OSPF路由等信息。

對設備的維護結束後,通過undo shutdown process命令重新開啟OSPF進程,從而讓設備的OSPF進程重新加入網絡。

undo ospf命令相比,本功能在關閉OSPF進程後,不會刪除該進程下的配置,降低了用戶維護設備的成本。

表1-37 配置OSPF shutdown功能

操作

命令

說明

進入係統視圖

system-view

-

進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

-

配置OSPF shutdown功能

關閉OSPF進程

shutdown process

缺省情況下,OSPF進程處於開啟狀態

設備維護結束後,重新開啟OSPF進程,讓設備的OSPF進程重新加入網絡

undo shutdown process

 

1.9.11  配置OSPF驗證

從安全性角度來考慮,為了避免路由信息外泄或者OSPF路由器受到惡意攻擊,OSPF提供報文驗證功能。

OSPF路由器建立鄰居關係時,在發送的報文中會攜帶驗證模式等信息,接收報文時進行驗證,隻有通過驗證的報文才能接收,否則將不會接收報文,不能正常建立鄰居。

如果區域驗證和接口驗證都進行了配置,以接口驗證的配置為準。

對於keychain認證算法和key的標識符的範圍,OSPF的支持情況如下:

·     OSPF僅支持MD5、HMAC-SHA-256和HMAC-MD5認證算法。

·     OSPF僅支持標識符取值範圍為0~255的key。

1. 配置區域驗證

一個區域中所有路由器的驗證模式必須一致,如果設置了密鑰,需要保證密鑰的一致性。

表1-38 配置區域驗證

操作

命令

說明

進入係統視圖

system-view

-

進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

-

進入OSPF區域視圖

area area-id

-

配置OSPF區域的驗證模式

authentication-mode { hmac-md5 | hmac-sha-256 | md5 } [ key-id { cipher | plain } string ]

三者選其一

缺省情況下,未配置區域驗證模式

關於keychain功能的介紹,請參見“安全配置指導”中的“keychain”

authentication-mode simple [ { cipher | plain } string ]

authentication-mode keychain keychain-name

 

2. 配置接口驗證

鄰居路由器兩端接口的驗證模式必須一致,如果設置了密鑰,需要保證密鑰的一致性。

如果希望區域中的某些接口不對OSPF報文進行驗證,可以使用None驗證模式,使用該驗證模式的接口將不會繼承其所屬區域下驗證模式的配置。本設備使用None驗證模式時,請保證鄰居設備使用None驗證模式或未配置任何驗證模式。

表1-39 配置接口驗證

操作

命令

說明

進入係統視圖

system-view

-

進入接口視圖

interface interface-type interface-number

-

配置OSPF接口的驗證模式

ospf authentication-mode simple [ { cipher | plain } string ]

缺省情況下,接口不對OSPF報文進行驗證

關於keychain功能的介紹,請參見“安全配置指導”中的“keychain”

ospf authentication-mode { hmac-md5 | hmac-sha-256 |  md5 } [ key-id { cipher | plain } string ]

ospf authentication-mode keychain keychain-name

ospf authentication-mode none

 

1.9.12  配置DD報文中的MTU

缺省情況下,接口發送DD報文時不使用接口的實際MTU值,而是用0代替。同時,接口不檢查接收到的DD報文攜帶的MTU值,使得兩端設備的接口MTU值不同也可以建立鄰居關係。

如果其他廠商設備丟棄攜帶的MTU值為0的DD報文,則會導致OSPF鄰居關係無法建立。為了解決上述問題,需要配置ospf mtu-enable命令。配置此命令後,OSPF將使用接口的實際MTU值填寫DD報文Interface MTU字段,同時檢查接收到的DD報文攜帶的MTU值是否超過本端接收接口的MTU值。如果接收到的DD報文攜帶的MTU值是否超過本端接收接口的MTU值,則將此DD報文丟棄。為了兩端設備能夠建立鄰居關係,需要為互聯物理接口設置相同的MTU值。

表1-40 配置DD報文中的MTU

操作

命令

說明

進入係統視圖

system-view

-

進入接口視圖

interface interface-type interface-number

-

配置DD報文中MTU域的值為發送該報文接口的MTU值

ospf mtu-enable

缺省情況下,接口發送的DD報文中MTU域的值為0

 

1.9.13  配置OSPF發送協議報文的DSCP優先級

表1-41 配置OSPF發送協議報文的DSCP優先級

操作

命令

說明

進入係統視圖

system-view

-

進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

-

配置OSPF發送協議報文的DSCP優先級

dscp dscp-value

缺省情況下,OSPF發送協議報文的DSCP優先級值為48

 

1.9.14  配置LSDB中External LSA的最大數量

表1-42 配置LSDB中External LSA的最大數量

操作

命令

說明

進入係統視圖

system-view

-

進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

-

配置LSDB中External LSA的最大數量

lsdb-overflow-limit number

缺省情況下,不對LSDB中External LSA的最大條目數進行限製

 

1.9.15  配置OSPF嚐試退出overflow狀態的定時器時間間隔

網絡中出現過多LSA,會占用大量係統資源。當設置的LSDB中External LSA的最大數量達到上限時,LSDB會進入overflow狀態,在overflow狀態中,不再接收External LSA,同時刪除自己生成的External LSA,對於已經收到的External LSA則不會刪除。這樣就可以減少LSA從而節省係統資源。

通過配置可以調整OSPF退出overflow狀態的時間。

表1-43 配置OSPF嚐試退出overflow狀態的定時器時間間隔

操作

命令

說明

進入係統視圖

system-view

-

進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

-

配置OSPF嚐試退出overflow狀態的定時器時間間隔

lsdb-overflow-interval interval

缺省情況下,OSPF嚐試退出overflow定時器間隔是300秒,配置為0時,表示不退出Overflow狀態

 

1.9.16  配置兼容RFC 1583的外部路由選擇規則

當有多條路徑可以到達同一個外部路由時,在選擇最優路由的問題上,RFC 2328中定義的選路規則與RFC 1583的有所不同,進行此配置可以兼容RFC 1583中定義的規則。

具體的選路規則如下:

(1)     當RFC 2328兼容RFC 1583時,所有到達ASBR的路由優先級相同。當RFC 2328不兼容RFC 1583時,非骨幹區的區域內路由優先級最高,區域間路由與骨幹區區域內路由優先級相同,優選非骨幹區的區域內路由,盡量減少骨幹區的負擔;

(2)     若存在多條優先級相同的路由時,按開銷值優選,優選開銷值小的路由;

(3)     若存在多條開銷值相同路由時,按路由來源區域的區域ID選擇,優選區域ID大的路由。

為了避免路由環路,同一路由域內的路由器建議統一配置相同選擇規則。

表1-44 配置兼容RFC 1583的外部路由選擇規則

操作

命令

說明

進入係統視圖

system-view

-

進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

-

配置兼容RFC 1583的外部路由選擇規則

rfc1583 compatible

缺省情況下,兼容RFC 1583的路由選擇優先規則的功能處於開啟狀態

 

1.9.17  配置鄰居狀態變化的輸出開關

打開鄰居狀態變化的輸出開關後,OSPF鄰居狀態變化時會生成日誌信息發送到設備的信息中心,通過設置信息中心的參數,最終決定日誌信息的輸出規則(即是否允許輸出以及輸出方向)。(有關信息中心參數的配置請參見“網絡管理和監控配置指導”中的“信息中心”。)

表1-45 配置鄰居狀態變化的輸出開關

操作

命令

說明

進入係統視圖

system-view

-

進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

-

打開鄰居狀態變化的輸出開關

log-peer-change

缺省情況下,鄰居狀態變化的輸出開關處於打開狀態

 

1.9.18  配置OSPF網管功能

配置OSPF進程綁定MIB功能後,可以通過網管軟件對指定的OSPF進程進行管理。

開啟OSPF模塊的告警功能後,該模塊會生成告警信息,用於報告該模塊的重要事件。生成的告警信息將發送到設備的SNMP模塊,通過設置SNMP中告警信息的發送參數,來決定告警信息輸出的相關屬性。(有關告警信息的詳細介紹,請參見“網絡管理和監控配置指導”中的“SNMP”。)

通過調整OSPF在指定時間間隔內允許輸出的告警信息條數,可以避免網絡出現大量告警信息時對資源的消耗。

表1-46 配置OSPF網管功能

操作

命令

說明

進入係統視圖

system-view

-

配置OSPF進程綁定MIB

ospf mib-binding process-id

缺省情況下,MIB綁定在進程號最小的OSPF進程上

開啟OSPF的告警功能

snmp-agent trap enable ospf [ authentication-failure | bad-packet | config-error | grhelper-status-change | grrestarter-status-change | if-state-change | lsa-maxage | lsa-originate | lsdb-approaching-overflow | lsdb-overflow | neighbor-state-change | nssatranslator-status-change | retransmit | virt-authentication-failure | virt-bad-packet | virt-config-error | virt-retransmit | virtgrhelper-status-change | virtif-state-change | virtneighbor-state-change ] *

缺省情況下,OSPF的告警功能處於開啟狀態

進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

-

配置OSPF在指定時間間隔內允許輸出的告警信息條數

snmp trap rate-limit interval trap-interval count trap-number

缺省情況下,OSPF在10秒內允許輸出7條告警信息

 

1.9.19  配置OSPF記錄鄰居關係斷開故障檢測信息的最大條數

OSPF會對鄰居關係斷開的故障檢測信息進行記錄,通過本功能可以設置記錄故障檢測信息的最大條數。

表1-47 配置OSPF記錄鄰居關係斷開故障檢測信息的最大條數

操作

命令

說明

進入係統視圖

system-view

-

配置OSPF記錄鄰居關係斷開的故障檢測信息最大條數

ospf troubleshooting max-number number

缺省情況下,OSPF記錄鄰居關係斷開的故障檢測信息最大條數為100

 

1.9.20  配置發送LSU報文的速率

在與鄰居進行LSDB同步的過程中,需要發送大量的LSU報文時,鄰居設備會在短時間內收到大量的LSU報文,處理這些突發的大量LSU報文時,可能會出現如下情況:

·     占用較多的係統資源,導致鄰居設備性能下降。

·     鄰居設備可能會將維持鄰居關係的Hello報文丟棄,導致鄰居關係斷開。重新建立鄰居關係的過程中,需要交互的LSU數量將會更大,從而加劇設備性能的下降。

配置本功能後,路由器將LSU報文分為多個批次進行發送,對OSPF接口每次允許發送的LSU報文的最大個數做出限製;同時,在指定的時間間隔內,所有運行OSPF的接口發送LSU的最大個數不能超過限定值,即對整機發送LSU的速率進行限製,從而避免上述情況的發生。

表1-48 配置發送LSU報文的速率

操作

命令

說明

進入係統視圖

system-view

-

開啟OSPF限製LSU發送速率功能

ospf lsu-flood-control [ interval count ]

缺省情況下,OSPF不對LSU的發送速率進行限製。

調整OSPF對LSU的發送速率時,如果配置不當可能會造成路由異常等情況,請謹慎配置。通常情況下,建議使用缺省值。

進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

-

(可選)配置接口發送LSU報文的時間間隔和一次發送LSU報文的最大個數

transmit-pacing interval interval count count

缺省情況下,OSPF接口發送LSU報文的時間間隔為20毫秒,一次最多發送3個LSU報文。

用戶可根據需要配置OSPF接口發送LSU報文的時間間隔以及接口一次發送LSU報文的最大個數。

 

1.9.21  配置ISPF

ISPF(Incremental Shortest Path First,增量最短路徑優先)是對OSPF中最短路徑樹的增量計算,當網絡的拓撲結構發生變化,即影響到最短路徑樹的結構時,隻對受影響的部分節點進行重新計算拓撲結構,隻對最短路徑樹中受影響的部分進行修正,而不需要重建整棵最短路徑樹。

表1-49 配置增量SPF計算

操作

命令

說明

進入係統視圖

system-view

-

進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

-

開啟增量SPF計算功能

ispf enable

缺省情況下,增量SPF計算功能處於使能狀態

 

1.9.22  配置前綴抑製

OSPF使能網段時會將接口上匹配該網段的所有網段路由與主機路由都通過LSA發布,但有些時候主機路由或網段路由是不希望被發布的。通過前綴抑製配置,可以減少LSA中攜帶不需要的前綴,即不發布某些網段路由和主機路由,從而提高網絡安全性,加快路由收斂。

當使能前綴抑製時,具體情況如下:

·     P2P或P2MP類型網絡:Type-1 LSA中不發布接口的主地址,即Type-1 LSA中鏈路類型為3的Stub鏈路被抑製,不生成接口路由,但其他路由信息可以正常計算,不會影響流量轉發。

·     廣播類型或者NBMA網絡:DR發布的Type-2 LSA的掩碼字段會填成32位,即不生成網段路由,但其他路由信息可以正常計算,不會影響流量轉發。另外,如果沒有鄰居,發布的Type-1 LSA中也不發布接口的主地址,即Type-1 LSA中鏈路類型為3的Stub鏈路被抑製。

提示

如果需要抑製前綴發布,建議整個OSPF網絡都配置本命令。

 

1. 配置全局前綴抑製

全局配置不能抑製從地址、LoopBack接口以及處於抑製狀態的接口對應的前綴。如果想對LoopBack接口或處於抑製狀態的接口進行抑製,可以通過配置接口前綴抑製來實現。

表1-50 配置全局前綴抑製

操作

命令

說明

進入係統視圖

system-view

-

進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

-

配置前綴抑製功能

prefix-suppression

缺省情況下,不抑製OSPF進程進行前綴發布

 

2. 配置接口前綴抑製

接口配置不抑製從地址對應的前綴。

表1-51 配置接口前綴抑製

操作

命令

說明

進入係統視圖

system-view

-

進入接口視圖

interface interface-type interface-number

-

配置接口的前綴抑製功能

ospf prefix-suppression [ disable ]

缺省情況下,不抑製接口進行前綴發布

 

1.9.23  配置OSPF的前綴按優先級收斂功能

OSPF按照指定的收斂優先級依次計算區域內路由、區域間路由、自治係統外部路由。收斂優先級從高到低分為4個優先級Critical、High、Medium和Low。如果一條路由符合多個收斂優先級的匹配規則,則這些收斂優先權中最高者當選為路由的收斂優先權。

通過配置OSPF路由的收斂優先級,允許用戶配置特定路由的優先級,使這些路由能夠比其他的路由優先收斂。

表1-52 配置OSPF的前綴按優先級收斂功能

操作

命令

說明

進入係統視圖

system-view

-

配置IPv4地址前綴列表

ip prefix-list prefix-list-name [ index index-number ] { deny | permit } ip-address mask-length [ greater-equal min-mask-length ] [ less-equal max-mask-length ]

-

配置路由策略

route-policy route-policy-name { deny | permit } node node-number

-

配置IPv4的路由信息的匹配條件為IPv4地址前綴列表

if-match ip { address | next-hop | route-source } prefix-list prefix-list-name

缺省情況下,未配置IPv4的路由信息的匹配條件

配置路由的收斂優先級

apply prefix-priority { critical | high | medium }

缺省情況下,未配置路由的收斂優先級

退回係統視圖

quit

-

進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

-

使能OSPF的前綴按優先級快速收斂功能

prefix-priority route-policy route-policy-name

缺省情況下,OSPF的前綴按優先級快速收斂功能處於關閉狀態

 

1.9.24  配置PIC

提示

·     PIC和OSPF快速重路由功能同時配置時,OSPF快速重路由功能生效。

·     目前隻支持區域間路由以及外部路由的PIC功能。

 

PIC(Prefix Independent Convergence,前綴無關收斂),即收斂時間與前綴數量無關,該功能可以加快收斂速度。傳統的路由計算快速收斂都與前綴數量相關,收斂時間與前綴數量成正比。

1. 配置PIC

表1-53 配置PIC

操作

命令

說明

進入係統視圖

system-view

-

進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

-

使能PIC功能

pic [ additional-path-always ]

缺省情況下,前綴無關收斂功能處於使能狀態

 

2. 配置PIC支持BFD檢測功能

OSPF協議的PIC特性中,主用鏈路缺省不使用BFD進行鏈路故障檢測。配置本功能後,將使用BFD進行檢測,可以加快OSPF協議的收斂速度。

(1)     配置PIC支持BFD檢測功能(Ctrl方式)

表1-54 配置PIC支持BFD檢測功能(Ctrl方式)

操作

命令

說明

進入係統視圖

system-view

-

進入接口視圖

interface interface-type interface-number

-

使能OSPF協議中主用鏈路的BFD(Ctrl方式)檢測功能

ospf primary-path-detect bfd ctrl

缺省情況下,OSPF協議中主用鏈路的BFD(Ctrl方式)檢測功能處於關閉狀態

 

(2)     配置PIC支持BFD檢測功能(Echo方式)

表1-55 配置PIC支持BFD檢測功能(Echo方式)

操作

命令

說明

進入係統視圖

system-view

-

配置BFD Echo報文源地址

bfd echo-source-ip ip-address

缺省情況下,未配置BFD Echo報文源地址

echo報文的源IP地址用戶可以任意指定。建議配置echo報文的源IP地址不屬於該設備任何一個接口所在網段

本命令的詳細情況請參見“可靠性命令參考”中的“BFD”

進入接口視圖

interface interface-type interface-number

-

使能OSPF協議中主用鏈路的BFD(Echo方式)檢測功能

ospf primary-path-detect bfd echo

缺省情況下,OSPF協議中主用鏈路的BFD(Echo方式)檢測功能處於關閉狀態

 

1.9.25  配置OSPF的日誌信息個數

OSPF的日誌信息包括路由計算日誌信息和鄰居日誌信息。

表1-56 配置OSPF的日誌信息個數

操作

命令

說明

進入係統視圖

system-view

-

進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

-

配置OSPF的日誌信息個數

event-log { hello { received [ abnormal | dropped ] | sent [ abnormal | failed ] } | lsa-flush | peer | spf } size count

缺省情況下,接收Hello報文、接收異常Hello報文、丟棄接收到的Hello報文、發送Hello報文、發送異常Hello報文以及發送失敗的Hello報文、LSA老化、鄰居狀態變化、路由計算的日誌信息個數均為100

 

1.9.26  過濾接口出方向的LSA

通過該功能,不希望讓鄰居接收到的LSA可在本端接口出方向上被過濾掉,從而減小鄰居LSDB的規模,並節省帶寬。

表1-57 配置過濾接口出方向的LSA

操作

命令

說明

進入係統視圖

system-view

-

進入接口視圖

interface interface-type interface-number

-

配置過濾接口出方向的LSA

ospf database-filter { all | { ase [ acl ipv4-acl-number ] | nssa [ acl ipv4-acl-number ] | summary [ acl ipv4-acl-number ] } * }

缺省情況下,不對接口出方向的LSA進行過濾

 

1.9.27  過濾發送給指定鄰居的LSA

在P2MP網絡中,一台路由器可以有多個接口的網絡類型為P2MP的OSPF鄰居。當兩台路由器之間存在多條P2MP鏈路時,不希望讓某個指定鄰居收到的LSA,通過該功能可在本地被過濾掉。

表1-58 配置對P2MP鄰居進行LSA過濾

操作

命令

說明

進入係統視圖

system-view

-

進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

-

配置過濾發送給接口的網絡類型為P2MP的鄰居的LSA

database-filter peer ip-address { all | { ase [ acl ipv4-acl-number ] | nssa [ acl ipv4-acl-number ] | summary [ acl ipv4-acl-number ] } * }

缺省情況下,不對發送給接口的網絡類型為P2MP的鄰居的LSA進行過濾

 

1.9.28  配置OSPF GTSM功能

提示

開啟OSPF GTSM功能時,要求本設備和鄰居設備上同時配置本特性,指定的hop-count值可以不同,隻要能夠滿足合法性檢查即可。

 

GTSM(Generalized TTL Security Mechanism,通用TTL安全保護機製)是一種簡單易行的、對基於IP協議的上層業務進行保護的安全機製。開啟OSPF報文的GTSM功能後,當設備收到來自OSPF普通鄰居或虛連接鄰居的報文時,會判斷報文的TTL是否在255-“hop-count”+1到255之間。如果在,就上送報文;如果不在,則直接丟棄報文。以使設備避免受到CPU利用(CPU-utilization)等類型的攻擊(如CPU過載),增強係統的安全性。

如果接口上配置了OSPF GTSM功能,接口OSPF GTSM功能的狀態以接口的配置為準,不受接口所在區域OSPF GTSM功能的影響。如果接口上未配置OSPF GTSM功能,接口OSPF GTSM功能的狀態以區域的配置為準。

OSPF GTSM功能隻會對來自OSPF普通鄰居和虛連接鄰居的報文進行安全檢測,不會對來自OSPF偽連接鄰居的報文進行安全檢測。關於OSPF偽連接的GTSM功能的詳細信息,請參見“MPLS配置指導”中的“MPLS L3VPN”。

1. 配置區域GTSM功能

表1-59 配置區域開啟OSPF報文的GTSM功能

操作

命令

說明

進入係統視圖

system-view

-

進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

-

進入OSPF區域視圖

area area-id

-

開啟區域的OSPF GTSM功能

ttl-security [ hops hop-count ]

缺省情況下,區域的OSPF GTSM功能處於關閉狀態

 

2. 配置接口GTSM功能

表1-60 配置接口OSPF報文的GTSM功能

操作

命令

說明

進入係統視圖

system-view

-

進入接口視圖

interface interface-type interface-number

-

配置接口的OSPF GTSM功能

·     開啟接口的OSPF GTSM功能:

ospf ttl-security [ hops hop-count ]

·     關閉接口的OSPF GTSM功能:

ospf ttl-security disable

區域OSPF GTSM功能處於開啟狀態時,如該區域內某個接口的鄰居不支持GTSM功能,需要關閉該接口的OSPF GTSM功能

缺省情況下,接口的OSPF GTSM功能與其所在區域OSPF GTSM功能的狀態保持一致

 

1.10  配置OSPF GR

GR(Graceful Restart,平滑重啟)是一種通過備份OSPF配置信息,在協議重啟或主備倒換時OSPF進行平滑重啟,從鄰居那裏獲得鄰居關係,並對LSDB進行同步,從而保證轉發業務不中斷的機製。

GR有兩個角色:

·     GR Restarter:發生協議重啟或主備倒換事件且具有GR能力的設備。

·     GR Helper:和GR Restarter具有鄰居關係,協助完成GR流程的設備。

目前有兩種方式實現OSPF GR技術:

·     一種是基於IETF標準,GR Restarter通過向GR Helper發送一種稱為Grace LSA的9類Opaque LSA來控製GR的交互過程。

·     另外一種是非IETF標準,GR Restarter與GR Helper之間是通過相互發送攜帶LLS與OOB擴展信息的OSPF報文來完成GR的交互過程。

一台設備可以同時充當GR Restarter和GR Helper。

1.10.1  配置GR Restarter

可以在GR Restarter上配置基於OSPF的IETF標準或非IETF標準的GR能力。在作為GR Restarter的設備上進行如下配置:

1. 配置IETF標準GR Restarter

表1-61 配置IETF標準GR Restarter

操作

命令

說明

進入係統視圖

system-view

-

啟動OSPF,進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

-

使能Opaque LSA發布接收能力

opaque-capability enable

缺省情況下,OSPF的Opaque LSA發布接收能力處於開啟狀態

使能OSPF協議的IETF標準GR能力

graceful-restart ietf [ global | planned-only ] *

缺省情況下,OSPF協議的IETF標準GR能力處於關閉狀態

(可選)配置OSPF協議的GR重啟間隔時間

graceful-restart interval interval

缺省情況下,OSPF協議的GR重啟間隔時間為120秒

 

2. 配置非IETF標準GR Restarter

表1-62 配置非IETF標準GR Restarter

操作

命令

說明

進入係統視圖

system-view

-

啟動OSPF,進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

-

使能OSPF本地鏈路信令能力

enable link-local-signaling

缺省情況下,OSPF本地鏈路信令能力處於關閉狀態

使能OSPF帶外同步能力

enable out-of-band-resynchronization

缺省情況下,OSPF帶外同步能力處於關閉狀態

使能OSPF協議的非IETF標準GR能力

graceful-restart [ nonstandard ] [ global | planned-only ] *

缺省情況下,OSPF協議的非IETF標準GR能力處於關閉狀態

(可選)配置OSPF協議的GR重啟間隔時間

graceful-restart interval interval

缺省情況下,OSPF協議的GR重啟間隔時間為120秒

 

1.10.2  配置GR Helper

可以在作為GR Helper的設備上配置基於OSPF的IETF標準或非IETF標準的GR Helper能力。在作為GR Helper的設備上進行如下配置:

1. 配置IETF標準GR Helper

表1-63 配置IETF標準GR Helper

操作

命令

說明

進入係統視圖

system-view

-

啟動OSPF,進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

-

使能Opaque LSA發布接收能力

opaque-capability enable

缺省情況下,OSPF的Opaque LSA發布接收能力處於開啟狀態

(可選)使能GR Helper能力

graceful-restart helper enable [ planned-only ]

缺省情況下,OSPF的GR Helper能力處於開啟狀態

(可選)配置GR Helper 嚴格檢查LSA能力

graceful-restart helper strict-lsa-checking

缺省情況下,OSPF協議的GR Helper嚴格LSA檢查能力處於關閉狀態

 

2. 配置非IETF標準GR Helper

表1-64 配置非IETF標準GR Helper

操作

命令

說明

進入係統視圖

system-view

-

啟動OSPF,進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

-

使能OSPF本地鏈路信令能力

enable link-local-signaling

缺省情況下,OSPF本地鏈路信令能力處於關閉狀態

使能OSPF帶外同步能力

enable out-of-band-resynchronization

缺省情況下,OSPF帶外同步能力處於關閉狀態

(可選)使能GR Helper能力

graceful-restart helper enable

缺省情況下,OSPF的GR Helper能力處於開啟狀態

(可選) 配置GR Helper 嚴格檢查LSA能力

graceful-restart helper strict-lsa-checking

缺省情況下,OSPF協議的GR Helper嚴格LSA檢查能力處於關閉狀態

 

1.10.3  以GR方式重啟OSPF進程

設備進行主備倒換或者進行如下操作均可以以GR方式重啟OSPF進程。

表1-65 以GR方式重啟OSPF進程

操作

命令

說明

以GR方式重啟OSPF進程

reset ospf [ process-id ] process graceful-restart

請在用戶視圖下執行該命令

 

1.11  配置OSPF NSR

NSR(Nonstop Routing,不間斷路由)通過將OSPF鏈路狀態信息從主進程備份到備進程,使設備在發生主備倒換時可以自行完成鏈路狀態的恢複和路由的重新生成,鄰接關係不會發生中斷,從而避免了主備倒換對轉發業務的影響。

GR特性需要周邊設備配合才能完成路由信息的恢複,在網絡應用中有一定的限製。NSR特性不需要周邊設備的配合,網絡應用更加廣泛。

表1-66 配置OSPF NSR

操作

命令

說明

進入係統視圖

system-view

-

進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

-

使能OSPF NSR功能

non-stop-routing

缺省情況下,OSPF NSR功能處於關閉狀態

各個進程的NSR功能是相互獨立的,隻對本進程生效。如果存在多個OSPF進程,建議在各個進程下使能OSPF NSR功能

 

1.12  配置OSPF與BFD聯動

OSPF周期性的向鄰居發送Hello報文,如果在設定的時間內沒有收到對方發送來的Hello報文,則本地路由器會認為對方路由器無效。這種故障檢測所需時間比較長,較長的檢測時間會導致數據丟失,無法滿足高可靠性需求。

為了解決上述問題,配置OSPF與BFD(Bidirectional Forwarding Detection,雙向轉發檢測)聯動功能,可以快速檢測鏈路的狀態,提高鏈路狀態變化時OSPF協議的收斂速度。關於BFD的介紹和基本功能配置,請參見“可靠性配置指導”中的“BFD”。

OSPF使用BFD來進行快速故障檢測時,提供兩種檢測方式:

·     control報文雙向檢測:需要建立OSPF鄰居的兩端設備均支持BFD配置。

·     echo報文單跳檢測:僅需要一端設備支持BFD配置。

1.12.1  control報文雙向檢測

表1-67 配置OSPF與BFD聯動(control報文雙向檢測)

操作

命令

說明

進入係統視圖

system-view

-

進入接口視圖

interface interface-type interface-number

-

使能OSPF的BFD功能

ospf bfd enable

缺省情況下,OSPF的BFD功能處於關閉狀態

創建BFD會話的通信雙方必須處於特定區域的同一網段

 

1.12.2  echo報文單跳檢測

表1-68 配置OSPF與BFD聯動(echo報文單跳檢測)

操作

命令

說明

進入係統視圖

system-view

-

配置echo報文源地址

bfd echo-source-ip ip-address

缺省情況下,未配置echo報文源地址

echo報文的源IP地址用戶可以任意指定。建議配置echo報文的源IP地址不屬於該設備任何一個接口所在網段

本命令的詳細情況請參見“可靠性命令參考”中的“BFD”

進入接口視圖

interface interface-type interface-number

-

使能OSPF的BFD功能

ospf bfd enable echo

缺省情況下,OSPF的BFD功能處於關閉狀態

 

1.13  配置OSPF快速重路由

·     OSPF快速重路由功能(通過LFA算法選取備份下一跳信息)不能與vlink-peer命令同時使用。

·     OSPF快速重路由功能和PIC同時配置時,OSPF快速重路由功能生效。

 

1.13.1  功能簡介

當OSPF網絡中的鏈路或某台路由器發生故障時,需要通過故障鏈路或故障路由器傳輸才能到達目的地的報文將會丟失,數據流量將會被中斷,直到OSPF根據新的拓撲網絡路由收斂完畢後,被中斷的流量才能恢複正常的傳輸。

為了盡可能縮短網絡故障導致的流量中斷時間,網絡管理員可以根據需要配置OSPF快速重路由功能。

圖1-12 OSPF快速重路由功能示意圖

 

圖1-12所示,通過在Router B上使能快速重路由功能,OSPF將為路由計算或指定備份下一跳,當Router B檢測到網絡故障時,OSPF會使用事先獲取的備份下一跳替換失效下一跳,通過備份下一跳來指導報文的轉發,從而大大縮短了流量中斷時間。在使用備份下一跳指導報文轉發的同時,OSPF會根據變化後的網絡拓撲重新計算最短路徑,網絡收斂完畢後,使用新計算出來的最優路由來指導報文轉發。

網絡管理員可以配置給所有OSPF路由通過LFA(Loop Free Alternate)算法選取備份下一跳,也可以在路由策略中指定備份下一跳,為符合過濾條件的路由指定備份下一跳。

1.13.2  配置準備

在配置OSPF快速重路由特性之前,需完成以下任務:

·     配置接口的網絡層地址,使相鄰節點網絡層可達

·     使能OSPF功能

1.13.3  配置步驟

1. 配置OSPF快速重路由功能

(1)     配置OSPF快速重路由功能(通過LFA算法選取備份下一跳信息)

表1-69 配置OSPF快速重路由功能(自動計算備份下一跳)

操作

命令

說明

進入係統視圖

system-view

-

進入接口視圖

interface interface-type interface-number

-

(可選)指定接口上使能參與LFA計算

ospf fast-reroute lfa-backup

缺省情況下,接口參與LFA計算,能夠被選為備份接口

退回係統視圖

quit

-

進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

-

配置OSPF快速重路由功能(通過LFA算法選取備份下一跳信息)

fast-reroute lfa [ abr-only | ecmp-shared ]

缺省情況下,OSPF快速重路由功能處於關閉狀態

abr-only表示僅選取到ABR設備的路由作為備份下一跳

 

(2)     配置OSPF快速重路由功能(通過路由策略指定備份下一跳)

網絡管理員可以通過apply fast-reroute backup-interface命令在路由策略中指定備份下一跳,為符合過濾條件的路由指定備份下一跳,關於apply fast-reroute backup-interface命令以及路由策略的相關配置,請參見“三層技術-IP路由配置指導”中的“路由策略”。

表1-70 配置OSPF支持快速重路由功能(通過路由策略指定備份下一跳)

操作

命令

說明

進入係統視圖

system-view

-

進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

-

配置OSPF快速重路由功能(通過路由策略指定備份下一跳)

fast-reroute route-policy route-policy-name

缺省情況下,OSPF快速重路由功能處於關閉狀態

 

2. 配置OSPF快速重路由支持BFD檢測功能

OSPF協議的快速重路由特性中,主用鏈路缺省不使用BFD進行鏈路故障檢測。配置本功能後,將使用BFD進行檢測,可以加快OSPF協議的收斂速度。

(1)     配置OSPF快速重路由支持BFD檢測功能(Ctrl方式)

表1-71 配置OSPF快速重路由支持BFD檢測功能(Ctrl方式)

操作

命令

說明

進入係統視圖

system-view

-

進入接口視圖

interface interface-type interface-number

-

使能OSPF協議中主用鏈路的BFD(Ctrl方式)檢測功能

ospf primary-path-detect bfd ctrl

缺省情況下,OSPF協議中主用鏈路的BFD檢測功能(Ctrl方式)處於關閉狀態

 

(2)     配置OSPF快速重路由支持BFD檢測功能(Echo方式)

表1-72 配置OSPF快速重路由支持BFD檢測功能(Echo方式)

操作

命令

說明

進入係統視圖

system-view

-

配置BFD Echo報文源地址

bfd echo-source-ip ip-address

缺省情況下,未配置BFD Echo報文源地址

echo報文的源IP地址用戶可以任意指定。建議配置echo報文的源IP地址不屬於該設備任何一個接口所在網段

本命令的詳細情況請參見“可靠性命令參考”中的“BFD”

進入接口視圖

interface interface-type interface-number

-

使能OSPF協議中主用鏈路的BFD(Echo方式)檢測功能

ospf primary-path-detect bfd echo

缺省情況下,OSPF協議中主用鏈路的BFD(Echo方式)檢測功能處於關閉狀態

 

1.14  配置允許設備將OSPF鏈路狀態信息發布到BGP

本功能允許設備將鏈路狀態信息發布到BGP,由BGP向外發布,以滿足需要知道鏈路狀態信息的應用的需求。BGP的相關內容請參見“BGP配置指導”中的“BGP LS”。

表1-73 配置允許設備將OSPF鏈路狀態信息發布到BGP

操作

命令

說明

進入係統視圖

system-view

-

進入OSPF視圖

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

-

配置允許設備將OSPF鏈路狀態信息發布到BGP

distribute bgp-ls [ strict-link-checking ]

缺省情況下,不允許設備將OSPF鏈路狀態信息發布到BGP

 

1.15  OSPF顯示和維護

在完成上述配置後,在任意視圖下執行display命令可以顯示配置後OSPF的運行情況,通過查看顯示信息驗證配置的效果。

在用戶視圖下執行reset命令可以清除OSPF的統計信息、重啟OSPF進程或重新向OSPF引入外部路由。

表1-74 OSPF顯示和維護

操作

命令

顯示OSPF的進程信息

display ospf [ process-id ] [ verbose ]

顯示OSPF進程的GR狀態信息

display ospf [ process-id ] graceful-restart [ verbose ]

顯示區域中FRR備份下一跳候選列表

display ospf [ process-id ] [ area area-id ] fast-reroute lfa-candidate

顯示OSPF的LSDB信息

display ospf [ process-id ] lsdb [ brief | originate-router advertising-router-id | self-originate ]

display ospf [ process-id ] lsdb { opaque-as | ase } [ link-state-id ] [ originate-router advertising-router-id | self-originate ]

display ospf [ process-id ] [ area area-id ] lsdb { asbr | network | nssa | opaque-area | opaque-link | router | summary } [ link-state-id ] [ originate-router advertising-router-id | self-originate ]

顯示進程中的下一跳信息

display ospf [ process-id ] nexthop

顯示OSPF的NSR階段信息

display ospf [ process-id ] non-stop-routing status

顯示OSPF鄰居的信息

display ospf [ process-id ] peer [ hello | verbose ] [ interface-type interface-number ] [ neighbor-id ]

顯示OSPF各區域鄰居的統計信息

display ospf [ process-id ] peer statistics

顯示OSPF路由表的信息

display ospf [ process-id ] routing [ ip-address { mask-length | mask } ] [ interface interface-type interface-number ] [ nexthop nexthop-address ] [ verbose ]

顯示OSPF區域的最短路徑樹信息

display ospf [ process-id ] [ area area-id ] spf-tree [ verbose ]

顯示OSPF的統計信息

display ospf [ process-id ] statistics [ error | packet [hello | interface-type interface-number ] ]

顯示OSPF虛連接信息

display ospf [ process-id ] vlink

顯示OSPF請求列表

display ospf [ process-id ] request-queue [ interface-type interface-number ] [ neighbor-id ]

顯示OSPF重傳列表

display ospf [ process-id ] retrans-queue [ interface-type interface-number ] [ neighbor-id ]

顯示OSPF ABR及ASBR信息

display ospf [ process-id ] abr-asbr [ verbose ]

顯示OSPF的ABR聚合信息

display ospf [ process-id ] [ area area-id ] abr-summary [ ip-address { mask-length | mask } ] [ verbose ]

顯示OSPF接口信息

display ospf [ process-id ] interface [ interface-type interface-number | verbose ]

顯示接口發送Hello報文的信息

display ospf [ process-id ] interface [ interface-type interface-number ] hello

顯示OSPF的日誌信息

(獨立運行模式)

display ospf [ process-id ] event-log { lsa-flush | peer [ neighbor-id ] [ slot slot-number ] | spf }

(IRF模式)

display ospf [ process-id ] event-log { lsa-flush | peer [ neighbor-id ] [ chassis chassis-number slot slot-number ] | spf }

顯示OSPF接收或發送Hello報文的日誌信息

(獨立運行模式)

display ospf [ process-id ] event-log hello { received [ abnormal | dropped ] | sent } [ neighbor-id ] [ slot slot-number ]

display ospf [ process-id ] event-log hello sent { abnormal | failed } [ neighbor-address ] [ slot slot-number ]

(IRF模式)

display ospf [ process-id ] event-log hello { received [ abnormal | dropped ] | sent } [ neighbor-id ] [ chassis chassis-number slot slot-number ]

display ospf [ process-id ] event-log hello sent { abnormal | failed } [ neighbor-address ] [ chassis chassis-number slot slot-number ]

顯示OSPF的ASBR聚合信息

display ospf [ process-id ] asbr-summary [ ip-address { mask-length | mask } ]

顯示全局Router ID

display router id

顯示OSPF鄰居關係斷開的故障檢測信息

display ospf troubleshooing

清除OSPF的統計信息

reset ospf [ process-id ] statistics

清除OSPF的日誌信息

reset ospf [ process-id ] event-log [ lsa-flush | peer | spf ]

清除OSPF接收或發送Hello報文的日誌信息

(獨立運行模式)

reset ospf [ process-id ] event-log hello { received [ abnormal | dropped ] | sent [ abnormal | failed ] } [ slot slot-number ]

(IRF模式)

reset ospf [ process-id ] event-log hello { received [ abnormal | dropped ] | sent [ abnormal | failed ] } [ chassis chassis-number slot slot-number ]

重啟OSPF進程

reset ospf [ process-id ] process [ graceful-restart ]

重新向OSPF引入外部路由

reset ospf [ process-id ] redistribution

清除OSPF鄰居關係斷開的故障檢測信息

reset ospf troubleshooting

 

1.16  典型配置舉例

1.16.1  OSPF基本功能配置舉例

1. 組網需求

·     所有的交換機都運行OSPF,並將整個自治係統劃分為3個區域。

·     其中Switch A和Switch B作為ABR來轉發區域之間的路由。

·     配置完成後,每台交換機都應學到AS內的到所有網段的路由。

2. 組網圖

圖1-13 OSPF基本功能配置組網圖

 

3. 配置步驟

(1)     配置各接口的IP地址(略)

(2)     配置OSPF基本配置

# 配置Switch A。

<SwitchA> system-view

[SwitchA] router id 10.2.1.1

[SwitchA] ospf

[SwitchA-ospf-1] area 0

[SwitchA-ospf-1-area-0.0.0.0] network 10.1.1.0 0.0.0.255

[SwitchA-ospf-1-area-0.0.0.0] quit

[SwitchA-ospf-1] area 1

[SwitchA-ospf-1-area-0.0.0.1] network 10.2.1.0 0.0.0.255

[SwitchA-ospf-1-area-0.0.0.1] quit

[SwitchA-ospf-1] quit

# 配置Switch B。

<SwitchB> system-view

[SwitchB] router id 10.3.1.1

[SwitchB] ospf

[SwitchB-ospf-1] area 0

[SwitchB-ospf-1-area-0.0.0.0] network 10.1.1.0 0.0.0.255

[SwitchB-ospf-1-area-0.0.0.0] quit

[SwitchB-ospf-1] area 2

[SwitchB-ospf-1-area-0.0.0.2] network 10.3.1.0 0.0.0.255

[SwitchB-ospf-1-area-0.0.0.2] quit

[SwitchB-ospf-1] quit

# 配置Switch C。

<SwitchC> system-view

[SwitchC] router id 10.4.1.1

[SwitchC] ospf

[SwitchC-ospf-1] area 1

[SwitchC-ospf-1-area-0.0.0.1] network 10.2.1.0 0.0.0.255

[SwitchC-ospf-1-area-0.0.0.1] network 10.4.1.0 0.0.0.255

[SwitchC-ospf-1-area-0.0.0.1] quit

[SwitchC-ospf-1] quit

# 配置Switch D。

<SwitchD> system-view

[SwitchD] router id 10.5.1.1

[SwitchD] ospf

[SwitchD-ospf-1] area 2

[SwitchD-ospf-1-area-0.0.0.2] network 10.3.1.0 0.0.0.255

[SwitchD-ospf-1-area-0.0.0.2] network 10.5.1.0 0.0.0.255

[SwitchD-ospf-1-area-0.0.0.2] quit

[SwitchD-ospf-1] quit

4. 驗證配置

# 查看Switch A的OSPF鄰居。

[SwitchA] display ospf peer verbose

 

          OSPF Process 1 with Router ID 10.2.1.1

                  Neighbors

 

 Area 0.0.0.0 interface 10.1.1.1(Vlan-interface100)'s neighbors

 Router ID: 10.3.1.1         Address: 10.1.1.2         GR State: Normal

   State: Full  Mode: Nbr is master  Priority: 1

   DR: 10.1.1.1  BDR: 10.1.1.2  MTU: 0

   Options is 0x02 (-|-|-|-|-|-|E|-)

   Dead timer due in 37  sec

   Neighbor is up for 06:03:59

   Authentication Sequence: [ 0 ]

   Neighbor state change count: 5

   BFD status: Disabled

 

 Area 0.0.0.1 interface 10.2.1.1(Vlan-interface200)'s neighbors

 Router ID: 10.4.1.1         Address: 10.2.1.2         GR State: Normal

   State: Full  Mode: Nbr is master  Priority: 1

   DR: 10.2.1.1  BDR: 10.2.1.2  MTU: 0

   Options is 0x02 (-|-|-|-|-|-|E|-)

   Dead timer due in 32  sec

   Neighbor is up for 06:03:12

   Authentication Sequence: [ 0 ]

   Neighbor state change count: 5

   BFD status: Disabled

# 查看Switch A的OSPF路由信息。

[SwitchA] display ospf routing

 

          OSPF Process 1 with Router ID 10.2.1.1

                   Routing Table

 

                Topology base (MTID 0)

 

 Routing for network

 Destination        Cost     Type    NextHop         AdvRouter       Area

 10.2.1.0/24        1        Transit 10.2.1.1        10.2.1.1        0.0.0.1

 10.3.1.0/24        2        Inter   10.1.1.2        10.3.1.1        0.0.0.0

 10.4.1.0/24        2        Stub    10.2.1.2        10.4.1.1        0.0.0.1

 10.5.1.0/24        3        Inter   10.1.1.2        10.3.1.1        0.0.0.0

 10.1.1.0/24        1        Transit 10.1.1.1        10.2.1.1        0.0.0.0

 

 Total nets: 5

 Intra area: 3  Inter area: 2  ASE: 0  NSSA: 0

# 查看Switch D的OSPF路由信息。

[SwitchD] display ospf routing

 

          OSPF Process 1 with Router ID 10.5.1.1

                   Routing Table

 

                Topology base (MTID 0)

 

 Routing for network

 Destination        Cost     Type    NextHop         AdvRouter       Area

 10.2.1.0/24        3        Inter   10.3.1.1        10.3.1.1        0.0.0.2

 10.3.1.0/24        1        Transit 10.3.1.2        10.3.1.1        0.0.0.2

 10.4.1.0/24        4        Inter   10.3.1.1        10.3.1.1        0.0.0.2

 10.5.1.0/24        1        Stub    10.5.1.1        10.5.1.1        0.0.0.2

 10.1.1.0/24        2        Inter   10.3.1.1        10.3.1.1        0.0.0.2

 

 Total nets: 5

 Intra area: 2  Inter area: 3  ASE: 0  NSSA: 0

# 在Switch D上使用Ping進行測試連通性。

[SwitchD] ping 10.4.1.1

Ping 10.4.1.1 (10.4.1.1): 56 data bytes, press CTRL+C to break

56 bytes from 10.4.1.1: icmp_seq=0 ttl=253 time=1.549 ms

56 bytes from 10.4.1.1: icmp_seq=1 ttl=253 time=1.539 ms

56 bytes from 10.4.1.1: icmp_seq=2 ttl=253 time=0.779 ms

56 bytes from 10.4.1.1: icmp_seq=3 ttl=253 time=1.702 ms

56 bytes from 10.4.1.1: icmp_seq=4 ttl=253 time=1.471 ms

 

--- Ping statistics for 10.4.1.1 ---

5 packet(s) transmitted, 5 packet(s) received, 0.0% packet loss

round-trip min/avg/max/std-dev = 0.779/1.408/1.702/0.323 ms

1.16.2  OSPF引入自治係統外部路由配置舉例

1. 組網需求

·     所有的交換機都運行OSPF,整個自治係統劃分為3個區域。

·     其中Switch A和Switch B作為ABR來轉發區域之間的路由。

·     在Switch C上配置為ASBR引入外部路由(靜態路由),且路由信息可正確的在AS內傳播。

2. 組網圖

圖1-14 OSPF引入自治係統外部路由配置組網圖

 

3. 配置步驟

(1)     配置各接口的IP地址(略)

(2)     配置OSPF(同前例1.16.1 

(3)     配置引入自治係統外部路由

# 在Switch C上配置一條到目的網段3.1.2.0/24的靜態路由。

<SwitchC> system-view

[SwitchC] ip route-static 3.1.2.1 24 10.4.1.2

# 在Switch C上配置OSPF引入靜態路由。

[SwitchC] ospf 1

[SwitchC-ospf-1] import-route static

4. 驗證配置

# 查看Switch D的ABR/ASBR信息。

<SwitchD> display ospf abr-asbr

 

          OSPF Process 1 with Router ID 10.5.1.1

                  Routing Table to ABR and ASBR

 

 

                Topology base (MTID 0)

 Type    Destination     Area            Cost     Nexthop         RtType

 Intra   10.3.1.1        0.0.0.2         10       10.3.1.1        ABR

 Inter   10.4.1.1        0.0.0.2         22       10.3.1.1        ASBR

# 查看Switch D的OSPF路由表。

<SwitchD> display ospf routing

 

          OSPF Process 1 with Router ID 10.5.1.1

                   Routing Table

 

                Topology base (MTID 0)

 

 Routing for network

 Destination        Cost     Type    NextHop         AdvRouter       Area

 10.2.1.0/24        22       Inter   10.3.1.1        10.3.1.1        0.0.0.2

 10.3.1.0/24        10       Transit 10.3.1.2        10.3.1.1        0.0.0.2

 10.4.1.0/24        25       Inter   10.3.1.1        10.3.1.1        0.0.0.2

 10.5.1.0/24        10       Stub    10.5.1.1        10.5.1.1        0.0.0.2

 10.1.1.0/24        12       Inter   10.3.1.1        10.3.1.1        0.0.0.2

 

 Routing for ASEs

 Destination        Cost     Type    Tag         NextHop         AdvRouter

 3.1.2.0/24         1        Type2   1           10.3.1.1        10.4.1.1

 

 Total nets: 6

 Intra area: 2  Inter area: 3  ASE: 1  NSSA: 0

1.16.3  OSPF發布聚合路由配置舉例

1. 組網需求

·     Switch A和Switch B位於AS 200內,AS 200內使用OSPF作為IGP協議。

·     Switch C、Switch D和Switch E位於AS 100內,AS 100內使用OSPF作為IGP協議。

·     Switch B和Switch C之間建立EBGP連接,配置BGP引入OSPF和直連路由,配置OSPF進程引入BGP路由。

·     為了減小Switch A的路由表規模,在Switch B上配置路由聚合,隻發布聚合後的路由10.0.0.0/8。

2. 組網圖

圖1-15 OSPF發布聚合路由配置組網圖

 

3. 配置步驟

(1)     配置接口的IP地址(略)

(2)     配置OSPF

# 配置Switch A。

<SwitchA> system-view

[SwitchA] router id 11.2.1.2

[SwitchA] ospf

[SwitchA-ospf-1] area 0

[SwitchA-ospf-1-area-0.0.0.0] network 11.2.1.0 0.0.0.255

[SwitchA-ospf-1-area-0.0.0.0] quit

[SwitchA-ospf-1] quit

# 配置Switch B。

<SwitchB> system-view

[SwitchB] router id 11.2.1.1

[SwitchB] ospf

[SwitchB-ospf-1] area 0

[SwitchB-ospf-1-area-0.0.0.0] network 11.2.1.0 0.0.0.255

[SwitchB-ospf-1-area-0.0.0.0] quit

[SwitchB-ospf-1] quit

# 配置Switch C。

<SwitchC> system-view

[SwitchC] router id 11.1.1.2

[SwitchC] ospf

[SwitchC-ospf-1] area 0

[SwitchC-ospf-1-area-0.0.0.0] network 10.1.1.0 0.0.0.255

[SwitchC-ospf-1-area-0.0.0.0] network 10.2.1.0 0.0.0.255

[SwitchC-ospf-1-area-0.0.0.0] quit

[SwitchC-ospf-1] quit

# 配置Switch D。

<SwitchD> system-view

[SwitchD] router id 10.3.1.1

[SwitchD] ospf

[SwitchD-ospf-1] area 0

[SwitchD-ospf-1-area-0.0.0.0] network 10.1.1.0 0.0.0.255

[SwitchD-ospf-1-area-0.0.0.0] network 10.3.1.0 0.0.0.255

[SwitchD-ospf-1-area-0.0.0.0] quit

[SwitchD-ospf-1] quit

# 配置Switch E。

<SwitchE> system-view

[SwitchE] router id 10.4.1.1

[SwitchE] ospf

[SwitchE-ospf-1] area 0

[SwitchE-ospf-1-area-0.0.0.0] network 10.2.1.0 0.0.0.255

[SwitchE-ospf-1-area-0.0.0.0] network 10.4.1.0 0.0.0.255

[SwitchE-ospf-1-area-0.0.0.0] quit

[SwitchE-ospf-1] quit

(3)     配置BGP,引入OSPF和直連路由

# 配置Switch B。

[SwitchB] bgp 200

[SwitchB-bgp-default] peer 11.1.1.2 as 100

[SwitchB-bgp-default] address-family ipv4 unicast

[SwitchB-bgp-default-ipv4] peer 11.1.1.2 enable

[SwitchB-bgp-default-ipv4] import-route ospf

[SwitchB-bgp-default-ipv4] import-route direct

[SwitchB-bgp-default-ipv4] quit

[SwitchB-bgp-default] quit

# 配置Switch C。

[SwitchC] bgp 100

[SwitchC-bgp-default] peer 11.1.1.1 as 200

[SwitchC-bgp-default] address-family ipv4 unicast

[SwitchC-bgp-default] peer 11.1.1.1 enable

[SwitchC-bgp-default-ipv4] import-route ospf

[SwitchC-bgp-default-ipv4] import-route direct

[SwitchC-bgp-default-ipv4] quit

[SwitchC-bgp-default] quit

(4)     在Switch B和Switch C上配置OSPF引入BGP路由

# 在Switch B上配置OSPF引入BGP路由。

[SwitchB] ospf

[SwitchB-ospf-1] import-route bgp

# 在Switch C上配置OSPF引入BGP路由。

[SwitchC] ospf

[SwitchC-ospf-1] import-route bgp

# 查看SwitchA的路由表信息。

[SwitchA] display ip routing-table

 

Destinations : 16        Routes : 16

 

Destination/Mask    Proto  Pre  Cost         NextHop         Interface

 

0.0.0.0/32          Direct 0    0            127.0.0.1       InLoop0

10.1.1.0/24         O_ASE2 150  1            11.2.1.1        Vlan100

10.2.1.0/24         O_ASE2 150  1            11.2.1.1        Vlan100

10.3.1.0/24         O_ASE2 150  1            11.2.1.1        Vlan100

10.4.1.0/24         O_ASE2 150  1            11.2.1.1        Vlan100

11.2.1.0/24         Direct 0    0            11.2.1.2        Vlan100

11.2.1.0/32         Direct 0    0            11.2.1.2        Vlan100

11.2.1.2/32         Direct 0    0            127.0.0.1       InLoop0

11.2.1.255/32       Direct 0    0            11.2.1.2        Vlan100

127.0.0.0/8         Direct 0    0            127.0.0.1       InLoop0

127.0.0.0/32        Direct 0    0            127.0.0.1       InLoop0

127.0.0.1/32        Direct 0    0            127.0.0.1       InLoop0

127.255.255.255/32  Direct 0    0            127.0.0.1       InLoop0

224.0.0.0/4         Direct 0    0            0.0.0.0         NULL0

224.0.0.0/24        Direct 0    0            0.0.0.0         NULL0

255.255.255.255/32  Direct 0    0            127.0.0.1       InLoop0

(5)     在Switch B上配置路由聚合,隻發布聚合路由10.0.0.0/8。

[SwitchB-ospf-1] asbr-summary 10.0.0.0 8

# 查看Switch A的路由表信息。

[SwitchA] display ip routing-table

 

Destinations : 13        Routes : 13

 

Destination/Mask    Proto  Pre  Cost         NextHop         Interface

0.0.0.0/32          Direct 0    0            127.0.0.1       InLoop0

10.0.0.0/8          O_ASE2 150  2            11.2.1.1        Vlan100

11.2.1.0/24         Direct 0    0            11.2.1.2        Vlan100

11.2.1.0/32         Direct 0    0            11.2.1.2        Vlan100

11.2.1.2/32         Direct 0    0            127.0.0.1       InLoop0

11.2.1.255/32       Direct 0    0            11.2.1.2        Vlan100

127.0.0.0/8         Direct 0    0            127.0.0.1       InLoop0

127.0.0.0/32        Direct 0    0            127.0.0.1       InLoop0

127.0.0.1/32        Direct 0    0            127.0.0.1       InLoop0

127.255.255.255/32  Direct 0    0            127.0.0.1       InLoop0

224.0.0.0/4         Direct 0    0            0.0.0.0         NULL0

224.0.0.0/24        Direct 0    0            0.0.0.0         NULL0

255.255.255.255/32  Direct 0    0            127.0.0.1       InLoop0

可以看出,路由10.1.1.0/24、10.2.1.0/24、10.3.1.0/24、10.4.1.0/24已經聚合為一條路由10.0.0.0/8。

1.16.4  OSPF Stub區域配置舉例

1. 組網需求

·     所有的交換機都運行OSPF,整個自治係統劃分為3個區域。

·     其中Switch A和Switch B作為ABR來轉發區域之間的路由,Switch D作為ASBR引入了外部路由(靜態路由)。

·     要求將Area1配置為Stub區域,減少通告到此區域內的LSA數量,但不影響路由的可達性。

2. 組網圖

圖1-16 OSPF Stub區域配置組網圖

 

3. 配置步驟

(1)     配置接口的IP地址(略)

(2)     配置OSPF(同前例1.16.1 

(3)     配置Switch D引入靜態路由

<SwitchD> system-view

[SwitchD] ip route-static 3.1.2.1 24 10.5.1.2

[SwitchD] ospf

[SwitchD-ospf-1] import-route static

[SwitchD-ospf-1] quit

# 查看Switch C的ABR/ASBR信息。

<SwitchC> display ospf abr-asbr

 

          OSPF Process 1 with Router ID 10.4.1.1

                  Routing Table to ABR and ASBR

 

 

                Topology base (MTID 0)

 Type        Destination     Area            Cost  Nexthop         RtType

 Intra       10.2.1.1        0.0.0.1         3     10.2.1.1        ABR

 Inter       10.5.1.1        0.0.0.1         7     10.2.1.1        ASBR

# 查看Switch C的OSPF路由表,可以看到路由表中存在AS外部的路由。

<SwitchC> display ospf routing

 

          OSPF Process 1 with Router ID 10.4.1.1

                   Routing Table

 

                Topology base (MTID 0)

 

 Routing for network

 Destination        Cost     Type    NextHop         AdvRouter       Area

 10.2.1.0/24        3        Transit 0.0.0.0         10.2.1.1        0.0.0.1

 10.3.1.0/24        7        Inter   10.2.1.1        10.2.1.1        0.0.0.1

 10.4.1.0/24        3        Stub    10.4.1.1        10.4.1.1        0.0.0.1

 10.5.1.0/24        17       Inter   10.2.1.1        10.2.1.1        0.0.0.1

 10.1.1.0/24        5        Inter   10.2.1.1        10.2.1.1        0.0.0.1

 

 Routing for ASEs

 Destination        Cost     Type    Tag         NextHop         AdvRouter

 3.1.2.0/24         1        Type2   1           10.2.1.1        10.5.1.1

 

 Total nets: 6

 Intra area: 2  Inter area: 3  ASE: 1  NSSA: 0

(4)     配置Area1為Stub區域

# 配置Switch A。

<SwitchA> system-view

[SwitchA] ospf

[SwitchA-ospf-1] area 1

[SwitchA-ospf-1-area-0.0.0.1] stub

[SwitchA-ospf-1-area-0.0.0.1] quit

[SwitchA-ospf-1] quit

# 配置Switch C。

<SwitchC> system-view

[SwitchC] ospf

[SwitchC-ospf-1] area 1

[SwitchC-ospf-1-area-0.0.0.1] stub

[SwitchC-ospf-1-area-0.0.0.1] quit

[SwitchC-ospf-1] quit

# 查看Switch C的OSPF路由表,已經看不到AS外部的路由,取而代之的是一條缺省路由。

[SwitchC] display ospf routing

 

          OSPF Process 1 with Router ID 10.4.1.1

                   Routing Table

 

                Topology base (MTID 0)

 

 Routing for network

 Destination        Cost     Type    NextHop         AdvRouter       Area

 0.0.0.0/0          4        Inter   10.2.1.1        10.2.1.1        0.0.0.1

 10.2.1.0/24        3        Transit 0.0.0.0         10.2.1.1        0.0.0.1

 10.3.1.0/24        7        Inter   10.2.1.1        10.2.1.1        0.0.0.1

 10.4.1.0/24        3        Stub    10.4.1.1        10.4.1.1        0.0.0.1

 10.5.1.0/24        17       Inter   10.2.1.1        10.2.1.1        0.0.0.1

 10.1.1.0/24        5        Inter   10.2.1.1        10.2.1.1        0.0.0.1

 

 Total nets: 6

 Intra area: 2  Inter area: 4  ASE: 0  NSSA: 0

# 配置Area1為Totally Stub區域。

[SwitchA] ospf

[SwitchA-ospf-1] area 1

[SwitchA-ospf-1-area-0.0.0.1] stub no-summary

[SwitchA-ospf-1-area-0.0.0.1] quit

[SwitchA-ospf-1] quit

# 查看Switch C的OSPF路由表,可以看到路由表項進一步減少,隻保留了一條通往區域外部的缺省路由。

[SwitchC] display ospf routing

 

          OSPF Process 1 with Router ID 10.4.1.1

                   Routing Table

 

                Topology base (MTID 0)

 

 Routing for network

 Destination        Cost     Type    NextHop         AdvRouter       Area

 0.0.0.0/0          4        Inter   10.2.1.1        10.2.1.1        0.0.0.1

 10.2.1.0/24        3        Transit 0.0.0.0         10.4.1.1        0.0.0.1

 10.4.1.0/24        3        Stub    10.4.1.1        10.4.1.1        0.0.0.1

 

 Total nets: 3

 Intra area: 2  Inter area: 1  ASE: 0  NSSA: 0

1.16.5  OSPF NSSA區域配置舉例

1. 組網需求

·     所有的交換機都運行OSPF,整個自治係統劃分為3個區域。

·     其中Switch A和Switch B作為ABR來轉發區域之間的路由。

·     要求將Area1配置為NSSA區域,同時將Switch C配置為ASBR引入外部路由(靜態路由),且路由信息可正確的在AS內傳播。

2. 組網圖

圖1-17 OSPF NSSA區域配置組網圖

 

3. 配置步驟

(1)     配置各接口的IP地址(略)

(2)     配置OSPF(同前例1.16.1 

(3)     配置Area1區域為NSSA區域

# 配置Switch A。

<SwitchA> system-view

[SwitchA] ospf

[SwitchA-ospf-1] area 1

[SwitchA-ospf-1-area-0.0.0.1] nssa

[SwitchA-ospf-1-area-0.0.0.0] quit

[SwitchA-ospf-1] quit

# 配置Switch C。

<SwitchC> system-view

[SwitchC] ospf

[SwitchC-ospf-1] area 1

[SwitchC-ospf-1-area-0.0.0.1] nssa

[SwitchC-ospf-1-area-0.0.0.1] quit

[SwitchC-ospf-1] quit

# 查看Switch C的OSPF路由表。

[SwitchC] display ospf routing

 

          OSPF Process 1 with Router ID 10.4.1.1

                   Routing Table

 

                Topology base (MTID 0)

 

 Routing for network

 Destination        Cost     Type    NextHop         AdvRouter       Area

 10.2.1.0/24        3        Transit 10.2.1.2        10.4.1.1        0.0.0.1

 10.3.1.0/24        7        Inter   10.2.1.1        10.2.1.1        0.0.0.1

 10.4.1.0/24        3        Stub    10.4.1.1        10.4.1.1        0.0.0.1

 10.5.1.0/24        17       Inter   10.2.1.1        10.2.1.1        0.0.0.1

 10.1.1.0/24        5        Inter   10.2.1.1        10.2.1.1        0.0.0.1

 

 Total nets: 5

 Intra area: 2  Inter area: 3  ASE: 0  NSSA: 0

(4)     配置Switch C引入靜態路由

[SwitchC] ip route-static 3.1.3.1 24 10.4.1.2

[SwitchC] ospf

[SwitchC-ospf-1] import-route static

[SwitchC-ospf-1] quit

# 查看Switch D的OSPF路由表,可以看到NSSA區域引入了一條AS外部路由。

<SwitchD> display ospf routing

 

          OSPF Process 1 with Router ID 10.5.1.1

                   Routing Table

 

                Topology base (MTID 0)

 

 Routing for network

 Destination        Cost     Type    NextHop         AdvRouter       Area

 10.2.1.0/24        22       Inter   10.3.1.1        10.3.1.1        0.0.0.2

 10.3.1.0/24        10       Transit 10.3.1.2        10.3.1.1        0.0.0.2

 10.4.1.0/24        25       Inter   10.3.1.1        10.3.1.1        0.0.0.2

 10.5.1.0/24        10       Stub    10.5.1.1        10.5.1.1        0.0.0.2

 10.1.1.0/24        12       Inter   10.3.1.1        10.3.1.1        0.0.0.2

 

 Routing for ASEs

 Destination        Cost     Type    Tag         NextHop         AdvRouter

 3.1.3.0/24         1        Type2   1           10.3.1.1        10.2.1.1

 

 Total nets: 6

 Intra area: 2  Inter area: 3  ASE: 1  NSSA: 0

1.16.6  OSPF的DR選擇配置舉例

1. 組網需求

·     Switch A、Switch B、Switch C、Switch D在同一網段,運行OSPF協議後Switch D為DR,Switch C為BDR;

·     改變交換機接口的DR優先級使Switch A成為DR,Switch C成為BDR。

圖1-18 OSPF的DR選擇配置組網圖

 

2. 配置步驟

(1)     配置各接口的IP地址(略)

(2)     分別在Switch A、Switch B、Switch C和Switch D上配置OSPF基本功能(請參見“1.16.1  OSPF基本功能配置舉例”)

(3)     運行OSPF後Switch D為DR,可在Switch A上通過display ospf peer verbose命令查看其鄰居信息。

[SwitchA] display ospf peer verbose

 

          OSPF Process 1 with Router ID 1.1.1.1

                  Neighbors

 

 Area 0.0.0.0 interface 192.168.1.1(Vlan-interface1)'s neighbors

 Router ID: 2.2.2.2          Address: 192.168.1.2      GR State: Normal

   State: 2-Way  Mode: None  Priority: 1

   DR: 192.168.1.4  BDR: 192.168.1.3  MTU: 0

   Options is 0x02 (-|-|-|-|-|-|E|-)

   Dead timer due in 38  sec

   Neighbor is up for 00:01:31

   Authentication Sequence: [ 0 ]

   Neighbor state change count: 6

   BFD status: Disabled

 

 Router ID: 3.3.3.3          Address: 192.168.1.3      GR State: Normal

   State: Full  Mode: Nbr is master  Priority: 1

   DR: 192.168.1.4  BDR: 192.168.1.3  MTU: 0

   Options is 0x02 (-|-|-|-|-|-|E|-)

   Dead timer due in 31  sec

   Neighbor is up for 00:01:28

   Authentication Sequence: [ 0 ]

   Neighbor state change count: 6

   BFD status: Disabled

 

 Router ID: 4.4.4.4          Address: 192.168.1.4      GR State: Normal

   State: Full  Mode: Nbr is master  Priority: 1

   DR: 192.168.1.4  BDR: 192.168.1.3  MTU: 0

   Options is 0x02 (-|-|-|-|-|-|E|-)

   Dead timer due in 31  sec

   Neighbor is up for 00:01:28

   Authentication Sequence: [ 0 ]

   Neighbor state change count: 6

   BFD status: Disabled

可以看到Switch D為DR,Switch C為BDR。

(4)     配置接口的DR優先級

# 配置Switch A。

[SwitchA] interface vlan-interface 1

[SwitchA-Vlan-interface1] ospf dr-priority 100

[SwitchA-Vlan-interface1] quit

# 配置Switch B。

[SwitchB] interface vlan-interface 1

[SwitchB-Vlan-interface1] ospf dr-priority 0

[SwitchB-Vlan-interface1] quit

# 配置Switch C。

[SwitchC] interface vlan-interface 1

[SwitchC-Vlan-interface1] ospf dr-priority 2

[SwitchC-Vlan-interface1] quit

# 查看Switch D的鄰居信息。

<SwitchD> display ospf peer verbose

 

          OSPF Process 1 with Router ID 4.4.4.4

                  Neighbors

 

 Area 0.0.0.0 interface 192.168.1.4(Vlan-interface1)'s neighbors

 Router ID: 1.1.1.1      Address: 192.168.1.1      GR State: Normal

   State: Full  Mode:Nbr is  slave  Priority: 100

   DR: 192.168.1.4  BDR: 192.168.1.3  MTU: 0

   Options is 0x02 (-|-|-|-|-|-|E|-)

   Dead timer due in 31  sec

   Neighbor is up for 00:11:17

   Authentication Sequence: [ 0 ]

   Neighbor state change count: 6

   BFD status: Disabled

 

 Router ID: 2.2.2.2      Address: 192.168.1.2      GR State: Normal

   State: Full  Mode:Nbr is  slave  Priority: 0

   DR: 192.168.1.4  BDR: 192.168.1.3  MTU: 0

   Options is 0x02 (-|-|-|-|-|-|E|-)

   Dead timer due in 35  sec

   Neighbor is up for 00:11:19

   Authentication Sequence: [ 0 ]

   Neighbor state change count: 6

   BFD status: Disabled

 

 Router ID: 3.3.3.3      Address: 192.168.1.3      GR State: Normal

   State: Full  Mode:Nbr is  slave  Priority: 2

   DR: 192.168.1.4  BDR: 192.168.1.3  MTU: 0

   Options is 0x02 (-|-|-|-|-|-|E|-)

   Dead timer due in 33  sec

   Neighbor is up for 00:11:15

   Authentication Sequence: [ 0 ]

   Neighbor state change count: 6

   BFD status: Disabled

可以看到,網絡中DR/BDR並沒有改變。

說明

網絡中DR/BDR已經存在的情況下,接口上的路由器優先級的配置並不會立即生效。

 

(5)     同時重啟Switch A、Switch B、Switch C和Switch D上的OSPF進程

# 重啟Switch A的進程。

<SwitchA> reset ospf 1 process

Reset OSPF process? [Y/N]:y

# 重啟Switch B的進程。

<SwitchB> reset ospf 1 process

Reset OSPF process? [Y/N]:y

# 重啟Switch C的進程。

<SwitchC> reset ospf 1 process

Reset OSPF process? [Y/N]:y

# 重啟Switch D的進程。

<SwitchD> reset ospf 1 process

Reset OSPF process? [Y/N]:y

# 查看Switch D的鄰居信息。

<SwitchD> display ospf peer verbose

 

          OSPF Process 1 with Router ID 4.4.4.4

                  Neighbors

 

 Area 0.0.0.0 interface 192.168.1.4(Vlan-interface1)'s neighbors

 Router ID: 1.1.1.1          Address: 192.168.1.1      GR State: Normal

   State: Full  Mode: Nbr is slave  Priority: 100

   DR: 192.168.1.1  BDR: 192.168.1.3  MTU: 0

   Options is 0x02 (-|-|-|-|-|-|E|-)

   Dead timer due in 39  sec

   Neighbor is up for 00:01:40

   Authentication Sequence: [ 0 ]

   Neighbor state change count: 6

   BFD status: Disabled

 

 Router ID: 2.2.2.2          Address: 192.168.1.2      GR State: Normal

   State: 2-Way  Mode: None  Priority: 0

   DR: 192.168.1.1  BDR: 192.168.1.3  MTU: 0

   Options is 0x02 (-|-|-|-|-|-|E|-)

   Dead timer due in 35  sec

   Neighbor is up for 00:01:44

   Authentication Sequence: [ 0 ]

   Neighbor state change count: 6

   BFD status: Disabled

 

 Router ID: 3.3.3.3          Address: 192.168.1.3      GR State: Normal

   State: Full  Mode: Nbr is slave  Priority: 2

   DR: 192.168.1.1  BDR: 192.168.1.3  MTU: 0

   Options is 0x02 (-|-|-|-|-|-|E|-)

   Dead timer due in 39  sec

   Neighbor is up for 00:01:41

   Authentication Sequence: [ 0 ]

   Neighbor state change count: 6

   BFD status: Disabled

可以看到Switch A成為DR,Switch C為BDR。

說明

·     如果鄰居的狀態是Full,這說明它和鄰居之間形成了鄰接關係;

·     如果鄰居的狀態是2-Way,則說明它們都不是DR或BDR,兩者之間不需要交換LSA。

 

# 查看OSPF接口的狀態。

<SwitchA> display ospf interface

 

          OSPF Process 1 with Router ID 1.1.1.1

                  Interfaces

 

 Area: 0.0.0.0

 IP Address      Type      State   Cost  Pri   DR             BDR

 192.168.1.1     Broadcast DR      1     100   192.168.1.1    192.168.1.3

 

<SwitchB> display ospf interface

 

          OSPF Process 1 with Router ID 2.2.2.2

                  Interfaces

 

 Area: 0.0.0.0

 IP Address      Type      State    Cost  Pri   DR            BDR

 192.168.1.2     Broadcast DROther  1     0     192.168.1.1   192.168.1.3

說明

如果OSPF接口的狀態是DROther,則說明它既不是DR,也不是BDR。

 

1.16.7  OSPF虛連接配置舉例

1. 組網需求

·     Area 2與Area 0沒有直接相連。Area 1被用作傳輸區域(Transit Area)來連接Area 2和Area 0。Switch B和Switch C之間配置一條虛連接。

·     配置完成後,Switch B能夠學到Area 2中的路由。

2. 組網圖

圖1-19 OSPF虛鏈路配置組網圖

 

3. 配置步驟

(1)     配置各接口的IP地址(略)

(2)     配置OSPF基本功能

# 配置Switch A。

<SwitchA> system-view

[SwitchA] ospf 1 router-id 1.1.1.1

[SwitchA-ospf-1] area 0

[SwitchA-ospf-1-area-0.0.0.0] network 10.1.1.0 0.0.0.255

[SwitchA-ospf-1-area-0.0.0.0] quit

[SwitchA-ospf-1] quit

# 配置Switch B。

<SwitchB> system-view

[SwitchB] ospf 1 router-id 2.2.2.2

[SwitchB-ospf-1] area 0

[SwitchB-ospf-1-area-0.0.0.0] network 10.1.1.0 0.0.0.255

[SwitchB-ospf-1-area-0.0.0.0] quit

[SwitchB-ospf-1] area 1

[SwitchB–ospf-1-area-0.0.0.1] network 10.2.1.0 0.0.0.255

[SwitchB–ospf-1-area-0.0.0.1] quit

[SwitchB-ospf-1] quit

# 配置Switch C。

<SwitchC> system-view

[SwitchC] ospf 1 router-id 3.3.3.3

[SwitchC-ospf-1] area 1

[SwitchC-ospf-1-area-0.0.0.1] network 10.2.1.0 0.0.0.255

[SwitchC-ospf-1-area-0.0.0.1] quit

[SwitchC-ospf-1] area 2

[SwitchC–ospf-1-area-0.0.0.2] network 10.3.1.0 0.0.0.255

[SwitchC–ospf-1-area-0.0.0.2] quit

[SwitchC-ospf-1] quit

# 配置Switch D。

<SwitchD> system-view

[SwitchD] ospf 1 router-id 4.4.4.4

[SwitchD-ospf-1] area 2

[SwitchD-ospf-1-area-0.0.0.2] network 10.3.1.0 0.0.0.255

[SwitchD-ospf-1-area-0.0.0.2] quit

[SwitchD-ospf-1] quit

# 查看Switch B的OSPF路由表。

[SwitchB] display ospf routing

 

          OSPF Process 1 with Router ID 2.2.2.2

                   Routing Table

 

                Topology base (MTID 0)

 

 Routing for network

 Destination        Cost     Type    NextHop         AdvRouter       Area

 10.2.1.0/24        2        Transit 10.2.1.1        3.3.3.3         0.0.0.1

 10.1.1.0/24        2        Transit 10.1.1.2        2.2.2.2         0.0.0.0

 Total nets: 2

 Intra area: 2  Inter area: 0  ASE: 0  NSSA: 0

說明

由於Area 0沒有與Area 2直接相連,所以Switch B的路由表中沒有Area 2的路由。

 

(3)     配置虛連接

# 配置Switch B。

[SwitchB] ospf

[SwitchB-ospf-1] area 1

[SwitchB-ospf-1-area-0.0.0.1] vlink-peer 3.3.3.3

[SwitchB-ospf-1-area-0.0.0.1] quit

[SwitchB-ospf-1] quit

# 配置Switch C。

[SwitchC] ospf 1

[SwitchC-ospf-1] area 1

[SwitchC-ospf-1-area-0.0.0.1] vlink-peer 2.2.2.2

[SwitchC-ospf-1-area-0.0.0.1] quit

[SwitchC-ospf-1] quit

# 查看Switch B的OSPF路由表。

[SwitchB] display ospf routing

 

          OSPF Process 1 with Router ID 2.2.2.2

                   Routing Table

 

                Topology base (MTID 0)

 

 Routing for network

 Destination        Cost     Type    NextHop         AdvRouter       Area

 10.2.1.0/24        2        Transit 10.2.1.1        3.3.3.3         0.0.0.1

 10.3.1.0/24        5        Inter   10.2.1.2        3.3.3.3         0.0.0.0

 10.1.1.0/24        2        Transit 10.1.1.2        2.2.2.2         0.0.0.0

 

 Total nets: 3

 Intra area: 2  Inter area: 1  ASE: 0  NSSA: 0

可以看到,Switch B已經學到了Area 2的路由10.3.1.0/24。

1.16.8  OSPF GR配置舉例

1. 組網需求

·     Switch A、Switch B和Switch C既屬於同一自治係統,也屬於同一OSPF域,通過OSPF協議實現網絡互連,並提供GR機製。

·     Switch A作為非IETF標準GR Restarter,Switch B和Switch C作為GR Helper並且通過GR機製與Switch A保持帶外同步。

2. 組網圖

圖1-20 OSPF GR配置組網圖

 

3. 配置步驟

(1)     配置各接口的IP地址(略)

(2)     配置OSPF基本功能

# 配置Switch A。

<SwitchA> system-view

[SwitchA] router id 1.1.1.1

[SwitchA] ospf 100

[SwitchA-ospf-100] area 0

[SwitchA-ospf-100-area-0.0.0.0] network 192.1.1.0 0.0.0.255

[SwitchA-ospf-100-area-0.0.0.0] quit

[SwitchA-ospf-1] quit

# 配置Switch B。

<SwitchB> system-view

[SwitchB] router id 2.2.2.2

[SwitchB] ospf 100

[SwitchB-ospf-100] area 0

[SwitchB-ospf-100-area-0.0.0.0] network 192.1.1.0 0.0.0.255

[SwitchB-ospf-100-area-0.0.0.0] quit

[SwitchB-ospf-1] quit

# 配置Switch C。

<SwitchC> system-view

[SwitchC] router id 3.3.3.3

[SwitchC] ospf 100

[SwitchC-ospf-100] area 0

[SwitchC-ospf-100-area-0.0.0.0] network 192.1.1.0 0.0.0.255

[SwitchC-ospf-100-area-0.0.0.0] quit

[SwitchC-ospf-1] quit

(3)     配置OSPF GR

# 配置Switch A作為非IETF標準GR Restarter,即使能OSPF進程100的本地鏈路信令能力、OSPF帶外同步能力和非IETF標準GR能力。

[SwitchA-ospf-100] enable link-local-signaling

[SwitchA-ospf-100] enable out-of-band-resynchronization

[SwitchA-ospf-100] graceful-restart

[SwitchA-ospf-100] quit

# 配置Switch B作為GR Helper,即使能OSPF進程100的本地鏈路信令能力和OSPF帶外同步能力。

[SwitchB-ospf-100] enable link-local-signaling

[SwitchB-ospf-100] enable out-of-band-resynchronization

# 配置Switch C作為GR Helper,即使能OSPF進程100的本地鏈路信令能力和OSPF帶外同步能力。

[SwitchC-ospf-100] enable link-local-signaling

[SwitchC-ospf-100] enable out-of-band-resynchronization

4. 驗證配置

# 打開Switch A的OSPF平滑啟動事件調試信息開關。在Switch A上以GR方式重啟OSPF進程。

<SwitchA> debugging ospf event graceful-restart

<SwitchA> terminal monitor

<SwitchA> terminal logging level 7

<SwitchA> reset ospf 100 process graceful-restart

Reset OSPF process? [Y/N]:y

%Oct 21 15:29:28:727 2019 SwitchA OSPF/5/OSPF_NBR_CHG: OSPF 100 Neighbor 192.1.1.2(Vlan-interface100) from Full to Down.

%Oct 21 15:29:28:729 2019 SwitchA OSPF/5/OSPF_NBR_CHG: OSPF 100 Neighbor 192.1.1.3(Vlan-interface100) from Full to Down.

*Oct 21 15:29:28:735 2019 SwitchA OSPF/7/DEBUG:

OSPF 100 nonstandard GR Started for OSPF Router

*Oct 21 15:29:28:735 2019 SwitchA OSPF/7/DEBUG:

OSPF 100 created GR wait timer,timeout interval is 40(s).

*Oct 21 15:29:28:735 2019 SwitchA OSPF/7/DEBUG:

OSPF 100 created GR Interval timer,timeout interval is 120(s).

*Oct 21 15:29:28:758 2019 SwitchA OSPF/7/DEBUG:

OSPF 100 created OOB Progress timer for neighbor 192.1.1.3.

*Oct 21 15:29:28:766 2019 SwitchA OSPF/7/DEBUG:

OSPF 100 created OOB Progress timer for neighbor 192.1.1.2.

%Oct 21 15:29:29:902 2019 SwitchA OSPF/5/OSPF_NBR_CHG: OSPF 100 Neighbor 192.1.1.2(Vlan-interface100) from Loading to Full.

*Oct 21 15:29:29:902 2019 SwitchA OSPF/7/DEBUG:

OSPF 100 deleted OOB Progress timer for neighbor 192.1.1.2.

%Oct 21 15:29:30:897 2019 SwitchA OSPF/5/OSPF_NBR_CHG: OSPF 100 Neighbor 192.1.1.3(Vlan-interface100) from Loading to Full.

*Oct 21 15:29:30:897 2019 SwitchA OSPF/7/DEBUG:

OSPF 100 deleted OOB Progress timer for neighbor 192.1.1.3.

*Oct 21 15:29:30:911 2019 SwitchA OSPF/7/DEBUG:

OSPF GR: Process 100 Exit Restart,Reason : DR or BDR change,for neighbor : 192.1.1.3.

*Oct 21 15:29:30:911 2019 SwitchA OSPF/7/DEBUG:

OSPF 100 deleted GR Interval timer.

*Oct 21 15:29:30:912 2019 SwitchA OSPF/7/DEBUG:

OSPF 100 deleted GR wait timer.

%Oct 21 15:29:30:920 2019 SwitchA OSPF/5/OSPF_NBR_CHG: OSPF 100 Neighbor 192.1.1.2(Vlan-interface100) from Full to Down.

%Oct 21 15:29:30:921 2019 SwitchA OSPF/5/OSPF_NBR_CHG: OSPF 100 Neighbor 192.1.1.3(Vlan-interface100) from Full to Down.

%Oct 21 15:29:33:815 2019 SwitchA OSPF/5/OSPF_NBR_CHG: OSPF 100 Neighbor 192.1.1.3(Vlan-interface100) from Loading to Full.

%Oct 21 15:29:35:578 2019 SwitchA OSPF/5/OSPF_NBR_CHG: OSPF 100 Neighbor 192.1.1.2(Vlan-interface100) from Loading to Full.

從上麵的信息可以看出Switch A完成了GR。

1.16.9  OSPF NSR配置舉例

1. 組網需求

Switch S、Switch A、Switch B屬於同一OSPF區域,通過OSPF協議實現網絡互連。要求對Switch S進行主備倒換時,Switch A和Switch B到Switch S的鄰居沒有中斷,Switch A到Switch B的流量沒有中斷。

2. 組網圖

圖1-21 OSPF NSR配置組網圖

 

3. 配置步驟

(1)     配置各路由器接口的IP地址和OSPF協議

請按照上麵組網圖配置各接口的IP地址和子網掩碼,具體配置過程略。

配置各交換機之間采用OSPF協議進行互連,確保Switch S、Switch A和Switch B之間能夠在網絡層互通,並且各交換機之間能夠借助OSPF協議實現動態路由更新。具體配置過程略。

(2)     配置OSPF NSR

# 使能Switch S的OSPF NSR功能。

<SwitchS> system-view

[SwitchS] ospf 100

[SwitchS-ospf-100] non-stop-routing

[SwitchS-ospf-100] quit

4. 驗證配置

# Switch S進行主備倒換。

[SwitchS] placement reoptimize

Predicted changes to the placement

Service Group(instance name)                      Cur location  New location

----------------------------------------------------------------------------

lb                                                0/0           0/0

lsm                                               0/0           0/0

slsp                                              0/0           0/0

rib6                                              0/0           0/0

routepolicy                                       0/0           0/0

rib                                               0/0           0/0

staticroute6                                      0/0           0/0

staticroute                                       0/0           0/0

ospf                                              0/0           1/0

Continue? [y/n]:y

Re-optimization of the placement start. You will be notified on completion.

Re-optimization of the placement complete. Use 'display placement' to view the new placement.

# 查看Switch A上OSPF協議的鄰居和路由。

<SwitchA> display ospf peer

 

          OSPF Process 1 with Router ID 2.2.2.1

               Neighbor Brief Information

 

 Area: 0.0.0.0

 Router ID       Address         Pri Dead-Time  State             Interface

 3.3.3.1         12.12.12.2      1   37         Full/BDR          Vlan100

<SwitchA> display ospf routing

 

          OSPF Process 1 with Router ID 2.2.2.1

                   Routing Table

 

                Topology base (MTID 0)

 

 Routing for network

 Destination        Cost     Type    NextHop         AdvRouter       Area

 44.44.44.44/32     2        Stub    12.12.12.2      4.4.4.1         0.0.0.0

 14.14.14.0/24      2        Transit 12.12.12.2      4.4.4.1         0.0.0.0

 22.22.22.22/32     0        Stub    22.22.22.22     2.2.2.1         0.0.0.0

 12.12.12.0/24      1        Transit 12.12.12.1      2.2.2.1         0.0.0.0

 

 Total nets: 4

 Intra area: 4  Inter area: 0  ASE: 0  NSSA: 0

# 查看Switch B上OSPF協議的鄰居和路由。

<SwitchB> display ospf peer

 

          OSPF Process 1 with Router ID 4.4.4.1

               Neighbor Brief Information

 

 Area: 0.0.0.0

 Router ID       Address         Pri Dead-Time  State             Interface

 3.3.3.1         14.14.14.2      1   39         Full/BDR          Vlan200

<SwitchB> display ospf routing

 

          OSPF Process 1 with Router ID 4.4.4.1

                   Routing Table

 

                Topology base (MTID 0)

 

 Routing for network

 Destination        Cost     Type    NextHop         AdvRouter       Area

 44.44.44.44/32     0        Stub    44.44.44.44     4.4.4.1         0.0.0.0

 14.14.14.0/24      1        Transit 14.14.14.1      4.4.4.1         0.0.0.0

 22.22.22.22/32     2        Stub    14.14.14.2      2.2.2.1         0.0.0.0

 12.12.12.0/24      2        Transit 14.14.14.2      2.2.2.1         0.0.0.0

 

 Total nets: 4

 Intra area: 4  Inter area: 0  ASE: 0  NSSA: 0

通過上麵信息可以看出在Switch S發生主備倒換的時候,Switch A和Switch B的鄰居和路由信息保持不變,從Switch A到Switch B的流量轉發沒有受到主備倒換的影響。

1.16.10  OSPF與BFD聯動配置舉例

1. 組網需求

·     Switch A、Switch B和Switch C上運行OSPF,網絡層相互可達。

·     當Switch A和Switch B通過L2 Switch通信的鏈路出現故障時BFD能夠快速感知通告OSPF協議,並且切換到Switch C進行通信。

2. 組網圖

圖1-22 OSPF與BFD聯動配置組網圖

 

設備

接口

IP地址

設備

接口

IP地址

Switch A

Vlan-int10

192.168.0.102/24

Switch B

Vlan-int10

192.168.0.100/24

 

Vlan-int11

10.1.1.102/24

 

Vlan-int13

13.1.1.1/24

 

Loop0

121.1.1.1/32

 

Loop0

120.1.1.1/32

Switch C

Vlan-int11

10.1.1.100/24

 

 

 

 

Vlan-int13

13.1.1.2/24

 

 

 

 

3. 配置步驟

(1)     配置各接口的IP地址(略)

(2)     配置OSPF基本功能

# 配置Switch A。

<SwitchA> system-view

[SwitchA] ospf

[SwitchA-ospf-1] area 0

[SwitchA-ospf-1-area-0.0.0.0] network 192.168.0.0 0.0.0.255

[SwitchA-ospf-1-area-0.0.0.0] network 10.1.1.0 0.0.0.255

[SwitchA-ospf-1-area-0.0.0.0] network 121.1.1.1 0.0.0.0

[SwitchA-ospf-1-area-0.0.0.0] quit

[SwitchA-ospf-1] quit

# 配置Switch B。

<SwitchB> system-view

[SwitchB] ospf

[SwitchB-ospf-1] area 0

[SwitchB-ospf-1-area-0.0.0.0] network 192.168.0.0 0.0.0.255

[SwitchB-ospf-1-area-0.0.0.0] network 13.1.1.0 0.0.0.255

[SwitchB-ospf-1-area-0.0.0.0] network 120.1.1.1 0.0.0.0

[SwitchB-ospf-1-area-0.0.0.0] quit

[SwitchB-ospf-1] quit

# 配置Switch C。

<SwitchC> system-view

[SwitchC] ospf

[SwitchC-ospf-1] area 0

[SwitchC-ospf-1-area-0.0.0.0] network 10.1.1.0 0.0.0.255

[SwitchC-ospf-1-area-0.0.0.0] network 13.1.1.0 0.0.0.255

[SwitchC-ospf-1-area-0.0.0.0] quit

[SwitchC-ospf-1] quit

(3)     配置BFD功能

# 在Switch A上使能BFD檢測功能,並配置BFD參數。

[SwitchA] bfd session init-mode active

[SwitchA] interface vlan-interface 10

[SwitchA-Vlan-interface10] ospf bfd enable

[SwitchA-Vlan-interface10] bfd min-transmit-interval 500

[SwitchA-Vlan-interface10] bfd min-receive-interval 500

[SwitchA-Vlan-interface10] bfd detect-multiplier 7

[SwitchA-Vlan-interface10] quit

# 在Switch B上使能BFD檢測功能,並配置BFD參數。

[SwitchB] bfd session init-mode active

[SwitchB] interface vlan-interface 10

[SwitchB-Vlan-interface10] ospf bfd enable

[SwitchB-Vlan-interface10] bfd min-transmit-interval 500

[SwitchB-Vlan-interface10] bfd min-receive-interval 500

[SwitchB-Vlan-interface10] bfd detect-multiplier 6

[SwitchB-Vlan-interface10] quit

4. 驗證配置

下麵以Switch A為例,Switch B和Switch A類似,不再贅述。

# 顯示Switch A的BFD信息。

<SwitchA> display bfd session

 

 Total Session Num: 1     Up Session Num: 1     Init Mode: Active

 

 IPv4 session working in control packet mode:

 

 LD/RD          SourceAddr      DestAddr        State    Holdtime    Interface

 3/1            192.168.0.102   192.168.0.100   Up       1700ms      Vlan10

# 在Switch A上查看120.1.1.1/32的路由信息,可以看出Switch A和Switch B是通過L2 Switch進行通信的。

<SwitchA> display ip routing-table 120.1.1.1 verbose

 

Summary count : 1

 

Destination: 120.1.1.1/32

   Protocol: O_INTRA           

 Process ID: 1

  SubProtID: 0x1                    Age: 04h20m37s

       Cost: 1               Preference: 10

      IpPre: N/A             QosLocalID: N/A

        Tag: 0                    State: Active Adv

  OrigTblID: 0x0                OrigVrf: default-vrf

    TableID: 0x2                 OrigAs: 0

      NibID: 0x26000002          LastAs: 0

     AttrID: 0xffffffff        Neighbor: 0.0.0.0

      Flags: 0x1008c        OrigNextHop: 192.168.0.100

      Label: NULL           RealNextHop: 192.168.0.100

    BkLabel: NULL             BkNextHop: N/A

    SRLabel: NULL             BkSRLabel: NULL

   SIDIndex: NULL               InLabel: NULL

  Tunnel ID: Invalid          Interface: Vlan-interface10

BkTunnel ID: Invalid        BkInterface: N/A

   FtnIndex: 0x0           TrafficIndex: N/A

  Connector: N/A                 PathID: 0x0

   LinkCost: 0               MicroSegID: 0

當Switch A和Switch B通過L2 Switch通信的鏈路出現故障時:

# 在Switch A上查看120.1.1.1/32的路由信息,可以看出Switch A和Switch B已經切換到Switch C進行通信。

<SwitchA> display ip routing-table 120.1.1.1 verbose

 

Summary count : 1

 

Destination: 120.1.1.1/32

   Protocol: O_INTRA           

 Process ID: 1

  SubProtID: 0x1                    Age: 04h20m37s

       Cost: 2               Preference: 10

      IpPre: N/A             QosLocalID: N/A

        Tag: 0                    State: Active Adv

  OrigTblID: 0x0                OrigVrf: default-vrf

    TableID: 0x2                 OrigAs: 0

      NibID: 0x26000002          LastAs: 0

     AttrID: 0xffffffff        Neighbor: 0.0.0.0

      Flags: 0x1008c        OrigNextHop: 10.1.1.100

      Label: NULL           RealNextHop: 10.1.1.100

    BkLabel: NULL             BkNextHop: N/A

    SRLabel: NULL             BkSRLabel: NULL

   SIDIndex: NULL               InLabel: NULL

  Tunnel ID: Invalid          Interface: Vlan-interface11

BkTunnel ID: Invalid        BkInterface: N/A

   FtnIndex: 0x0           TrafficIndex: N/A

  Connector: N/A                 PathID: 0x0

   LinkCost: 0               MicroSegID: 0

1.16.11  OSPF快速重路由配置舉例

1. 組網需求

圖1-23所示,Switch A、Switch B和Switch C屬於同一OSPF區域,通過OSPF協議實現網絡互連。要求當Switch A和Switch B之間的鏈路出現故障時,業務可以快速切換到鏈路B上。

2. 組網圖

圖1-23 OSPF快速重路由配置組網圖

 

設備

接口

IP地址

設備

接口

IP地址

Switch A

Vlan-int100

12.12.12.1/24

Switch B

Vlan-int101

24.24.24.4/24

 

Vlan-int200

13.13.13.1/24

 

Vlan-int200

13.13.13.2/24

 

Loop0

1.1.1.1/32

 

Loop0

4.4.4.4/32

Switch C

Vlan-int100

12.12.12.2/24

 

 

 

 

Vlan-int101

24.24.24.2/24

 

 

 

 

3. 配置步驟

(1)     配置各交換機接口的IP地址和OSPF協議

請按照上麵組網圖配置各接口的IP地址和子網掩碼,具體配置過程略。

配置各交換機之間采用OSPF協議進行互連,確保Switch A、Switch B和Switch C之間能夠在網絡層互通,並且各交換機之間能夠借助OSPF協議實現動態路由更新。

具體配置過程略。

(2)     配置OSPF 快速重路由

OSPF支持快速重路由配置有兩種配置方法,可以任選一種。

方法一:使能Switch A和Switch B的OSPF快速重路由功能(通過LFA算法選取備份下一跳信息)

# 配置Switch A。

<SwitchA> system-view

[SwitchA] ospf 1

[SwitchA-ospf-1] fast-reroute lfa

[SwitchA-ospf-1] quit

# 配置Switch B。

<SwitchB> system-view

[SwitchB] ospf 1

[SwitchB-ospf-1] fast-reroute lfa

[SwitchB-ospf-1] quit

方法二:使能Switch A和Switch B的OSPF快速重路由功能(通過路由策略指定備份下一跳)

# 配置Switch A。

<SwitchA> system-view

[SwitchA] ip prefix-list abc index 10 permit 4.4.4.4 32

[SwitchA] route-policy frr permit node 10

[SwitchA-route-policy-frr-10] if-match ip address prefix-list abc

[SwitchA-route-policy-frr-10] apply fast-reroute backup-interface vlan-interface 100 backup-nexthop 12.12.12.2

[SwitchA-route-policy-frr-10] quit

[SwitchA] ospf 1

[SwitchA-ospf-1] fast-reroute route-policy frr

[SwitchA-ospf-1] quit

# 配置Switch B。

<SwitchB> system-view

[SwitchB] ip prefix-list abc index 10 permit 1.1.1.1 32

[SwitchB] route-policy frr permit node 10

[SwitchB-route-policy-frr-10] if-match ip address prefix-list abc

[SwitchB-route-policy-frr-10] apply fast-reroute backup-interface vlan-interface 101 backup-nexthop 24.24.24.2

[SwitchB-route-policy-frr-10] quit

[SwitchB] ospf 1

[SwitchB-ospf-1] fast-reroute route-policy frr

[SwitchB-ospf-1] quit

4. 驗證配置

# 在Switch A上查看4.4.4.4/32網段路由,可以看到備份下一跳信息。

[SwitchA] display ip routing-table 4.4.4.4 verbose

 

Summary count : 1

 

Destination: 4.4.4.4/32

   Protocol: O_INTRA            

 Process ID: 1

  SubProtID: 0x1                    Age: 04h20m37s

       Cost: 1               Preference: 10

      IpPre: N/A             QosLocalID: N/A

        Tag: 0                    State: Active Adv

  OrigTblID: 0x0                OrigVrf: default-vrf

    TableID: 0x2                 OrigAs: 0

      NibID: 0x26000002          LastAs: 0

     AttrID: 0xffffffff        Neighbor: 0.0.0.0

      Flags: 0x1008c        OrigNextHop: 13.13.13.2

      Label: NULL           RealNextHop: 13.13.13.2

    BkLabel: NULL             BkNextHop: 12.12.12.2

    SRLabel: NULL             BkSRLabel: NULL

   SIDIndex: NULL               InLabel: NULL

  Tunnel ID: Invalid          Interface: Vlan-interface200

BkTunnel ID: Invalid        BkInterface: Vlan-interface100

   FtnIndex: 0x0           TrafficIndex: N/A

  Connector: N/A                 PathID: 0x0

   LinkCost: 0               MicroSegID: 0

# 在Switch B上查看1.1.1.1/32網段路由,可以看到備份下一跳信息。

[SwitchB] display ip routing-table 1.1.1.1 verbose

 

Summary count : 1

 

Destination: 1.1.1.1/32

   Protocol: O_INTRA            

 Process ID: 1

  SubProtID: 0x1                    Age: 04h20m37s

       Cost: 1               Preference: 10

      IpPre: N/A             QosLocalID: N/A

        Tag: 0                    State: Active Adv

  OrigTblID: 0x0                OrigVrf: default-vrf

    TableID: 0x2                 OrigAs: 0

      NibID: 0x26000002          LastAs: 0

     AttrID: 0xffffffff        Neighbor: 0.0.0.0

      Flags: 0x1008c        OrigNextHop: 13.13.13.1

      Label: NULL           RealNextHop: 13.13.13.1

    BkLabel: NULL             BkNextHop: 24.24.24.2

    SRLabel: NULL             BkSRLabel: NULL

   SIDIndex: NULL               InLabel: NULL

  Tunnel ID: Invalid          Interface: Vlan-interface200

BkTunnel ID: Invalid        BkInterface: Vlan-interface101

   FtnIndex: 0x0           TrafficIndex: N/A

  Connector: N/A                 PathID: 0x0

   LinkCost: 0               MicroSegID: 0

1.17  常見配置錯誤舉例

1.17.1  OSPF鄰居無法建立

1. 故障現象

OSPF鄰居無法建立。

2. 分析

如果物理連接和下層協議正常,則檢查接口上配置的OSPF參數,必須保證與相鄰路由器的參數一致,區域號相同,網段與掩碼也必須一致(點到點與虛連接的網段與掩碼可以不同)。

3. 處理過程

(1)     使用display ospf peer命令查看OSPF鄰居狀態。

(2)     使用display ospf interface命令查看OSPF接口的信息。

(3)     檢查物理連接及下層協議是否正常運行,可通過ping命令測試。若從本地路由器Ping對端路由器不通,則表明物理連接和下層協議有問題。

(4)     檢查OSPF定時器,在同一接口上鄰居失效時間應至少為Hello報文發送時間間隔的4倍。

(5)     如果是NBMA網絡,則應該使用peer ip-address命令手工指定鄰居。

(6)     如果網絡類型為廣播網或NBMA,則至少有一個接口的路由器優先級大於零。

1.17.2  OSPF路由信息不正確

1. 故障現象

OSPF不能發現其他區域的路由。

2. 分析

應保證骨幹區域與所有的區域相連接。若一台路由器配置了兩個以上的區域,則至少有一個區域應與骨幹區域相連。骨幹區域不能配置成Stub區域。

在Stub區域內的路由器不能接收外部AS的路由。如果一個區域配置成Stub區域,則與這個區域相連的所有路由器都應將此區域配置成Stub區域。

3. 處理過程

(1)     使用display ospf peer命令查看OSPF鄰居狀態。

(2)     使用display ospf interface命令查看OSPF接口的信息。

(3)     使用display ospf lsdb查看LSDB的信息是否完整。

(4)     使用display current-configuration configuration ospf命令查看區域是否配置正確。若配置了兩個以上的區域,則至少有一個區域與骨幹區域相連。

(5)     如果某區域是Stub區域,則該區域中的所有路由器都要配置stub命令;如果某區域是NSSA區域,則該區域中的所有路由器都要配置nssa命令。

(6)     如果配置了虛連接,使用display ospf vlink命令查看OSPF虛連接是否正常。

不同款型規格的資料略有差異, 詳細信息請向具體銷售和400谘詢。H3C保留在沒有任何通知或提示的情況下對資料內容進行修改的權利!

BOB登陆
官網
聯係我們