dns 服务器安装教程,手把手教你安装配置 dns 服务

搭建DNS服务器,第一次上手会觉得复杂,一堆配置文件,错一个标点解析直接失效。多部署几次就明白,核心三件事:安装软件、编写区域文件、放行防火墙。Ubuntu部署BIND,搭建局域网内部解析,整套流程半小时能做完。

更新软件源,安装bind9和配套工具包,apt install bind9 bind9utils bind9-doc,单条命令完成。安装后systemctl status bind9查看状态,默认自动运行。配置文件统一放在/etc/bind目录,主配置文件named.conf,里面引用多个子文件;named.conf.options控制全局选项,named.conf.local存放自定义区域,named.conf.default-zones保存根域默认配置,一般不用改动。

dns 服务器安装教程,手把手教你安装配置 dns 服务

修改named.conf.options。找到listen-on配置行,默认listen-on { 127.0.0.1; };,仅监听本机访问。局域网其他设备要调用解析,修改成listen-on { any; };,或是填写服务器内网IP。下方allow-query默认仅localhost,修改成any或者指定允许查询网段。两处不改,局域网设备无法连接DNS。保存文件。

接下来配置正向解析。编辑named.conf.local,增加zone声明。假设域名example.local,解析指向192.168.1.10,写入:zone "example.local" { type master; file "/etc/bind/db.example.local"; };。然后在/etc/bind新建db.example.local文件,可以复制db.local模板修改,也可以手动编写。示例内容:$TTL 604800,@ IN SOA ns.example.local. admin.example.local. ( 2 604800 86400 2419200 604800 ),@ IN NS ns.example.local.,ns IN A 192.168.1.10,www IN A 192.168.1.10,mail IN A 192.168.1.10。SOA行括号内数字是序列号、刷新周期,每次修改区域文件序列号要加1,否则从服务器不会同步更新。手动编写注意域名末尾的点,FQDN结尾缺少点,会被识别成相对域名,引发解析故障。

反向解析一并配置。zone "1.168.192.in-addr.arpa" { type master; file "/etc/bind/db.192.168.1"; };。文件内容参考:$TTL 604800,@ IN SOA ns.example.local. admin.example.local. ( 2 604800 86400 2419200 604800 ),@ IN NS ns.example.local.,10 IN PTR www.example.local.。反向区域名称网段倒序书写,192.168.1对应1.168.192.in-addr.arpa。

配置结束校验语法。named-checkconf检查主配置,named-checkzone example.local /etc/bind/db.example.local校验区域文件。无报错执行systemctl restart bind9。本机dig @127.0.0.1 www.example.local测试,返回A记录代表解析正常。局域网其他机器测试,@后填写DNS服务器内网IP。

防火墙不能忽略,ufw allow 53/tcp、ufw allow 53/udp两项都开启。仅放行tcp,UDP查询客户端会失败。云服务器额外在安全组放行53端口,来源限制内网网段或者指定IP,不要开放0.0.0.0全网段,开放递归解析容易被利用发起DNS放大攻击。

如果只需要轻量缓存DNS,不想写区域文件,dnsmasq更省事。apt install dnsmasq,配置文件/etc/dnsmasq.conf,添加server=8.8.8.8,再加address=/example.local/192.168.1.10,重启服务即可。灵活性不如BIND,但局域网DNS转发、少量自定义解析,几分钟部署完成。

解析失败排查优先查看日志,journalctl -u bind9 -f,报错一般直接标注文件和出错行。高频错误:区域域名结尾漏写句号、序列号未更新、named.conf.local内文件路径写错。排查这几项基本能解决。

免责声明:本文提供的方法与建议仅供技术参考,实际部署效果受机房环境、运营商线路、系统配置等多重因素影响。请在专业人员指导下操作,因自行操作导致的业务损失本站不承担责任。

相关推荐