温馨提示×

如何限制linux dhcp范围

小樊
45
2026-10-09 16:01:29
栏目: 智能运维

在 Linux 上“限制 DHCP 范围”通常指 限制 DHCP 服务器可分配的 IP 地址区间,常见场景是使用 ISC DHCP Server(dhcpd) 或 dnsmasq。下面分别说明。


一、使用 ISC DHCP Server(dhcpd)

1. 配置文件位置

/etc/dhcp/dhcpd.conf

2. 限制地址池范围

通过 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


3. 排除某些 IP(不分配)

如果只想排除部分 IP,可拆分 range:

range 192.168.1.10 192.168.1.50;
range 192.168.1.60 192.168.1.100;

(例如 51–59 不分配)


4. 固定 IP(MAC 绑定)

host pc1 {
    hardware ethernet 00:11:22:33:44:55;
    fixed-address 192.168.1.20;
}

二、使用 dnsmasq(常见于路由器)

配置文件

/etc/dnsmasq.conf

限制 DHCP 范围

dhcp-range=192.168.1.100,192.168.1.200,255.255.255.0,12h

✅ 只分配 100–200

不分配某些 IP

dhcp-host=192.168.1.101
dhcp-host=192.168.1.102

(或用作静态绑定)


三、限制“哪些设备能获取 IP”(进阶)

1. 只允许指定 MAC

dhcpd:

deny unknown-clients;

dnsmasq:

dhcp-ignore=tag:!known
dhcp-host=00:11:22:33:44:55,192.168.1.10

四、验证与重启

dhcpd

systemctl restart isc-dhcp-server

dnsmasq

systemctl restart dnsmasq

总结

需求 方法
限制分配区间 range / dhcp-range
排除 IP 拆分 range
固定 IP MAC 绑定
限制设备 拒绝未知客户端

如果你能告诉我 使用的 DHCP 软件 和 具体 Linux 发行版,我可以给你更精确的配置示例。

0 踩