萬盛學電腦網

 萬盛學電腦網 >> 路由器知識 >> 路由器簡介 >> 容易被忽視的靜態路由特點及配置

容易被忽視的靜態路由特點及配置

  本文為大家講解容易被忽視的靜態路由特點及配置。

  許多讀者朋友錯誤地認為靜態路由很簡單,就一個命令,沒什麼好學的。其實這是因為他們根本沒有深入理解靜態路由的工作原理,對於僅有一條靜態路由配置命令中的各參數和選項的含義和使用方法也是一知半解,結果造成的是遇到一些靜態路由故障時無法進行分析,而對於一些靜態路由配置也無法區分是否正確。本文將全面介紹靜態路由的各主要特點,以及Cisco設備中的靜態路由配置命令詳解。

  靜態路由的主要特點

  其實就因為靜態路由的配置比較簡單,決定了靜態路由也包含了許多特點。可以說靜態路由的配置全由管理員自己說了算,想怎麼配就怎麼配,只要符合靜態路由配置命令格式即可,因為靜態路由的算法全在管理員人思想和對靜態路由知識的認識中,並不是由路由器IOS系統來完成的。至於所配置的靜態路由是否合適,是否能達到你預期的目的那別當別論。在配置和應用靜態路由時,我們應當全面地了解靜態路由的以下幾個主要特點,否則你可能在遇到故障時總也想不通為什麼:

  手動配置

  靜態路由需要管理員根據實際需要一條條自己手動配置,路由器不會自動生成所需的靜態路由的。靜態路由中包括目標節點或目標網絡的IP地址,還可以包括下一跳IP地址(通常是下一個路由器與本地路由器連接的接口IP地址),以及在本路由器上使用該靜態路由時的數據包出接口等。

  路由路徑相對固定

  因為靜態路由是手動配置的,靜態的,所以每個配置的靜態路由在本地路由器上的路徑基本上是不變的,除非由管理員自己修改。另外,當網絡的拓撲結構或鏈路的狀態發生變化時,這些靜態路由也不能自動修改,需要網絡管理員需要手工去修改路由表中相關的靜態路由信息。

  永久存在

  也因為靜態路由是由管理員手工創建的,所以一旦創建完成,它會永久在路由表中存在的,除非管理員自己刪除了它,或者靜態路由中指定的出接口關閉,或者下一跳IP地址不可達。

  不可通告性

  靜態路由信息在默認情況下是私有的,不會通告給其它路由器,也就是當在一個路由器上配置了某條靜態路由時,它不會被通告到網絡中相連的其它路由器上。但網絡管理員還是可以通過重發布靜態路由為其它動態路由,使得網絡中其它路由器也可獲此靜態路由。

  單向性

  靜態路由是具有單向性的,也就是它僅為數據提供沿著下一跳的方向進行路由,不提供反向路由。所以如果你想要使源節點與目標節點或網絡進行雙向通信,就必須同時配置回程靜態路由。這在與讀者朋友的交流中經常發現這樣的問題,就是明明配置了到達某節點的靜態路由,可還是ping不通,其中一個重要原因就是沒有配置回程靜態路由。

  如果想要使得PC1(PC1已配置了A節點的IP地址10.16.1.2/24作為網關地址)能夠ping通PC2,則必須同時配置以下兩條靜態路由,具體配置方法在此不作介紹。

  ① :在R1路由器上配置了到達PC2的正向靜態路由(以PC2 10.16.3.2/24作為目標節點,以C節點IP地址10.16.2.2/24作為下一跳地址);

  ② :在R2路由器上配置到達PC1的回程靜態路由(以PC1 10.16.1.1/24作為目標節點,以B節點IP地址10.16.2.1/24作為下一跳地址),以提供Ping過程回程ICMP消息的路由路徑。(ICMP提供網絡是否可用、數據是否可達信息,並不傳輸數據。)

  接力性

  如果某條靜態路由中間經過的跳數大於1(也就是整條路由路徑經歷了三個或以上路由器結點),則必須在除最後一個路由器外的其它路由器上依次配置到達相同目標節點或目標網絡的靜態路由,這就是靜態路由的“接力”特性,否則僅在源路由器上配置這麼靜態路由還是不可達的。

  就像你要從長沙到北京去,假設中間要途經的站點包括:武漢-鄭州-石家莊,可人家只告訴你目的地是北京,以及從長沙出發的下一站是武漢。對於一個沒有多少旅游經驗的人來說,你是不可能知道到了武漢後又該如何走,必須有人告訴你到了武漢後再怎麼走,到了鄭州後又該怎麼走,……。這就是“接力性”。

  一個三個路由器串聯的簡單的網絡,各個路由器節點及PC機的IP地址均在圖中進行了標注,PC1已配置好指向R1的A節點地址的網關,現假設要使PC1能ping得通PC2,則需要在各路由器上配置以下四條靜態路由(兩條正向,兩條回程):

  ① :在R1路由器上配置了到達PC2的正向靜態路由(以PC2 10.16.4.0/24作為目標節點,以C節點IP地址10.16.2.2/24作為下一跳地址);

  ② :在R2路由器上配置了到達PC2的正向接力靜態路由(同樣以PC2 10.16.4.0/24作為目標節點,以E節點IP地址10.16.3.2/24作為下一跳地址);

  ③ :在R3路由器上配置到達PC1的回程靜態路由(以PC1 10.16.1.1/24作為目標節點,以D節點IP地址10.16.3.1/24作為下一跳地址),以提供Ping通信回程ICMP消息的路由路徑。

  ④ :在R2路由器上配置到達PC1的回程接力靜態路由(同樣以PC1 10.16.1.1/24作為目標節點地址,以B節點IP地址10.16.2.1/24作為下一跳地址),以提供Ping通信回程ICMP消息的接力路由路徑。

  【經驗之談】路由器各端口上所直接連接的各個網絡都是直接互通的,因為它們之間默認就有直連路由,無需另外配置其它路由。也即連接在同一路由器上的各網絡之間的跳數為0。如圖2中R1路由器上連接的10.16.1.0/24和10.16.2.0/24網絡,R2路由器上連接的10.16.2.0/24和10.16.3.0/24網絡,R3路由器上連接的10.16.3.0/24和10.16.4.0/24網絡都是直接互通的。也正因如此,在圖7-3中,PC1要ping通PC2,只需要配置圖中所示的正、反向各兩條靜態路由,而不用配置從R2到R3路由器,以及從R2到R1路由器的靜態路由。

  遞歸性

  許多讀者一直存在一個錯誤的認識,那就是認為靜態路由的“下一跳”必須是與本地路由直接連接的下一個路由器接口,其實這是片面的。前面說了,靜態路由沒有建立鄰接關系的Hello包,靜態路由也不會被通告鄰居路由器,所以它的下一跳是路徑中其它路由器中的任一一個接口,只是能保證到達下一跳就行了。這就是靜態路由的“遞歸性”。

  如圖2所示的網絡中,如果要在R1上配置一條到達R3所連接的10.16.4.0/24靜態路由。按照正常思維的話,其下一跳應該是R2的C接口。不過,其實也可以是R2的D接口,或者R3的E接口,或者F接口。只是通過其它路由能到達這些接口,則這條靜態路由就是成功的。

  優先級較高

  因為靜態路由明確指出了到達目標網絡,或者目標節點的路由路徑,所以在所有同目的地址的路由中,靜態路由的優先級是除“直連路由”外最高的,也就是如果配置了到達某一網絡或者某一節點的靜態路由,則優先采用這條靜態路由,只有當這條靜態路由不可用時才會考慮選擇其它的路由。

  適用小型網絡

  靜態路由一般適用於比較簡單的小型網絡環境,因為在這樣的環境中,網絡管理員易於清楚地了解網絡的拓撲結構,便於設置正確的路由信息。同時小型網絡所需配置的靜態路由條目不會太多。如果網絡規模較大,拓撲結構比較復雜,則不宜采用靜態路由,因為這樣的配置工作量實在太大,一般要用於本章後面或者本書後面章介紹的各動態路由協議實現動態路由。

  靜態路由的缺點在於:它們需要在路由器上手動配置,如果網絡結構復雜,或者跳數較多的話,僅通過靜態路由來實現路由,則要配置的靜態路由可能非常多,而且還可能造成路由環路;而且如果網絡拓撲結構發生改變,路由器上的靜態路由必須跟著改變,否則原來配置的靜態路由將可能失效。

  靜態路由配置命令詳解

  當Cisco IOS系統不能建立到達某一目標網絡的動態路由時,你就需要建立對應的靜態路由。靜態路由配置很簡單,就一條命令,但在靜態路由配置中最關鍵的就是7.1.1節介紹的理解靜態路由特性,以及靜態路由配置命令中各可選項和參數的真正含義,否則很可能配置的靜態路由不正確,或者雖然已正確配置了某條靜態路由,仍不能達到你的期望。

  在Cisco路由器中,靜態路由的配置很簡單,僅需一條如下全局配置命令:

  ip route vrf vrf-name prefix mask {ip-address | interface-type interface-number [ip-address]} [dhcp] [distance] [namenext-hop-name] [permanent | track number] [tag tag]

  在Cisco路由器中使用的是ip route命令(在H3C路由器中的靜態路由配置命令為ip static-route命令),其包含了許多參數選項,而且有些參數選項的具體含義一直是許多讀者所模糊的。下面是這些參數選項進行具體解釋。

  vrf-name:該靜態路由所作用的VRF(VPN路由轉發)示例名稱,也就是為對應的VPN配置靜態路由。僅在為特定的VRF示例配置靜態路由時才需要指定本參數。

  prefix:靜態路由中目標主機或目標網絡的IP地址前綴,也就是靜態路由的目的地址。如果是目標主機或節點,則填上對應主機或節點的IP地址,如果是目標網絡或子網,則是對應網絡或子網的網絡地址。

  mask:靜態路由目的地址的掩碼(僅代表路由目標的主機范圍,不能認為等同於“子網掩碼”),不能全以IP地址前綴長度表示。如果目的地址是主機或節點IP地址,則其掩碼必須是255.255.255.255,而不是所在網段的子網掩碼,代表靜態路由的目標僅一台主機,而不是一個網絡或子網。

  ip-address:與下面的“interface-type interface-number”參數一起是二選一參數,指定靜態路由到達目標網絡的下一跳IP地址(也就是下一個路由器與本地路由器連接的接口IP地址)。

  interface-type

copyright © 萬盛學電腦網 all rights reserved