多網卡的設置
靜態路由器的配置
Linux下最常用的指定路由規則的命令是route,當然也有些圖形化的工具可以使用,我們下面一個一個介紹。
route命令的使用
route工具主要功能是管理Linux系統內核中的路由表。它最大的用途就是用來設定靜態的路由表項,通常是在系統用ifconfig配置網絡接口(例如網卡等)後,用它來設定主機或者一網段的IP地址應該通過什麼接口發送等。
Route工具有復雜的調用參數。
調用格式如下:
route [-CFvnee]
route [-v] [-A family] add [-net-host] target [netmask
Nm] [gw Gw] [metric N] [mss M] [window W] [irtt I]
[reject] [mod] [dyn] [reinstate] [[dev] If]
route [-v] [-A family] del [-net-host] target [gw Gw]
[netmask Nm] [metric N] [[dev] If]
route [-V] [--version] [-h] [--help]
主要參數說明如下:
-v 使用冗余輸出模式。
-A family
指定特定的地址族(例如"inet"、"inet6")。
-n 使用數字顯示的地址(例如,202.38.75.75)而不是去解釋域名。
-e 使用與netstat相同的輸出格式。
-ee 參數會產生很長的輸出,包括內核路由表的幾乎所有信息。
-net 目標(target)是一個網段。
-host 目標(target)是一個單獨的主機。
-F 顯示內核FIB路由表。結果可能被-e 和-ee參數改變。
-C 顯示內核中路由緩存信息。
del 刪除一個路由表項。
add 增加一個路由表項。
target 配置的目的網段或者主機。可以是IP,或者是網絡或主機名。
netmask Nm
用來指明要添加的路由表項的網絡掩碼。
gw Gw 任何通往目的(target )的IP分組都要通過這個網關。
metric M
設置路由表中該項的尺度域(metric field)為M。
mss M 設置TCP的最大分片長度(MSS)M bytes。
系統缺省值是536。
window W
設置TCP發送窗口的尺寸為W bytes。
irtt I 設置TCP的初始化回路時間(irtt)I毫秒(1-12000)。
缺省情況下按照RFC 1122 規定是300ms。
reject 安裝一個阻塞型的路由,這樣可能會有路由查找失敗。
mod, dyn, reinstate
添加或者修改一個動態路由表項。主要用來測試和診斷。
dev If 強行使用某個特定的輸出接口(If),而不用系統去尋找接口。
下面舉幾個配置的例子:
route add -net 192.56.76.0 netmask 255.255.255.0 dev eth0
添加一條路由表項,網段192.56.76.x 應該從接口"eth0"走。
route add default gw mango-gw
添加一條缺省路由(如果沒有其他匹配的路由項,就使用這個路由規則)。
"mango-gw"是一個主機名, 而通往這個主機的路由規則應該事先已經設置好了。
route add ipx4 sl0
給主機"ipx4"添加一條路由規則,使用SLIP接口sl0。
Route命令的輸出結果
輸出的格式有以下幾欄:
Destination
目標網段或者主機。
Gateway
網關地址,如果沒有設置,則是"*"表示。
Genmask
網絡掩碼。
Flags 一些可能的標記如下:
U (路由是活動的)
H (目標是一個主機)
G (使用網關(gateway))
R (reinstate route 動態路由產生的表項)
D (dynamically installed by daemon or redirect)
M (modified from routing daemon or rederict)
! (reject route)
Metric 路由距離。
Ref 路由項引用次數。(linux內核中沒有使用)
Use 查找路由項的次數。.
Iface 該路由表項對應的輸出接口。
MSS 缺省的TCP最大分片尺寸。
Window 缺省的TCP窗口的尺寸。
irtt 缺省的TCP回路時間。
HH (cached only)
ARP入口的數目。
Arp (cached only)
該路由項對應的物理地址是否過期等信息。
下面是route -n的輸出實例:
tarn:~$ /sbin/route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
202.38.64.3 202.38.75.62 255.255.255.255 UGH 0 0 0 eth0
202.38.75.75 0.0.0.0 255.255.255.255 UH 0 0 0 eth2
202.38.75.0 0.0.0.0 255.255.255.128 U 0 0 0 eth0
192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth2
192.168.75.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
159.226.0.0 202.38.75.62 255.255.0.0 UG 0 0 0 eth0
127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo
0.0.0.0 202.38.75.62 0.0.0.0 UG 1 0 0 eth0
上面的輸出中我們可以看出,該路由器配置的缺省網關是202.38.75.62,它上面有3個以太網接口(eth0、eth1和eth2)。其中第一條和第二條路由規則是針對一個主機的,其他的都是針對一個網段的,這可以重掩碼看出。