在 Ubuntu 上通过 DHCP 绑定 MAC 地址(固定 IP 分配),通常是使用 isc-dhcp-server(或较新系统中的 Kea DHCP)。下面以最常见的 isc-dhcp-server 为例说明。
sudo apt update
sudo apt install isc-dhcp-server
sudo nano /etc/dhcp/dhcpd.conf
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.100 192.168.1.200;
option routers 192.168.1.1;
option domain-name-servers 8.8.8.8, 8.8.4.4;
}
在 dhcpd.conf 中添加 host 配置:
host pc-zhangsan {
hardware ethernet 00:11:22:33:44:55;
fixed-address 192.168.1.50;
}
说明:
pc-zhangsan:自定义主机名(随意)hardware ethernet:客户端 MAC 地址fixed-address:要分配的固定 IP(不能在 range 范围内)sudo nano /etc/default/isc-dhcp-server
INTERFACESv4="eth0"
sudo systemctl restart isc-dhcp-server
sudo systemctl enable isc-dhcp-server
查看状态:
sudo systemctl status isc-dhcp-server
在客户端重启网络或重新获取 IP:
dhclient -r
dhclient
服务器端查看日志:
tail -f /var/log/syslog | grep dhcpd
✅ MAC 地址格式必须是 : 分隔
✅ fixed-address 不能和 range 冲突
✅ 客户端必须是 DHCP 获取 IP,不能是静态 IP
如果你用的是 Ubuntu 22.04+ / Kea DHCP 或 dnsmasq,我也可以给你对应配置方式。