温馨提示×

debian dhcp怎样集成DNS

小樊
40
2026-10-19 12:28:40
栏目: 智能运维

在 Debian 上把 DHCP 和 DNS 集成,常见做法是使用 ISC DHCP Server + BIND(或 dnsmasq),实现:

  • DHCP 分配 IP
  • 客户端hostname 自动注册到 DNS
  • 正向 / 反向解析可用

下面按最常见方案给你讲。


方案一:dnsmasq(最简单,推荐)

1. 安装

sudo apt update
sudo apt install dnsmasq

2. 配置 /etc/dnsmasq.conf

# DHCP 范围
dhcp-range=192.168.1.100,192.168.1.200,12h

# 网关
dhcp-option=option:router,192.168.1.1

# DNS 自身
port=53
listen-address=127.0.0.1,192.168.1.1

# 关键:DHCP 主机名写进 DNS
expand-hosts
domain=example.lan
local=/example.lan/

3. 效果

  • 客户端 DHCP 获取 IP
  • 自动变成:hostname.example.lan
  • 正向 / 反向都可以解析

✅ 无需单独维护 BIND


方案二:ISC DHCP + BIND(企业级)

1. 安装

sudo apt install isc-dhcp-server bind9

2. DHCP 配置 /etc/dhcp/dhcpd.conf

option domain-name "example.lan";
option domain-name-servers 192.168.1.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;
}

3. 启用 DHCP 更新 DNS

ddns-update-style interim;

key dhcp-dns {
  algorithm hmac-md5;
  secret "YOUR_SECRET";
}

zone example.lan. {
  primary 127.0.0.1;
  key dhcp-dns;
}

zone 1.168.192.in-addr.arpa. {
  primary 127.0.0.1;
  key dhcp-dns;
}

4. BIND 配置(简版)

zone "example.lan" {
  type master;
  file "/var/lib/bind/db.example.lan";
  allow-update { key dhcp-dns; };
};

✅ DHCP 客户端上线 → 自动更新 DNS 记录


选型建议

场景 推荐
家庭 / 小公司 dnsmasq
企业 / 需精细控制 DHCP + BIND
容器 / 测试 dnsmasq

如果你愿意,我可以:

  • 给你 完整可复制配置文件
  • 帮你 排查现有 DHCP/DNS 不生效问题
  • 教你 用 systemd-resolved 配合

你现在是哪种使用场景?

0 踩