云计算、AI、云原生、大数据等一站式技术学习平台

网站首页 > 教程文章 正文

基于 Linux 快速搭建企业级 DNS 服务器(Bind9 实战指南)

jxf315 2025-06-13 14:27:14 教程文章 5 ℃

一、引言


在大型企业网络或自建系统中,搭建一套高可用、自控的 DNS 解析服务器至关重要。本文将带你基于 Linux 环境,从零搭建企业级 DNS 服务平台,采用 Bind9 实战配置,确保解析稳定、安全、快速。



二、环境准备


  • 操作系统:CentOS 8 / Ubuntu 22.04
  • 软件版本:Bind 9.18+
  • 主机 IP 示例:192.168.1.10
  • 目标:搭建主 DNS 服务器并配置解析本地域名




三、安装 Bind9



1. 更新系统


sudo apt update && sudo apt upgrade -y

# 或者

sudo yum update -y


2. 安装 Bind9



在 Ubuntu 系统:

sudo apt install bind9 bind9utils bind9-doc -y

在 CentOS 系统:

sudo yum install bind bind-utils -y


四、配置 Bind9




1. 编辑主配置文件



路径:
/etc/bind/named.conf.options

sudo vim /etc/bind/named.conf.options

修改或添加以下内容:

options {

directory "/var/cache/bind";


recursion yes;

allow-query { any; };

forwarders {

8.8.8.8;

8.8.4.4;

};


dnssec-validation auto;

listen-on port 53 { any; };

};


2. 配置区域文件



编辑
/etc/bind/named.conf.local:

sudo vim /etc/bind/named.conf.local

添加自定义域解析区域:

zone "mycompany.local" {

type master;

file "/etc/bind/zones/db.mycompany.local";

};

新建 zones 目录并创建区域文件:

sudo mkdir /etc/bind/zones

sudo vim /etc/bind/zones/db.mycompany.local

写入内容:

$TTL 604800

@ IN SOA ns1.mycompany.local. admin.mycompany.local. (

2025042801 ; Serial

604800 ; Refresh

86400 ; Retry

2419200 ; Expire

604800 ) ; Negative Cache TTL

;

@ IN NS ns1.mycompany.local.

ns1 IN A 192.168.1.10

www IN A 192.168.1.20


3. 检查配置并重启 Bind9



检查配置文件语法:

sudo named-checkconf

sudo named-checkzone mycompany.local /etc/bind/zones/db.mycompany.local

如果没有错误,重启服务:

sudo systemctl restart bind9

sudo systemctl enable bind9


五、防火墙和端口放通



开启 DNS 端口 53:

sudo firewall-cmd --add-port=53/udp --permanent

sudo firewall-cmd --add-port=53/tcp --permanent

sudo firewall-cmd --reload


六、客户端测试解析



在客户端修改 /etc/resolv.conf:

nameserver 192.168.1.10

测试解析:

nslookup www.mycompany.local

若能正确返回 IP 地址,即搭建成功。



七、总结

通过本实战,从0搭建了企业内部使用的 DNS 服务器平台。掌握 Bind9 配置,有助于打造独立、自控、高性能的网络解析体系。未来可以进一步扩展成主备 DNS、多区域分发、子域权限管理等更高级的应用。

最近发表
标签列表