route [add|del] [-net|-host] [网域或主机] netmask [mask] [gw|dev]
参数:
-n :不要使用通讯协定或主机名称,直接使用IP或port number
-ee :使用更加详细的资讯来显示
-net :表示后面接的路由为一个网域;
-host :接的为连接到单部主机的路由;
netmask :子网掩码, 决定网域的大小或主机的网段;
gw :gateway 的简写,接的是 IP 的数值
dev :指定由那一块网卡连线出去,接 eth0 等
永久保存:
1、在/etc/rc.local里添加
2、在/etc/sysconfig/network里添加到末尾
3、在/etc/sysconfig/static-routes
any host 192.168.40.156 dev lo
any net x.x.x.x/24 gw y-y-y-y
4、/etc/sysconfig/network-scripts/route-eth0
192.168.0.0/16
via 10.1.1.254
172.16.0.0/12
via 10.1.1.254
/etc/init.d/network脚本执行时会调用/etc/sysconfig/static-routes这个文件
# Add non interface-specific static-routes.
if [ -f /etc/sysconfig/static-routes ]; then
grep "^any" /etc/sysconfig/static-routes | while read ignore args ; do
/sbin/route add -$args
done
fi
if [ -f /etc/sysconfig/static-routes ]; then
grep "^any" /etc/sysconfig/static-routes | while read ignore args ; do
/sbin/route add -$args
done
fi
注意:在rc.local中添加路由只能保证重启系统会有你保存的路由信息,不能保证重启服务也会有你保存的路由信息
linux启动的顺序是所有服务都启动完毕后,rc.local里面的内容才会被执行,所以在rc.local中添加路由会造成NFS无法自动挂载问题
在/etc/sysconfig/static-route或者/etc/sysconfig/network-scripts/route-eth0 中添加路由 重启系统和服务都能保证路由信息会被添加
输出详解:
Flags : 旗标
o U (route is up):该路由是启动的;
o H (target gateway):需要透过外部的主机(gateway)来转递封包;
o G (use gateway):需要透过外部的主机 (gateway) 来转递封包;
o R (reinstate route for dynamic routing):使用动态路由时,恢复路由资讯的旗标;
o D (dynamically installed by daemon or redirect):已经由服务或转 port 功能设定为动态路由
o M (modified from routing daemon or redirect):路由已经被修改了;
o ! (reject route):这个路由将不会被接受(用来抵挡不安全的网域!)
o A (installed by addrconf)
o C (cache entry)
Metric :距离、跳数。暂无用。
The 'distance' to the target (usually counted in hops). It is
not used by recent kernels, but may be needed by routing dae-
mons.
Ref :不用管,恒为0。
Number of references to this route. (Not used in the Linux ker-nel.)
Use :该路由被使用的次数,可以粗略估计通向指定网络地址的网络流量。
Count of lookups for the route. Depending on the use of -F and
-C this will be either route cache misses (-F) or hits (-C).
Iface :接口,即eth0,eth0等网络接口名
Interface to which packets for this route will be sent.
例子:
route add default gw 192.168.10.1
route add -net 192.168.11.0 netmask 255.255.255.0 gw 192.168.10.1
route del -host 192.168.11.1 netmask 255.255.255.0 dev eth0
题目:
A机IP:
192.168.10.7 Gateway: 192.168.10.1
B机IP:
192.168.11.8 Gateway: 192.168.11.1
当2个IP在子网掩码都是255.255.255.0的时候是否可以通讯,子网掩码改成多少可以通讯?不能通讯的情况下如何配置路由可以让它们通讯?
答:不能,改成255.255.254.0 就可以通讯了
Route add -net 192.168.11.0 netmask 255.255.255.0 gw 192.168.10.1
Windows下的路由:
route print 查看路由状态
route -p [add|delete] 目的网络 mask 子网掩码 网关
-p 永久添加路由,不加-p 重启机器网卡失效
例子:
route -p add 192.168.20.0 mask 255.255.255.0 192.168.20.1