温馨提示×

debian dhcp如何导入绑定

小樊
36
2026-10-10 18:29:25
栏目: 智能运维

在 Debian 上配置 DHCP(通常使用 ISC DHCP Server,即 isc-dhcp-server)来做 IP 与 MAC 绑定(静态绑定 / 地址保留),本质上是把绑定信息写进 DHCP 配置文件。下面按常见场景说明。


一、安装 DHCP 服务(如未安装)

sudo apt update
sudo apt install isc-dhcp-server

二、配置文件位置

主配置文件通常是:

/etc/dhcp/dhcpd.conf

接口配置文件(指定监听网卡):

/etc/default/isc-dhcp-server

三、基础配置(子网 + 绑定)

1️⃣ 定义子网

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, 8.8.4.4;
}

2️⃣ 添加 MAC 绑定(静态地址)

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

说明:

  • host pc01:主机名(可自定义)
  • hardware ethernet:客户端 MAC
  • fixed-address:绑定的 IP(不能在 range 内)

四、批量导入绑定(推荐方式)

方法 1:单独文件 + include

创建绑定文件:

/etc/dhcp/dhcpd.hosts

写入:

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

host pc02 {
  hardware ethernet 00:aa:bb:cc:dd:ee;
  fixed-address 192.168.1.51;
}

在 dhcpd.conf 中引入:

include "/etc/dhcp/dhcpd.hosts";

✅ 适合脚本生成、批量导入


方法 2:从 CSV 生成配置(示例)

如果你有:

pc01,00:11:22:33:44:55,192.168.1.50
pc02,00:aa:bb:cc:dd:ee,192.168.1.51

生成配置:

awk -F, '{
  print "host "$1" {"
  print "  hardware ethernet "$2";"
  print "  fixed-address "$3";"
  print "}"
}' hosts.csv > /etc/dhcp/dhcpd.hosts

五、重启服务生效

sudo systemctl restart isc-dhcp-server

检查状态:

sudo systemctl status isc-dhcp-server

查看日志:

journalctl -u isc-dhcp-server -f

六、常见注意事项

✅ fixed-address 不能在 range 范围内
✅ MAC 格式必须是 xx:xx:xx:xx:xx:xx
✅ 修改配置后必须重启或 reload
✅ 若使用 HA(failover),语法需额外配置


七、如果你用的是 dnsmasq(轻量 DHCP)

如果你系统是 dnsmasq 而不是 isc-dhcp-server,绑定方式不同:

dhcp-host=00:11:22:33:44:55,192.168.1.50

如果你愿意,可以告诉我:

  • 用的是 isc-dhcp 还是 dnsmasq
  • 是否 批量导入 / 从数据库
  • Debian 版本

我可以给你更精确的配置示例。

0 踩