路由技術:
二層(數據鏈路層)——交換機:mac地址、mac地址表(轉發數據的依據)。
三層(網絡層)——路由器:IP地址、路由表(數據轉發表)。
一、路由表的主要作用:
決定設備的三層數據包的轉發關系。目標網絡能匹配路由表,從相應接口轉發;若不能匹配路由表,則drop(丟棄)掉該數據包,不會像交換機那樣泛洪(廣播)。
二、路由協議的分類
路由協議:靜態路由——管理員手工配置路由
動態路由——路由器間自動學習路由
1.局域網內——IGP(內部網關路由協議)
距離矢量路由協議——RIPV1、RIPV2、EIGRP(思科)
鏈路狀態路由協議——OSPF、ISIS(LS)
2.互聯網 ——EGP(外部網關路由協議)——BGPV4(版本4)
路由傳遞依據路由表
靜態路由的優點:運行穩定,節省設備鏈路開銷
缺點:對大型網絡來說,工作量較大,拓撲一旦發生了改變,維護量變大。
建議:小型網絡使用靜態路由(總共配置少於十條路由),中大型網絡使用動態路由。
路由:從源主機到目標主機的轉發過程
路由器的作用:
1、能夠將數據包轉發到正確的目的地
2、轉發過程中選擇最佳路徑的設備
選取最優路由時的標准:
1、子網掩碼長度最長的最優先匹配
2、選取路由協議中優先級最小的最優先匹配
DIRECT |
0 |
OSPF |
10 |
IS-IS |
15 |
STATIC |
60 |
RTP |
100 |
OSPF ASE |
150(OSPF和RIP重分發路由時,由RIP學習進OSPF路由協議的路由) |
OSPF NSSA |
150 |
IBGP |
256 |
EBGP |
256 |
3、相同路由協議的情況下,選取metric值最小的最優先匹配。
每種協議metric值定義的不相同,靜態路由和路由優先級有關,這個是人為指定的,RIP協議和跳數有關,跳數越小越優;OSPF協議和帶寬有關,帶寬最大最優先;metric時用來判定鏈路質量優劣的
4、如果以上都沒有路由可以匹配得上,就匹配默認路由
路由表的定義:路由器中維護的路由條目的集合
路由表的形成:
1、直連網段:配置IP地址、端口UP狀態、形成直連路由
2、非直連網段:對於非直連的網段,需要靜態路由或動態路由,將網段添加到路由表中
默認路由-匹配的是所有網段:
1、當路由器在路由表中找不到目標網絡的路由條目時,路由器把請求轉發到默認路由接口
2、默認路由時靜態路由的一種特殊方式,它屬於靜態路由的一種,使用它是有條件的,只能在末梢網絡中使用
浮動路由:
指的是配置兩條靜態路由,默認選取鏈路質量優(帶寬大的)作為主路經,當主路經出現故障時,由帶寬較小的備份路由頂替,保持網絡的不中斷
路由器轉發數據包的封裝過程:源目IP保持不變,源目MAC隨着傳輸設備不同而不同
交換機與路由器對比 |
|
交換機工作在數據鏈路層 |
路由器工作在網絡層 |
①根據“MAC地址表”轉發數據 |
①根據“路由表”轉發數據 |
②硬件轉發 |
②路由選擇 |
|
③路由轉發 |
三、動態路由
動態路由:不需要手工寫路由,路由器之間能夠自己互相學習(基於某種路由協議實現)
特點:
①減少了管理任務
②占用了網絡帶寬
動態路由協議的概述:鄰居路由器之間路由協議應保持一致
度量值:跳數、帶寬、負載、時延、可靠性、成本
收斂:所有運行同一種路由協議的路由器使所有路由表都達到一致狀態的過程
按照路由執行的算法分類
1、距離矢量路由協議
依據從源網絡到目標網絡所經過的路由器的個數選擇路由
RIP、IGRP
2、鏈路狀態路由協議
綜合考慮從源網絡到目標網絡的各條路徑的情況選擇路由
OSPF、IS-IS
一、RIP路由協議工作原理
1、RIP 是距離矢量路由協議
2、RIP的概述
①定期更新(30s)
②鄰居
③廣播更新、組播更新
④全路由表更新
RIP的度量值與更新時間
1、RIP度量值為跳數:最大跳數為15跳,16跳為不可達
2、RIP更新時間:每隔30s發送路由更新消息,UDP520端口
3、RIP路由更新消息:發送整個路由表消息
路由環路的原因:定期更新,更新周期長
執行水平分割可以阻止路由環路的發生
1、從一個接口學習到的路由消息,不再從這個接口發送出去
2、同時也能減少路由更新消息占用的鏈路帶寬資源
RIPV1和RIPV2
版本 |
RIPV1 |
RIPV2 |
區別 |
有類路由協議 |
無類路由協議 |
廣播更新(255.255.255.255) |
組播更新(224.0.0.9) |
|
不支持VLSM |
支持VLSM |
|
自動路由匯總,不可關閉 |
自動匯總可關閉,可手工匯總 |
|
不支持不連續子網 |
支持不連續子網 |
二、OSPF協議
OSPF是鏈路狀態路由協議(鏈路狀態表)
相比較RIP,OSPF擁有觸發性更新、周期性更新快等優點
在自治系統(AS)內:內部網關協議(IGP)
在自治系統(AS)間:外部網關協議(BGP)
OSPF工作過程
三張表:鄰居列表
鏈路狀態數據庫
路由表
過程:建立鄰接關系----鏈路狀態數據庫----最短路徑樹----路由表
OSPF區域:分為骨干區域(Area 0)、分骨干區域(Area 1/2/3...)
為了適應大型的網絡,OSPF在AS內划分多個區域,每個OSPF路由器只維護所在區域的完整鏈路狀態信息(LSA)。
所有非骨干區域必須與骨干區域直接相連,骨干區域Area 0 負責區域間路由信息傳播。
Router ID : OSPF區域內唯一標識路由器的IP地址
Route ID選取規則:
使用route-id 命令指定Router ID
選取路由器loopback接口上數值最高的IP地址
如果沒有loopback接口,在物理端口中選取IP地址最高的
DR和BDR
DR:指定路由器 BDR:備份,監測DR,隨時頂替
其他路由器(DRothers)只和DR、BDR形成鄰接關系
DR和BDR的選舉方法:
自動選舉DR和BDR
網段上Router ID 最大的路由器將被選舉為DR,第二大的將被選舉為BDR。
手工選擇DR和BDR
優先級范圍是0-255,數值越大,優先級越高,默認為1
如果優先級相同,則需要比較Router ID
如果路由器的優先級被設置為0,它將不會參與DR和BDR的選舉
選舉過程:(BDR通過發送HELLO包來監測) 2s/次
路由器的優先級可以影響一個選舉過程,但是它不能強制更換已經存在的DR或BDR路由器。
OSPF的組播地址:
224.0.0.5 ----DRother
224.0.0.6 ----DR/BDR
OSPF的度量值是Cost值
Cost值=108 /BW(帶寬) 帶寬越大,cost值越小,OSPF越優先
最短路徑是基於接口指定的代價(cost)計算的。
OSPF數據包----IP-89
承載在IP數據包內,使用協議號89
OSPF數據包類型
類型 |
描述 |
HELLO包 |
用於發現和維持鄰居關系,選舉DR和BDR |
數據庫描述包(DBD) |
用於向鄰居發送摘要信息,以同步鏈路狀態數據庫 |
鏈路狀態請求包(LSR) |
在路由器收到包含新信息的DBD后發送,用於請求更詳細信息 |
鏈路狀態更新包(LSU) |
收到LSR后發送鏈路狀態通告(LSA),一個LSU數據包可能包含幾個LSA |
鏈路狀態確認包(LSAck) |
確認已經收到LSU,每個LSA需要被分別確認 |
OSPF鄰接關系的建立(七個狀態機)
OSPF啟動的第一個階段是使用HELLO報文建立雙向通信的過程
OSPF啟動的第二個階段是建立完全鄰接關系
鄰居狀態:
、DOWN:鄰居狀態機的初始狀態,是指在過去的Dead-Interval時間內沒有測到對方的HELLO報文。
(1-2) Attempt:只適用於NBMA類型的接口,處於本機狀態時,定期向那些手工配置的鄰居發送HELLO報文
、Init :本狀態表示已經收到了鄰居的HELLO報文,但是該報文中列出的鄰居中沒有包含我的Router ID(對方沒有收到我發的HELLO報文)。
、2-Way:本狀態表示雙方互相收到了對端發送的HELLO報文,建立了鄰居關系。在廣播和NBMA類型的網絡中,兩個接口狀態是DRother 的路由器之間將停留在此狀態。
其他情況狀態機將繼續轉入高級狀態
、ExStart :在此狀態下,路由器和他的鄰居之間通過互相交換DBD報文(該報文不包含實際的內容,只包含了一些標志位)來決定發送時的主/從關系。建立主/從關系主要是為了保證在后續的DBD報文交換中能夠有序的發送。
、Exchange :路由器將本地的LSDB用DBD報文來描述,並發給鄰居。
、Loading :路由器發送LSR報文向鄰居請求對方的DBD報文。
、Full :在此狀態下,鄰居路由器的LSDB中的所有LSA本路由器全都有了。即,本路由器和鄰居建立了鄰接狀態(adjacency)。
OSPF將網絡划分為四種類型
點到點網絡 (Point-to-Point)
廣播多路訪問網絡 (Broadcast MultiAccess BMA)
非廣播多路訪問網絡 (None Broadcast MultiAccess NBMA)
點到多點網絡 (Point-to-Multipoint)
OSPF的特點:
可適應大規模網絡,路由變化收斂速度快,無路由環,支持變長子網掩碼VLSM,支持區域划分,支持以組播地址發送協議報文。
OSPF與RIP比較:
|
OSPF |
RIPV2 |
RIPV1 |
協議類型 |
鏈路狀態 |
距離矢量 |
距離矢量 |
CIDR |
支持 |
支持 |
不支持 |
VLSM |
支持 |
支持 |
不支持 |
自動聚合 |
不支持 |
支持 |
不支持 |
手動聚合 |
支持 |
支持 |
不支持 |
路由泛洪 |
組播更新 |
周期組播更新 |
周期廣播 |
路徑開銷 |
帶寬 |
跳數 |
跳數 |
路由收斂 |
快 |
慢 |
慢 |
跳數限制 |
無 |
15 |
15 |
鄰居認證 |
支持 |
支持 |
不支持 |
分級網絡 |
支持(區域) |
不支持 |
不支持 |
更新 |
事件觸發更新 |
路由表更新 |
路由表更新 |
路由計算 |
Dijkstra |
Bellman-Ford |
Bellman-Ford |
OSPF建立鄰居的條件
1、Router ID不能相同
2、HELLO時間必須一致
3、DEAD時間必須一致
4、區域ID必須相同
5、認證必須相同
6、STUB標志位必須相同(直連路由器特殊區域要求一致)
7、三層MTU不匹配無法形成鄰接關系(一邊是Exstart,一邊是Exchange)
8、OSPF版本號不同(目前版本為2)
9、當OSPF網絡類型是MA時,要求掩碼一定一致(兩個鄰居),因為會出現DR和LSA-2,無法描述網段
單區域OSPF配置
Ospf 1 route-id 1.1.1.1
Area 0
Network 1.1.1.1 0.0.0.0
Network 10.1.1.0 0.0.0.255
Return
Display ospf peer 查詢鄰居狀態
Display ospf interface g0/0/0 查詢ospf
<>reset ospf process 清除
Ospf dr-priority 255 設置優先級
多區域OSPF配置
Ospf 1 route-id 1.1.1.1
Area 0
Network 1.1.1.1 0.0.0.0
Area 1
Network 10.1.1.0 0.0.0.255
Return
路由器分類:OSPF路由器種類
1、區域內路由器IR(Internal Router)
該類路由器的所有接口都屬於同一個OSPF區域
2、區域邊界路由器ABR(Area Border Routers)
該類路由器可以同時屬於兩個以上的區域,但其中一個必須是骨干區域,ABR用來連接骨干區域和非骨干區域,可以是實際連接,也可以是虛連接
3、骨干路由器BR(Backbong Routers)
該類路由器至少一個接口屬於骨干區域
因此,所有的ABR和位於Area 0的內部路由器都是骨干路由器
4、自治系統邊界路由器ASBR(As Boundary Routers)
與其他AS交換路由信息的路由器稱為ASBR
虛鏈路
使用場合:只能一個非骨干區域跨越一個非骨干區域時用
作用:幫助這個非骨干區域獲取完整lsdb
命令:在非骨干區域的中轉域打
R10:ospf
Aera 1
Vlink-peer 對端 router-id
R18:ospf
Aera 1
Vlink-peer 對端 router-id
注意:虛鏈路只能幫助一個非骨干區域跨越非骨干區域,虛鏈路屬於區域0
查詢虛鏈路狀態:display ospf vlink
Rip和ospf重分發的命令
Ospf 1
Import-route rip 1 cost 100
Rip 1
Import-route ospf 1 cost 0(rip的cost值指的是跳數,當超過15跳時路由就不傳了,因此要設小)
LSA
LSA的類型 |
特點 |
第一類LSA:Router-LSA |
由每個路由器生成,描述了路由器的鏈路狀態和花費,傳遞到整個區域 |
第二類LSA:Network-LSA |
由指定路由器DR生成,描述了本網段的鏈路狀態,傳遞到整個區域 |
第三類LSA:Net-summary-LSA |
由ABR生成,描述了區域內某一網段的路由,傳遞到相關區域 |
第四類LSA:ASBR summary-LSA |
有ABR產生,但是它是一條主機路由,指向ASBR路由器地址路由 |
第五類LSA:自治系統外部LSA (Autonomous system external LSA) |
有ASBR產生,告訴相關自治區的路由器通往外部自治區的路徑 自治系統外部LSA是唯一不和具體的區域相關聯的LSA通告,將在整個自治系統中進行泛洪 |
第六類LSA:組成員LSA |
目前不支持組播ospf(Mospf協議) |
第七類LSA:NSSR外部LSA |
由ASBR產生,幾乎和第五類LSA通告是相同的,但是NSSA外部LSA通告僅僅在始發這個NSSA外部LSA通告的非末梢區域內部進行泛洪 |
查看LSA命令
1)查看1類LSA: display ospf lsdb router (區域內路由)
2)查看2類LSA:display ospf lsdb network (DR通告本區域路由)
3)查看3類LSA:display ospf lsdb summary (區域間LSA)
4)查看4類LSA: display ospf lsdb asbr (外部指向ASBR路由)
5)查看5類LSA:display ospf lsdb ase (外部路由)
6)查看7類LSA:display ospf lsdb nssa (nssa區域產生的外部路由)
末梢、完全末梢、次末節、完全次末節 (特殊區域)
末梢——阻止4 、5類LSA傳遞進stub區域,由ABR產生默認路由指向stub區域
Ospf
Area 2
Stub
完全末梢——阻止3 、4 、5類LSA傳遞進stub區域,會由ABR生成一條默認路由給stub 區域
Ospf
Area 3
Stub no-summary(ABR上敲)
次末節(非純末梢)——阻止4 、 5類LSA傳遞OSPF,將5類的LSA轉變為7類LSA,由下一台ABR將7類LSA再次轉為5類LSA
完全次末節(純末梢)——阻止3、 4、 5類LSA傳遞進OSPF,會由ABR下發一條默認路由指向nssa區域
Ospf
Area 3
Nssa no-summary(ABR上敲)
重分發
重分發過程中下發默認路由
Ospf里下發默認路由給其他ospf鄰居
default-route-advertise always cost 0
Rip 里下發默認路由給rip鄰居
default-route originate cost 0