在 CentOS 里,dhclient 本身是用于 DHCP 自动获取 IP 的,它不能直接“固定 IP”。
如果你说的是「通过 dhclient 方式,让 DHCP 每次都分配同一个固定 IP」,那通常是在 DHCP 服务器端做 IP 绑定(MAC 绑定),而不是在客户端。
下面分几种常见情况说明:
这是 CentOS 固定 IP 的标准方式。
以 eth0 为例:
vi /etc/sysconfig/network-scripts/ifcfg-eth0
内容示例:
TYPE=Ethernet
BOOTPROTO=static
NAME=eth0
DEVICE=eth0
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
# 或(CentOS 8+)
nmcli connection reload
nmcli connection up eth0
✅ 这是最稳定、最常用的方式
dhclienthost my-centos {
hardware ethernet 00:0c:29:xx:xx:xx;
fixed-address 192.168.1.100;
}
客户端:
dhclient eth0
⚠️ 前提:你能控制 DHCP 服务器
dhclient -r eth0
dhclient -lf /var/lib/dhclient/dhclient.leases eth0
或在:
/etc/dhcp/dhclient.conf
加:
request subnet-mask, broadcast-address, routers, domain-name-servers;
⚠️ 服务器不答应就没用
| 需求 | 推荐方式 |
|---|---|
| 服务器固定 IP | 改 ifcfg-* 静态 IP |
| 虚拟机固定 IP | 静态 IP 或 DHCP MAC 绑定 |
| 不想改配置 | 只能在 DHCP 服务器绑定 |
如果你能告诉我:
我可以给你最合适的配置示例。