(默认路由是数据包找不到合适路由,最终选择的路由;静态就是重启服务依然存在)
一、删除默认静态路由
在 /etc/init.d/network文件中查看:
会有这样一段代码:
这是一段添加路由表的代码,代表从/etc/sysconfig/static-routes文件中读取以any开头的一段代码后面定义为args,加到命令 route add -后面。
# 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
注意:这个文件中并没有删除路由的代码
需要在上面这一段代码之前添加:
#Del non interface-specific static-routes.
if [ -f /etc/sysconfig/static-routes ]; then
grep "^del" /etc/sysconfig/static-routes | while read ignore args ; do
/sbin/route del $args
done
fi
因为是删除默认路由所以不需要$args前面的 -;
步骤:
①一般red hat中并没有这个文件:/etc/sysconfig/static-routes,需要新建它;
②在文件中写入:del default gw 192.xxx.xxx.xxx
(gw 后面的参数是默认路由的网关,可以通过route -n
查看它的Gateway那一列)
二、添加默认静态路由
添加步骤:
① 修改本文第一个代码块中的 /sbin/route add -$args
为/sbin/route add $args
;(之所以要去掉-,是因为它默认的是 route add -net…)
②在/etc/sysconfig/static-routes文件中写入any default gw 192.xxx.xxx.xxx dev xxx
(其中gw后面是网关号,dev后面是端口名称,可以用ifconfig查看可用的端口)
上面的步骤完成后需要重启网络:service network restart
三、添加普通静态路由
同二中,在/etc/sysconfig/static-routes文件中写入:
any -net 192.168.0.0 netmask 255.2555.255.0 dev eth0