route
route指令用于顯示或者修改IP路由表。它的主要用途是在使用ifconfig(8)程序配置接口后,通過接口設置到特定主機或網絡的靜態路由。當使用add或del選項時,路由將修改路由表。如果沒有這些選項,路由將顯示路由表的當前內容。
此命令的適用范圍:RedHat、RHEL、Ubuntu、CentOS、SUSE、openSUSE、Fedora。
1、語法
route[-CFvnee]
route[-v][-A family]add[-net|-host]target[netmask Nm][gw Gw][metric N][mssM][window W]
[irtt I][reject][mod] [dyn][reinstate][[dev] If]
route[-v][-A family]del[-net|-host]target[gwGw][netmaskNm][metricN][[dev] If]
route[-V][–version][-h][–help]
2、選項列表
選項 |
說明 |
–help |
顯示幫助文檔 |
–version |
顯示命令版本 |
-Afamily |
指定使用的地址類型 |
-F |
操作內核FIB |
-C |
管理內核路由緩存 |
-v |
顯示詳細過程 |
-n |
以數字的方式顯示路由表中的主機 |
-e |
使用netstat的輸出格式顯示路由表 |
-net |
指定一個網絡路由 |
-host |
指定一個主機路由 |
add |
增加一個路由 |
del |
刪除一個路由 |
target |
指定目標網絡或者主機 |
netmaskmask |
添加一個路由時,使用這個子網掩碼 |
gw ip |
指定數據包通過的網關IP地址 |
metric |
指定路由表的metric字段 |
window |
指定路由表的TCP連接串口 |
irtt I |
將此路由上的TCP連接的初始往返時間(Irtt)設置為I毫秒(1-12000)。這通常只在AX.25網絡上使用。如果省略,則使用rfc 1122默認的300 ms。 |
reject |
安裝阻塞路由,這將迫使路由查找失敗。例如,這用于在使用默認路由之前屏蔽網絡。這不是用來防火的 |
mod, dyn, reinstate |
安裝動態或修改的路由。這些標志用于診斷,通常僅由路由守護進程設置。 |
dev eth |
指定路由的網絡接口 |
3、輸出
內核路由表的輸出組織在以下列中
輸出列 |
說明 |
Destination |
目標網絡或目標主機。 |
Gateway |
網關地址或“*”(如果沒有設置) |
Genmask |
目標網絡的網絡掩碼;主機目的地為‘255.255.255.255’,默認路由為‘0.0.0.0’。 |
Flags |
可能的flag有 U,路由已經起來 H,目標是一個主機 G,使用網關 R,用于動態路由的恢復路由 D,由守護進程動態安裝或重定向 M,從路由守護進程或重定向中修改 A,由addrconf安裝 C,緩存項 !,拒絕路由 |
Metric |
與目標的距離(通常以啤酒花計)。它不是最近的內核使用的,而是路由守護進程所需要的。 |
Ref |
引用此路由的次數。(不在Linux內核中使用。) |
Use |
查找路線的數量。根據-F和-C的使用情況,這將是路由緩存丟失(-F)或命中(-C)。 |
Iface |
用于此路由的數據包將發送到該接口。 |
MSS |
此路由上TCP連接的默認最大分段大小 |
Window |
此路由上TCP連接的默認窗口大小 |
irtt |
初始RTT(往返時間)。內核使用它來猜測最佳的TCP協議參數,而無需等待(可能是緩慢的)答案。 |
HH |
引用緩存路由的硬件頭緩存的ARP條目和緩存路由的數量。如果緩存路由的接口不需要硬件地址(例如lo),則為-1。 |
Arp |
緩存路由的硬件地址是否最新。 |
4、例子代碼
route add -net 127.0.0.0 添加正常的回送條目,使用net掩碼255.0.0.0(A級Net,從目標地址確定)并與“lo”設備相關聯(假設此設備使用ifconfig(8)正確設置)。 10.x.x.x.通過“eth0”將路由添加到網絡192.56.76.x。這里沒有必要使用C類網絡掩碼修飾符,因為192.*是一個C類IP地址。這里可以省略“dev”這個詞。 route add default gw mango-gw 添加默認路由(如果沒有其他路由匹配,則使用該路由)。使用此路徑的所有數據包將通過“芒果-GW”傳送。實際用于該路線的設備取決于我們如何到達“mango-gw”,“mango-gw”的靜態路徑必須在此之前設置。 route add ipx4 sl0 通過SIP接口將路由添加到“IPX 4”主機(假設“IPX 4”是SILIP主機)。 route add -net 192.57.66.0 netmask 255.255.255.0 gw ipx4 此命令添加網絡“192.57.66.x”,通過前一條路由傳送到SILIP接口。 route add -net 224.0.0.0 netmask 240.0.0.0 dev eth0 。這將所有D類(多播)IP路由設置為通過“eth0”。這是具有多播內核的正確的正常配置行。 route add -net 10.0.0.0 netmask 255.0.0.0 reject 這為專用網絡“10.x.x.x.”安裝了一個拒絕路由。 |
5、實例
1)顯示本機路由表
[root@localhost ~]# route Kernel IP routing table DestinationGatewayGenmaskFlags Metric RefUse Iface 255.255.255.255 -255.255.255.255 !H0-0 – 224.0.0.0-255.255.255.0!0-0 – |
2)以netstat格式顯示
[root@localhost ~]#route -e Kernel IP routing table DestinationGatewayGenmaskFlagsMSS Windowirtt Iface 255.255.255.255 -255.255.255.255 !H- — – 224.0.0.0-255.255.255.0!- — – |
3)添加一個路由
[root@localhost ~]#route add -net 111.13.0.0/24 dev eth0//指定網段使用設備eth0訪問 [root@localhost ~]#route//查看路由表 Kernel IP routing table DestinationGatewayGenmaskFlags Metric RefUse Iface 255.255.255.255 -255.255.255.255 !H0-0 – 111.13.0.0*255.255.255.0U000 eth0 224.0.0.0-255.255.255.0!0-0 – 172.16.0.0*255.255.0.0U000 eth0 |
4)刪除一個路由
[root@localhost ~]#route del -net 111.13.0.0/24//刪除指定地址id路由 [root@localhost ~]#route//查看路由 Kernel IP routing table DestinationGatewayGenmaskFlags Metric RefUse Iface 255.255.255.255 -255.255.255.255 !H0-0 – 224.0.0.0-255.255.255.0!0-0 – 172.16.0.0*255.255.0.0U000 eth0 |