1. 程式人生 > >CCNP知識點總結——OSPF

CCNP知識點總結——OSPF

1、OSPF介紹

      OSPF(Open Shortest Path First,開放最短路徑優先)是一種鏈路狀態路由協議,無路由迴圈(全域性拓撲),“開放”意味著非私有的。每一臺路由器擁有整個拓撲結構,能根據網路拓撲資訊獨立地做出決策。OSPF採用SPF演算法計算到達目的地的最短路徑,所謂“鏈路”,即指路由器介面,所謂“狀態”,即指描述介面以及其與鄰居路由器之間的關係。管理距離AD值為110。

2、 OSPF三張表

      OSPF的三張表是鄰居表、鏈路狀態資料庫(LSDB)和路由表。

           鄰居表(neighbor table):OSPF用鄰居機制來發現和維持路由的存在,鄰居表儲存了雙向通訊的鄰居關係OSPF路由器列表的資訊。

           拓撲表(topology table):OSPF用LSA(Link State Advertisement 鏈路狀態通告)來描述網路拓撲資訊,然後OSPF路由器用拓撲資料庫來儲存網路的這些LSA。

           OSPF路由表(routing table):對鏈路狀態資料庫進行SPF(Dijkstra)計算,而得出的OSPF路由表。

      OSPF 網路結構:自治系統,區域。

      OSPF 演算法:Dijkstra’s SPF 演算法。

      OSPF 成員型別:指定路由器 (DR) , 備份指定路由器 (BDR) , 其他路由 (DRother)。

3、OSPF鄰接關係

      路由器通過互動Hello報文發現鄰居,路由器在檢查Hello包中的某些引數或選項後鄰居建立成功,檢查的引數有:Hello Interval,Dead Interval,Area Number,Authentication,Stub。點對點WAN鏈路中建立的是全互聯的鄰接關係。多路訪問網路中(如廣播型網路,LAN),各成員只會與DR、BDR建立全互聯的鄰接關係,DRother保持Two-Way狀態。鄰接關係數:2(n-2)+1

4、OSPF報文

     OSPF報文封裝在IP報文的負載中,不使用TCP,而使用LSAck實現自己的確認機制。

     OSPF報文型別:Hello、Database Description、Link-State Request、Link-State Update、Link-State Acknowledgment。

      Hello報文中封裝有:Router ID,Hello and Dead Intervals,Neighbors,Area ID,Router priority,DR IP address,BDR IP address,Authentication password,Stub area flag。其中Hello and Dead Intervals、Area ID、Authentication password和Stub area flag在鄰居關係建立時必須匹配。

     OSPF組播地址:224.0.0.5,224.0.0.6。

     DRother通知所有的DR/BDR使用組播地址224.0.0.6,DR通知DRother使用組播地址224.0.0.5。

5、OSPF的配置

      router ospf process-id [vrf vpn-name]

             network ip-address wildcard-mask area area-id

      在介面下配置OSPF:

      Router(config-if)#

             ip ospf process-id area area-id [secondaries none]

      OSPF的Router ID設定優先順序:

      (1)手動設定的Router ID

      (2)活躍的Loopback介面中IP地址較大的

      (3)活躍的物理介面中IP地址較大的

      Router(config-router)#

            router-id ip-address

      如果在已經處於活動狀態的OSPF程序上使用此命令, 必須重啟路由器或者重啟OSPF程序才能生效。

      Router# clear ip ospf process

      驗證OSPF Router ID:show ip ospf

      Router# show ip protocols 

      驗證配置的IP路由協議程序,引數和統計資訊

      Router# show ip route ospf [process-id ]

      顯示路由器學到的所有OSPF路由

      Router# show ip ospf interface [type number]

      顯示OSPF的router ID、area ID和鄰接關係

      Router# show ip ospf interface brief

      顯示介面在OSPF下的狀態

      Router# show ip ospf

      顯示OSPF的router ID、計時器和狀態

      Router# show ip ospf neighbor [type number] [neighbor-id] [detail]

      Router# show ip ospf neighbor detail

      顯示OSPF鄰居資訊,包括廣播網路中的DR和BDR資訊

      cost或metric:預設值= (100 Mbps) / (bandwidth in Mbps)

      RouterA(config-if)# ip ospf cost interface-cost

      在介面下手動設定Cost來覆蓋預設值,取值範圍 1 到 65535

      RouterA(config-router)# auto-cost reference-bandwidth ref-bw

      設定有別於100 Mbps的參考頻寬,取值範圍 1 到 4294967

6、OSPF網路型別

      OSPF網路型別包括:loopback環回口,point-to-point串列埠或幀中繼的點到點子介面,broadcast以太口、快速以太口,NBMA非廣播多路訪問(幀中繼),point-to-multipoint點到多點,point-to-multipoint no-broadcast點到多點非廣播。

       環回口在OSPF中是一類單獨的網路型別,環回口下配置的IP,不管掩碼配置為多少,發出路由時都會當做/32的主機路由。

       點到點型別: 如果二層的協議為PPP、HDLC等,則OSPF網路型別為P2P。如果幀中繼子介面型別為P2P的,則OSPF網路型別也為P2P。不選舉DR、BDR。使用組播地址224.0.0.5。OSPF能夠根據二層封裝自動檢測到P2P網路型別。

      廣播型多路訪問:通常出現在乙太網中,選舉DR、BDR,所有路由器均與DR及BDR建立鄰接關係,使用組播地址224.0.0.5及224.0.0.6。

      非廣播型多路訪問: 幀中繼網路中,使用物理介面預設為NBMA,使用子介面預設為點對點,使用NBMA需要使用neighbor命令指定鄰居。

      修改網路型別:Router(config-if)# ip ospf network broadcast

7、DR和BDR選舉

      具有最高優先順序的OSPF成員成為DR,次高優先順序的成為BDR,如果優先順序一致,則比較RID,RID大的成為DR,第二大的成為BDR,DR選舉是非搶佔式的。

      設定DR選舉的優先順序:Router(config-if)# ip ospf priority number

      預設優先順序為1,取值範圍 0 到 255,如果優先順序為0,則不參與DR或者BDR選舉,如果一個裝置不是DR或者BDR,那就是DRother。

8、LSA鏈路狀態通告

      型別1 :路由器LSA  Router LSA

       >>每個路由器針對它所在的區域產生LSA1,描述區域內部與路由器直連的鏈路的資訊(包括鏈路型別,Cost等),只允許在本區域內洪泛,不允許跨越ABR,Link ID是通告該LSA的路由器RID。

      型別2:網路LSA  Network LSA

      >>描述TransNet(包括Broadcast和NBMA網路)網路資訊,由DR生成,描述其在該網路上連線的所有路由器以及網段掩碼資訊, 以及這個MA所屬的路由器,只在本區域Area內洪泛,不允許跨越ABR,Link ID是DR進行宣告的那個介面的IP地址,Network LSA 中沒有COST欄位。

      >>型別1、2 總結:通過LSA1,LSA2在區域內洪泛,使區域內每個路由器的LSDB達到同 步,計算生成標識為“O”的路由,解決區域內部的通訊問題。

      型別3: 網路彙總LSA Summary Net LSA

      >>由ABR生成,將區域內部的Type1\2的資訊收集起來以路由子網的形式擴散出去,Link ID是域間路由的路由字首,一條域間路由對應一條3類LSA。ABR收到來自同區域其它ABR傳來的Type 3 LSA後重新生成新的Type3 LSA (Advertising  Router改為自己)然後繼續在整個OSPF系統內擴散。如果—臺ABR路由器在與它本身相連的區域內有多條路由可以到達目的地, 那麼它將只會始發單一的一條網路彙總LSA到骨幹區域,而且這條LSA是上 述多條路由中代價最低的。

      型別4: ASBR Summary LSA

      由ASBR所在區域的ABR生成,用於描述ABR能夠到達的ASBR的資訊。Link ID為目的ASBR的RID。

      型別5: 自治系統外LSA    AS External LSA

      >>由ASBR生成,用於描述OSPF自治域系統外的目標網段資訊。Link ID是域外路由的路由字首,一條域外路由對應一條5類LSA。外部路由通過重發布,引入OSPF路由域,相應資訊(路由條目) 由ASBR以LSA5的形式生成然後進入OSPF路由域; •預設情況下,LSA5生成路由用OE2表示,可強行指定為OE1。OE2 開銷 = 外部開銷 = 20(預設) ,OE1 開銷 = 外部開銷 + 內部開銷。LSA5不允許進入特殊區域 —— Stub和NSSA區。

      型別7: NSSA中的外部LSA NSSA External LSA 
      >>在NSSA(非完全存根區域)not-so-stubby area中ASBR針對外部網路 產生類似於LSA5的LSA型別7。LSA型別、7只能在NSSA區域中洪泛,到達NSSA區域ABR後,NSSA ABR將其轉換成LSA型別5外部路由,傳播到Area 0,從而傳播到整個 OSPF路由域。生成路由預設用ON2表示,也可指定為ON1。

      檢視OSPF路由表:show ip route ospf

      加表順序:O > O IA > O E1 > O E2

9、路由彙總

      在ABR上彙總域間路由:Router(config-router)# area area-id range address mask [advertise | notadvertise] [cost cost] 

      在ASBR上彙總外部路由:Router(config-router)# summary-address ip-address mask  [not-advertise] [tag tag] 

       以5類LSA向OSPF中注入預設路由,預設不開啟,使用default-information originate命令注入。只有當預設路由已經存在在路由表中才會通告預設路由,加always引數可以強制下發預設路由。default-infomation originate metric number,進行有多個OSPF出口的路由器下發的預設路由選路。

10、特殊區域

 

      stub配置:

      router ospf 1

           network .... .... area 1

           area 1 stub


      totally stub配置:

      普通路由器:

      router ospf 1

           network .... .... area 1

           area 1 stub

      ABR:

      router ospf 1

           network .... .... area 1

           area 1 stub no-summary

      將一個區域配置成Stub或者Totally stub需要注意一下幾點:
      >>不可在骨幹區域配置。

      >>區域內不能有ASBR和虛鏈路。

      >>特殊區域內所有路由器都配置成Stub。

      >>有多個以上ABR時,到其他區域或外部自治系統可能存在次優路徑。 需要注意選路(修改cost)。

      非完全末梢區域 Not-so-stubby Area=NSSA
      Stub的變種:即想阻擋LSA5,自身又想引入外部路由,NSSA既阻擋外部LSA5的進入,同時它的ASBR又可以引入外部路由LSA7,LSA7在NSSA內洪泛,通過ABR時轉換為LSA5,ABR不會預設生成預設路由進入本地區域,需手工配置。

      NSSA配置:

      router ospf 1

           network .... .... area 1

           area 1 nssa

      ABR上可以下發預設路由:


      router ospf 1

           network .... .... area 1

           area 1 nssa default-information-originate


      totally NSSA配置:

      router ospf 1

           network .... .... area 1

           area 1 nssa

      ABR配置:

      router ospf 1

           network .... .... area 1

           area 1 nssa no-summary


11、認證
      認證演算法:(1)Null  (2)簡單密碼身份驗證  (3)MD5身份驗證
      認證型別:(1)介面認證  (2)區域認證
      明文認證:
      (1)介面認證
      Router(config-if)# ip ospf authentication-key password
      Router(config-if)# ip ospf authentication 
      (2)區域認證
      Router(config-if)# ip ospf authentication-key password 
      Router(config-router)# area area-id authentication 
      密文認證:
      (1)介面認證
      Router(config-if)# ip ospf message-digest-key key-id md5 key 
      Router(config-if)# ip ospf authentication message-digest 
      (2)區域認證
      Router(config-if)# ip ospf message-digest-key key-id md5 key 
      Router(config-router)# area area-id authentication message-digest 
      認證排錯:Router# debug ip ospf adj 
12、passive-interface
      路由器不會在該介面傳送Hello分組,因此不能建立鄰接關係。配置如下:
      passive-interface fa0/0
      passive-interface default 
      no passive-interface fa2/0
13、虛鏈路
      虛擬鏈路被用於一個不連續的區域連線到區域0。邏輯連線是建立路由器A和路由器B之間,虛擬鏈路被推薦用於備份或臨時連線。

      驗證OSPF虛鏈路:RouterA#sh ip ospf virtual-links 
      明文區域認證:
      router ospf 1 
             network 172.16.0.0 0.0.255.255 area 0 
             network 172.17.0.0 0.0.255.255 area 1 
             area 0 authentication
             area 1 virtual-link 3.3.3.3 authentication-key SPOTO
      密文區域認證:
      router ospf 1 
             network 172.16.0.0 0.0.255.255 area 0 
             network 172.17.0.0 0.0.255.255 area 1 
             area 0 authentication message-digest
      area 1 virtual-link 3.3.3.3 message-digest-key 1 md5 SPOTO
14、Max-metric設定

15、SPF節能

https://blog.csdn.net/gongxifacai_believe/article/details/79530499