
本文介绍如何在Linux系统中,利用ISC DHCP服务器(通常为isc-dhcp-server包)配置DHCP服务器,实现IP地址分配的限制。
一、为特定MAC地址分配固定IP
在DHCP配置文件中,为特定MAC地址指定固定IP:
- 使用
sudo nano /etc/dhcp/dhcpd.conf打开配置文件。 - 添加如下配置,将
00:11:22:33:44:55替换为目标MAC地址,192.168.1.100替换为目标IP地址:
host specific-host {
hardware ethernet 00:11:22:33:44:55;
fixed-address 192.168.1.100;
}
二、限制IP地址池范围
定义IP地址池,并指定可分配的IP地址范围:
- 打开
/etc/dhcp/dhcpd.conf配置文件。 - 添加如下配置,调整IP地址范围和网络参数:
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.10 192.168.1.100;
option routers 192.168.1.1;
option subnet-mask 255.255.255.0;
option domain-name-servers 8.8.8.8, 8.8.4.4;
}
三、设置IP地址租约时间
控制IP地址的使用时长,通过设置租约时间:
- 打开
/etc/dhcp/dhcpd.conf配置文件。 - 在子网配置中添加
default-lease-time和max-lease-time选项,例如:
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.10 192.168.1.100;
option routers 192.168.1.1;
option subnet-mask 255.255.255.0;
option domain-name-servers 8.8.8.8, 8.8.4.4;
default-lease-time 600; # 10分钟
max-lease-time 7200; # 2小时
}
四、使用访问控制列表(ACL)
利用ACL控制哪些客户端可以获取IP地址:
- 打开
/etc/dhcp/dhcpd.conf配置文件。 - 定义ACL并应用到子网,例如:
acl "trusted-clients" {
host trusted-host1;
host trusted-host2;
}
subnet 192.168.1.0 netmask 255.255.255.0 {
pool {
allow members of "trusted-clients";
range 192.168.1.10 192.168.1.100;
}
option routers 192.168.1.1;
option subnet-mask 255.255.255.0;
option domain-name-servers 8.8.8.8, 8.8.4.4;
}
五、重启DHCP服务器
配置完成后,执行sudo systemctl restart isc-dhcp-server重启DHCP服务器使配置生效。
通过以上方法,您可以根据实际需求灵活控制Linux DHCP服务器的IP地址分配策略。 请根据您的实际网络环境修改相应的IP地址和MAC地址。










