route 命令查看路由表或者手动地添加、删除和修改路由表中的条目。
命令格式
route [-CFvnNee] [-A family]
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]
命令参数
-A family
使用指定的地址族,如 inet。
-F
操作内核的 FIB(Forwarding Information Base) 路由表,这是默认的选项。
-C
操作内核的路由缓存。
-v
显示更为详细的操作信息
-n
显示信息时以数字形式的地址替代主机名称。
-e
使用 netstat(8) 格式显示路由表信息。-ee 选项会显示路由表所有的参数信息。
del
删除一个路由条目
add
新增一个路由条目
target
指定目标网络或主机。可以使用十进制的 IP 地址或主机/网络名称。
-net
路由目标是一个网络
-host
路由目标是一个主机
netmask NM
当新增一个网络路由条目时,需要指定网络掩码。
gw GW
为发往目标网络/主机的任何分组指定网关。注意:指定的网关首先必须是可达的。也就是说必须为该网关预先指定一条静态路由。如果你为本地接口之一指定这个网关地址的话,那么此网关地址将用于决定此接口上的分组将如何进行路由。这是 BSD 风格所兼容的。
metric M
将路由表中 Metric 字段值设置为 M。
mss M
将路由的 MTU (Maximum Transmission Unit) 设置为 M 字节。
window W
将基于此路由之上的连接的 TCP 窗口长度设置为 W 字节。
irtt I
将基于此路由之上的 TCP 连接的初始往返时间设置为 I 毫秒(1-12000)。
mod, dyn, reinstate
安装一条动态或更改过的路由条目。这些标记通常只由路由守护进程来设置,用于诊断目的。
dev If
强制使路由与指定的设备关联,否则内核会试图检测相应的设备。
实例
a) 显示路由表信息
[huey@huey-K42JE ~]$ route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
10.6.0.0 * 255.255.255.0 U 0 0 0 eth1
192.168.1.0 * 255.255.255.0 U 0 0 0 eth0
169.254.0.0 * 255.255.0.0 U 0 0 0 eth1
default 10.6.0.2 0.0.0.0 UG 0 0 0 eth1
b) 新增一个路由条目
route add -net 192.56.76.0 netmask 255.255.255.0 dev eth0
c) 删除一个路由条目
route del 192.56.76.0
路由表字段信息含义
路由表的字段含义如下表所示:
字段 | 描述 |
Destination | 目标网络或目标主机。 |
Gateway | 网关地址,如果没有就显示 *。 |
Genmask | 目标地址的掩码。'255.255.255.255' 是用于目标为主机的,'0.0.0.0' 是用于默认路由的。 |
Flags | 标识。 |
Metric | 距离目标的跳数。 |
Ref | 路由条目引用数(Linux 内核中不会使用)。 |
Use | 路由条目被查找的次数。 |
Iface | 网络接口名。 |
MSS | 基于此路由之上的 TCP 连接的默认的最大报文长度。 |
Window | 基于此路由之上的 TCP 连接的默认的窗口大小。 |
irtt | 基于此路由之上的 TCP 连接的初始往返时间。 |
其中,Flag 的取值含义如下表所示:
Flag | Description |
U | route is up |
H | target is a host |
G | use gateway |
R | reinstate route for dynamic routing |
D | dynamically installed by daemon or redirect |
M | modified from routing daemon or redirect |
A | installed by addrconf |
C | cache entry |
! | reject route |