route命令詳解與使用實例 2011-10-18 12:19:41| 分類: 其他 | 標簽:route |字型大小 訂閱 1. 使用背景 需要接入兩個網路,一個是部署環境所在內網環境,這個環境是上不了外網, 外網環境很可能是一個無線網路。如果兩者都連接上,很可能導致有一方不能起作用,即外網或內網上不 ...
route命令詳解與使用實例 2011-10-18 12:19:41| 分類: 其他 | 標簽:route |字型大小 訂閱 1. 使用背景 需要接入兩個網路,一個是部署環境所在內網環境,這個環境是上不了外網, 外網環境很可能是一個無線網路。如果兩者都連接上,很可能導致有一方不能起作用,即外網或內網上不了,常常需要使用繁瑣的“禁用網路連接”、“啟用網路連接”的操作來進行內外網的切換,甚是麻煩。 為瞭解決這個問題,可以使用route命令來使得同時內外網都可用。 2. route命令 route命令是在本地 IP 路由表中顯示和修改條目網路命令。 route命令的語法如下: route [-f] [-p] [Command [Destination] [mask Netmask] [Gateway] [metric Metric]] [if Interface]] route命令常用的命令如下: 1)route delete:刪除路由; 2)route print:列印路由的Destination; 3)route add:添加路由; 4)route change:更改現存路由。 一般使用route delete、route add、route print這三條命令可解決路由的所有功能。 2.1 列印路由信息 列印路由信息使用命令:route print。 =========================================================================== Interface List 0x1 MS TCP Loopback interface 0x2 00 26 18 31 4f d1 Realtek RTL8168C(P)/8111C(P) PCI-E Gigabit Ether net NIC - 數據包計劃程式微型埠 0x50004 00 53 45 00 00 00 WAN (PPP/SLIP) Interface =========================================================================== =========================================================================== Active Routes: Network Destination Netmask Gateway Interface Metric 0.0.0.0 0.0.0.0 116.69.106.119 116.69.106.119 1 0.0.0.0 0.0.0.0 192.168.2.226 192.168.2.79 20 115.168.64.94 255.255.255.255 116.69.106.119 116.69.106.119 1 116.69.106.119 255.255.255.255 127.0.0.1 127.0.0.1 50 116.255.255.255 255.255.255.255 116.69.106.119 116.69.106.119 50 127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1 192.168.2.0 255.255.255.0 192.168.2.79 192.168.2.79 20 192.168.2.79 255.255.255.255 127.0.0.1 127.0.0.1 20 192.168.2.255 255.255.255.255 192.168.2.79 192.168.2.79 20 224.0.0.0 240.0.0.0 192.168.2.79 192.168.2.79 20 224.0.0.0 240.0.0.0 116.69.106.119 116.69.106.119 1 255.255.255.255 255.255.255.255 116.69.106.119 116.69.106.119 1 255.255.255.255 255.255.255.255 192.168.2.79 192.168.2.79 1 Default Gateway: 116.69.106.119 =========================================================================== Persistent Routes: None 第一列是網路目的地址。列出了路由器連接的所有的網段。 第二行網路掩碼列提供這個網段本身的子網掩碼,而不是連接到這個網段的網卡的子網掩碼。這基本上能夠讓路由器確定目的網路的地址類。 第三列是網關。一旦路由器確定它要把這個數據包轉發到哪一個目的網路,路由器就要查看網關列表。網關表告訴路由器這個數據包應該轉發到哪一個IP地址才能達到目的網路。 第四列介面列告訴路由器哪一個網卡連接到了合適的目的網路。從技術上說,介面列僅告訴路由器分配給網卡的IP地址。那個網卡把路由器連接到目的網路。然而,路由器很聰明,知道這個地址綁定到哪一個物理網卡。 第五列是測量。測量本身是一種科學。該值越小的,可信度越高 下麵說說每一行內容代表的內容: Network Destination Netmask Gateway Interface Metric 0.0.0.0 0.0.0.0 116.69.106.119 116.69.106.119 1 這表示發向任意網段的數據通過本機介面116.69.106.119被送往一個預設的網關:116.69.106.119,它的管理距離是1,管理距離指的是在路徑選擇的過程中信息的可信度,管理距離越小的,可信度越高。 第二行的內容: Network Destination Netmask Gateway Interface Metric 0.0.0.0 0.0.0.0 192.168.2.226 192.168.2.79 20 這表示發向任意網段的數據通過本機介面192.168.2.79被送往網關192.168.2.226,但是因為該行的管理距離(Metric)比第一行大,即表示第二行的可信度沒有第一行高,所以在預設情況下會優先選擇第一行的網關出去。 第三行的內容: Network Destination Netmask Gateway Interface Metric 115.168.64.94 255.255.255.255 116.69.106.119 116.69.106.119 1 第四行的內容: Network Destination Netmask Gateway Interface Metric 116.69.106.119 255.255.255.255 127.0.0.1 127.0.0.1 50 表示從自己的主機發送到自己主機的數據包,如果使用的是自己主機的IP地址,跟使用迴環地址效果相同,通過同樣的途徑被路由,也就是如果我有自己的站點,我要瀏覽自己的站點,在IE地質欄裡面輸入localhost與116.69.106.119是一樣的,儘管localhost被解析為 127.0.0.1。 第五行的內容: Network Destination Netmask Gateway Interface Metric 116.255.255.255 255.255.255.255 116.69.106.119 116.69.106.119 50 這裡的目的地址是一個局域廣播地址,系統對這樣的數據包的處理方法是把本機116..69.106.119作為網關,發送局域廣播幀,這個幀將被路由器過濾。 第六行的內容: Network Destination Netmask Gateway Interface Metric 127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1 2.2 刪除路由信息 所用的命令為: route delete 網路目的地址 [mask] [子網掩碼] 例如想要刪除網路目的地址為192.168.2.0,子網掩碼為255.255.255.0的路由,可用: route delete 192.168.2.0 mask 255.255.0.0 刪除路由時還可以用模糊匹配,例如要刪除以115開頭的IP路由表中的所有路由時,可用: route delete 115* 2.3 添加路由信息 添加路由信息使用如下命令: route add 網路目的地址 mask 子網掩碼網關 [metric] [測量值] 例如若要向帶有255.255.0.0子網掩碼、10.27.0.1網關,測量值為7的10.41.0.0的目標地址添加一條路由,可使用如下命令: route add 10.41.0.0 mask 255.255.0.0 10.27.0.1 metric 7 3. 應用實例 以調試環境為例,需要接入內網進行調試,內網地址為5.0.217.47。另外接了個無線,可以上外網自動分配了個192.168.2.110。 插上內網網線,併成功連接上外網後,此時內網是通的,但是外網連接不上。在命令視窗使用ipconfig和route print命令可以列印出當前的信息: route print =========================================================================== Interface List 0x1 MS TCP Loopback interface 0x2 00 26 18 31 4f d1 Realtek RTL8168C(P)/8111C(P) PCI-E Gigabit Ether net NIC - 數據包計劃程式微型埠 0x3 00 24 2c e7 57 11 Atheros AR5006X Wireless Network Adapter - 數據 包計劃程式微型埠 =========================================================================== =========================================================================== Active Routes: Network Destination Netmask Gateway Interface Metric 0.0.0.0 0.0.0.0 5.0.217.1 5.0.217.47 10 0.0.0.0 0.0.0.0 192.168.1.1 192.168.1.110 25 5.0.217.0 255.255.255.192 5.0.217.47 5.0.217.47 10 5.0.217.47 255.255.255.255 127.0.0.1 127.0.0.1 10 5.255.255.255 255.255.255.255 5.0.217.47 5.0.217.47 10 127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1 192.168.1.0 255.255.255.0 192.168.1.110 192.168.1.110 25 192.168.1.110 255.255.255.255 127.0.0.1 127.0.0.1 25 192.168.1.255 255.255.255.255 192.168.1.110 192.168.1.110 25 224.0.0.0 240.0.0.0 5.0.217.47 5.0.217.47 10 224.0.0.0 240.0.0.0 192.168.1.110 192.168.1.110 25 255.255.255.255 255.255.255.255 5.0.217.47 5.0.217.47 1 255.255.255.255 255.255.255.255 192.168.1.110 192.168.1.110 1 Default Gateway: 192.168.1.1 =========================================================================== Persistent Routes: None ipconfig Windows IP Configuration Ethernet adapter 本地連接: Connection-specific DNS Suffix . : IP Address. . . . . . . . . . . . : 5.0.217.47 Subnet Mask . . . . . . . . . . . : 255.255.255.192 Default Gateway . . . . . . . . . : Ethernet adapter 無線網路連接: Connection-specific DNS Suffix . : IP Address. . . . . . . . . . . . : 192.168.1.110 Subnet Mask . . . . . . . . . . . : 255.255.255.0 Default Gateway . . . . . . . . . : 192.168.1.1 由route print命令的結果的第一行可以看到,只所以訪問不到外網,是因為預設的情況是通過5.0.217.1的內網的網關出去的。 為了達到能同時訪問內外網的需求,只需要刪除掉0.0.0.0的路由後,添加兩條路由即可,將5開頭的地址都通過5.0.217.1網關路由出去,而其餘的地址都通過無線的網關192.168.1.110出去。參考如下: route delete 0.0.0.0 route add 0.0.0.0 mask 0.0.0.0 192.168.1.1 route add 5.0.0.0 mask 255.0.0.0 5.0.217.1 此時運行route print命令,可看到運行結果如下: route print =========================================================================== Interface List 0x1 MS TCP Loopback interface 0x2 00 26 18 31 4f d1 Realtek RTL8168C(P)/8111C(P) PCI-E Gigabit Ether net NIC - 數據包計劃程式微型埠 0x3 00 24 2c e7 57 11 Atheros AR5006X Wireless Network Adapter - 數據 包計劃程式微型埠 =========================================================================== =========================================================================== Active Routes: Network Destination Netmask Gateway Interface Metric 0.0.0.0 0.0.0.0 192.168.1.1 192.168.1.110 1 5.0.0.0 255.0.0.0 5.0.217.1 5.0.217.47 1 5.0.217.0 255.255.255.192 5.0.217.47 5.0.217.47 10 5.0.217.47 255.255.255.255 127.0.0.1 127.0.0.1 10 5.255.255.255 255.255.255.255 5.0.217.47 5.0.217.47 10 127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1 192.168.1.0 255.255.255.0 192.168.1.110 192.168.1.110 25 192.168.1.110 255.255.255.255 127.0.0.1 127.0.0.1 25 192.168.1.255 255.255.255.255 192.168.1.110 192.168.1.110 25 224.0.0.0 240.0.0.0 5.0.217.47 5.0.217.47 10 224.0.0.0 240.0.0.0 192.168.1.110 192.168.1.110 25 255.255.255.255 255.255.255.255 5.0.217.47 5.0.217.47 1 255.255.255.255 255.255.255.255 192.168.1.110 192.168.1.110 1 Default Gateway: 192.168.1.1 =========================================================================== Persistent Routes: None 可看到預設是通過無線的192.168.1.110出去的,此時內外網都可以同時用了