本文介绍如何在Linux系统中,利用ISC DHCP服务器(通常为isc-dhcp-server软件包)的配置文件,有效控制IP地址的分配。
一、基于子网的IP地址范围限制
在DHCP配置文件(/etc/dhcp/dhcpd.conf)中,通过subnet、range、pool或host指令,指定IP地址池,从而限制IP地址的分配范围。
示例:
subnet 192.168.1.0 netmask 255.255.255.0 { range 192.168.1.10 192.168.1.100; // IP地址池 option routers 192.168.1.1; // 网关 option subnet-mask 255.255.255.0; // 子网掩码 option domain-name-servers 192.168.1.2; // DNS服务器 }
此例中,DHCP服务器仅分配192.168.1.10到192.168.1.100之间的IP地址。
二、为特定MAC地址分配静态IP
使用host指令,为特定MAC地址分配固定IP地址。
示例:
host specific-host { hardware ethernet 00:11:22:33:44:55; // MAC地址 fixed-address 192.168.1.101; // 固定IP地址 }
MAC地址为00:11:22:33:44:55的设备将始终获得192.168.1.101的IP地址。
三、拒绝未知客户端 (deny unknown-clients)
在子网声明中添加deny unknown-clients;,仅允许已知的客户端获取IP地址。
四、基于网络段的访问控制 (allow members of)
使用allow members of指令,限制特定网络段的客户端访问。
五、黑名单和白名单 (blacklist 和 whitelist)
使用blacklist和whitelist指令,精确控制IP地址的分配。
六、重启DHCP服务器
修改配置文件后,重启DHCP服务器使配置生效:
sudo systemctl restart isc-dhcp-server
通过以上方法,您可以灵活配置Linux DHCP服务器,实现精细化的IP地址分配管理。