linux-networking – Linux经过长时间停机后自我恢复?

我有几个CentOS 6/7系统(非生产,实验目的)已配置为使用DHCP作为其IP地址.上周发生了大规模网络中断,我发现这些系统丢失了IP地址,DHCP客户端已经终止.我想经过太多/太长的重试.

让它试图永远恢复的正确方法是什么?
是否有可以执行此操作的dhcp客户端设置?或者我应该每小时添加一个类似’ifup eth0’的cron条目?或者有更好的方法来做到这一点?

我知道CentOS 6和CentOS 7以不同的方式做这些事情,我正在寻找这两种情况的答案.

更新:

现在我已经创建了这个脚本(我放在/etc/cron.hourly/中),它似乎适用于CentOS 6的特定情况.
这可能不是最好的解决方案,但它“可以在我的机器上运行”.

#!/bin/bash

IF=eth0

ifconfig ${IF} | fgrep 'inet addr' > /dev/null

if [ $? -ne 0 ];
then
    echo "Network is dead,trying restart"
    ifup ${IF}
fi

仍然在寻找正确的方法,所以我认为这不是我的问题的正确答案.

解决方法

CentOS 6和7都应该接受/ etc / sysconfig / network-scripts / ifcfg *文件中的PERSISTENT_DHCLIENT选项.e.g.
# /etc/sysconfig/network-scripts/ifcfg-eth0 
BOOTPROTO=dhcp
PERSISTENT_DHCLIENT=yes
ONTBOOT=yes
DEVICE=eth0

这指示ifup-eth脚本在没有(默认)-1选项的情况下运行dhclient

if is_true "${PERSISTENT_DHCLIENT}"; then
    ONESHOT="";
else
    ONESHOT="-1";
fi;
...
DHCLIENTARGS="${DHCLIENTARGS} ${ONESHOT} -q ${DHCLIENTCONF} -lf ${LEASEFILE} -pf /var/run/dhclient-${DEVICE}.pid"

有了这个选项,dhclient将尝试一次.从手册页

-1 Try once to get a lease. One failure,exit with code 2.

如果没有该选项,dhclient应该再次从dhclient.conf手册页重试(默认情况下每隔5分钟)

retry time;

The retry statement determines the time that must pass after the client 
has determined that there is no DHCP server present before it tries 
again to contact a DHCP server. By default,this is five minutes.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Linux日志文件中列属性的详细解析
在Linux系统中没有duf命令,如何有效地管理磁盘空间?
深入探讨EncryptPad在Linux操作系统中的功能和优势
原理和应用场景:Linux中ttyload工具的工作原理和实际用途
深度解析SELinux的三种策略类型
评估Linux系统性能的ttyload工具使用效果
分享在Linux系统中检测SSH版本的方法
介绍Linux平台上的数据加密工具EncryptPad
在Linux系统中,如何查看和诊断块设备信息?
在Linux环境下如何查看块设备信息?
探索Linux操作系统下的数据加密工具EncryptPad
学会在Linux系统中查看硬盘信息
分析SELinux:原理与实践
掌握SELinux策略类别
技巧:有效解读和管理Linux日志文件
查看Linux系统中的所有用户
了解Linux系统中各种不同类型的日志文件
深入理解Linux PS命令
方法:在Linux操作系统中查看用户
检查Linux上SSH的版本的步骤