首页主机资讯ubuntu dhcp服务器如何设置域名解析

ubuntu dhcp服务器如何设置域名解析

时间2026-01-20 11:20:05发布访客分类主机资讯浏览985
导读:Ubuntu DHCP服务器域名解析设置 一 基本思路 在 DHCP 服务器上通过 isc-dhcp-server 下发 DNS 服务器地址 与 搜索域(search domain),客户端即可自动获得域名解析能力。 若需要本地解析内网主...

Ubuntu DHCP服务器域名解析设置

一 基本思路

  • 在 DHCP 服务器上通过 isc-dhcp-server 下发 DNS 服务器地址搜索域(search domain),客户端即可自动获得域名解析能力。
  • 若需要本地解析内网主机名,可同时部署 BIND9 作为 DNS 服务器,DHCP 将域名与 DNS 一并下发给客户端。
  • 如需自动把主机名写入 DNS,可启用 DHCP 动态更新 DNS(DDNS),用密钥保障安全。

二 快速配置步骤

  • 安装组件
    • 仅下发 DNS:sudo apt update & & sudo apt install isc-dhcp-server
    • 本地解析内网域名:sudo apt install isc-dhcp-server bind9
  • 配置 DHCP 下发域名与 DNS
    • 编辑 /etc/dhcp/dhcpd.conf,在全局或子网段中设置:
      • option domain-name “example.com”;
      • option domain-name-servers 8.8.8.8, 8.8.4.4; (或指向本机 127.0.0.1 使用 BIND9)
      • subnet 段中配置地址池、网关等,例如:
        • subnet 192.168.1.0 netmask 255.255.255.0 {
        • range 192.168.1.10 192.168.1.100;
        • option routers 192.168.1.1;
        • default-lease-time 600; max-lease-time 7200;
        • }
  • 指定监听接口
    • 编辑 /etc/default/isc-dhcp-server,设置:INTERFACESv4=“eth0”(替换为你的内网接口)
  • 启动服务
    • sudo systemctl start isc-dhcp-server & & sudo systemctl enable isc-dhcp-server
  • 客户端验证
    • 释放/续租:sudo dhclient -r < 接口> & & sudo dhclient < 接口>
    • 查看租约与 DNS:cat /var/lib/dhcp/dhclient.leases;或 ip a、resolvectl status
    • 解析测试:nslookup www.example.com 或 dig @< DNS_IP> example.com
    • 服务日志:tail -f /var/log/syslog | grep dhcpd

三 使用 BIND9 提供本地解析

  • 安装:sudo apt install bind9 bind9utils bind9-doc
  • 配置转发(/etc/bind/named.conf.options)
    • options {
      • directory “/var/cache/bind”;
      • forwarders { 8.8.8.8; 8.8.4.4; } ;
      • dnssec-validation auto;
      • listen-on { any; } ;
      • } ;
  • 可选:添加内网区域(/etc/bind/named.conf.local)
    • zone “example.com” { type master; file “/etc/bind/zones/db.example.com”; } ;
    • 区域文件示例(/etc/bind/zones/db.example.com):
      • $TTL 604800
      • @ IN SOA ns1.example.com. admin.example.com. ( 3 604800 86400 2419200 604800 )
      • @ IN NS ns1.example.com.
      • ns1 IN A 192.168.1.2
      • www IN A 192.168.1.10
  • 检查与重启
    • sudo named-checkconf & & sudo named-checkzone example.com /etc/bind/zones/db.example.com
    • sudo systemctl restart bind9
  • DHCP 指向本机 DNS
    • /etc/dhcp/dhcpd.conf 中设置:option domain-name-servers 127.0.0.1;

四 启用 DHCP 动态更新 DNS(DDNS)

  • 在 DHCP 配置(/etc/dhcp/dhcpd.conf)中启用:
    • ddns-update-style interim;
    • update-static-leases on;
  • 生成并配置密钥
    • 生成密钥:sudo rndc-confgen -a -c /etc/bind/rndc.key(或手动创建)
    • 在 /etc/bind/named.conf 或 named.conf.options 中包含密钥并允许更新:
      • key “dhcp_dns_update” { algorithm hmac-sha256; secret “your-secret-key”; } ;
      • zone “example.com” { type master; file “…”; allow-update { key dhcp_dns_update; } ; } ;
  • 重启服务
    • sudo systemctl restart isc-dhcp-server & & sudo systemctl restart bind9
  • 验证
    • 观察客户端获取地址后,nslookup/host 查询对应主机名是否已自动写入 DNS。

五 常见问题与排查

  • 服务未启动或接口不对:检查 /etc/default/isc-dhcp-serverINTERFACESv4,查看 /var/log/syslog 中 dhcpd 启动与绑定接口错误。
  • 客户端未拿到 DNS:确认子网段内包含 option domain-name-serversoption domain-name,并重启客户端网络或续租。
  • 内网域名无法解析:确认 BIND9 区域配置、文件权限与 named-checkzone 通过;必要时检查防火墙/转发规则。
  • 需要跨网段分配地址:在网关或三层设备上配置 DHCP 中继,指向 DHCP 服务器地址。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: ubuntu dhcp服务器如何设置域名解析
本文地址: https://pptw.com/jishu/787070.html
Linux中Rust项目的版本控制怎么做 Debian下Flutter界面如何设计

游客 回复需填写必要信息