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)。其中第一条和第二条路由规则是针对一个主机的,其他的都是针对一个网段的,这可以重掩码看出。
动态路由器的配置
基本原理介绍
先解释一下什么是动态路由。
从前面的描述中我们可以看到,路由器的基本功能就是为IP分组寻找到达目的地址的路径。我们前一节介绍的是人工手动静态配置路由规则,也就是人为的设定寻路方式。但是因特网是个庞大的系统,上面跑的网络结构负责,而且拓扑结构也在随时改变,这样在某些复杂的范围里我们的静态配置就不一定能获得最佳的寻路路径了。而且一旦网络结构发生改变,我们手动的静态配置也往往无法及时跟着改变。在这个背景下,产生了动态路由配置的概念,也就是动态路由器。
动态路由器上的路由表项是通过相互连接的路由器之间交换彼此信息,然后按照一定的算法优化出来的,而这些路由信息是在一定时间间隙里不断更新,以适应不断变化的网络,以随时获得最优的寻路效果。为了实现IP分组的高效寻路,IETF制定了多种寻路协议。其中用于自治系统(AS:Autonomous System)内部网关协议有开放式最短路径优先(OSPF:Open Shortest Path First)协议和寻路信息协议(RIP:Routing Information Protocol)。所谓自治系统是指在同一实体(如学校、企业或ISP)管理下的主机、路由器及其他网络设备的集合。还有用于自治域系统之间的外部网络路由协议BGP-4等。
运行这些路由协议的软件就是我们通常说的路由软件,Linux下常见的路由软件有 gated和zebra,。前者既有GPL版本的发行,又有收费的版本;而后者则是日本某组织开发的完全GPL的高效的路由软件。Linux的发行里面一般都缺省就有gated这个软件,我们下面主要介绍它的配置和使用方法。
