靜態(tài)路由深入講解(靜態(tài)路由命令詳解)
網(wǎng)絡(luò)上通過各種設(shè)備傳遞數(shù)據(jù),最常見的就是路由器和交換機(jī)。本篇介紹路由器的靜態(tài)路由協(xié)議。先簡要說一下路由條目和路由表(熟悉的可略過):
一個(gè)數(shù)據(jù)包從源IP地址到目標(biāo)IP地址間可能穿過多個(gè)路由器,也可能有多條路徑通往目標(biāo)IP地址。那路由器收到數(shù)據(jù)后,如何知道哪個(gè)端口能通往目標(biāo)地址呢?如果多個(gè)端口都可通往目標(biāo)地址,選擇用哪個(gè)端口才是最優(yōu)路徑呢?依據(jù)的就是路由表。路由表就是路由器的靈魂,是多個(gè)路由條目的集合。路由條目必須有5個(gè)項(xiàng)目:前綴,掩碼,下一跳,管理距離AD,度量。
1.前綴和掩碼
(可以參照【IPv4協(xié)議及VLSM可變長子網(wǎng)劃分和CIDR無類域間路由】
2.下一跳
路由器根據(jù)路由表將數(shù)據(jù)轉(zhuǎn)發(fā)到下一個(gè)端口地址
3.管理距離AD
路由器可能從多種途徑獲得同一路由,可以來自RIP,也可以是OSPF等。不同途徑獲得的路由可能采取不同的路徑到達(dá)目的網(wǎng)絡(luò)。AD越小,說明路由的可信度越高。直連路由的AD是0,靜態(tài)路由的AD是1,RIP是120,EIGRP是90,OSPF是110。收到所有協(xié)議提交的路由會比較它們的管理距離AD值,比較的結(jié)果將寫入路由表
4.度量
測量同一路由協(xié)議內(nèi)到達(dá)目的的網(wǎng)絡(luò)的最佳路徑的方法。路由協(xié)議會給每一條路徑計(jì)算出一個(gè)數(shù),這個(gè)數(shù)就是度量值,通常這個(gè)值是沒有單位的。值越小,路徑越佳。最后會選出該協(xié)議認(rèn)為的最優(yōu)路由,提交給路由表
路由條目格式知道后可以開始生成路由表了。路由表生成3種途徑:直連自動生成,靜態(tài)路由協(xié)議,動態(tài)路由協(xié)議。路由表生成后,路由器就可以根據(jù)路由表轉(zhuǎn)發(fā)數(shù)據(jù)包。轉(zhuǎn)發(fā)原則:有匹配就轉(zhuǎn)發(fā),沒有就丟棄。匹配多條時(shí)遵循最長匹配原則。直連沒什么好說的,動態(tài)路由協(xié)議以后介紹,先介紹靜態(tài)路由(配置靜態(tài)路由,靜態(tài)匯總路由,靜態(tài)默認(rèn)路由,負(fù)載均衡,浮動靜態(tài)路由)
配置靜態(tài)路由:
路由器不像交換機(jī),新的路由器必須配好IP和路由才能使用,先如下圖配好路由器各端口和環(huán)回口IP:
提供一下R1的配置命令(R2和R3同樣配置即可)
配好IP地址后,來試試ping:
可見路由器光配置好IP地址是不夠的,還需要配置路由,否則只能ping通直連的端口:
上面講到路由條目的基本信息是:前綴,掩碼,下一跳,AD,度量。先暫時(shí)忽略AD和度量,R1要ping通R2的環(huán)回口的話需要設(shè)置:22.1.1.0(前綴) 255.255.255.0(掩碼)12.1.1.2(下一跳),全部配置如下:
(類似地配置R2和R3路由器的IP和路由)現(xiàn)在可以兩兩ping通了。
靜態(tài)匯總路由:
上面靜態(tài)路由的配置例子中,要實(shí)現(xiàn)兩兩ping通,需要設(shè)8條路由(R1和R3各三條,R2兩條),現(xiàn)在為R2增加兩個(gè)環(huán)回口:loopback1:22.1.0.1/24,loopback2:22.1.2.3/24,均和原先的loopback0:22.1.1.1/24處于不同網(wǎng)段:
要讓R1和R3 ping通R2上新增的兩個(gè)環(huán)回口需要各自增加2條指向環(huán)回口的新路由,很麻煩,可以配一條匯總路由:
(匯總的思想就是改變掩碼的網(wǎng)絡(luò)號長度,不明白的話可以參照【IPv4協(xié)議及VLSM可變長子網(wǎng)劃分和CIDR無類域間路由】http://blog.csdn.net/hongse_zxl/article/details/50054817)
(R3同樣設(shè)置即可)現(xiàn)在在R1和R3能ping通R2上的3個(gè)環(huán)回口了。
靜態(tài)默認(rèn)路由:
默認(rèn)路由就是0.0.0.0/0表示所有路由(先將剛才設(shè)的匯總路由去掉):
上面設(shè)好的默認(rèn)路由表示R1上所有路由均由12.1.1.2端口轉(zhuǎn)發(fā)出去。但實(shí)際上此時(shí)R1去ping R2的環(huán)回口22.1.1.1/24,仍會選擇之前設(shè)置的靜態(tài)路由,而非選擇默認(rèn)路由,原因就是最長匹配原則。顯然上圖中的22.1.1.0/24比0.0.0.0/0掩碼更長更精確,所以路由器會選擇更精確的路由條目。可以認(rèn)為默認(rèn)路由是保底用的,其他都匹配不了,才選擇默認(rèn)路由。
負(fù)載均衡:
(基本配置請參照上面,不再贅述)為R2配置兩條通往R1環(huán)回口的路由,分別從R2的f0/0口和f1/0口出去
配完之后,如圖中紅色箭頭所示,R2有兩條路徑可以訪問R1,兩條路徑有相同的前綴(均為11.1.1.0),相同的掩碼(255.255.255.0),相同的AD值(靜態(tài)路由均為1),區(qū)別僅僅是下一跳不同(從R2的f0/0口出去的下一跳是12.1.1.1/24,從R2的f1/0口出的下一跳是23.1.1.3/24)。路由器無法通過最長匹配原則選擇出最優(yōu)路徑,以路由器的視角來看,兩條路徑是等優(yōu)的,因此通過負(fù)載均衡來平衡帶寬:在R2上ping 11.1.1.1:
浮動靜態(tài)路由:
路由圖仍舊參照上圖,除IP地址外,可以將無關(guān)的路由去掉。
在前綴和掩碼相同時(shí),AD值小的才會加入路由表。如上例僅AD值不同時(shí),AD值小的那條路由才被加入路由表供路由器使用。但AD值大的那條路由并非被丟棄了,而是沉入水中,等待時(shí)機(jī),一旦路由表中的那條路由出問題不能用了,才浮出水面被加入進(jìn)路由表。因此叫浮動靜態(tài)路由很形象。
PS:上面介紹的路由條目時(shí)提到的AD值和度量和路由器的最長匹配原則,這3者可能有點(diǎn)搞,需要解釋一下:
度量是同一路由協(xié)議內(nèi)選出到達(dá)目的地最小開銷的那條路徑,將這條路徑提交給路由表。注意此時(shí)只是提交給路由表并沒有真正寫入,是否需要寫入得靠AD值判斷。
AD值是用于確認(rèn)是否能加入路由表。前綴和掩碼相同時(shí)AD值小的才加入路由表。當(dāng)然如果前綴和掩碼任一不同,則不論AD值大小,統(tǒng)統(tǒng)加入路由表。
路由條目被寫入路由表后,具體選擇哪條路由用最長匹配原則。
所以3者關(guān)系是:度量提供路由條目給路由表。AD值決定哪些路由條目可以最終被加入路由表。最長匹配原則決定已被加入路由表中的哪個(gè)路由條目最終被路由器使用。