首页 游戏 软件 资讯 排行榜 专题
首页
科技数码
Linux DNS 服务器之 BIND 安装配置(详细版)

Linux DNS 服务器之 BIND 安装配置(详细版)

热心网友
66
转载
2025-12-15

DNS服务器在互联网生态系统中发挥着关键作用,而Linux系统是承载高负荷DNS部署的首选平台;不同类型的DNS服务器担负着不同职责。

DNS服务器在互联网生态系统中发挥着关键作用,而Linux系统是承载高负荷DNS部署的首选平台;不同类型的DNS服务器担负着不同职责。bind 是Linux 系统中用于实现域名解析的服务软件,全称为 Berkeley Internet Name Domain。

一、DNS工作流程

\

DNS工作流程:

客户端向本地DNS服务器发送请求查询www.example.com的主机地址本地 DNS 服务器检查缓存 → 无记录,然后联系根服务器b.root-servers.net根服务器返回.com TLD(Top Level Domain) 服务器地址d.gtld-servers.net本地 DNS 服务器向.com TLD服务器询问:"example.com的权威服务器是谁?".com TLD服务器返回example.com的NS记录本地 DNS 服务器向example.com权威 DNS 服务器请求www主机的A记录本地 DNS 服务器从example.com权威 DNS 服务器获取到www.example.com的A记录本地 DNS 服务器将结果返回给客户端→A记录(12.34.56.78),同时写入缓存方便下次查询。

二、DNS主要类型

在DNS服务器中,BIND支持多种区域类型(zone type),其中最常见的四种是:hint、forward、master和slave。它们各自有不同的用途和特点

hint:用于初始化DNS服务器的根区域(root zone)。它提供了根域名服务器的初始列表master/primary:区域权威主服务器,存储区域数据的原始副本slave/secondary:区域权威从服务器,从主服务器同步区域数据forword:将特定域名的所有查询请求转发到其他DNS服务器(通常是上游DNS服务器)

BIND所支持的所有类型如下图所示:

三、安装配置

1. 安装命令

CentOS/RedHat:

yum install bind bind-utils -y

Debian/Ubuntu:

apt install bind9 bind9utils -y

2. DNS服务配置

(1) 主配置文件:/etc/named.conf

options { listen-on port 53 { 10.10.10.22; }; listen-on-v6 port 53 { ::1; }; directory "/var/named"; dump-file "/var/named/data/cache_dump.db"; statistics-file "/var/named/data/named_stats.txt"; memstatistics-file "/var/named/data/named_mem_stats.txt"; allow-query { any; }; masterfile-format text ; forward first; forwarders { 8.8.8.8; 223.5.5.5; }; recursion yes; dnssec-enable yes; dnssec-validation yes; /* Path to ISC DLV key */ bindkeys-file "/etc/named.iscdlv.key"; managed-keys-directory "/var/named/dynamic"; pid-file "/run/named/named.pid"; session-keyfile "/run/named/session.key";};logging { channel default_debug { file "data/named.run"; severity dynamic; };};zone "." IN { type hint; file "named.ca";};include "/etc/named.rfc1912.zones";include "/etc/named.root.key";

(2) 区域声明文件:/etc/named.rfc1912.zones

// 正向区域声明zone "example.com" IN { type master; file "named.example.com"; allow-update {none};};// 反向区域声明(10.10.10.0/24 网段)zone "10.10.10.in-addr.arpa" IN { type master; file "named.example.arpa"; allow-update {none};};

(3) 正向解析配置文件示例:

$TTL 1D$ORIGIN example.com.@ IN SOA dns1.example.com. admin.example.com. ( 2025070501 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum NS dns1.example.com.@ A 10.10.10.22dns1 A 10.10.10.22www A 10.10.10.25ftp CNAME www

(4) 反向解析配置文件示例:

$TTL 1D@ IN SOA dns1.example.com admin.example.com. ( 2025070701 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum NS dns1.example.com.22 PTR dns1.example.com.25 PTR www.example.com.25 PTR ftp.example.com.

(5) 参数说明

$TTL(Time to Live):DNS缓存生存时间。$ORIGIN:指定了未带终止点(无点结尾)的域名解析基准,所有未明确指定完整域名(FQDN)的记录都会附加该基准点SOA(Start of Authority):起始授权机构,包含区域管理信息(序列号、刷新时间等)。serial:系列号,随着区域每次更新而递增refresh:刷新频率(1D表示1天刷新一次),指 slave 多久会主动检查 serial 的值,以便更新 zone file。retry:重连时间间隔,指 slave 若是连接 master 失败,多久之后会再次尝试,1H表示1个小时后重连。expire:指 slave 若是一直连接 master 失败,多久之后会放弃,1W表示1星期后放弃连接masterminimum:清除缓存最小时间间隔。

资源记录类型:

四、相关命令

(1) 启动dns服务

systemctl start named

(2) 检查主配置文件(named.conf)语法

named-checkconf

(3) 检查正、反向解析配置文件

named-checkzone example.com /var/named/named.example.comnamed-checkzone 10.10.10.in-addr.arpa /var/named/named.example.arpa

(4) 重新加载配置文件(不重启服务)

rndc reload

(5) 强制刷新缓存

rndc flush

(6) 客户端使用nc工具扫描dns服务器端口

nc -uvz -4 10.10.10.22 53

(7) 客户端使用socat工具测试

echo "test" | socat -v - udp4-connect:10.10.10.22:53

五、结果验证

正向解析:

反向解析:

可在DNS服务器上抓包:

tcpdump -i ens32 -nn 'udp port 53'

抓包结果如图所示:

参考资料:

[1]BIND 9 Administrator Reference Manual:https://bind9.readthedocs.io/en/latest/[2]BIND 9 Configuration Reference:https://ftp.isc.org/isc/bind/9.9.4/doc/arm/Bv9ARM.ch06.html
来源:https://server.51cto.com/article/820462.html
免责声明: 游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。

相关攻略

Mac终端清理DNS缓存详细步骤与操作指南
系统平台
Mac终端清理DNS缓存详细步骤与操作指南

当您遇到网站无法访问、页面加载缓慢或内容显示过时等问题时,别急着归咎于网络,问题很可能出在您Mac电脑本地的DNS缓存上。DNS缓存旨在加速域名解析,但一旦记录错误或过期,反而会成为访问障碍。及时清理DNS缓存,通常能快速解决问题。本文将为您详细介绍从终端命令到图形化操作的多种方法,帮助您彻底刷新M

热心网友
05.20
Win11网页无法访问?DNS污染解决方法与缓存刷新指南
系统平台
Win11网页无法访问?DNS污染解决方法与缓存刷新指南

当您访问网站时遇到“DNS_PROBE_FINISHED_NXDOMAIN”错误或“DNS服务器未响应”的提示,问题根源可能并非网络本身,而是您电脑的本地DNS缓存出现了异常。Windows 11系统会缓存您访问过的域名解析记录以提升访问速度,但当这些缓存记录过期、出错或被污染时,反而会阻碍您正常浏

热心网友
05.20
MySQL登录延迟解决方案配置skip-name-resolve跳过DNS解析
数据库
MySQL登录延迟解决方案配置skip-name-resolve跳过DNS解析

MySQL登录延迟常因服务端反向DNS解析过慢。可通过在配置文件中添加skip-name-resolve并重启服务来解决。修改后需将授权表中的主机名更新为IP地址,否则相关账号会失效。客户端使用域名连接慢则属于正向解析问题,需另行处理。

热心网友
05.11
黑鲨手机WiFi已连接但无法上网的DNS重置解决方法
手机教程
黑鲨手机WiFi已连接但无法上网的DNS重置解决方法

黑鲨手机连接WiFi后无法上网,常因DNS解析或网络配置问题。可尝试手动修改WiFi的DNS为公共地址,或关闭可能干扰的私人DNS功能。若无效,可重置网络设置并校准系统时间与证书。按此顺序排查,通常能恢复网络连接。

热心网友
05.10
Oracle 19c SCAN IP配置指南 DNS与Hosts多IP映射方法详解
数据库
Oracle 19c SCAN IP配置指南 DNS与Hosts多IP映射方法详解

在Oracle 19c RAC集群部署中,SCAN域名必须被解析为2到3个独立的IPv4地址,这是Oracle官方强制要求的配置规范。若仅在DNS服务器或本地 etc hosts文件中配置单一IP地址,执行srvctl start scan命令时极有可能启动失败,或导致SCAN监听器无法正常注册到集

热心网友
05.08

最新APP

宝宝过生日
宝宝过生日
应用辅助 04-07
台球世界
台球世界
体育竞技 04-07
解绳子
解绳子
休闲益智 04-07
骑兵冲突
骑兵冲突
棋牌策略 04-07
三国真龙传
三国真龙传
角色扮演 04-07

热门推荐

七日世界怪物图鉴:全新敌对生物种类与弱点解析
游戏攻略
七日世界怪物图鉴:全新敌对生物种类与弱点解析

《七日世界》新增两种原生变异体。拟态树潜伏于密林,外观与树木无异,会释放星尘辐射引发幻觉,需通过特定交互逻辑定位并摧毁。海兔出没于深海,被惊扰后会咬合注入神经毒素,导致运动方向颠倒,可通过上岸、加热或队友协助解除。两者分别考验环境观察与即时应对能力,提升了探索挑战。

热心网友
05.24
禁闭求生2草籽获取方法详解与高效收集攻略
游戏攻略
禁闭求生2草籽获取方法详解与高效收集攻略

草籽是《禁闭求生2》中的关键资源,可通过多种途径获取。主要分布在开阔草地、低矮灌木丛、建筑残骸周围、农田边缘及潮湿水域附近,仔细搜寻即可发现。也可通过破坏特定植物或完成游戏任务直接获得。多观察环境并尝试不同方法,能有效建立稳定的草籽供应。

热心网友
05.24
红色沙漠神音残响弓箭获取攻略与详细步骤
游戏攻略
红色沙漠神音残响弓箭获取攻略与详细步骤

在《红色沙漠》中,获取神音残响弓箭需综合探索与互动。玩家需在神秘遗迹中解谜并收集碎片,完成特定支线任务或从隐秘商店购买,同时留意NPC对话以获取线索。结合这些途径耐心尝试,方能获得该武器。

热心网友
05.24
下一站江湖2炎鸿铸剑任务全流程攻略
游戏攻略
下一站江湖2炎鸿铸剑任务全流程攻略

炎鸿铸剑任务需先找到神秘人物炎鸿触发。任务要求玩家探索江湖,收集深藏矿洞的稀有矿石与隐秘山谷的特殊草药,或从高价商人处购得。随后需寻访隐居的铸剑工匠,按其要求全程参与铸剑,精准控制火候与步骤,应对突发状况。最终铸成的宝剑属性强大,是玩家冒险心血的结晶。

热心网友
05.24
2025年币安官网最新入口 官方认证地址安全访问指南
web3.0
2025年币安官网最新入口 官方认证地址安全访问指南

为确保安全访问,用户应通过官方渠道获取币安平台最新网址。警惕非官方链接,直接使用官方应用或验证过的入口可有效防范风险。定期关注官方公告是获取准确地址的可靠方式。

热心网友
05.24