在 Debian 上“限制 DHCP 地址”通常指以下几种需求之一。下面按常见场景分别说明(以 ISC DHCP Server 为例,Debian 最常用的 DHCP 服务)。
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; # 只分配 100–200
option routers 192.168.1.1;
option domain-name-servers 8.8.8.8;
}
✅ 效果:
DHCP 只会从 .100 ~ .200 分配 IP,其余地址不可用。
host pc1 {
hardware ethernet 00:11:22:33:44:55;
fixed-address 192.168.1.101;
}
host pc2 {
hardware ethernet aa:bb:cc:dd:ee:ff;
fixed-address 192.168.1.102;
}
✅ 只有这些 MAC 能拿到 IP
❌ 其他设备无法获取地址
subnet 192.168.1.0 netmask 255.255.255.0 {
# 不写 range
}
host allowed1 {
hardware ethernet 00:11:22:33:44:55;
fixed-address 192.168.1.50;
}
✅ 只有白名单设备可用 DHCP
deny booting;
deny bootp;
host block1 {
hardware ethernet 00:11:22:33:44:66;
deny booting;
}
或更简单:
host bad {
hardware ethernet 00:11:22:33:44:66;
ignore booting;
}
如果有多网卡:
subnet 192.168.10.0 netmask 255.255.255.0 {
range 192.168.10.10 192.168.10.20;
}
并确保监听正确接口:
sudo nano /etc/default/isc-dhcp-server
INTERFACESv4="eth0"
sudo systemctl restart isc-dhcp-server
查看状态:
sudo systemctl status isc-dhcp-server
| 需求 | 方法 |
|---|---|
| 限制 IP 范围 | range |
| 只给特定设备 | host + fixed-address |
| 禁止某设备 | deny/ignore booting |
| 一设备一 IP | host 绑定 |
| 防止蹭网 | 白名单 MAC |
如果你能说明 具体场景(如:防止蹭网 / 服务器固定 IP / 限制租约数量),我可以给你更精确的配置示例。