在 Linux 里,dhclient 和 DHCP 不是同一类东西,简单说:
DHCP(动态主机配置协议)
用于自动给主机分配 IP 地址、子网掩码、网关、DNS 等网络参数。
特点:
示例过程:
客户端 → DHCP Discover
服务器 → DHCP Offer
客户端 → DHCP Request
服务器 → DHCP Ack
dhclient(DHCP Client)
是 ISC 提供的一个 DHCP 客户端程序,常用于 Linux。
作用:
常见用法:
dhclient eth0
dhclient -r eth0 # 释放 IP
| 对比项 | DHCP | dhclient |
|---|---|---|
| 类型 | 协议 | 程序 |
| 所在层 | 应用层协议 | 用户空间进程 |
| 是否可运行 | 否 | 是 |
| 例子 | RFC 2131 | /sbin/dhclient |
可以理解为:
DHCP 是“规则”,dhclient 是“按规则办事的人”
dhclient 不是唯一选择:
dhcpcd(常用于桌面/树莓派)systemd-networkd(现代发行版)NetworkManager(默认桌面环境)如果你愿意,我也可以讲 dhclient 和 NetworkManager 的冲突问题 或 抓包看 DHCP 过程。