route命令详解

route [-nee]

route add [-net][-host] [网络或主机] netmask [mask] [gw|dev]

route del [-net][-host] [网络或主机] netmask [mask] [gw|dev]

查看的参数

-n:不要使用通信协议或主机名,直接使用IP或port number

-ee:显示更详细的信息

增加add与删除del路由的相关参数

-net:表示后面接的路由为一个网络

-host:表示后面接的为连接到单部主机的路由

netmask:与网络相关,可以设置netmask决定网络的大小

gw:gateway的简写,后面接的是ip的数值,与dev不同

dev:如果只是要指定由那一块网卡连接出去,则使用这个设置,后面接eth0等

范例1:单纯的查看路由状态

route -n

Kernel IP routing table

Destination Gateway Genmask Flags Metric Ref Use Iface

123.57.204.0 0.0.0.0 255.255.252.0 U 0 0 0 eth1

10.51.104.0 0.0.0.0 255.255.248.0 U 0 0 0 eth0

169.254.0.0 0.0.0.0 255.255.0.0 U 1002 0 0 eth0

169.254.0.0 0.0.0.0 255.255.0.0 U 1003 0 0 eth1

172.16.0.0 10.51.111.247 255.240.0.0 UG 0 0 0 eth0

100.64.0.0 10.51.111.247 255.192.0.0 UG 0 0 0 eth0

10.0.0.0 10.51.111.247 255.0.0.0 UG 0 0 0 eth0

0.0.0.0 123.57.207.247 0.0.0.0 UG 0 0 0 eth1

route

Kernel IP routing table

Destination Gateway Genmask Flags Metric Ref Use Iface

123.57.204.0 255.255.252.0 U 0 0 0 eth1

10.51.104.0 255.255.248.0 U 0 0 0 eth0

link-local 255.255.0.0 U 1002 0 0 eth0

link-local 255.255.0.0 U 1003 0 0 eth1

172.16.0.0 10.51.111.247 255.240.0.0 UG 0 0 0 eth0

100.64.0.0 10.51.111.247 255.192.0.0 UG 0 0 0 eth0

10.0.0.0 10.51.111.247 255.0.0.0 UG 0 0 0 eth0

default 123.57.207.247 0.0.0.0 UG 0 0 0 eth1

route -n和route输出结果不同,-n参数会显示出ip,而只使用route,显示的是"主机名",解析会有些慢,default=0.0.0.0/0.0.0.0

Destination、Genmask:这两个参数分别是network与netmask,

Gateway:该网络是通过那个gateway连接出去的,如果显示0.0.0.0表示该路由是直接由本级传送,也就是可以通过局域网的mac直接发送,如果显示ip的话,表示该路由需要经过路由器网关的帮忙才能够发送出去。

Flags:共有多个标志,代表的意义如下

U(route is up):该路由是启动的

H(target is a hot):目标是一台主机(ip)而非网络

G(use gateway):需要通过外部的主机来传递数据包

R(reinstate route for dynamic routing):使用动态路由时,恢复路由信息的标志

D(dynamically installed by daemon or redirect):动态路由

M(modified from routing daemon or redirect):

!(reject route):这个路由将不会被接受(用来阻止不安全的网络)

路由排列顺序,依序由小网络(Class C)逐渐到大网络,最后则是默认路由

范例二 路由的增加与删除

route del -net 169.254.0.0 netmask 255.255.0.0 dev eht0

删除168.254.0.0这个网络,删除的时候信息都要写入,netmask,dev等参数

route add -net 192.168.100.0 netmask 255.255.255.0 dev eth0

增加一条路由,这个路由的设置必须要能够与你的网络互通

route add default gw 192.168.1.250

增加默认路由

一般一个新的主机环境

ifconfig eht0 192.168.1.100;route add default gw 192.1687.1.254