首页 > 运维 > linux运维 > 正文

Linux 运维:如何搭建 BIND9 DNS 服务器

舞夢輝影
发布: 2025-11-20 21:44:02
原创
433人浏览过
答案:在Linux系统中安装BIND9需根据发行版使用对应包管理器,配置主文件定义区域和权限,创建正向解析区域文件并验证语法后启动服务。示例配置包括监听地址、关闭递归及设置SOA记录,最后通过dig测试解析结果。

linux 运维:如何搭建 bind9 dns 服务器

在 Linux 系统中,BIND9(Berkeley Internet Name Domain)是最广泛使用的 DNS 服务器软件之一。它功能强大、稳定且支持丰富的 DNS 特性,适合用于搭建权威 DNS 服务器或递归解析服务器。下面介绍如何在主流 Linux 发行版上安装并配置一个基本的 BIND9 DNS 服务器。

安装 BIND9 软件包

根据你使用的 Linux 发行版,使用对应的包管理器安装 BIND9:

  • Ubuntu/Debian:sudo apt update && sudo apt install bind9 bind9-utils -y
  • CentOS/RHEL/Rocky Linux:sudo yum install bind bind-utils -ysudo dnf install bind bind-utils -y

安装完成后,BIND9 的主程序为 named(注意是 named,不是 bind),服务名通常也是 named。

配置主配置文件 named.conf

BIND9 的主配置文件一般位于 /etc/bind/named.conf(Debian 系列)或 /etc/named.conf(RHEL 系列)。你需要编辑该文件来定义区域(zone)和基本行为。

常见配置项包括监听地址、允许查询的客户端以及区域文件路径。示例片段如下:

options {
    directory "/var/cache/bind";
    listen-on port 53 { any; };
    allow-query { any; };  // 生产环境建议限制 IP 范围
    recursion no;          // 若仅作权威服务器,关闭递归
    dnssec-validation auto;
};

zone "example.com" {
    type master;
    file "/etc/bind/zones/db.example.com";
};
登录后复制

创建正向解析区域文件

接下来创建域名 example.com 的正向解析区域文件。先创建目录并添加记录:

sudo mkdir -p /etc/bind/zones

然后创建文件 /etc/bind/zones/db.example.com,内容如下:

$TTL    86400
@       IN      SOA     ns1.example.com. admin.example.com. (
                        2025040501 ; Serial
                        3600       ; Refresh
                        1800       ; Retry
                        604800     ; Expire
                        86400 )    ; Negative Cache TTL

; Name Servers
@       IN      NS      ns1.example.com.

; A Records
@       IN      A       192.168.1.100
ns1     IN      A       192.168.1.100
www     IN      A       192.168.1.100
mail    IN      A       192.168.1.101
登录后复制

SOA 记录中的邮箱写法为 admin.example.com. 实际对应 admin@example.com,注意末尾的点不能少。

Booltool
Booltool

常用AI图片图像处理工具箱

Booltool 140
查看详情 Booltool

测试配置并启动服务

完成配置后,先检查语法是否正确:

  • named-checkconf — 检查主配置文件
  • named-checkzone example.com /etc/bind/zones/db.example.com — 验证区域文件

若无错误,重启服务:

  • sudo systemctl restart named (RHEL)
  • sudo systemctl restart bind9 (Debian/Ubuntu)

设置开机自启:sudo systemctl enable named

验证 DNS 解析结果

使用工具dignslookup 测试解析是否正常:

dig www.example.com @localhost

如果返回正确的 A 记录,说明服务器工作正常。也可从其他客户端指定该 DNS 服务器 IP 进行测试。

基本上就这些。BIND9 支持更多高级功能如反向解析、DNSSEC、视图(view)等,可根据实际需求逐步扩展。关键是确保权限、路径和语法准确,避免因小错误导致服务无法启动。

以上就是Linux 运维:如何搭建 BIND9 DNS 服务器的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号