我有一台 Linux 服务器 (centos 5),过去 2-3 周以来,它一直在将其 IP 配置信息重置为本地 IP (192.168.xx)。在 /etc/network/interfaces 中,我有:
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 172.20.10.10
netmask 255.255.255.0
gateway 172.20.10.1
所以,我以为这会解决问题。我还尝试过每天早上 7 点使用 cron 重置详细信息:
0 7 * * * route add default gw 172.20.10.1 eth0
0 7 * * * ifconfig eth0 172.20.10.10 netmask 255.255.255.0
但这似乎也不起作用。
猫/等/系统配置/网络:
NETWORKING_IPV6=no
NETWORKING=yes
HOSTNAME=localhost.localdomain
cat /etc/sysconfig/network-scripts/ifcfg-eth0:
TYPE=Ethernet
DEVICE=eth0
BOOTPROTO=none
NETMASK=255.255.255.0
IPADDR=172.20.10.10
HWADDR=00:16:17:d6:31:f9
GATEWAY=172.20.10.1
DHCP=no
PROBE=no
服务器位于办公楼内的托管 VPN 上(我认为)。我们不知道有任何 DHCP 服务器,而且这种情况只发生了 2-3 周。大楼的网络管理员说他们没有改变任何会影响它的东西,我们也想不出我们做了什么。
我真的陷入困境了,任何帮助都会非常感激!
更新 1
在 boot.log 中注意到了这一点:
May 17 02:02:43 localhost NET[30723]: /sbin/dhclient-script : updated /etc/resolv.conf
因此,我查看了 /etc/resolv.conf 并得到了以下信息:
; generated by /sbin/dhclient-script
nameserver 192.168.1.1
更新2
如果阅读更多有关 dhclient-script 的内容,就会发现它是由引用 dhclient.conf 的 dhclient 调用的。我认为它会在 /etc/ 中查找它。我在我们的服务器上能找到的唯一一个是 /etc/dhcp/dhclient.conf,它包含:
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 172.20.10.10
netmask 255.255.255.0
gateway 172.20.10.1
答案1
dhclient-script 被调用的事实使我认为 NetworkManager 服务正在运行,/etc/network/interface 的 DHCP=no 阻止 iface 脚本像 resolv.conf 那样被重写,但它并没有阻止 dhclient-script 运行 ifconfig 命令并获取实际的接口配置。
这里有一个关于此类事情的 CentOS 邮件列表链接: http://lists.centos.org/pipermail/centos/2009-November/086566.html 如果我没记错的话,作者希望你做什么。
/sbin/service NetworkManager stop
chkconfig NetworkManager off