什么是路由表?
路由表:簡單點說路由表就是路由器用于指導數據包如何轉發的表項,記錄了去往目的IP的下一跳去哪里(如下圖)。
路由表的作用類似于我們生活中的地圖或者指示牌,指引我們去往一個目的地該如何走?
IP路由表包含了哪些要素
IP路由表中包含了目的網絡/掩碼,協議類型,優先級,開銷,標志,下一跳,出接口這個七大要素。
下面我們來看下一個真實的路由表:
從這個路由器我們可以通過命令 display ip routing-table 來查詢該設備的路由表,我們可以看到這條設備一共有12條路由條目。
每個路由條目必須包括下面幾個信息元素:
(1)目的網絡/掩碼
目的網絡/掩碼:也被稱為路由前綴,這是路由條目所關聯的目的網絡地址及網絡掩碼。
一條完整的路由前綴由:網絡地址+前綴長度(或者網絡掩碼)構成,兩者缺一不可,例如192.168.1.0/24與192.168.1.0/25,雖然網絡地址相同,都是192.168.1.0,但是兩者絕對是兩條不同的路由,因為他們的前綴長度不相同。
當路由器收到一個IP數據包時,路由器會解析出IP數據包中的目的IP地址,然后根據目的IP地址查找路由表,依據最長掩碼匹配原則,找到對應的路由條目。
最長掩碼匹配原則匹配的就是目的網絡/掩碼。
比如:路由器收到一個目的IP地址為10.1.1.1的數據包,此時查找路由表,有兩個路由條目,一個路由條目的A的目的網絡/掩碼是10.1.1.0/24,另一條路由條目B的目的網絡/掩碼是10.1.1.0/28,那么這個數據包匹配的是哪一個路由條目呢?
正確答案:是匹配路由條目B,因為B的掩碼長。
(2)協議類型
協議類型:指該路由條目是通過什么路由協議學些過來的。例如是直連的,或是靜態的,或者是通過OSPF、IS-IS、EIGRP、BGP等動態路由學習到的。
1、直連路由:指和路由器的接口直接的地址生成的路由。
如下圖中,協議類型是direct的就是直接直連地址生成的路由。
2、靜態路由:靜態路由是指通過靜態路由協議生成的路由。
3、動態路由:動態路由協議主要有RIP、OSPF、ISIS、BGP。RIP和BGP是基于距離矢量的路由協議,OSPF和ISIS都是基于鏈路狀態的路由協議。
(3)優先級
路由表中去往同一目的地的路由可能通過多種路由協議生成。
舉個例子:去往目的IP為192.168.2.1的通過靜態路由生成了,也通過OSPF路由生成了。那么這個時候什么樣的路由才會加入到路由表中呢?這個時候就和路由協議的優先級有關系了。
每種協議類型對應不同的優先級,優先級值越小則路由越優。
常用路由協議和優先級的關系表如下圖。
那么當一臺路由器同時從多種不同的路由協議學習到去往同一個目的地的路由時,它將優選路由協議優先級值最小的那條路由。
因此,本次例子中,正確的應該是通過OSPF學習到路由加入到路由表中(OSPF的路由優先級比靜態路由優先級小)
(4)開銷
開銷:路由的度量值,經常也使用metric來描述。
直連及靜態路由的Cost為0。
通過動態路由協議學習到的Cost則根據實際情況而定。不同的路由協議計算Cost的方法不同。
例如上圖中,R1去往PC2的路由條目通過OSPF路由協議學習到,開銷為3。
(5)標記
標志:路由標記,R表示該路由是迭代路由。D表示該路由下發到FIB(Forwarding Information Base)表。
迭代路由:路由必須有直連的下一跳才能夠指導轉發,但是路由生成時下一跳可能不是直連的,因此需要計算出一個直連的下一跳和對應的出接口,這個過程就叫做路由迭代。BGP路由、靜態路由和UNR路由的下一跳都有可能不是直連的,都需要進行路由迭代。
例如,BGP路由的下一跳一般是非直連的對端loopback地址,不能指導轉發,需要進行迭代。即根據以BGP學習到的下一跳為目的地址在IP路由表中查找,當找到一條具有直連的下一跳、出接口信息的路由后(一般為一條IGP路由),將其下一跳、出接口信息填入這條BGP路由的IP路由表中并生成對應的FIB表項。
(6)下一跳
下一跳:去往目標網絡的下一跳IP地址。
(7)出接口
出接口:去往目標網絡從本設備的哪個接口出去。
審核編輯:湯梓紅
-
接口
+關注
關注
33文章
8598瀏覽量
151157 -
IP
+關注
關注
5文章
1708瀏覽量
149548 -
路由器
+關注
關注
22文章
3732瀏覽量
113780 -
路由表
+關注
關注
0文章
17瀏覽量
7393
原文標題:IP路由表詳解:目的網絡/掩碼,協議類型,優先級,開銷,標志,下一跳,出接口
文章出處:【微信號:網絡工程師筆記,微信公眾號:網絡工程師筆記】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論