在 Ubuntu 中,dhclient 是 DHCP 客户端,用于从 DHCP 服务器获取 IP 地址。配置方式取决于 Ubuntu 版本 和 网络管理方式(传统 /etc/network/interfaces 或 新版的 Netplan + systemd-networkd / NetworkManager)。
下面按常见场景说明。
Ubuntu 18.04+ 默认使用 Netplan,底层可能是:
systemd-networkd(不用 dhclient)NetworkManager(桌面版常用,可能用 dhclient 或内部实现)查看:
ps aux | grep dhclient
sudo vim /etc/network/interfaces
示例(DHCP):
auto eth0
iface eth0 inet dhcp
sudo systemctl restart networking
# 或
sudo ifdown eth0 && sudo ifup eth0
ls /etc/netplan/
network:
version: 2
ethernets:
eth0:
dhcp4: true
应用:
sudo netplan apply
Netplan 默认可能 不使用 dhclient,而是用 systemd-networkd
如果你希望 Netplan 使用 dhclient:
network:
version: 2
ethernets:
eth0:
dhcp4: true
renderer: NetworkManager
并确保 NetworkManager 使用 dhclient:
sudo vim /etc/NetworkManager/NetworkManager.conf
[main]
dhcp=dhclient
重启:
sudo systemctl restart NetworkManager
/etc/dhcp/dhclient.conf
常用示例:
timeout 30;
retry 60;
send host-name = gethostname();
request subnet-mask, broadcast-address, routers, domain-name-servers;
sudo dhclient eth0
释放地址:
sudo dhclient -r eth0
journalctl -u systemd-networkd
journalctl -u NetworkManager
Netplan 示例:
eth0:
dhcp4: true
addresses: [192.168.1.10/24]
| 场景 | 推荐方式 |
|---|---|
| Ubuntu 20/22/24 | Netplan |
| 服务器无桌面 | systemd-networkd |
| 桌面版 | NetworkManager |
| 必须用 dhclient | NetworkManager + dhcp=dhclient |
如果你能告诉我:
我可以给你精确配置示例。