在 CentOS 里,dhclient 本身是用来通过 DHCP 自动获取 IP 的,它不能直接“固定 IP”。
如果你说的是「用 dhclient 但每次都拿到同一个固定 IP」,通常有以下几种做法:
不用 dhclient,直接配置静态 IP
编辑网卡配置文件(假设网卡是 eth0):
vi /etc/sysconfig/network-scripts/ifcfg-eth0
内容示例:
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.1.100
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=8.8.8.8
重启网络:
systemctl restart network
nmcli con mod eth0 ipv4.method manual \
ipv4.addresses 192.168.1.100/24 \
ipv4.gateway 192.168.1.1 \
ipv4.dns 8.8.8.8
nmcli con up eth0
⚠️ 这不是真正静态 IP,依赖 DHCP 服务器
在路由器或 DHCP 服务器上:
CentOS 端什么都不用改,继续用 dhclient。
dhclient -r eth0
dhclient -4 -cf /etc/dhcp/dhclient.conf eth0
在 /etc/dhcp/dhclient.conf 中:
interface "eth0" {
fixed-address 192.168.1.100;
}
⚠️ 只有 DHCP 服务器允许才会生效。
如果你已经配了静态 IP,但 dhclient 在干扰:
systemctl stop dhclient
systemctl disable dhclient
或:
systemctl stop NetworkManager
systemctl disable NetworkManager
(CentOS 7 常见)
| 需求 | 推荐方式 |
|---|---|
| 真正固定 IP | 配置 static IP |
| 仍用 DHCP | DHCP 服务器 MAC 绑定 |
| dhclient 固定 IP | 不可靠,不推荐 |
如果你告诉我 CentOS 版本 + 网卡名 + 是否用虚拟机/云服务器,我可以给你精确命令。