设为首页 收藏本站
查看: 846|回复: 0

[经验分享] Linux双网卡静态路由修改

[复制链接]

尚未签到

发表于 2018-1-22 10:29:22 | 显示全部楼层 |阅读模式
本人正在学习Linux运维,在做架构时需要虚拟多台服务器且配置双网卡 , 当设置好双网卡IP的配置时发现 , 系统会自动选择一个网卡作为默认路由 . 而在我的环境中系统选择的网卡并非我所想要的 , 而且将默认路由写入rc.local开机可以执行 , 但用/etc/init.d/network重启网卡配置就会出现路由恢复的问题 , 如果这是在生产环境就需要去现场处理 . 所以在网上找到一个修改静态路由帖子(原文地址会在最后贴出) , 可以在 /etc/init.d/network脚本下执行的方法 . 但在这里要说的是一点这个脚本对默认路由的改进

1. 在/etc/init.d/network查找到我们要修改的循环的位置               

[iyunv@template ~]# grep -n '# Add non interface-specific static-routes.' /etc/init.d/network
138:    # Add non interface-specific static-routes.
[iyunv@template ~]#

2. vim打开/etc/init.d/network文件找到刚才查找到行

[iyunv@template ~]# vi /etc/init.d/network
打开之后
137
138         # Add non interface-specific static-routes.
139         if [ -f /etc/sysconfig/static-routes ]; then
140            grep "^any" /etc/sysconfig/static-routes | while read ignore args ; do
141               /sbin/route add -$args
142            done
143         fi
144         # Add non interface-specific static arp entries.
:set nu                                                                                                            

将第140和141行改为

#Add noninterface-specific static-routes.
if [ -f/etc/sysconfig/static-routes ]; then
  egrep "^1" /etc/sysconfig/static-routes | while read ignore args ;
  do
       /sbin/route $args
  done
fi

这样/sbin/route命令后面就可以接任何参数 , 不用只接add

    在 /etc/sysconfig/目录下建立static-routes,并添加命令

[iyunv@backup ~]# vi /etc/sysconfig/static-routes
写入
1 add default gw 10.0.0.254
1 del default gw 172.16.1.254

[iyunv@backup ~]# cat /etc/sysconfig/static-routes
1 add default gw 10.0.0.254
1 del default gw 172.16.1.254
[iyunv@backup ~]#

删除172的默认路由 同时建立10网段默认路由
这样在我们重启网卡时 最后会运行这个循环 从而改写默认路由
写法就是正常route修改路由命令 , 将route替代为1 , 在脚本中1会被替换掉

4. 验证
我在执行/sbin/route后面加了一条

          do
       /sbin/route $args
        echo 1111111111111##############
  done

让每次执行route命令时输出一个标识符 好通知已经执行

5. 最后执行验证

[iyunv@backup ~]# /etc/init.d/network restart
Shutting down interface eth0:                              [  OK  ]
Shutting down interface eth1:                              [  OK  ]
Shutting down loopback interface:                          [  OK  ]
Bringing up loopback interface:                            [  OK  ]
Bringing up interface eth0:  Determining if ip address 10.0.0.41 is already in use for device eth0...
                                                           [  OK  ]
Bringing up interface eth1:  Determining if ip address 172.16.1.41 is already in use for device eth1...
                                                           [  OK  ]
1111111111111##############
1111111111111##############
[iyunv@backup ~]#

查看路由表

[iyunv@backup ~]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
10.0.0.0        0.0.0.0         255.255.255.0   U     0      0        0 eth0
172.16.1.0      0.0.0.0         255.255.255.0   U     0      0        0 eth1
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
0.0.0.0         10.0.0.254      0.0.0.0         UG    0      0        0 eth0
[iyunv@backup ~]#

静态路由成功~

由于将循环中执行的命令参数删除 ,方便添加其他参数 , 可删除或添加其他路由 , 所以应该没有损失这个脚本原来的使命 , 静态路由还是可以设置的 , 注意一下文件中写法就好了 .

文档中介绍的其他方法或其他文档的方法都试过 , 应该就是这个好用 , 在此给大家分享一下.

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-435921-1-1.html 上篇帖子: Centos下安装部署gisserver及centos6-7中文乱码解决 下篇帖子: CentOS系统中常用查看日志命令
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表