为什么我的 eth0 配置为静态时会获得动态 IP?

为什么我的 eth0 配置为静态时会获得动态 IP?

由于某种原因,我们办公室的 Linux 机器通过 dhcp 分配了一个 IP 地址,但我不知道为什么。令我困惑的是,当我检查 system-config-network 时,它显示我的 eth0 设置为静态 IP 地址。并且 /etc/sysconfig/network-scripts/ifcfg-eth0 也显示它设置为静态 IP,但它获得的 IP 地址与 ifcfg-eth0 中指定的 IP 地址不同。如果您对我下一步可以查看的地方有任何建议或想法,请告诉我。

以下几个细节或许能帮你搞清楚我是个多么愚蠢的人 :)
Fedora 11
此盒子前面的路由器正在运行 dhcp,起始地址为 10.42.1.100
此盒子配置为 10.42.1.50(至少我认为是!),子网为 255.255.255.0(与路由器的 lan 子网相同)
此盒子没有静态 IP,而是被分配了 10.42.1.100。
以下是 ifcfg-eth0 的详细信息

DEVICE=eth0
BOOTPROTO=none
ONBOOT=yes
TYPE=Ethernet
USERCTL=no
NM_CONTROLLED=no
NETMASK=255.255.255.0
IPADDR=10.42.1.50
GATEWAY=10.42.1.1

答案1

以下是我希望您修改的参数列表:

  1. BOOTPROTO=静态
  2. 删除 NM_Controlled 参数,或者至少将其注释掉。执行“service network restart”或“/etc/init.d/network restart”即可。否则,您可能需要重新启动系统并检查相关日志文件以进行进一步诊断。

答案2

您可以尝试根据盒子的 MAC 地址从路由器分配静态 IP。如果使用静态 IP,这通常是我的首选解决方案。

答案3

检查以确保 Avahi 守护程序未运行。我曾遇到过此程序在 RHEL5 上调出接口,无论 sysconfig 文件中的内容是什么。

答案4

DEVICE=eth0
BOOTPROTO=static
ONBOOT=yes
TYPE=Ethernet
USERCTL=no
#NM_CONTROLLED=no (delete)
NETMASK=255.255.255.0
IPADDR=10.42.1.50
GATEWAY=10.42.1.1




service network restart
chkconfig network on 
chkconfig dhcpd off

相关内容