温馨提示×

centos dhclient获取不到ip

小樊
41
2026-10-26 09:34:57
栏目: 智能运维

在 CentOS 上 dhclient 获取不到 IP,通常可以按下面思路一步步排查。


一、确认网卡名称和状态

ip addr

确认:

  • 网卡名称(如 eth0、ens33)
  • 网卡是否是 DOWN 状态

如果网卡是 DOWN:

ip link set eth0 up

二、手动执行 dhclient 看报错

dhclient -v eth0

常见现象:

  • 一直卡在 DHCPDISCOVER
  • 直接退出无 IP

三、检查 DHCP 服务端是否可达

1. 网络是否连通

ping 192.168.1.1   # 你的网关

2. 是否在同一网段

ip addr
ip route

四、检查网卡配置文件(CentOS 7/8)

编辑:

vi /etc/sysconfig/network-scripts/ifcfg-eth0

确保包含:

BOOTPROTO=dhcp
ONBOOT=yes

改完重启网络:

systemctl restart network
# 或
ifdown eth0 && ifup eth0

五、CentOS 8 / Stream(NetworkManager)

CentOS 8 默认用 NetworkManager:

nmcli device show eth0
nmcli connection show

重新获取:

nmcli connection down eth0
nmcli connection up eth0

或:

dhclient -r eth0
dhclient eth0

六、防火墙 / SELinux 干扰(少见但可能)

临时关闭测试:

systemctl stop firewalld
setenforce 0

七、虚拟机常见问题(VMware / KVM)

  • 网卡模式是否为 NAT / 桥接
  • 虚拟交换机是否开启 DHCP
  • 克隆虚拟机导致 MAC 冲突

查看 MAC:

ip link

八、查看系统日志

journalctl -u NetworkManager
dmesg | grep eth0

九、临时验证用静态 IP

如果 DHCP 始终不行,可临时配静态 IP 验证网络本身是否正常:

ip addr add 192.168.1.100/24 dev eth0
ip route add default via 192.168.1.1

如果你愿意,可以把下面信息发我,我可以直接帮你判断:

  • CentOS 版本(cat /etc/redhat-release)
  • ip addr 输出
  • dhclient -v eth0 的输出

0 踩