OSPFv2
OSPF 基本要點
1 | 分類 | 範圍: IGP |
工作原理: 鍊路狀态協定 | ||
2 | 封裝 | 封裝在IP裡面,協定号89 |
3 | 更新方式 | 觸發更新和定時更新(LSA1800s更新一次,LSA老化時間3600s) |
4 | 更新位址 | 單點傳播,多點傳播 224.0.0.5(DRother)/224.0.0.6(DR/BDR) |
5 | 管理距離 | 内部10,外部150 |
IA OSPF
工作原理
三張表
封包類型
Router-ID
區域
網絡類型
OSPF Cost
DR ,BDR
認證
單區域配置
IA OSPF 配置不大,原理分析
路由擷取方式 LSDB, LSA, LSA類型,作用
特權區域
彙總
虛連接配接
路由協定分類
按算法分
DV 距離矢量路由協定 RIP BGP(進階DV) 道聽途說 --》路标
路由器之間傳遞的是路由資訊
LS 鍊路狀态路由協定 OSPF ISIS 擷取整個網絡的拓撲資訊--》地圖
路由器之間傳遞的是鍊路資訊/拓撲資訊,不是路由資訊; 路由資訊是本路由器自己計算擷取
Router-id
作用: 辨別一台啟用OSPF協定的路由器, 類似于 身份證号碼
格式: 點分十進制, 不是IP位址,隻是一個辨別。
網絡類型
網絡類型要點總結
對應二層網絡 | DR BDR | Hello 間隔 | 其它 | |
廣播 | 以太 | 選 | 10s | 224.0.0.5;224.0.0.6;單點傳播 |
點到點 | PPP | 不選 | 10s | 224.0.0.5 |
NBMA | FR | 選 | 30s | 單點傳播,手動指鄰居 |
點到多點 | 無預設對應 | 不選 | 30s | 單點傳播,224.0.0.5,會産生一條32位主機路由 |
loopback接口 | PPP | 會産生一條32位主機路由 |
網絡類型會間接的影響鄰居的建立,主要通過兩個點
1:hello 時間
2:改變LSA的描述,影響到路由的學習
總結:
Hello時間一緻,可以建立鄰居,否則不能
網絡類型(p2p, transit,stub)一緻,可以學習路由,否則不能
網絡類型 作用: 分析OSPF的前提條件 |
類型: Broadcast(BMA) -- 廣播類型;預設是以太網 hello 10s, dead time 40s |
p2p -- 點到點; 預設在基于PPP,HDLC協定的廣域網中 hello 10s, dead time 40s |
NBMA -- 非廣播多路通路;預設在基于幀中繼的廣域網中 hello 30s, dead time 120s |
p2mp -- 點到多點;沒有預設,隻能手動配置 hello 30s, dead time 120s |
<R1>dis ospf int g0/0/1 [R1]int s0/0/0 [R1-Serial0/0/0]ospf network-type p2mp |
<R1>reset ospf process //重置OSPF程序
DR,BDR,選舉,多點傳播位址
場景: 在每一個MA網絡(broadcast, NBMA)網絡類型中選舉,基于接口選舉,不是基于路由器。加快網絡收斂,簡化lsa同步過程。
作用: 減少鄰接數量,
減少LSA泛洪數量
選舉規則: 【數值越大越優先,不搶占,收集選舉時間40S】
1.在指定時間段(40s)内進行公平選舉,逾時40s DR,BDR是不能被搶占
2.如果是公平選舉,先比較接口DR優先級,預設=1;範圍0~255
3.如果是公平選舉,優先級相同, 再比較router-id,
4. 優先級為0,不參加DR和BDR選舉
角色: | 監聽多點傳播位址 | DR | BDR | DRother |
DR | 224.0.0.6 | 不存在 | 鄰接 | 鄰接 |
BDR | 224.0.0.6 | 鄰接 | 不存在 | 鄰接 |
DRother | 224.0.0.5 | 鄰接 | 鄰接 | 鄰居 |
為什麼選DR,BDR: 1,加快網絡的收斂,2簡化LSA同步的過程
hello 多點傳播
DBD 單點傳播
LSR 單點傳播
LSU 單點傳播/多點傳播
LSACK 多點傳播
[R2]int g0/0/2
[R2-GigabitEthernet0/0/2]ospf dr-priority 100
[R2-GigabitEthernet0/0/2]ospf dr-priority 0 放棄DR,BDR選舉
13:34 2019/11/23
接口及路徑開銷cost
接口cost = 參考帶寬108/接口帶寬bps
路徑cost = 去往目的網絡的出接口cost的累加
實際上隻需要修改接口cost值
1.直接修改接口cost
2.修改參考帶寬,間接影響cost值
2.修改接口帶寬,間接影響cost值
OSPF封包
OSPF封包
Hello:用于發現,建立和維持鄰居關系
DD:LSDB的摘要,包含LSA的頭部資訊
第一類: 不包含LSA的頭部資訊, 作用:完成master,slave的選舉,【比較route-id】
(master端會首先進入exstart,首先同步LSDB,是以它要先收到Slave發過來的DD,才能先同步 是以,slave端會先發發送包含LSA頭部的DD封包給Master)
第二類: 包含LSA的頭部資訊
LSR:請求所缺少LSA,包含部分LSA的頭部資訊中内容
LSU:向對方發送所需的完整的LSA,包含LSA的完整資訊
LSAck:确認過程,包含LSA的頭部資訊
鄰居建立
需要的封包: Hello封包【發現,建立,維持鄰居關系】
狀态: 2-way 【hello封包包含了自己的router-id】
建立的方式:
自動建立: 支援廣播/多點傳播的網絡中,broadcast,P2P,P2MP的網絡類型
手動建立: 不支援廣播/多點傳播的網絡中, NBMA的網絡類型
ospf 89
peer 對端路由器的接口IP
鄰居狀态機
down
attempt
init
2-way --- 鄰居關系 【DRother之間是鄰居關系】
exstart
exchange
loading
full --- 鄰接關系
Down 狀态:
- 怎麼進入:接口宣告進OSPF後,就進入down 狀态
- 幹什麼事情:會發送hello封包
Init 狀态:
- 怎麼進入:自己收到一個hello包,并且這個hello包的鄰居清單裡面還沒有包含自己的router id時,進入init 狀态(譬如此時E1)
- 幹什麼事情:發送一個hello 包,這個hello 包的鄰居清單上會帶上對方的router id
2-way狀态
- 怎麼進入:當收到一個hello 包,并且這個hello 包的鄰居清單裡面包含自己的router id時,進入2 way狀态
- 幹什麼事情:根據鍊路類型,如果是MA(以太)網絡,等待hello包的收集,則需要等待40s,完成DR和BDR選舉資訊的收集,然後把DR,BDR選出來。如果是點到點網絡,則直接進入下一個狀态
Exstart 狀态
- 怎麼進入:如果是MA(以太)網絡,2way狀态下,40s過後,DR/BDR選完,則進入Exstart狀态。如果是點到點鍊路類型這種不需要選舉DR/BDR的,則直接從2way進入Exstart 狀态
- 幹什麼事情:選舉主/從(選主/從,隻看router id,其它都不看,router id大的,會成為master,router id小的,會成為slave),master 的作用隻有一個,即 OSPF是一個可靠傳送的協定,封包不能丢,但是它是承載在IP上面的,而IP卻是不可靠協定。那我們怎麼在一個不可靠的協定上面實作可靠的傳送,是以這裡呢我們是要用到确認,那麼通常我們所了解的确認就是,你給我一個封包,我給你一個ack,這叫顯示确認。但DD這裡用的是隐式确認,它用DD封包去确認DD封包。那怎麼隐式确認呢,就是我們在DD封包裡面,除了攜帶有自己的router id來選誰是master 以外,它還攜帶一個很重要的參數---sequence number. 那麼我們接下來的所有更新,就按照這個sequence number來更新,進而我們可以得到一個确認的效果。此時DD封包,不包含LSA頭部資訊。
Exchange 狀态
- 怎麼進入:master/slave 選完了,就進入exchange狀态
- 幹什麼事情:真真正正的同步LSA目錄資訊,此時DD封包會包含LSA的頭部資訊
DD封包的隐式确認
Loading 狀态
- 怎麼進入: exchange 完成後(當一方的DD封包裡面的M位置0,表示DD已經同步完成),彼此之間就知道了彼此有什麼路由了,進入loading狀态
- 幹什麼事情:發送LSR(請求感興趣的LSA的頭部資訊),對方回複LSU(一條完整的LSA)和自己回複LSAck(所确認的那條LSA的頭部資訊)
Full 狀态
最終同步完成,進入Full狀态,等待5s,進入SPF算法的計算,最終生成路由表
LSA總結
LSDB: 存放從鄰居接收到的所有LSA的集合
同一個區域内部的路由器LSDB是一緻的,是同步的,每台裝置會産生一條一類LSA
名稱 | 由誰産生 | Ls ID | ADV | 内容 | 範圍 |
LSA1 Router | 運作OSPF Router | 本路由器RID | 本路由器RID | 包括拓撲資訊,路由資訊,描述了裝置的鍊路狀态和開銷 | 在所屬的區域内傳播 |
LSA2 Network | DR | DR的接口IP位址 | DR的RID | 包括拓撲資訊,路由資訊描述了本網段的鍊路狀态 | 在所屬的區域内傳播 |
LSA3 summary | ABR | 目的網段位址 | ABR的RID | 包括域間路由資訊,描述區域内某個路由的網段 | 泛洪于整個AS,除了Totally STUB或Totally NSSA |
LSA4 asbr | ABR | ASBR的RID | ABR的RID | 包括拓撲資訊即ASBR’s Router ID,描述到ASBR的路由 | 通告給除ASBR所在區域的其它相關區域 |
LSA5 ase | ASBR | 目的網段位址 | ASBR的RID | 包括路由資訊,描述到AS 外部的路由 | 在整個AS域(除了STUB區域和NSSA區域) |
LSA7 nssa | ASBR | 目的網段位址 | ASBR的RID | 包括路由資訊,描述到AS 外部的路由 | 本NSSA區域或totally NSSA 區域 |
一類LSA
定義:每一個運作OSPF的路由器都會産生一個Router LSA,包括拓撲資訊,路由資訊,描述了裝置的鍊路狀态和開銷,在所屬的區域内傳播
Router LSA 描述的網絡類型主要有以下三種:
1. P-2-P,點到點,描述拓撲資訊
2. TransNet,例如MA網段或者NBMA網段,描述拓撲資訊+路由字首資訊
3. Stubnet, 末節網段,例如loopback 接口,描述路由資訊
4. v-link == P2P
<R5>dis ospf lsdb router self-originate -------------一類LSA OSPF Process 1 with Router ID 5.5.5.5 Area: 0.0.0.0 Link State Database Type : Router /LSA類型 Ls id : 5.5.5.5 /鍊路狀态ID Adv rtr : 5.5.5.5 /産生此LSA的路由器Router ID Ls age : 65 Len : 60 Options : E seq# : 80000006 chksum : 0x842 Link count: 3 * Link ID: 4.4.4.4 /鄰居路由器的Router ID Data : 10.1.45.5 /宣告該Router LSA的路由器的IP位址 Link Type: P-2-P /網絡類型 P-2-P, 描述拓撲資訊 Metric : 1562 /接口開銷 * Link ID: 10.1.45.0 /該Stub網絡的網絡号 Data : 255.255.255.0 /該Stub網絡的網絡掩碼 Link Type: StubNet /網絡類型 Stubnet,描述的是路由資訊 Metric : 1562 /接口開銷 Priority : Low * Link ID: 10.1.235.5 /DR的接口IP位址 Data : 10.1.235.5 /宣告該Router LSA的路由器接口的IP位址 Link Type: TransNet /網絡類型 Transnet,描述的是拓撲資訊 Metric : 1 /接口開銷 |
二類LSA
定義:Network LSA, 由DR産生,描述DR的接口IP位址及DR router ID,包括拓撲資訊,路由資訊描述了本網段的鍊路狀态,在所屬的區域内傳播
<R5>dis ospf lsdb network self-originate OSPF Process 1 with Router ID 5.5.5.5 Area: 0.0.0.0 Link State Database Type : Network /LSA 類型,由DR産生 Ls id : 10.1.235.5 /DR接口的IP位址 Adv rtr : 5.5.5.5 /DR的Router ID Ls age : 1554 Len : 32 Options : E seq# : 80000002 chksum : 0x46e2 Net mask : 255.255.255.0 /DR接口的網絡掩碼 Priority : Low Attached Router 5.5.5.5 /連接配接到該網段的路由器清單 Attached Router 3.3.3.3 |
根據Router-LSA和Network-LSA 畫圖,逐台路由器看,先看Router-LSA,遇到transnet類型,看其Network-LSA
三類LSA
定義:network-summary-LSA,由ABR産生,描述一段目的網段位址,包括域間路由資訊,泛洪于整個AS,除了Totally STUB或Totally NSSA,注意,一條三類LSA,隻能描述一條路由資訊,每經過一個ABR通告路由器會發生改變
[AR1]display ospf lsdb summary 4.1.1.1 OSPF Process 1 with Router ID 1.1.1.1 Area: 0.0.0.0 Link State Database Type : Sum-Net //三類LSA Ls id : 4.1.1.1 //目的網段位址 Adv rtr : 3.1.1.1 //ABR的Router ID Ls age : 911 Len : 28 Options : E seq# : 80000001 chksum : 0xef5f Net mask : 255.255.255.255 //目的網絡的網絡掩碼 Tos 0 metric: 1 //ABR到達目的網段的開銷值 Priority : Medium |
四類LSA
定義:ASBR-Summary-LSA,由ABR産生,用于描述如何從ABR到達ASBR,包含ASBR的RID,ABR的RID,拓撲資訊即ASBR’s Router ID,通告給除ASBR所在區域的其它相關區域
[AR1]display ospf lsdb asbr 5.1.1.1 OSPF Process 1 with Router ID 1.1.1.1 Area: 0.0.0.0 Link State Database Type : Sum-Asbr //LSA類型 Ls id : 5.1.1.1 //ASBR的Router ID Adv rtr : 3.1.1.1 //産生此四類LSA的 ABR Router ID Ls age : 1485 Len : 28 Options : E seq# : 80000002 chksum : 0xd279 Tos 0 metric: 1 //從該ABR到達此ASBR的開銷值 |
五類LSA
定義:AS-External-LSA,由ASBR産生,用于描述如何從ASBR到達外部目的地。包含路由資訊,在整個AS域(除了STUB區域和NSSA區域)泛洪,注意,通告路由器在整個AS中是不變的,由于通告路由器不發生改變,與ASBR不在一個區域時,需要LSA4找到ASBR
rip 1 undo summary version 2 network 46.0.0.0 [AR4-ospf-1]import-route rip [AR1]display ospf lsdb ase 6.1.1.1 Type : External //LSA類型 Ls id : 6.1.1.1 //目的網段位址 Adv rtr : 4.1.1.1 //ASBR router ID Ls age : 61 Len : 36 Options : E seq# : 80000001 chksum : 0x566a Net mask : 255.255.255.255 //目的網段的網絡掩碼 TOS 0 Metric: 1 //ASBR到達目的網段的開銷值,預設值為1 E type : 2 Forwarding Address : 0.0.0.0 Tag : 1 //通常用于路由政策,預設值為1 Priority : Medium |
七類LSA
定義:NSSA LSA,由NSSA 區域的ASBR産生,通告一條NSSA域外路由資訊,在本NSSA區域或totally NSSA 區域泛洪
[AR3]display ospf lsdb nssa 6.1.1.0 Ls id : 6.1.1.0 //目的網段位址 Adv rtr : 4.1.1.1 //ASBR router ID Ls age : 114 Len : 36 Options : NP seq# : 80000002 chksum : 0xa58f Net mask : 255.255.255.252 //目的網段的網絡掩碼 TOS 0 Metric: 1 E type : 1 Forwarding Address : 4.1.1.1 Tag : 1 Priority : Low |
OSPF路由:基于本地LSDB,進行SPF計算得到路由
區域内路由 LSA1,LSA2
區域間路由 LSA1,LSA2,LSA3
LSA3中的metric:代表ABR去往目的網絡位址的開銷
外部路由 LSA1,LSA2,LSA4,LSA5
LSA4中的metric:代表ABR去往ASBR的開銷 【含義:通告ASBR的位置-拓撲資訊】
LSA5中的metric:代表ASBR去往目的網絡位址的開銷
路由器類型
ABR -- 區域邊界路由器 :至少有個接口屬于區域0;
display ospf lsdb router LinkID; dis ospf abr-asbr
ASBR -- AS邊界路由器:能産生LSA5的路由器
IR -- 内部路由器
BR -- 邊界路由器
避免區域間環路的原則
1.骨幹區域必須與非骨幹區域互聯,并且骨幹區域隻能有一個;
2.LSA3的傳遞規則:所有的區域間的路由,都必須從骨幹區域學到;從骨幹區域擷取的LSA3不能傳遞回給骨幹區域
3.非骨幹區域之間的路由必須經過骨幹區域中轉
虛連接配接 vlink
應用場景:
場景1:非骨幹區域沒有與骨幹區域互聯
場景2:骨幹區域被分割【存在兩個骨幹區域】
特點: 虛鍊路是骨幹區域的擴充【虛連接配接就是骨幹區域】,虛電路就是區域0的一個邏輯接口
注意,虛連接配接不能穿越stub 區域建立
驗證:display ospf lsdb router LinkID
配置: ospf 89 area 2 #過渡區域,中轉 vlink-peer 3.1.1.1 對端邊界路由的RID |
[AR4]display ospf vlink OSPF Process 1 with Router ID 4.1.1.1 Virtual Links Virtual-link Neighbor-id -> 3.1.1.1, Neighbor-State: Full Interface: 34.1.1.4 (GigabitEthernet0/0/1) Cost: 1 State: P-2-P Type: Virtual Transit Area: 0.0.0.1 Timers: Hello 10 , Dead 40 , Retransmit 5 , Transmit Delay 1 GR State: Normal |
[AR3]display ospf lsdb router originate-router 4.1.1.1 OSPF Process 1 with Router ID 3.1.1.1 Area: 0.0.0.0 Link State Database Type : Router Ls id : 4.1.1.1 Adv rtr : 4.1.1.1 Ls age : 240 Len : 36 Options : ABR E seq# : 80000001 chksum : 0x59ba Link count: 1 * Link ID: 3.1.1.1 Data : 34.1.1.4 Link Type: Virtual Metric : 1 |
外部路由
場景一:本區域存在ASBR,不要LSA4, cost=LSA1/LSA2 + LSA5
場景二:本區域不存在ASBR, 需要LSA4,cost=LSA1/LSA2 + LSA4 + LSA5
E1/E2外部路由類型及開銷計算
type-1 cost計算=内部開銷+外部開銷
type-2 cost計算=外部開銷,不計算内部開銷
路由類型優先次序
區域内路由 Intra Area> 區域間路由Inter Area > O E1 > O N1 > O E2 > O N2
O E2 > O N2 【相同cost值】
區域外的選路:1優先級,2類型(譬如O>OIA),3開銷,4比較去往ASBR的距離(即使是Type2,如果前3點比不出來,還是會比較第四點),如果這4點一樣,才是負載均衡
LSA5 的FA位址(forwarding address)
産生原因
如果FA是 0.0.0.0, OSPF域内的資料先轉發給ASBR,然後由ASBR轉發到外部網絡位址, 可能出現次優路徑
如果FA是某個具體的IP位址, OSPF域内的資料直接轉發給指定FA位址,然後再轉發到外部網絡位址
FA位址非0.0.0.0需要同時滿足3個條件
- 大前提:FA位址必須能通過OSPF可達,即需要在ASBR上宣告相應網段,使得ar3 上dis ip route 去往46.1.1.0/24 路由表上的協定項,顯示為 OSPF,而不是o_ase
2,不能silent-interface 【靜默接口】
3,接口類型必須是 MA
4. NSSA區域 7轉5的時候,會出現FA位址
FA用哪個位址
被重分布路由的下一跳位址
FA位址作用
選路按FA
特殊區域
作用:禁止區域接收某些LSA,縮小LSDB大小,路由表也會變小
降低資源占用【CPU,記憶體,帶寬】
特殊區域類型 | 允許LSA | 禁止LSA | 自動産生預設路由 |
Stub | 1,2,3 | 4, 5 | 可以,LSA3 |
Totally stub | 1,2 | 3,4,5 | 可以,LSA3 |
NSSA | 1,2,3,7 | 4,5 | 可以,LSA7 |
Totally NSSA | 1,2,7 | 3,4,5 | 可以,LSA3,LSA7 |
Stub VS NSSA
stub區域不可以引入外部路由
NSSA區域可以引入外部路由, 外部路由以LSA7存在
無totally VS totally
加上totally,ABR會禁止接收LSA3
stub --末節網絡
totally stub -- 完全末節網絡
NSSA -- not so stubby area
totally NSSA
stub配置:
[R4]ospf 89
[R4-ospf-89]area 1
[R4-ospf-89-area-0.0.0.1]stub
totally stub配置:
說明:以stub配置為基礎,隻在ABR上增加配置即可
[R4]ospf 89
[R4-ospf-89]area 1
[R4-ospf-89-area-0.0.0.1]stub no-summary
路由彙總
作用: 縮小LSDB,縮小路由表,減少資源占用
類型:
區域間彙總:彙總的是LSA1和LSA2,産生LSA3,在所需彙總的明細路由所在的區域的ABR上配置
外部路由彙總:彙總的是外部路由,産生LSA5,在ASBR上配置
172.16.000001 00.0/24
172.16.000001 01.0/24
172.16.000001 10.0/24
172.16.000001 11.0/24
CIDR:相同位做為網絡位,不同位做為主機位
彙總後:172.16.4.0/22
區域間彙總配置:
隻有3,5,7類可以彙總,1,2不能彙總。也就是隻能彙總區域間的路由,區域内的路由不能彙總
在ABR或ASBR上做彙總,區域選擇所需彙總的明細路由所在區間
[R2]ospf 89
[R2-ospf-89]area 1 //明細路由所在區域
[R2-ospf-89-area-0.0.0.1]abr-summary 172.16.4.0 255.255.252.0 //彙總路由
外部路由彙總配置:
[R1]ospf 89
[R1-ospf-89]asbr-summary 172.18.0.0 255.255.252.0
産生一條預設路由
OSPF利用LSA5向内部注入一條LSA5預設路由
[AR2]ip route-static 0.0.0.0 0 NULL 0
[AR2-ospf-1]default-route-advertise
或
[AR2-ospf-1]default-route-advertise always
OSPF更新
定時更新(周期更新): LSA每1800s更新一次,LSA老化時間 3600s
觸發更新
LSA更新計時器
認證
區域認證:
[R3]ospf 89
[R3-ospf-89]area 2
[R3-ospf-89-area-0.0.0.2]authentication-mode md5 10 cipher Huawei
接口認證:
[R5]int s0/0/0
[R5-Serial0/0/0]ospf authentication-mode md5 10 cipher Huawei
當區域認證和接口認證都存在時,優選使用接口認證方式
虛連接配接認證:
[R3]ospf 89
[R3-ospf-89]area 2
[R3-ospf-89-area-0.0.0.2]vlink-peer 5.5.5.5 md5 10 cipher huawei
計時器
hello time:周期性發送hello封包 ;10s,40s: 30s, 120s, 4倍
dead time:用于檢測鄰居是否存活,逾時沒有接收到hello封包說明鄰居down
影響OSPF鄰居down的因素
1.特殊區域
2.認證方式
3.認證密碼
4.hello time不一緻
5.dead time不一緻
6.silent-interface
7.mtu
8.area id不一緻
HELLO包中的哪些資訊會影響OSPF鄰居關系的建立
1、ROUTER ID不能相同;
2、HELLO,DEAD時間必須一緻;
3、區域ID必須相同;
4、認證必須相同;
5、STUB标志位必須相同;
//以上5點都是術語HELLO包中的字段,4個相同,一個不同
6、MTU不比對無法形成鄰接關系(一邊是EXSTART,一邊是EXCHANGE);接口下ip ospf mtu-ignore可以,在小的一方改
7、當OSPF網絡類型是MA時,要求掩碼一定一緻(兩個鄰居)。因為會出現DR和LSA-2,無法描述網段。
8、在MA網絡,二邊的接口優先級都是0的時候沒有DR
在IPv4中,OSPF network的含義
- 在哪個接口運作OSPF
- 這個運作OSPF的接口的直連路由,會被通告出去
路由過濾
1:用route-policy在路由引入時過濾(ACL或prefix)
1.用ACL比對奇數或偶數路由:
奇數:1,3,5,7,9…..從1開始
偶數:0,2,4,6,8…從0開始
方法:找出變化位置,利用ACL的比對規則:0為完全比對1為忽略比對進行比對
奇數網段從1開始,偶數網段從0開始
示例一:彙總同一網段的奇數和偶數路由
譬如彙總6.1.1.0/29 的奇數和偶數路由
觀察:
6.1.1.0/29-----------6.1.1.0/255.255.255.248----------6.1.1.0/11111111.11111111.11111111.11111 000
6.1.1.0/29 的明細有:
6.1.1.1/29--------------6.1.1.00000 001/29
6.1.1.2/29--------------6.1.1.00000 010/29
6.1.1.3/29--------------6.1.1.00000 011/29
6.1.1.4/29--------------6.1.1.00000 100/29
6.1.1.5/29--------------6.1.1.00000 101/29
6.1.1.6/29--------------6.1.1.00000 110/29
結論:奇數:第32位固定為1
偶數:第32位固定為0
變化位為:26,27位
根據此規律和ACL的比對規則:0為完全比對1為忽略比對
可以發現,隻要是6.1.1.x/29的x為偶數,則第32位為0,假如為奇,則第32位為1,是以根據此規律和ACL的比對規則:0為完全比對1為忽略比對,可以寫出如下兩個acl,針對第32位進行比對.
奇數網段從1開始,偶數網段從0開始
奇數路由為:
6.1.1.1/29-------------00000110.00000001.00000001.00000 001/29,因其是29位,是以前29位要完全比對,即用0比對,即00000000.00000000.00000000.00000 110,計算出來結果為0.0.0.6
即ACL如下
acl number 2000 rule 5 permit source 6.1.1.1 0.0.0.6 |
偶數路由為:
6.1.1.0/29------------00000110.00000001.00000001.00000 000/29,因其是29位,是以前29位要完全比對,即用0比對,00000000.0000000.00000000.00000 110,計算出來結果為0.0.0.6
即ACL如下
acl number 2000 rule 5 permit source 6.1.1.0 0.0.0.6 |
示例二:彙總不同網段的奇數和偶數路由
比對1.1.1.0/24 – 1.1.255.0/24 當中的所有奇數和偶數路由
結論:奇數:第24位固定為1
偶數:第24位固定為0
變化位:7~23位
奇數網段從1開始,偶數網段從0開始
奇數路由:1.1.1.0/24-----00000001.00000001.00000001.0000000/24→根據ACL的比對規則:0為完全比對1為忽略比對→00000000.00000000.11111110.00000000→0.0.254.0
即ACL如下
acl number 2000 rule 5 permit source 1.1.1.0 0.0.254.0 |
偶數路由:1.1.0.0/24----00000001.00000001.00000000.00000000/24→根據ACL的比對規則:0為完全比對1為忽略比對→00000000.00000000.11111110.00000000→0.0.254.0
即ACL如下
acl number 2000 rule 5 permit source 1.1.0.0 0.0.254.0 |
示例三,彙總不同網段的奇數和偶數路由,通過先彙總在區分奇偶
比對以下所有奇數和偶數路由
192.168.1.0/24
192.168.2.0/24
192.168.3.0/24
192.168.4.0/24
192.168.5.0/24
192.168.6.0/24
192.168.7.0/24
192.168.8.0/24
首先,對以上路由進行彙總
192.168.1.0/24------192.168.0000 0001.0/24
192.168.2.0/24------192.168.0000 0010.0/24
192.168.3.0/24------192.168.0000 0011.0/24
192.168.4.0/24------192.168.0000 0100.0/24 彙總後 192.168.0.0/20
192.168.5.0/24------192.168.0000 0101.0/24
192.168.6.0/24------192.168.0000 0110.0/24
192.168.7.0/24------192.168.0000 0111.0/24
192.168.8.0/24------192.168.0000 1000.0/24
對彙總後的路由192.168.0.0/20進行奇偶區分
結論:奇數:第24位固定為1
偶數:第24位固定為0
變化位:21~23位
奇數網段從1開始,偶數網段從0開始
奇數路由:192.168.1.0/24→11000000.10101000.0000 0001.00000000/24→根據ACL的比對規則:0為完全比對1為忽略比對→00000000.00000000.0000 1110.00000000→0.0.14.0
偶數路由:192.168.0.0/24→11000000.10101000.0000 0000.00000000/24→根據ACL的比對規則:0為完全比對1為忽略比對→00000000.00000000.0000 1110.00000000→0.0.14.0
ACL如下
acl number 2000 rule 5 permit source192.168.1.0 0.0.14.0 |
ACL如下
acl number 2000 rule 5 permit source 192.168.0.0 0.0.14.0 |
被調用工具 | Router-policy Permit | Router-policy Deny |
Permit | 允許 | 拒絕 |
Deny | 未比對,看後續node語句 |
Router-policy:相當于是法官
ACL、Prefix:相當于警察
2.用policy比對:
route-policy rip2ospf permit node 10 if-match acl 2000 |
3.在路由引入時調用:
[AR4-ospf-1]import-route rip route-policy rip2ospf |
2:用filter-policy export在ASBR上控制5/7 類LSA
比對路由
ip ip-prefix 6.5 permit 6.1.1.5 32 |
調用:
[AR3-ospf-1]filter-policy ip-prefix 6.5 export 協定 |
3:用filter控制3類LSA在ABR的區域視圖裡做過濾
Export:路由離開區域
Import:路由進入區域
ip ip-prefix 1.3 index 10 deny 1.1.1.3 32 ip ip-prefix 1.3 index 20 permit 0.0.0.0 0 less-equal 32 [AR3-ospf-1-area-0.0.0.0]filter ip-prefix 1.3 export→路由1.1.1.3 離開area0 |
4:用filter-policy import在普通路由器上過濾路由表,不影響LSA,不影響後續裝置
[AR2]ip ip-prefix 1.2 permit 1.1.1.2 32 [AR2-ospf-1]filter-policy ip-prefix 1.2 import |
隻影響本地路由表。
不影響LSA,不影響後續裝置。
5:用filter-policy import在ABR上過濾将影響後續裝置學習3類路由
隻是一個特性,如果想過濾區域間的路由。可選第3條。
[AR3]ip ip-prefix 4.1 deny 4.1.1.1 32 [AR3]ip ip-prefix 4.1 deny 1.1.1.1 32 [AR3]ip ip-prefix 4.1 permit 0.0.0.0 0 less-equal 32 [AR3-ospf-1]filter-policy ip-prefix 4.1 import |
減少資源占用的過濾場景:
6.用ospf filter-lsa-out在接口過濾LSA的發送。
ospf filter-lsa-out ase acl test |
7.用filter-lsa-out在程序下針對鄰居過濾
[AR4-ospf-1]filter-lsa-out peer 34.1.1.3 ? all Filter all types of LSAs ase Filter type-5 ASE LSAs nssa Filter type-7 NSSA LSAs summary Filter type-3 Summary LSAs |
總結:共四個工具:
filter-policy
route-policy
filter
ospf filter-lsa-out
Database Overflow
限制非預設外部路由數量,避免資料庫超限
場景1:隻有R1的外部路由進來時,R4如果設定了database overlow,則按照其限制數量學習外部路由,預設的外部路由(0.0.0.0)除外
場景2:R1和R4都引入外部路由時,R4如果設定了database overlow,則R4先把自己的非預設外部路由數量删除,然後按照其限制數量學習R1的外部路由,預設的外部路由(0.0.0.0)除外
配置:
加快收斂
spf-schedule-interval intelligent-timer 1000 1 100 |
lsa-arrival-interval intelligent-timer 1000 1 100 |
ip ip-prefix 10 index 10 permit 10.1.1.0 24 ospf 1 prefix-priority high ip-prefix 10 [AR5]display ospf lsdb summary 10.1.1.0 OSPF Process 1 with Router ID 5.1.1.1 Area: 0.0.0.2 Link State Database Type : Sum-Net Ls id : 10.1.1.0 Adv rtr : 3.1.1.1 Ls age : 1272 Len : 28 Options : E seq# : 80000002 chksum : 0xa99f Net mask : 255.255.255.0 Tos 0 metric: 1 Priority : High |
故障排除流程
OSPFv3
OSPFv3和OSPFv2 相同點
- 網絡類型和接口類型。
- 接口狀态機和鄰居狀态機。
- 鍊路狀态資料庫(LSDB)。
- 洪泛機制(Flooding mechanism)。
- 五種協定封包: Hello, DD, LSR, LSU, LSAck。
- 路由計算基本相同。
OSPFv3和OSPFv2 不同點
- 基于鍊路的運作
- 使用鍊路本地位址
- 鍊路支援多執行個體複用
- 通過 Router ID 唯一辨別鄰居
- 認證的變化
- Stub 區域的支援
- 封包的不同
- Option 字段的不同
- LSA的類型和内容不同
LSA總結
如何确認一條LSA是一條唯一的而且是最新的LSA
- 通過LSA 頭部的LSA type, link state ID, advertising Router ID可以确認這是一條唯一的LSA
- 通過sequence number可以确認這是一條最新的LSA
LSA 類型-功能編碼(Function Code)相應内容資訊
LSA Function Code | LS Type | 描述 | 由誰産生 | Ls ID | Originating Router | 内容 | 範圍 |
1 | 0x2001 | Router-LSA | 運作OSPF Router | 本地唯一的32位整數 | 本路由器RID | 僅包括拓撲資訊 | 在所屬的區域内傳播 |
2 | 0x2002 | Network-LSA | DR | DR的interface ID | DR的RID | 描述該鍊路上與DR有FULL關系的所有路由器 | 在所屬的區域内傳播 |
3 | 0x2003 | Inter-Area-Prefix-LSA | ABR | 本地唯一的32位整數 | ABR的RID | 包括域間路由資訊 | 泛洪于整個AS |
4 | 0x2004 | Inter-Area-Router-LSA | ABR | 本地唯一的32位整數 | ABR的RID | 描述到達其它區域的ASBR路由器資訊;
| 在除了ASBR所在區域的AS範圍内泛洪 |
5 | 0x4005 | AS-External-LSA | ASBR | 本地唯一的32位整數 | ASBR的RID | 描述了區域外的路由資訊 | 在整個AS域 |
6 多點傳播 | 0x2006 | Group-membership-LSA | |||||
7 | 0x2007 | Type-7-LSA | ASBR | 本地唯一的32位整數 | ASBR的RID | 描述了區域外的路由資訊 | 在NSSA區域 |
8 | 0x0008 | Link-LSA | 每一條鍊路産生一個LINK LSA | 本路由器接口ID | 本路由器RID |
| 鍊路範圍泛洪 |
9 | 0x2009 | Intra-Area-Prefix-LSA |
| 本地唯一的32位整數 | 本路由器RID | 包含路由資訊:
| 在本區域内泛洪, 用于釋出區域内路由 |
一類LSA:Router LSA
1:每一台路由器為每個區域産生一個Router LSA
2:區域範圍内洪泛;
3:僅包括拓撲資訊!
Router LSA連結(Link)類型
類型 | 描述 | Interface ID | Neighbor Interface-ID | Neighbor Router-ID |
1 | 點到點連接配接到另一台路由器 | 本地接口ID | 鄰居的Interface ID | 鄰居Router-ID |
2 | 連接配接到穿越網(Transit)網 | 本地接口ID | DR的Interface ID | DR的Router-ID |
3 | 保留 | --- | --- | |
4 | 虛連接配接 | 鄰居的VLNK Interface ID | 鄰居Router-ID |
二類LSA: Network LSA
- 由DR産生
- 區域範圍内防洪
- 描述該鍊路上與DR有Full關系的所有路由器
三類LSA:Inter-Area-Prefix-LSA
- 由ABR産生
- 在AS區域内泛洪
- 描述了區域間的路由資訊
四類LSA:Inter-area-router-LSA
- 由ABR産生
- 在除了ASBR所在區域的AS範圍内泛洪
- 描述了到達其它區域的ASBR路由器資訊
- 每個Inter-Area-Router-LSA包含一個ASBR路由器資訊
- LSA中的能力選項(option)與所描述的ASBR Router LSA中能力選項(opiton)保持一緻
五類LSA:AS-External-LSA
- 由ASBR産生,描述了區域外的路由資訊
- AS内泛洪
- 描述了區域外的路由資訊
八類LSA:Link-LSA
- 每個路由器為每一條鍊路産生一個Link LSA
- 鍊路(Link)泛洪範圍
- 作用:
- 向鍊路上的其它路由器通告本地鍊路位址,作為他們的下一跳位址
- 向鍊路上的其它路由器通告本地鍊路上的所有IPv6字首(交給DR作為資訊的收集,并不會産生路由)
- 在廣播網絡和NBMA網絡上為DR提供Options取值
九類LSA:Intra-Area-Prefix-LSA
- 每個路由器都可以産生(在有字首的前提下)
- 在本區域泛洪, 用于釋出區域内路由
- 包含路由資訊:
- Stub網絡的路由資訊(每個路由器都可以産生,包括loop back口,包括點到點鍊路)
- Transit網絡的路由資訊(由DR産生,包括broadcast, network, transit)
為什麼會有九類LSA :Intra-Area-Prefix-LSA?
OSPFv2中,依附于路由器和Stub網絡的subnet出現在Router LSA中,依附于Transit
網絡的subnet出現在Network-LSA中;OSPFv3中,Router-LSA和Network-LSA不再
包含位址資訊,是以引入Intra-Area-Prefix-LSA。
在OSPFv2中使用Router-LSA和Network-LSA來釋出區域内路由,而在OSPFv3中這兩類LSA不再包含位址資訊,
是以引入了Intra-Area-Prefix LSA,用于釋出區域内路由。
封包結構
配置
1:IPv6基本配置:
[AR5]ipv6
[AR5-Serial1/0/0]ipv6 enable
[AR5-Serial1/0/0]ipv6 address 2001:35::5 64
2:OSPFv3程序:
[AR5]ospfv3 1
[AR5-ospfv3-1]router-id 5.1.1.1
3:在接口宣告OSPFv3
[AR5-ospfv3-1]int s1/0/0
[AR5-Serial1/0/0]ospfv3 1 area 1
4:路由引入
[AR3-ospfv3-1]import-route direct
驗證:
[AR5]display ospfv3 peer
OSPFv3 Process (1)
OSPFv3 Area (0.0.0.1)
Neighbor ID Pri State Dead Time Interface Instance ID
3.1.1.1 1 Full/- 00:00:38 S1/0/0 0
[AR2]display ospfv3 interface GigabitEthernet 0/0/0
[AR5]display ospfv3 routing
[AR5]display ipv6 routing-table protocol ospfv3
[AR5]display ospfv3 lsdb originate-router 5.1.1.1 router
吐槽點:
[AR2]display ospf lsdb network originate-router 3.1.1.1 [AR2]display ospfv3 lsdb originate-router 1.1.1.1 network OSPFv3 Router with ID (5.1.1.1) (Process 1) Router-LSA (Area 0.0.0.1) LS Age: 280 LS Type: Router-LSA Link State ID: 0.0.0.0 Originating Router: 5.1.1.1 LS Seq Number: 0x80000003 Retransmit Count: 0 Checksum: 0x6A66 Length: 40 Flags: 0x00 (-|-|-|-|-) Options: 0x000013 (-|R|-|-|E|V6) Link connected to: another Router (point-to-point) Metric: 48 Interface ID: 0x8 Neighbor Interface ID: 0x8 Neighbor Router ID: 3.1.1.1 |
ospf 89
import-route static type 1
4
001.OSPF-RIP不足-OSPF基本原理-鄰居建立情況
5
2.OSPF-網絡類型-cost計算及修改
6
3.OSPF-LSDB同步-鄰居狀态機-鄰居鄰接
7
4.OSPF-DRBDR-場景選舉配置
8.
005.OSPF-LSDB介紹-LSA類型介紹-LSA1和LSA2認識
9.
006.OSPF-通過LSA1和LSA2畫本區域内拓撲和最短路徑樹-擷取路由
10.
007.OSPF-通過LSA3計算區域間路由-解決環回口主機路由問題
11.
008.20191123-OSPF-區域間防環原則-vlink應用場景及配置
12.
009.20191123-OSPF-外部路由計算-LSA4和LSA5-Type1Type2
任務:
1.DR,BDR, 人為管理DR,BDR
2.抓OSPF 5種協定封包
3.網絡類型+單點傳播建立鄰居
4.LSA1 LSA2 畫完整拓撲圖, 畫最短路徑樹
5.抓包分析LSA1 ,LSA2, LSA3,LSA4,LSA5 資訊
6.虛連接配接,非骨幹沒有與骨幹互聯; 骨幹區域被分割
7.看的懂區域内路由擷取的過程, 區域間路由擷取的過程, 外部路由擷取的過程;
了解路由的網絡字首/子網路遮罩 開銷值怎麼來的
9:16 2019/11/24