HCNP Routing&Switching之OSPF LSA型別(二)

1874發表於2021-09-03

  前文我們瞭解了OSPF的一類、二類、三類LSA,回顧請參考https://www.cnblogs.com/qiuhom-1874/p/15209829.html;今天我們來聊一聊OSPF的四類和五類LSA;

  在說四類和五類LSA之前,我們先來說一說ospf中外部路由引入;所謂路由引入是指原本不屬於ospf程式的路由,通過注入的方式,讓其ospf程式能夠學習到相關路由;我們把引入外部路由的路由器叫ASBR(自制系統邊界路由器);

  提示:如上圖所示,A公司內部跑ospf,RTA上配置了一條靜態路由,目標網路是達到B公司的網路10.1.60.0/24,下一跳是B公司的路由器RTF;對於A公司來說,除R他的其他路由器要想和B公司網路通訊,該怎麼辦呢?我們知道不同網段的主機通訊,最基礎的就是要有對應的路由;而配置路由的方式有兩種,一種是靜態配置;但靜態配置這種方式太low,而且效率低下容易出錯;第二種方式就是動態學習;對於動態學習來說,我們怎麼將到達B公司的靜態路由引入到ospf中呢?此時我們可以在R他的OSPF程式下使用import-router static命令將RTA上的靜態路由引入到ospf中,讓其他OSPF路由器能夠學習到;

  實驗:如下拓撲,配置ospf

  提示:對於R3來說,lo3並不在ospf程式中宣告;我們通過匯入的方式R1和R2能夠學習到3.3.3.3的路由;

  R1的配置

HCNP Routing&Switching之OSPF LSA型別(二)
sys
sys R1
int g0/0/0
ip add 12.0.0.1 24
ospf 1 router-id 1.1.1.1
area 0
net 12.0.0.0 0.0.0.255
View Code

  R2的配置

HCNP Routing&Switching之OSPF LSA型別(二)
sys
sys R2
int g0/0/0
ip add 12.0.0.2 24
int g0/0/1
ip add 23.0.0.2 24
ospf 1 router-id 2.2.2.2
area 0
net 12.0.0.0 0.0.0.255
area 1 
net 23.0.0.0 0.0.0.255
View Code

  R3的配置

HCNP Routing&Switching之OSPF LSA型別(二)
sys 
sys R3
int g0/0/0
ip add 23.0.0.3 24
int lo 3
ip add 3.3.3.3 32
ospf 1 router-id 3.3.3.3
area 1
net 23.0.0.0 0.0.0.255
View Code

  在R1上檢視ospf路由表

  提示:可以看到R1上沒有到達3.3.3.3的路由;此時如果R1要想和3.3.3.3通訊,除了寫靜態路由外,我們也可以將R3上的直連路由匯入到ospf中;

  在R3上匯入直連路由至ospf中

  提示:我們在R3的ospf程式下使用import-route dir命令就直接將R3的直連路由匯入到ospf中,此時對於R1和R2來說就能通過ospf學習到到達3.3.3.3的路由;

  驗證:在R1或R2上檢視ospf路由表,看看是否學習到3.3.3.3的路由呢?

  提示:可以看到此時R1和R2都學習到了對應到達3.3.3.3的路由;從上面的顯示可以看到對於3.3.3.3這條路由來講,並不是原生ospf中的路由,而是通過匯入的方式學習到的,所以它這裡直接告訴我們3.3.3.3是外部路由(ase);

  在R1上抓包,看看對應LSA內容

  提示:我們在R1上抓包,抓到了2個LSA,其型別為AS-External-LAS;該LSA描述了目標網段,宣告者以及掩碼;感覺和3類LSA沒有區別;其實該LSA本質上和3類LSA沒有什麼不同,作用都是傳遞路由,不同的是,三類LSA產生者是ABR,從一個區域到另一個區域,對應ABR會將對應LSA的宣告者進行修改;而5類LSA的產生者是ASBR,從一個區域到另一個區域對應宣告者並不會變化,即五類LSA的泛洪範圍是整個AS內部;那麼問題來了,對於不是和ASBR同區域的路由器怎麼知道ASBR呢?如上圖,R1和R3不再同一個區域,那麼R1怎麼知道R3的呢?

  提示:我們在R1上除了抓到了五類LSA,還抓到了上圖中LSA型別為ASBR-summary-LSA的LSA;其中宣告者是R2,內容就是描述了R3的router id;其實該LSA的作用很簡單,我們上面描述了和ASBR不在同區域的其他區域路由器光憑五類LSA並不能找到ASBR;而4類LSA的作用就是輔助和asbr不在同區域的其他路由器找到ASBR;當ospf路由器收到此類LSA,它會把對應從ASBR學習到的路由,下一跳指向4類LSA宣告者;這樣一來對於和ASBR不在同區域的其他路由器就能知道怎麼去找到ASBR;簡單講五類LSA就是在整個as內部傳播,其宣告者為ASBR;作用就是描述外部路由資訊;4類LSA的作用是輔助和ASBR不在同一區域的其他路由找到ASBR;其宣告者為ABR;傳播範圍是ABR所連線的區域(除ASBR所在區域);

  在R3上抓包,看看是否有4類lsa產生?

  提示:可以看到在R3上抓包並沒有4類LSA產生,其原因是R3就是ASBR;其實和R3 在同一區域的其他路由器也不會抓到4類LSA,因為對於和ASBR在同區域的路由器,可以根據一類LSA就能找到對應ASBR,根本用不到4類LSA的輔助;這裡還需要注意一點,五類LSA和3類LSA一樣,一條LSA只能描述一條網段的路由,所以有多少外部路由引入,對應就會有幾條5類LSA;

  在R1上檢視lsdb

  在R2上檢視傳送的4類LSA內容

  提示:lsid用於描述ASBR的router id;adv rtr 用於描述產生4類LSA的abr的router id;

  在R3上檢視自己傳送的五類LSA

  提示:五類LSA中lsid是用來描述對應目標網路地址,adv rtr用來描述ASBR的router id,net mask用來描述對應目標網路的子網掩碼;

  總結:4類和5類LSA只會有外部路由引入時才會產生,其中5類LSA是由asbr產生,傳播範圍是整個AS(宣告者不會發生變化);其作用是描述外部路由資訊,一條LSA只能描述一個網段的路由;對於4類LSA來說,它是由abr產生,傳播範圍是abr所在區域(除asbr所在區域),當其他區域ABR收到4類LSA時,對應ABR會像3類LSA一樣處理,修改宣告者,然後再向對應區域泛洪;4類LSA的作用是描述怎樣能找到ASBR,4類LSA只會產生在非asbr所在區域;

相關文章