路由表和路由選路原則(TCP/IP)
1、路由表
每個Windows系統中都有IP路由表,它儲存了本地計算機可以到達的網路目的地址範圍和如何到達的路由資訊。
路由表是TCP/IP通訊的基礎,本地計算機上的任何TCP/IP通訊都受到路由表的控制。
路由表中的每一個路由項都具有五個型別。分為四大部分
1、 網路地址(networkdestination)、網路掩碼(netmask):網路地址和網路掩碼相“與”的結果用於定義本地計算機可以到達的網路目的地址範圍。
主機地址:某個特定主機的網路地址
子網地址:某個特定子網的網路地址
網路地址:某個特定網路的網路地址
預設路由:所有未在路由表中指定的網路地址
注意:在新增路由時,Windows要求輸入的網路地址和網路掩碼相“與”後的結果必須等於網路地址,否則路由新增會失敗。
2、 閘道器(gateway,又稱為下一跳伺服器):在傳送IP資料包時,閘道器定義了針對特定的網路目的地址,資料包傳送的下一跳伺服器。
如果是本地計算機直接連線到的網路,閘道器通常是本地計算機對應的網路介面,但是此時介面必須和閘道器一致
如果是遠端網路或預設路由,閘道器通常是本地計算機所連線到的網路上的某個伺服器或路由器
3、 介面(interface):介面定義了針對特定的網路目的地址,本地計算機用於傳送資料包的網路介面。閘道器必須位於和介面相同的子網(預設閘道器除外),否則造成在使用此路由項時需呼叫其他路由項,從而可能導致路由死鎖
4、 躍點數(metric):躍點數用於指出路由的成本,通常情況下代表到達目標地址所需要經過的躍點數量,一個躍點代表經過一個路由器。躍點數越低,代表路由器成本越低;躍點數越高,代表路由成本越高。當具有多條到達相同目的網路的路由項時,
2、路由表的選路原則
路由表的基本查詢方法是:
搜尋路由表,尋找與目的IP地址完全匹配的表目。如果找到,則把報文傳送給該表目指定的下一站路由器或直接相連的網路介面
搜尋路由表,尋找與目的IP地址網路號匹配的表目。如果找到,則把報文傳送給該表目指定的下一站路由器或直接相連的網路介面
搜尋路由表,尋找“預設(default)”表目。如果找到,則把報文傳送給該表目指定的下一站路由器
這是最基本的情況,但實際使用時的情況更加複雜,比如當一個目標地址被多個目標網路所覆蓋以及一個目標網路的多種路由協議的多條路徑共同存在的時候,或者是同一目標網路同一路由器的多條路徑共同存在的時候,路由器的轉發原則是什麼?
想要從多條可選路由表項中選擇最優的路徑,必須有一個衡量標準,管理距離AD就是所有衡量標準中的一個。
管理距離(AD):
管理距離是指提供路由可信度的一個參考值,如果管理距離越小,路由條目越可靠。這就是說,較小管理距離的路由條目優先於較大的條目。管理距離的取值範圍為0-255,0最可信,255最不可信。假如一臺路由器收到同一網路的兩條路由更新,路由器會選擇管理距離最小的那條,放入路由表
圖為各個路由協議預設管理距離
路由選路原則:
先進行最長匹配原則,滿足後進行管理距離最小優先,依舊滿足進行度量值最小優先
A: 最長匹配原則:最長匹配原則是CISCO IOS路由器預設的路由查詢方式。當路由器收到一個IP資料包時,會將資料包的目的IP地址與自己本地路由表中的表項進行bit by bit的逐位查詢,直到找到匹配度最長的條目,這叫最長匹配原則。
B: 管理距離AD最小優先:可以是多種路由協議的比較;也可以是同種路由協議的比較,比如雙線出口所配置的兩條預設浮動路由比較
C:度量值metric最小優先:路由協議不同則度量值不能做比較,比如rip度量值為跳數;ospf度量值為頻寬;eigrp度量值為頻寬+延遲等。所以在不同種協議之間先比較管理距離