1.1 功能说明

用于显示和操作IP路由表。

route命令是用于操作基于内核ip路由表,它的主要作用是创建一个静态路由让指定一个主机或者一个网络通过一个网络接口,如eth0。当使用"add"或者"del"参数时,路由表被修改,如果没有参数,则显示路由表当前的内容。

1.2 语法格式

route [-v] [-A family] del [-net|-host] target [gw Gw] [netmask Nm] [metric N][[dev] If]

参数

简解

-C

显示路由缓存

-n

不解析名字

-v

显示详细的处理信息

-f

清除所有网关入口的路由表

-p

add 命令一起使用时使路由具有永久性

add

添加一条新路由

del

删除一条路由

-net

目标地址是一个网络

-host

目标地址是一个主机

netmask

当添加一个网络路由时,需要使用网络掩码

gw

路由数据包通过网关

metric

设置路由跳数

1.3 实践操作

实例1-1  显示当前路由

命令:routeroute –n

代码

[root@ben-test ~]# route -n

Kernel IP routing table

Destination    Gateway         Genmask         Flags Metric Ref    Use Iface

192.168.137.0  0.0.0.0         255.255.255.0   U    0      0        0 eth0

169.254.0.0    0.0.0.0         255.255.0.0     U    1002   0        0 eth0

0.0.0.0        192.168.137.1   0.0.0.0         UG   0      0        0 eth0

其中Flags为路由标志,标记当前网络节点的状态

route -n (-n 表示不解析名字,列出速度会比route )

Flags说明:

U Up表示此路由当前为启动状态 

H Host      表示此网关为一主机

G Gateway  表示此网关为一路由器 

R Reinstate Route  使用动态路由重新初始化的路由

D Dynamically    此路由是动态性地写入

M Modified   此路由是由路由守护程序或导向器动态修改

!   表示此路由当前为关闭状态

 

实例1-2  添加路由/设置网关(删除反之)

命令:route add-net 192.56.76.0 netmask 255.255.255.0 dev eth0

     route add -net 192.56.76.0 netmask 255.255.255.0 gw 192.168.137.1

代码

[root@ben-test~]# route add -net 192.56.76.0 netmask 255.255.255.0 dev eth0

[root@ben-test~]# route -n

KernelIP routing table

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface

192.168.137.0   0.0.0.0         255.255.255.0   U    0      0        0 eth0

192.56.76.0     0.0.0.0         255.255.255.0   U    0      0        0 eth0

169.254.0.0     0.0.0.0         255.255.0.0     U    1002   0        0 eth0

0.0.0.0         192.168.137.1   0.0.0.0         UG   0      0        0 eth0

 

实例1-3  屏蔽一条路由

命令:route add-net 192.56.76.0 netmask 255.255.255.0 reject

代码

[root@ben-test ~]# route add -net 192.56.76.0netmask 255.255.255.0 reject

[root@ben-test ~]# route -n

Kernel IP routing table

Destination    Gateway         Genmask         Flags Metric Ref    Use Iface

192.168.137.0  0.0.0.0         255.255.255.0   U    0      0        0 eth0

192.56.76.0    -               255.255.255.0   !    0      -        0 -

192.56.76.0    192.168.137.1   255.255.255.0   UG   0      0        0 eth0

169.254.0.0    0.0.0.0         255.255.0.0     U    1002   0        0 eth0

0.0.0.0        192.168.137.1   0.0.0.0         UG   0      0        0 eth0

说明:增加一条屏蔽的路由,目的地址为 192.56.76.0  将被拒绝

 

实例1-4  添加设置默认网关

命令:route add default gw 127.0.0.1

代码

[root@ben-test ~]# route add default gw 127.0.0.1

[root@ben-test ~]# route -n

Kernel IP routing table

Destination    Gateway         Genmask         Flags Metric Ref    Use Iface

192.168.137.0  0.0.0.0         255.255.255.0   U    0      0        0 eth0

169.254.0.0    0.0.0.0         255.255.0.0     U    1002   0        0 eth0

0.0.0.0        127.0.0.1       0.0.0.0         UG   0      0        0 lo

0.0.0.0        192.168.137.1   0.0.0.0         UG   0      0        0 eth0

注意:直接在命令行下执行route命令来添加路由,不会永久保存,当网卡重启或者机器重启之后,该路由就失效了;可以在/etc/rc.local中添加route命令来保证该路由设置永久有效。