route

显示或设置IP路由表


语法格式

route [-CFvne]
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 [-h|--help] [-V|--version]

命令简介

route命令用于修改系统内核的IP路由表,设置到达特定主机或网络的静态路由。

利用“add”或“del”功能选项,route命令可以修改系统内核的路由表。否则,可以利用route命令显示路由表的当前设置。“命令输出”一节给出了内核路由表能够提供的信息。

注意,route命令将会废弃,替换的命令是“ip route”。

命令选项

-A family  使用指定的地址系列,如inet,表示IPv4。

-F  直接操作Linux系统内核的路由表。这是默认的处理方式。

-C  直接操作Linux系统内核的路由缓存区。

-v  详细显示模式。

-n  直接显示IP地址,无须转换成主机名。

-e  采用netstat命令的格式显示路由表。利用“-ee”选项,可以生成更多的输出内容,其中包括路由表能够提供的所有参数。

功能选项

add  增加新路由。

del  删除现有的路由。

-net target  表示指定的路由目的是网络。target是目的网络的网络名,或网络的IP地址。如果未指定“-net”或“-host”,target可以是关键字default,表示默认的路由。

-host target  表示指定的路由目的是主机。target是目的主机的主机名,或主机的IP地址。

netmask nm  在增加网络路由时,使用nm作为子网掩码。

gw gw  通过指定的网关发送路由分组数据。注意,指定的网关必须是能够直达的主机,负责转发路由分组数据,或者直接提供路由服务。

metric n  设置路由表中的网络距离度量字段,供路由守护进程使用。

mss m  设置当前路由上TCP的最大数据段容量(Maximum Segment Size),m的单位是字节。默认值是网络接口支持的最大传输单位MTU减去TCP头信息长度之后的结果。

window w  设置当前路由上TCP确认窗口的大小(单位是字节)。主要用于AX.25网络。

irtt i  设置当前路由上TCP连接的初始往返传输时间,取值范围是1~12000,单位是毫秒,默认值是300毫秒。主要用于AX.25网络。

reject  安装一个封锁路由,禁止外部网络检索路由。利用这个功能选项,可以在使用默认路由之前屏蔽外部网络。

mod, dyn, reinstate  安装一个动态的或修改过的路由。这些功能选项主要用于诊断,通常是由路由守护进程设置的。

dev if  使用指定的网络接口转发路由分组数据。如果“dev if”是命令行上的最后一个功能选项,可以省略“dev”。否则,metric、netmask、gw或dev的顺序无关紧要。

命令输出

Destination  路由的目的网络或目的主机。

Gateway  网关地址(“*”表示未设置网关)。

Genmask  确定到达目的网络或主机的路由时使用的子网掩码。当根据给定的IP地址寻找适当的路由时,系统内核将会利用子网掩码对IP地址进行逻辑与运算,然后依次检索每一个路由表项,从中找出匹配的路由。

Flags  可能出现的路由标志包括:

U  表示相应的路由已经建立。

H  表示路由的目的地是一个主机。

G  表示路由是利用网关实现的。

R  表示路由是重新恢复的动态路由。

D  表示路由是由路由守护进程或ICMP重定向消息动态建立的。

M  表示路由已根据路由守护进程或ICMP重定向消息发生了变动。

A  表示安装的路由。

C  表示缓存的路由。

!  拒绝路由查询。

Metric  从本地系统到目的网络或主机的网络“距离”,即网间的跳转数量。

Ref  引用当前路由的数量。

Use  路由检索计数。如果指定了“-F”选项,显示的是检索时缓存中不存在相应路由的次数,如果指定的是“-C”选项,显示的是检索时缓存中存在相应路由的次数。

Iface  发送路由分组数据的网络接口。

MSS  TCP连接默认的最大数据段的字节数量,也是系统内核通过相应路由能够传输的最大数据报的大小。

Window  TCP连接通过相应路由一次能够传输的最大数据量。

irtt  “initial round trip time”的缩写,表示初始的往返传输时间。在TCP协议传输数据期间,如果数据传输有误,TCP将会重传丢失的数据报。TCP协议采用一个计数器,记录数据报传输到远程主机花费的时间,以及收到一个确认需要多长时间,因而知道在重传数据报之前需等待多长时间。这个时间称作数据报传输与确认的往返时间。在开始建立网络连接时,TCP协议将会采用一个初始的往返时间作为默认值。对于大多数网络而言,TCP协议采用的默认往返时间值是适当的,但对于一些速度较慢的网络,如果这个时间太短,将会引起不必要的数据报重传。必要的话可以设置irtt值。如果这个字段值为0,意味着采用默认值。

应用实例

1. 假定本地系统的网络接口(其IP地址为192.168.90.101)连接到主机(其内部网络接口的IP地址为192.168.90.100),主机的另外一个网络接口(其IP地址为153.78.26.145)连接到外部网络。为使本地系统能够访问153.78.26.0网络中的任何主机,可以使用route命令,增加一个静态路由。

# route add –net 153.78.26.0 netmask 255.255.255.0 gw 192.168.90.100
#

2. 在没有其他匹配的路由可用时,可以使用默认的路由。在上述情况下,192.168.90. 0网段上的主机均可仅仅增加一个简单的默认路由设置。

# route add default gw 192.168.90.100
#

索引:A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z