Ubuntu使用bind9配置DNS服务器

Ubuntu使用bind9配置DNS服务器为了实现负载均衡 扩展服务器带宽 需要自己配置 DNS 服务器解析对应域名 本文记录 Ubuntu 系统配置 DNS 服务的方法 假设域名 www mydomain com 已在阿里云作了解析 现在需要新增一个二级域名 stream mydomain com 做推流服务 需要使用自己配置的 DNS 服务做请求解析分发 1 安装 bind9 使用指令安装 DNS 服务程序 bind9apt getinstallbi 修改 option 配置

        为了实现负载均衡,扩展服务器带宽,需要自己配置DNS服务器解析对应域名。

        本文记录Ubuntu系统配置DNS服务的方法。

        假设域名www.mydomain.com 已在阿里云作了解析,现在需要新增一个二级域名 stream.mydomain.com 做推流服务,需要使用自己配置的DNS服务做请求解析分发。

1、安装bind9

        使用指令安装DNS服务程序bind9

apt-get install bind9

2、修改option配置文件

        option配置文件路径为 /etc/bind/named.conf.options, 去掉文件中forwarders的注释。forwarders节点配置的是转发器,所有非本域的和在缓存中无法找到的域名查询都将转发到设置的DNS转发器上,由这台DNS来完成解析工作并做缓存。转发器设置两个常用的DNS服务器即可:

forwrders{ 8.8.8.8; 114.114.114.114; }

        完整的option文件:

options { directory "/var/cache/bind"; // If there is a firewall between you and nameservers you want // to talk to, you may need to fix the firewall to allow multiple // ports to talk. See http://www.kb.cert.org/vuls/id/ // If your ISP provided one or more IP addresses for stable // nameservers, you probably want to use them as forwarders. // Uncomment the following block, and insert the addresses replacing // the all-0's placeholder. forwarders { 8.8.8.8; 114.114.114.114; }; //======================================================================== // If BIND logs error messages about the root key being expired, // you will need to update your keys. See https://www.isc.org/bind-keys //======================================================================== dnssec-validation auto; auth-nxdomain no; # conform to RFC1035 listen-on { any; }; listen-on-v6 { any; }; };

3、修改本地解析目录文件

        修改本地解析目录文件,添加解析域名。修改文件:/etc/bind/named.conf.local,添加新的解析区域节点:

zone "mydomain.com" { //解析区域名称 type master; file "/etc/bind/db.mydomain.com"; //解析区域对应的配置文件 };

4、添加解析区域配置文件

        使用cp命令复制一份默认localhost区域的配置文件进行新的区域配置的修改:

cp /etc/bind/db.local /etc/bind/db.mydomain.com

        区域配置文件db.mydomain.com完整配置:

; ; $TTL  @ IN SOA mydomain.com. root.mydomain.com. (  ; Serial  ; Refresh 86400 ; Retry  ; Expire  ) ; Negative Cache TTL ; @ IN NS ns. ; stream IN A 192.168.55.36 stream IN A 192.168.55.39 ; ;

        SOA记录:起始授权记录 Start of Authority record 宣告了namespace使用哪个nameserver的权威信息。须位于指令后第一行,是区域文件的第一个资源记录。格式如下:

@ IN SOA primary-name-server hostmaster-email ( serial-number time-to-refresh time-to-retry time-to-expire minimum-TTL )

@ 表示使用域名作为这个 SOA 的 namespace。

        primary-name-server:该域权威DNS的主名称服务器的主机名

        hostmaster-email:该namespace联系人邮件

        serial-number:序列号,每次此区域文件被修改后,该序列号应该增加,以此提醒域名服务要重新加载该区域了。

        NS记录: 名称服务器记录指定了权威名称服务器。格式如下:

IN NS nameserver-name ;nameserver-name 应该是完全域名(FQDN)。

        每个区域配置文件都必须包含至少一个NS记录。

        A 记录:给名称指定解析地址。格式如下:

hostname IN A IP-address

5、服务管理指令

        同样,如非必要可以不用添加反向解析设置。

        配置文件都修改保存后,重启服务,进行检验测试

systemctl stop bind9.service //停止服务 systemctl restart bind9.service //重启服务 systemctl reload bind9.service //重新加载配置 systemctl status bind9.service //服务状态查询

        进行状态查询时,如果配置的部分地址不可访问,可能会有警告提示:

root@iZwz924eh34ene3sxg0an3Z:/etc/bind# systemctl status bind9.service 鈼[0m bind9.service - BIND Domain Name Server Loaded: loaded (/lib/systemd/system/bind9.service; enabled; vendor preset: enabled) Drop-In: /run/systemd/generator/bind9.service.d 鈹斺攢50-insserv.conf-$named.conf Active: active (running) since Thu 2022-03-10 10:33:49 CST; 4 days ago Docs: man:named(8) Main PID: 32731 (named) CGroup: /system.slice/bind9.service 鈹斺攢32731 /usr/sbin/named -f -u bind Mar 14 11:33:57 iZwz924eh34ene3sxg0an3Z named[32731]: no valid RRSIG resolving './NS/IN': 198.97.190.53#53 Mar 14 11:33:57 iZwz924eh34ene3sxg0an3Z named[32731]: network unreachable resolving './NS/IN': 2001:500:3::42#53 Mar 14 11:33:57 iZwz924eh34ene3sxg0an3Z named[32731]: network unreachable resolving './NS/IN': 2001:500:84::b#53 Mar 14 11:33:57 iZwz924eh34ene3sxg0an3Z named[32731]: network unreachable resolving './NS/IN': 2001:7fd::1#53 Mar 14 11:33:57 iZwz924eh34ene3sxg0an3Z named[32731]: validating ./NS: no valid signature found Mar 14 11:33:57 iZwz924eh34ene3sxg0an3Z named[32731]: no valid RRSIG resolving './NS/IN': 202.12.27.33#53 Mar 14 11:33:57 iZwz924eh34ene3sxg0an3Z named[32731]: network unreachable resolving './NS/IN': 2001:dc3::35#53 Mar 14 11:33:57 iZwz924eh34ene3sxg0an3Z named[32731]: network unreachable resolving './NS/IN': 2001:500:2::c#53 Mar 14 11:33:58 iZwz924eh34ene3sxg0an3Z named[32731]: validating ./NS: no valid signature found Mar 14 11:33:58 iZwz924eh34ene3sxg0an3Z named[32731]: no valid RRSIG resolving './NS/IN': 199.7.83.42#53 root@iZwz924eh34ene3sxg0an3Z:/etc/bind# 

        比如上面示例的 NS 记录配置的 ns. 就是不能访问的,随便写的。所以有很多报错信息。但是也不影响 stream.mydomain.com的解析。

        可以直接使用 nslookup 或者 dig 进行解析测试。

        需要记住的是每次修改区域配置文件,都要修改SOA记录中的序列号。公网DNS服务器更新本地修改需要时间,10分钟左右不等。经测试8.8.8.8更新要比114.114.114.114更快。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/222622.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月17日 下午3:21
下一篇 2026年3月17日 下午3:22


相关推荐

  • 去掉dedecms底部调用cfg_powerby

    去掉dedecms底部调用cfg_powerby**使用dedecms做网站,首页底部调cfg_powerby的时候出现powerbydedecms的链接信息。****文件路径:include/dedesql.class.php第588到第592行代码删除即可,代码如下图:**

    2022年7月15日
    16
  • 如何部署HunyuanVideo-Foley模型镜像?本地化运行完整教程

    如何部署HunyuanVideo-Foley模型镜像?本地化运行完整教程

    2026年3月12日
    1
  • git版本回退命令_git 版本回退 撤销 删除

    git版本回退命令_git 版本回退 撤销 删除1 未使用 gitadd 缓存代码时 在工作区的时候 可以使用 gitcheckoutf 比如 gitcheckoutr md 不要忘记中间的 不写则为检出分支命令 放弃所有的文件修改可以使用 gitcheckout 命令 此命令用来放弃掉所有还没有加入到缓存区 就是 gitadd 命令 的修改 内容修改与整个文

    2026年3月16日
    2
  • SpringBoot框架总结

    SpringBoot框架总结SpringBoot框架总结一、SpringBoot框架的概念1、传统框架的弊端例如传统的SSM框架整合了MyBatis、Spring、SpringMVC框架,但其需要繁琐且重复的配置使程序员很是痛苦2、SpringBoot框架SpringBoot框架在传统框架的基础上对其进一步封装,只需要一些简单的配置,省去了传统框架繁琐的配置,解放了程序员,使程序员只需要关注业务而无需将经历花费在框架的配置上,大幅提高了编程的效率二、SpringBoot框架的创建1、idea创建SpringBoot工程

    2022年8月21日
    26
  • 使用Java判断闰年

    使用Java判断闰年我们在做这一题之前 我们首先要弄清楚什么是闰年 简而言之闰年就是可以被 4 整除不能被 100 整除 或者可以被 400 整除 那么这一年就是闰年 leapyear 然后就按照以上条件一步一步写代码 public nbsp static nbsp void nbsp main String args nbsp nbsp nbsp nbsp nbsp nbsp Scannersc newScanner System in nbsp nbsp nbsp nbsp nbsp nbsp System out printl

    2025年8月22日
    5
  • Microsoft SQL Server 2008 R2出现索引超出数组界限

    Microsoft SQL Server 2008 R2出现索引超出数组界限目录问题 在创建关系图出现了弹窗 索引超出数组界限 网上看了很多文章 记录下解决方法 打微软的 SP3 补丁即可问题 在创建关系图出现了弹窗 索引超出数组界限 网上看了很多文章 记录下解决方法 打微软的 SP3 补丁即可跳转页面连接 微软 SP3 下载页面

    2025年9月7日
    6

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号