配置DHCP服务器分配DNS服务器地址的方法因DHCP服务器类型而异,以下是常见系统的配置方法:
一、Linux系统(ISC DHCP Server)
Ubuntu/Debian sudo apt install isc-dhcp-server CentOS/RHEL sudo yum install dhcp
编辑/etc/dhcp/dhcpd.conf:
全局DNS配置(适用于所有子网)
option domain-name "example.com";
option domain-name-servers 8.8.8.8, 8.8.4.4;
特定子网的DNS配置
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 192.168.1.10, 192.168.1.11;
option domain-name "internal.example.com";
}
针对特定主机的DNS配置
host client1 {
hardware ethernet 00:1a:2b:3c:4d:5e;
fixed-address 192.168.1.50;
option domain-name-servers 10.0.0.1;
}sudo systemctl restart isc-dhcp-server sudo systemctl enable isc-dhcp-server
二、Windows Server DHCP
服务器级DNS配置(适用于所有作用域):
1、打开 DHCP 控制台
2、右键单击 IPv4 → "设置预定义的选项"
3、添加选项 006 (DNS服务器) 和 015 (DNS域名)
4、或在服务器选项中添加 DNS 服务器地址
作用域级DNS配置(特定作用域):
1、展开相应作用域
2、右键单击 "作用域选项" → "配置选项"
3、勾选 "006 DNS 服务器" 并添加地址
4、可选:配置 "015 DNS 域名"
添加DNS服务器到作用域
Set-DhcpServerv4OptionValue -ScopeId 192.168.1.0 `
-DnsServer 8.8.8.8, 8.8.4.4 `
-DnsDomain "example.com"
查看配置
Get-DhcpServerv4OptionValue -ScopeId 192.168.1.0三、dnsmasq(集成DHCP+DNS)
编辑/etc/dnsmasq.conf:
启用DHCP功能 dhcp-range=192.168.1.100,192.168.1.200,12h 指定DNS服务器 dhcp-option=6,8.8.8.8,8.8.4.4 或使用本地DNS dhcp-option=6,192.168.1.1 设置DNS域名 dhcp-option=option:domain-name,example.com dnsmasq自身作为DNS服务器时 local=/example.com/ address=/example.com/192.168.1.1
四、路由器/网络设备
ip dhcp pool LAN_POOL network 192.168.1.0 255.255.255.0 default-router 192.168.1.1 dns-server 8.8.8.8 8.8.4.4 domain-name example.com
1、登录路由器管理界面
2、进入 DHCP 设置页面
3、填写主/备 DNS 服务器地址
4、保存并重启DHCP服务
五、高级配置选项
1. 条件DNS分配(基于MAC/主机名)
ISC DHCP - 基于类别
class "guest" {
match if substring(hardware, 1, 3) = 00:11:22;
}
pool {
allow members of "guest";
range 192.168.1.201 192.168.1.220;
option domain-name-servers 1.1.1.1;
}option domain-name-servers 192.168.1.10, 192.168.1.11, 8.8.8.8; 客户端按顺序尝试,当前一个不可用时使用下一个
设置多个搜索域 option domain-search "example.com", "corp.example.com", "home.example.com";
六、验证配置
查看DHCP获取的DNS配置 cat /etc/resolv.conf 或 nmcli dev show | grep DNS 手动释放和续约 sudo dhclient -r sudo dhclient
查看DNS配置 ipconfig /all 或 Get-DnsClientServerAddress 更新DHCP租约 ipconfig /renew
nslookup example.com dig @8.8.8.8 google.com
七、注意事项
1、DNS顺序:客户端按配置顺序尝试DNS服务器
2、缓存问题:配置更改后,客户端可能需要重启或清除DNS缓存
3、防火墙:确保DNS流量(UDP/TCP 53)未被阻止
4、IPv6配置:如支持IPv6,需同时配置DNSv6服务器地址
5、租约时间:DNS变更可能需要等到租约更新才生效
这样配置后,客户端通过DHCP获取IP地址时会自动收到DNS服务器配置,无需手动设置。
文章摘自:https://idc.huochengrm.cn/dns/24109.html
评论
长尔阳
回复DHCP服务器配置DNS,需设置服务器的IP地址池及默认网关等参数后绑定对应的域名解析服务,确保客户端自动获取正确的网络信息和域名的正确指向即可运行顺畅网络环境!