在高防服务器上设置 DHCP 保留地址
一、前置判断与总体原则
- 先确认你的高防服务器是否充当了DHCP 服务器。很多高防/带防的云主机默认只做NAT/端口转发,由上游网关或内网 DHCP 分配地址;此时应在网关或上游 DHCP 上做保留,而不是在业务服务器上。
- 若高防服务器确实是 DHCP 服务器(自建机房、虚拟化宿主机、内网网关等),保留地址的本质是:把某台客户端的MAC 地址与某个固定 IP做绑定,使该客户端每次都获得同一 IP。
- 规划要点:
- 保留 IP 必须位于已配置的作用域/地址池内,且建议配置为静态排除,避免地址冲突。
- 保留仅对匹配到的MAC生效;跨 VLAN/子网的客户端需要可达的 DHCP 服务或DHCP 中继。
- 高防场景下常配合静态 NAT/端口映射使用,确保外网访问策略稳定。
二、Windows Server 设置步骤
1) 打开服务器管理器 → 工具 → DHCP;展开 IPv4 → 选中目标作用域 → 右键保留 → 新建保留。
2) 填写:名称、IP 地址、MAC 地址(格式如 00-11-22-33-44-55 或 0011.2233.4455),保存。
3) 在地址租约中查看保留是否生效。
netsh dhcp server add reservedip <保留IP> <保留名称>
- 批量执行:将多条命令写入 dhcp.txt,执行:
netsh exec dhcp.txt
- 提示:确保保留 IP 不在动态分配范围内或已做排除,避免冲突。
三、Linux ISC DHCP 设置步骤
- 安装与启动
- CentOS/RHEL:sudo yum install dhcp -y
- Ubuntu/Debian:sudo apt-get install isc-dhcp-server -y
- 启动:sudo systemctl start isc-dhcp-server && sudo systemctl enable isc-dhcp-server
- 配置保留(/etc/dhcp/dhcpd.conf)
- 在相应 subnet 内添加 host 声明,将客户端 MAC 与固定 IP 绑定:
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.100 192.168.1.200;
option routers 192.168.1.1;
option domain-name-servers 8.8.8.8, 1.1.1.1;
host host01 {
hardware ethernet 00:11:22:33:44:55;
fixed-address 192.168.1.168;
}
}
- 使配置生效
- 检查语法:sudo dhcpd -t
- 重启服务:sudo systemctl restart isc-dhcp-server
- 验证
- 查看服务状态:sudo systemctl status isc-dhcp-server
- 查看租约:cat /var/lib/dhcp/dhcpd.leases(应能看到对应保留的分配记录)
四、验证与常见问题处理
- 客户端验证
- Windows:ipconfig /release 与 ipconfig /renew;查看是否获取到保留 IP。
- Linux:sudo dhclient -v <接口名> 或查看 ip addr;服务器端可 tail -f /var/log/messages 观察 DHCP 分配日志。
- 常见问题
- 地址冲突:保留 IP 已被占用或未做排除;将保留 IP 移出动态范围或加入静态排除。
- 跨网段不生效:检查DHCP 中继配置与作用域子网是否匹配。
- 客户端不变更:先释放租约(ipconfig /release 或 dhclient -r),再重新获取。
- 防火墙/安全组:确保 UDP 67/68 端口对 DHCP 服务器与客户端放行。