SlideShare a Scribd company logo
OSPF 學習心得


首先在開始 OSPF 之前要先介紹一下一筆 Route 在 Router 身上是如何產生的。其
實很簡單,在 Router 上的 interface 我們會給一個 IP 位址 ,因為 Routing 是看 IP
位址來做的。所以在 Junos 中,介面內給了兩個 IP 位址




然後再看一下路由表會發現產生如下情形




IP/32 的為 Local,代表本機介面上的 IP 位,網段/24 的為 Direct,代表直連的 IP
位址範圍;為什麼要有網段這一筆 route 就是說,今天對面不管是在這同一網段
的 IP 位址,只要不跟 Local 重複到,就可以由 em0.0 出去。因此如果有三個介面
都有 IP 位址的話就會看到 touting table 上面會有六筆 route。所以路由表就是這麼
產生的,但是在 CISCO 上面則不會有 Local 的這筆 route 出現。
OSPF 建立流程


OSPF 的五種封包
 Hello
  發現以及維持鄰居關係,在多條路徑下選擇 DR、DBR。
 DBD (DataBase Description)
  由 DBD 攜帶 LSA 的 Header 跟鄰居描述自己的 LADB。
  由 DBD 交換選擇 Master。
 LSR Link State Request
  攜帶 LSA Header 的鄰居請求相對應的 LSA。
 LSU Link State Update
 一個或多個 LSA 組成 LSU(LSA Flood)
LSACK 確認
 對收到的 LSA 的確認(帶 LSA Header)


OSPF 的建立
交換階段
  啟動 OSPF 後,A、B 兩台路由器互發 hello,A 收到 B 發過來的 hello 後,進行
確認,把 B 加入自己的鄰居表,形成 one way。B 收到 A 發過來 hello 包,進行確
認,加入其鄰居表,形成 two way。
  形成 two way 後,如果是 P2P,會自動形成鄰居關係,如果是多路徑時,要選
DR、BDR,為了減少過多的鄰居,不允許 DRother 之間形成鄰接關係,只允許
DRother 和 DR、BDR 成為鄰居關係,只有形成鄰接關係後,才能進行後續動作。
  路由器每十秒發送一次 hello 在來維持鄰居關係,在 nonbroadcast link 則每 30
秒發一次,到達一定的時間後(為週期的 4 倍)沒有收到鄰居來的 hello,宣佈失
效。


路由發現
  透過 DBD 選主要路由器,DBD 攜帶 LSA 表頭向鄰居描述自己的 LSDB,發送
LSR(攜帶 LSA 表頭)向鄰居請求相對應的 LSA,鄰居用 LSU(帶 LSA)回應。
收到 LSU 後,用 LSACK 進行確認。
路由選擇
 成為 FULL 狀態後,每個 router 以自己為主,以 LSDB 的 LSA 為元素獨立進行
了 SPF 運算,以最少 COST 為 metric,選擇最佳路徑放入路由表。此時路由表同
步完成。
收斂過程
 當網路拓撲改變,產生對應的 LSA,LSA 通過鄰居 Flood,收到該 LSA 的路由
器等幾秒(5 秒)後進行 SPF 運算,決定是否更新路由表。
Area
在 OSPF 中 我們可以劃分一個 Area 或是一個 Area 以上 為什麼要劃分多個 Area
        ,                          ,
呢?那是因為,我們知道 OSPF 在交換路由資訊時,會以 LSA 來同步路由資訊,
如果沒有區分 Area,那麼就會有很多很多的 LSA 在 Area 內流竄,這麼一來網路
的頻寬就會受到影響,因此使用 Area 來限制 LSA 的傳遞,能有效的減少 LSA 封
包的量,也可以減少 Route 的筆數。


Backbone router
在 Backbone Area(Area 0)的 Router 為 Backbone router。
ABR(Area Border Router)
連結 Backbone Area 與其他 Area 之間的 Router
ASBR(Autonomous System Border Router)
連接其他 protocol 或是直連網段。



LSA


LSA 全名為 Link State Advertisement,它是用來描述所有的連結、介面還有鄰居的
狀態訊息。OSPF 中的路由資訊、鄰居資訊,都是封裝在 LSA 中再發送出去。
LSA 有多種 type 如下表。




LSA 是建立 LSDB 的基礎,每一個 LSA 都包含序列號、存活時間、檢查碼等。
一台路由器每發一個 LSA 後,每產生一筆該 LSA 的複製就在序列號上加 1,號
碼從 0x80000001 到 0xffffffff,數值越大越新。
一個 LSA 停留在 LSDB 中存活時間會累計至 3600 秒然後歸零重新開始,每五分
鐘會進行 checksum 檢驗以確保 LSA 沒有損壞。同一區域內各 Router 的 LSDB 相
同。
以下為幾種較常見的 type 說明。
Type 1 Router LSA
在啟動 OSPF 的 Router 中,每一台都會產生 type1 LSA,並且只會在同一個 Area
內 flood 到目的地 224.0.0.5。Type 1 LSA 會告訴同 Area 的 router 說,我的 Link 有
幾條,要如何到達我這 Link、cost 多少;若某顆 Router(DR Other)路由改變也會再
發往 224.0.0.6 給 DR 更新資訊。如果這顆 Router 為 ASBR,則會在其 LSA 標頭中
的 Flag 改為 E-bit 宣告出去。若 ABR 收到此帶有 E-bit 的 Type 1,則會發出 Type 4
告知大家誰是 ASBR。
Flag

位元     名稱

W      此路由器為 wild-card 多點傳播接收端

V      此路由器為虛鏈路的終端,而該虛擬鏈路係使用路由器的區域作為轉
       送區域

E      此路由器為 ASBR

B      此路由器為 ABR
Type 2 Network LSA
Network LSA 是由 DR 以 224.0.0.5 為發出目的位址給非 DR,只會在自己的 Area
Flood。裡面記錄了與 DR 建立 full 鄰居關係的 Router 有多少台,以及這些 Router
的 Router ID。如下圖範例
Type 3 Network Summary LSA
由於 Type 1 的資訊只能在自己所在的 Area 上 Flood,那麼要跨 Area 時就必須由
ABR 將資訊以 Type 3 LSA 傳到不同的 Area,若啟動了 Summary 功能則可以減少
route 的筆數。以下為範例
Type 4 ASBR Summary LSA
此種 LSA 是由 ABR 產生 是為了要告訴自己本身的 Area 中的 Router 要如何走才
                     ,
能到達 ASBR,意思就是告知 ASBR 是哪一顆 Router,Type 4 LSA 只能在自己的
Area Flood 也就是 Area 0。以下為範例




Type3 與 Type4 表頭格式是相同的 只不過有幾處字段內容不一樣 在“Link State
                      ,             。
ID” 這個段中,Type3 是網路或子網的 IP,而 Type4 則是 ASBR 的 Router ID
Type 5 AS External LSA
由於 ASBR 連結在非 OSPF 協定與 OSPF 協定區域之間,如果要把非 OSPF 的協
定或是直連的網段資訊導入 OSPF 內傳遞 則 ASBR 會以 Type 5 來告知所有 Router,
                             ,
是唯一除 Stub、Total Stub、NSSA 以外的所有 Area 都不會限制的 LSA。以下為範
例
Type 7 NSSA External LSA
Type 7 LSA 和 Type 5 LSA 內容一樣,只不過 Flood 區域不同,並且是可以相互轉
換 在 NSSA Area 中 ASBR 將外部路由資訊封裝進 Type 7 LSA ,
 。                ,                           設置其 P-Bit 位
為 1,使其在 NSSA Area Flood。在 ABR 那裡會將 P-Bit 位改為 0,由 Type 7 LSA
轉換為 Type LSA 5,再傳到 OSPF 其他的 Area。
LAB 拓樸




OSPF 特殊 Area:
OSPF 有各種特殊區域來提供整個 OSPF 架構更有彈性的運用這些 Area 的特性,
來滿足一些不同的需求,下面將介紹各種 Area Type。
Standard Area
最原始的 Area,能允許各種 Type 自己的規則。
BackBone Area
骨幹 Area,為 Area0,所有其他非骨 Area 域必須和骨幹 Area 直接相連。骨幹 Area
的功能是在不同的非骨幹 Area 之間分發路由資訊。
Stub Area
在 Stub Area 內,不允許 Type 5 LSA 進入,因為攔截了外部的路由資訊,因此如
果要對外的路由,可以加上一筆預設路由。如果路由表充滿了很多外來路徑,相
對地 Type 5 LSA 也很多,設置 Stub Area 可以使得路由筆數減少,減少了記憶體
使用率,當然也省掉了 Type 5 LSA。PS:可使用指令讓 ABR 用一個 Type 3 LSA
傳遞一筆預設路由給其他路由器學到這筆而不用自己新增預設路由。
Totally stubby Area
更全面性的減少路由筆數 因為連 Type 3 LSA 都攔截了 效果比 Stub Area 更好。
                    ,            ,
同樣也可讓 ABR 將預設路由用一個 Type 3 LSA 傳給其他 Router,而也就只有一
個 Type 3 LSA 會在 LSDB 內。




NSSA
如果要在 Stub Area 內,增加一台 ASBR,但是又因為 Stub Area 無法讓外部路由
經由 Type 5 LSA 在 Area 內流竄,因此使用 NSSA 能以 Type 7 LSA 將外部路由導
入 Stub Area 內 ,就要用 NSSA。
Total NSSA
顧名思義,也是能較充份的將路由筆數減少,因為不允許 Type 3 LSA 在此區域。




問題:發現使用不同指令,Default Route 會使用 Type3 or Type7 來送出去,但不
   知道其中有甚麼道理。

More Related Content

Viewers also liked

Apresentação de referências
Apresentação de referênciasApresentação de referências
Apresentação de referências
leticiag94
 
Futuver Pecha Kucha Night Idepa 14 10 09
Futuver Pecha Kucha Night Idepa 14 10 09Futuver Pecha Kucha Night Idepa 14 10 09
Futuver Pecha Kucha Night Idepa 14 10 09
FUTUVER
 
C10 software testing implementation
C10 software testing   implementationC10 software testing   implementation
C10 software testing implementation
Ika Nurkasanah
 
Desayunos
DesayunosDesayunos
Desayunos
Magus Cevallos
 
Prancha de referências
Prancha de referênciasPrancha de referências
Prancha de referências
leticiag94
 
Ev efetivo 004
Ev efetivo 004Ev efetivo 004
Ev efetivo 004
Vinicio Pacifico
 
Ingeniería de la Productividad
Ingeniería de la ProductividadIngeniería de la Productividad
Ingeniería de la Productividad
Juan Carlos Fernandez
 
Teologia do at--texto3
Teologia do at--texto3Teologia do at--texto3
Teologia do at--texto3
Vinicio Pacifico
 
Objetos de cena - Herança
Objetos de cena - HerançaObjetos de cena - Herança
Objetos de cena - Herança
leticiag94
 
Blocking situs pake web proxy
Blocking situs pake web proxyBlocking situs pake web proxy
Blocking situs pake web proxyHamdan Ripai
 
Texto 1 introducao-a_teologia_da_missao
Texto 1 introducao-a_teologia_da_missaoTexto 1 introducao-a_teologia_da_missao
Texto 1 introducao-a_teologia_da_missao
Vinicio Pacifico
 
Presevl
PresevlPresevl
Presevl
viktrmlt
 
Basherri sarea lanpostuak sustatzeko ponentzirako proposamena
Basherri sarea   lanpostuak sustatzeko ponentzirako proposamenaBasherri sarea   lanpostuak sustatzeko ponentzirako proposamena
Basherri sarea lanpostuak sustatzeko ponentzirako proposamenaRafaela Romero
 
Comportamientos
ComportamientosComportamientos
Comportamientos
Marien Riaño
 
Plano conecte se
Plano conecte se Plano conecte se
Plano conecte se
Fernando Conte
 
Operacions amb fraccions
Operacions amb fraccionsOperacions amb fraccions
Operacions amb fraccionsPereDavid
 
Igec
IgecIgec
Documeto 26
Documeto 26Documeto 26
Documeto 26
enriquebonilla2603
 

Viewers also liked (19)

Apresentação de referências
Apresentação de referênciasApresentação de referências
Apresentação de referências
 
Futuver Pecha Kucha Night Idepa 14 10 09
Futuver Pecha Kucha Night Idepa 14 10 09Futuver Pecha Kucha Night Idepa 14 10 09
Futuver Pecha Kucha Night Idepa 14 10 09
 
C10 software testing implementation
C10 software testing   implementationC10 software testing   implementation
C10 software testing implementation
 
Desayunos
DesayunosDesayunos
Desayunos
 
Prancha de referências
Prancha de referênciasPrancha de referências
Prancha de referências
 
Ev efetivo 004
Ev efetivo 004Ev efetivo 004
Ev efetivo 004
 
Ingeniería de la Productividad
Ingeniería de la ProductividadIngeniería de la Productividad
Ingeniería de la Productividad
 
PICASA
PICASAPICASA
PICASA
 
Teologia do at--texto3
Teologia do at--texto3Teologia do at--texto3
Teologia do at--texto3
 
Objetos de cena - Herança
Objetos de cena - HerançaObjetos de cena - Herança
Objetos de cena - Herança
 
Blocking situs pake web proxy
Blocking situs pake web proxyBlocking situs pake web proxy
Blocking situs pake web proxy
 
Texto 1 introducao-a_teologia_da_missao
Texto 1 introducao-a_teologia_da_missaoTexto 1 introducao-a_teologia_da_missao
Texto 1 introducao-a_teologia_da_missao
 
Presevl
PresevlPresevl
Presevl
 
Basherri sarea lanpostuak sustatzeko ponentzirako proposamena
Basherri sarea   lanpostuak sustatzeko ponentzirako proposamenaBasherri sarea   lanpostuak sustatzeko ponentzirako proposamena
Basherri sarea lanpostuak sustatzeko ponentzirako proposamena
 
Comportamientos
ComportamientosComportamientos
Comportamientos
 
Plano conecte se
Plano conecte se Plano conecte se
Plano conecte se
 
Operacions amb fraccions
Operacions amb fraccionsOperacions amb fraccions
Operacions amb fraccions
 
Igec
IgecIgec
Igec
 
Documeto 26
Documeto 26Documeto 26
Documeto 26
 

Ospf learning by Tarry

  • 1. OSPF 學習心得 首先在開始 OSPF 之前要先介紹一下一筆 Route 在 Router 身上是如何產生的。其 實很簡單,在 Router 上的 interface 我們會給一個 IP 位址 ,因為 Routing 是看 IP 位址來做的。所以在 Junos 中,介面內給了兩個 IP 位址 然後再看一下路由表會發現產生如下情形 IP/32 的為 Local,代表本機介面上的 IP 位,網段/24 的為 Direct,代表直連的 IP 位址範圍;為什麼要有網段這一筆 route 就是說,今天對面不管是在這同一網段 的 IP 位址,只要不跟 Local 重複到,就可以由 em0.0 出去。因此如果有三個介面 都有 IP 位址的話就會看到 touting table 上面會有六筆 route。所以路由表就是這麼 產生的,但是在 CISCO 上面則不會有 Local 的這筆 route 出現。
  • 2. OSPF 建立流程 OSPF 的五種封包 Hello 發現以及維持鄰居關係,在多條路徑下選擇 DR、DBR。 DBD (DataBase Description) 由 DBD 攜帶 LSA 的 Header 跟鄰居描述自己的 LADB。 由 DBD 交換選擇 Master。 LSR Link State Request 攜帶 LSA Header 的鄰居請求相對應的 LSA。 LSU Link State Update 一個或多個 LSA 組成 LSU(LSA Flood) LSACK 確認 對收到的 LSA 的確認(帶 LSA Header) OSPF 的建立 交換階段 啟動 OSPF 後,A、B 兩台路由器互發 hello,A 收到 B 發過來的 hello 後,進行 確認,把 B 加入自己的鄰居表,形成 one way。B 收到 A 發過來 hello 包,進行確 認,加入其鄰居表,形成 two way。 形成 two way 後,如果是 P2P,會自動形成鄰居關係,如果是多路徑時,要選 DR、BDR,為了減少過多的鄰居,不允許 DRother 之間形成鄰接關係,只允許 DRother 和 DR、BDR 成為鄰居關係,只有形成鄰接關係後,才能進行後續動作。 路由器每十秒發送一次 hello 在來維持鄰居關係,在 nonbroadcast link 則每 30 秒發一次,到達一定的時間後(為週期的 4 倍)沒有收到鄰居來的 hello,宣佈失 效。 路由發現 透過 DBD 選主要路由器,DBD 攜帶 LSA 表頭向鄰居描述自己的 LSDB,發送 LSR(攜帶 LSA 表頭)向鄰居請求相對應的 LSA,鄰居用 LSU(帶 LSA)回應。 收到 LSU 後,用 LSACK 進行確認。 路由選擇 成為 FULL 狀態後,每個 router 以自己為主,以 LSDB 的 LSA 為元素獨立進行 了 SPF 運算,以最少 COST 為 metric,選擇最佳路徑放入路由表。此時路由表同 步完成。 收斂過程 當網路拓撲改變,產生對應的 LSA,LSA 通過鄰居 Flood,收到該 LSA 的路由 器等幾秒(5 秒)後進行 SPF 運算,決定是否更新路由表。
  • 3. Area 在 OSPF 中 我們可以劃分一個 Area 或是一個 Area 以上 為什麼要劃分多個 Area , , 呢?那是因為,我們知道 OSPF 在交換路由資訊時,會以 LSA 來同步路由資訊, 如果沒有區分 Area,那麼就會有很多很多的 LSA 在 Area 內流竄,這麼一來網路 的頻寬就會受到影響,因此使用 Area 來限制 LSA 的傳遞,能有效的減少 LSA 封 包的量,也可以減少 Route 的筆數。 Backbone router 在 Backbone Area(Area 0)的 Router 為 Backbone router。 ABR(Area Border Router) 連結 Backbone Area 與其他 Area 之間的 Router ASBR(Autonomous System Border Router) 連接其他 protocol 或是直連網段。 LSA LSA 全名為 Link State Advertisement,它是用來描述所有的連結、介面還有鄰居的 狀態訊息。OSPF 中的路由資訊、鄰居資訊,都是封裝在 LSA 中再發送出去。 LSA 有多種 type 如下表。 LSA 是建立 LSDB 的基礎,每一個 LSA 都包含序列號、存活時間、檢查碼等。 一台路由器每發一個 LSA 後,每產生一筆該 LSA 的複製就在序列號上加 1,號 碼從 0x80000001 到 0xffffffff,數值越大越新。
  • 4. 一個 LSA 停留在 LSDB 中存活時間會累計至 3600 秒然後歸零重新開始,每五分 鐘會進行 checksum 檢驗以確保 LSA 沒有損壞。同一區域內各 Router 的 LSDB 相 同。 以下為幾種較常見的 type 說明。 Type 1 Router LSA 在啟動 OSPF 的 Router 中,每一台都會產生 type1 LSA,並且只會在同一個 Area 內 flood 到目的地 224.0.0.5。Type 1 LSA 會告訴同 Area 的 router 說,我的 Link 有 幾條,要如何到達我這 Link、cost 多少;若某顆 Router(DR Other)路由改變也會再 發往 224.0.0.6 給 DR 更新資訊。如果這顆 Router 為 ASBR,則會在其 LSA 標頭中 的 Flag 改為 E-bit 宣告出去。若 ABR 收到此帶有 E-bit 的 Type 1,則會發出 Type 4 告知大家誰是 ASBR。
  • 5. Flag 位元 名稱 W 此路由器為 wild-card 多點傳播接收端 V 此路由器為虛鏈路的終端,而該虛擬鏈路係使用路由器的區域作為轉 送區域 E 此路由器為 ASBR B 此路由器為 ABR
  • 6. Type 2 Network LSA Network LSA 是由 DR 以 224.0.0.5 為發出目的位址給非 DR,只會在自己的 Area Flood。裡面記錄了與 DR 建立 full 鄰居關係的 Router 有多少台,以及這些 Router 的 Router ID。如下圖範例
  • 7. Type 3 Network Summary LSA 由於 Type 1 的資訊只能在自己所在的 Area 上 Flood,那麼要跨 Area 時就必須由 ABR 將資訊以 Type 3 LSA 傳到不同的 Area,若啟動了 Summary 功能則可以減少 route 的筆數。以下為範例
  • 8. Type 4 ASBR Summary LSA 此種 LSA 是由 ABR 產生 是為了要告訴自己本身的 Area 中的 Router 要如何走才 , 能到達 ASBR,意思就是告知 ASBR 是哪一顆 Router,Type 4 LSA 只能在自己的 Area Flood 也就是 Area 0。以下為範例 Type3 與 Type4 表頭格式是相同的 只不過有幾處字段內容不一樣 在“Link State , 。 ID” 這個段中,Type3 是網路或子網的 IP,而 Type4 則是 ASBR 的 Router ID
  • 9. Type 5 AS External LSA 由於 ASBR 連結在非 OSPF 協定與 OSPF 協定區域之間,如果要把非 OSPF 的協 定或是直連的網段資訊導入 OSPF 內傳遞 則 ASBR 會以 Type 5 來告知所有 Router, , 是唯一除 Stub、Total Stub、NSSA 以外的所有 Area 都不會限制的 LSA。以下為範 例
  • 10. Type 7 NSSA External LSA Type 7 LSA 和 Type 5 LSA 內容一樣,只不過 Flood 區域不同,並且是可以相互轉 換 在 NSSA Area 中 ASBR 將外部路由資訊封裝進 Type 7 LSA , 。 , 設置其 P-Bit 位 為 1,使其在 NSSA Area Flood。在 ABR 那裡會將 P-Bit 位改為 0,由 Type 7 LSA 轉換為 Type LSA 5,再傳到 OSPF 其他的 Area。
  • 11. LAB 拓樸 OSPF 特殊 Area: OSPF 有各種特殊區域來提供整個 OSPF 架構更有彈性的運用這些 Area 的特性, 來滿足一些不同的需求,下面將介紹各種 Area Type。 Standard Area 最原始的 Area,能允許各種 Type 自己的規則。 BackBone Area 骨幹 Area,為 Area0,所有其他非骨 Area 域必須和骨幹 Area 直接相連。骨幹 Area 的功能是在不同的非骨幹 Area 之間分發路由資訊。 Stub Area 在 Stub Area 內,不允許 Type 5 LSA 進入,因為攔截了外部的路由資訊,因此如 果要對外的路由,可以加上一筆預設路由。如果路由表充滿了很多外來路徑,相 對地 Type 5 LSA 也很多,設置 Stub Area 可以使得路由筆數減少,減少了記憶體 使用率,當然也省掉了 Type 5 LSA。PS:可使用指令讓 ABR 用一個 Type 3 LSA 傳遞一筆預設路由給其他路由器學到這筆而不用自己新增預設路由。
  • 12. Totally stubby Area 更全面性的減少路由筆數 因為連 Type 3 LSA 都攔截了 效果比 Stub Area 更好。 , , 同樣也可讓 ABR 將預設路由用一個 Type 3 LSA 傳給其他 Router,而也就只有一 個 Type 3 LSA 會在 LSDB 內。 NSSA 如果要在 Stub Area 內,增加一台 ASBR,但是又因為 Stub Area 無法讓外部路由 經由 Type 5 LSA 在 Area 內流竄,因此使用 NSSA 能以 Type 7 LSA 將外部路由導 入 Stub Area 內 ,就要用 NSSA。
  • 13. Total NSSA 顧名思義,也是能較充份的將路由筆數減少,因為不允許 Type 3 LSA 在此區域。 問題:發現使用不同指令,Default Route 會使用 Type3 or Type7 來送出去,但不 知道其中有甚麼道理。