linux下永久添加静态路由

在linux下永久添加静态路由有两种方法:linux

 添加路由的命令:shell

1,route addbash

route add -net 192.56.76.0 netmask 255.255.255.0 dev eth0#添加一条静态路由
route add default gw 192.168.0.1#添加默认路由
route del -net 192.168.1.0/24 gw 192.168.0.1#删除一条路由
route -n#查看路由表

 

2,ip ro add服务器

ip ro add 192.56.76.0/24 dev 192.168.0.1#添加一条静态路由
ip ro add default via 192.168.0.1 dev eth0#添加默认路由
ip ro del 192.168.1.0/24#删除一条路由
ip route show#查看路由表

 

常见参数:网络

add 增长路由

del 删除路由

via 网关出口IP地址

dev 网关出口物理设备名

 

让路由重启服务器后依然生效:post

1,在/etc/rc.local里面添加:

添加路由命令为:直接将在命令行操做的命令复制到该文件中,保存退出便可。

 

2,在/etc/sysconfig/static-routes文件里面写入:spa

若是该文件不存在,则手动建立,添加内容格式为:

参照/etc/init.d/network文件里面的shell语句:
# 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

 

则,若是要添加一条静态路由,命令为:命令行

 route add -net 192.56.76.0 netmask 255.255.255.0 dev eth0

 

那么,在/etc/sysconfig/static-routes文件中添加格式为:code

 any -net 192.56.76.0 netmask 255.255.255.0 dev eth0

 

两种方式添加静态路由对比:blog

1,rc.local:

重启服务器生效;

重启网络服务,则静态路由失效;

rc.local是系统启动后最后运行的一个脚本,所以若是有如NFS须要网络才能挂载的服务需求,则该方式不适合;

 

2,static-routes:

重启服务器生效;

重启网络服务生效:

适合须要网络需求的服务;

 

脚本添加静态路由的方法和rc.local就差很少了:

这种方法其实也是本身写脚本,放在/etc/rc3.d/ 开头设置为S。

S意思是启动,数字是顺序,K意思是中止。

通常是启动是守护进程在某个模式的启动顺序。

数字越小启动的顺序越靠前;

/etc/rc3.d是文本多用户环境,通常生产环境都是这个环境。

 

其坏处也是:重启网络后失效。

 

总结:

若是须要添加静态路由,尽可能将静态路由添加到/etc/sysconfig/static-routes文件中。避免因重启网络服务致使路由失效,从而避免故障的发生。