<Router ID>
用於唯一標示OSPF路由區域內的每台路由器
沒Router ID則OSPF無法運行
兩台路由具有相同Router ID則無法正常運行
必須是IP格式
Router ID產生:
1.使用router-id指令來設定的Router ID
2.如沒使用router-id指令,則選擇loopback之間最高IP位址
3.若沒設定loopback則以實體介面最高IP位址
4.若沒設定IP位址,則無法啟動OSPF
查看Router ID:
#show ip protcol
修改Router ID:
(config)#router ospf 10
(config-router)#router-id x.x.x.x
必須重新啟動OSPF,Router ID才會更新
(config-router)#do clear ip ospf process
<OSPF預設路由更新>
靜態預設路由藉由OSPF傳出更新到其他路由器
與RIP一樣方式
設定靜態預設路由往loopback0方向:
(config)#ip route 0.0.0.0 0.0.0.0 loopback0
(config)#router ospf 10
啟動OSPF傳送預設路由
(config-router)#default-information originate
<OSPF封包>
群播位址224.0.0.5(一般使用)或224.0.0.6(傳送LS封包給DR)
Hello封包:
發現/建立鄰居
建立鄰居前,三個參數需一樣:
1.Hello間隔時間(Interval time)
2.故障時間(Dead time)
3.網路類型(network type)
DBD封包:
LS資料描述(DataBase Description)
紀錄發送端路由器的連接狀態資料庫的清單
接收端路由器比對DBD,若不同發送LSR封包
查看LSDataBase指令:
#show ip ospf databse
-CCNP
LSR封包:
連接狀態請求(LS Request)
請求DBD中任何條目有關詳細資訊
LSU封包:
連接狀態更新(LS Update)
回復LSR或主動通告鄰居新資訊
LSAck封包
回復路由器收到LSU封包的ack
查看OSPF封包:
#debug ip ospf events
網路穩定時只看得到hello封包
<OSPF建立鄰居過程狀態>
7種狀態:
1.Down state(什麼都沒)
2.ININT state(找鄰居,開始交換)
*3.Two-way state(回復Hello封包)
4.Exstart state(即將開始送DBD封包)
5.Exchang state(開始互相傳送DBD封包)
6.Loading state(若收到DBD資訊與本身不同,送出LSR封包,請求LSU)
7.Full state(完成建立)
<OSPF無法形成相鄰關係原因>
Hello送出間隔時間或Dead間隔時間不一致(EIGRP不受影響)
區域號碼(area)不一樣
IP設定錯誤
網路類型不一致
缺少或不正確的network指令
路由認證密碼不一致
修改hello時間:
※Hello Dead時間要大於送出時間
(config)#int fa0/1
(config-if)#ip ospf dead-interval 20
(config-if)#ip ospf hello-interval 5
<OSPF成本公式>
頻寬越大,成本越小(與EIGRP相同)
100M/介面的參考頻寬或108/介面的參考頻寬
Fa介面:100M/100M=1
S介面:100000/1544K=64.766取64
成本計算:
每個網路介面的OSPF成本累加
修改s0/0/0介面參考頻寬:
(config)#int s0/0/0
(config-if)#bandwidth 100
修改fa0/1介面cost:
(config)#int fa0/1
(config-if)#ip ospf cost 1000
