1、DR和BDR的選舉
雙方同時進入2-Way狀态開始選舉,選舉時間=死亡時間(40S)
(1) 首先檢查DR和BDR字段是否為空,如果都為空(0.0.0.0)表明沒有DR也沒有BDR。
(2) 先選舉出BDR(DR、BDR都為空)
① 先比較優先級,越高越優,預設是1(0不參與選舉)。如果已經選舉為DR,後手動修改優先級為0,則該路由器從DR變成DBOther。
② 如果優先級相同,比較RouterID,越大越優
③ BDR選舉出後,會自動更新為DR,重新再選舉BDR
④ 如果DR字段為空,BDR不為空,BDR會自動更新為DR,重新再選舉BDR
⑤ 如果BDR為空,DR不為空,重新再選舉BDR
(3) 預設DR、BDR是不搶占的(超過40S選舉時候後進來的Router不會改變DR和BDR)
2、如果兩個裝置之間是2-Way說明什麼?
(1) 這兩個裝置可能都不是DR或者BDR
(2) 這連個裝置都是DROther
(3) 這兩個裝置可能有問題
3、鄰接的建立
(1) R1和R2都為DOWN狀态
(2) R1收到Neighbor字段為空的Hello封包(R1變為Init狀态)
(3) R1發送Neighbor字段為R2的RouterID的Hello封包
(4) R2收到Neighbor字段為R2的RouterID的Hello封包(R2變為2Way狀态)
(5) R2發送Neighbor字段為R1的RouterID的Hello封包
(6) R1收到Neighbor字段為R1的RouterID的Hello封包(R1變為2Way狀态)
(7) R1和R2建立鄰居成功(進入Exstart狀态)
(8) R1和R2互相發送I位為1,M位為1,MS位為1的空DBD封包。
(9) R1和R2收到對方的空DBD封包後,選舉主從。(RouterID大的為主,假設R2為主)(進入ExChange狀态)
(10) R1向R2發送DBD摘要資訊(MS=0),确認号為剛收到的空DBD封包的确認号
(11) R2向R1發送DBD摘要資訊(MS=1),确認号為上一個确認号+1
(12) R1向R2發送空DBD封包,表示确認收到,确認号為剛收到的DBD封包的确認号(M=0,表示後面沒有DBD封包了)(進入Loading狀态)
(13) 交換LSR、LSU、LSA、LSACK資訊
(14) 鄰接建立(進入FULL狀态)
4、OSPF有兩種确認機制:
(1) 隐示确認(主從序列号)
(2) 顯式确認(lsr lsu lsack )
5、DBD封包的作用:
(1) 選舉主從
① 第一個DBD封包為空,隻用來選舉主從
② 主從的選舉規則:
1) 比較RouterID,大的為主
③ 隐示确認:通過主序列号進行确認:如果主裝置收到一條DBD的回複封包,裡邊的序列号是自己之前發送的,就認為之前的DBD對端已經收到(主從序列号)
(2) 互動LSA摘要資訊
6、ospf在不同的網絡中
HELLO(s) | DEAD(s) | DBD | LSR | LSU | LSACK | DR,BDR選舉 | |
---|---|---|---|---|---|---|---|
NBMA | 30(單點傳播) | 120 | 單點傳播 | 單點傳播 | 單點傳播 | 單點傳播 | 需要 |
點到多 | 30(多點傳播) | 120 | 多點傳播 | 單點傳播 | 單點傳播 | 單點傳播 | 不需要 |
廣播 | 10(多點傳播) | 40 | 單點傳播 | 單點傳播 | 單點傳播、多點傳播 | 單點傳播、多點傳播 | 需要 |
點到點 | 10(多點傳播) | 40 | 多點傳播 | 多點傳播 | 多點傳播 | 多點傳播 | 不需要 |
鄰居或鄰接是否可以建立 | 如果修改HELLO時間 | 是否有路由 | ||
---|---|---|---|---|
廣播、P2P | 可以建立 | 不需要 | 沒有(LSA有關系) | |
廣播、NBMA | 不可以 | 修改也無法建立 | 沒有 | 鄰居無法建立的原因是與HELLO的目的位址有關(廣播類型多點傳播和NBMA是單點傳播) |
廣播、P2M | 不可以 | 修改後鄰居可以建立 | 沒有路由 | |
P2P、P2M | 不可以 | 修改後鄰居可以建立 | 有 | |
NBMA、P2P |
7、接口狀态機:
(1) 廣播、NBMA:down、waiting、loopback
(2) P2P、P2M:down、P2P