在 Linux 上“限制 DHCP 范围”通常指 限制 DHCP 服务器可分配的 IP 地址区间,常见场景是使用 ISC DHCP Server(dhcpd) 或 dnsmasq。下面分别说明。
/etc/dhcp/dhcpd.conf
通过 subnet 中的 range 来限制:
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 subnet-mask 255.255.255.0;
default-lease-time 600;
max-lease-time 7200;
}
✅ 效果:DHCP 只会分配 192.168.1.100 ~ 192.168.1.200
如果只想排除部分 IP,可拆分 range:
range 192.168.1.10 192.168.1.50;
range 192.168.1.60 192.168.1.100;
(例如 51–59 不分配)
host pc1 {
hardware ethernet 00:11:22:33:44:55;
fixed-address 192.168.1.20;
}
/etc/dnsmasq.conf
dhcp-range=192.168.1.100,192.168.1.200,255.255.255.0,12h
✅ 只分配 100–200
dhcp-host=192.168.1.101
dhcp-host=192.168.1.102
(或用作静态绑定)
dhcpd:
deny unknown-clients;
dnsmasq:
dhcp-ignore=tag:!known
dhcp-host=00:11:22:33:44:55,192.168.1.10
systemctl restart isc-dhcp-server
systemctl restart dnsmasq
| 需求 | 方法 |
|---|---|
| 限制分配区间 | range / dhcp-range |
| 排除 IP | 拆分 range |
| 固定 IP | MAC 绑定 |
| 限制设备 | 拒绝未知客户端 |
如果你能告诉我 使用的 DHCP 软件 和 具体 Linux 发行版,我可以给你更精确的配置示例。