5154

Good Luck To You!

centos dns图文配置

在CentOS系统中配置DNS服务器是网络管理的重要技能,无论是搭建本地域名解析服务还是优化网络访问效率,都离不开正确的DNS配置,本文将以图文结合的方式,详细介绍CentOS 7/8系统中DNS服务器的安装、配置及测试过程,帮助读者快速掌握这一实用技能。

centos dns图文配置

安装BIND DNS服务

首先需要安装BIND(Berkeley Internet Name Domain)软件包,这是Linux系统中最常用的DNS服务实现,打开终端,执行以下命令更新系统软件包列表并安装BIND:

sudo yum update -y
sudo yum install bind bind-utils -y

安装完成后,启动DNS服务并设置为开机自启:

sudo systemctl start named
sudo systemctl enable named

检查服务状态,确保运行正常:

sudo systemctl status named

配置DNS主配置文件

BIND的主配置文件位于/etc/named.conf,需要编辑该文件以定义DNS服务的基本参数,使用文本编辑器打开文件:

sudo vim /etc/named.conf

在文件中,需要修改以下关键部分:

  1. 监听地址:将listen-on port 53 { 127.0.0.1; };修改为listen-on port 53 { any; };,允许所有IP访问
  2. 允许查询:将allow-query { localhost; };修改为allow-query { any; };,允许所有客户端查询
  3. 区域定义:添加正向和反向解析区域声明

保存文件后,检查配置语法是否正确:

sudo named-checkconf

创建DNS区域文件

区域文件存储具体的DNS记录信息,首先创建正向区域文件,例如对于example.com域名:

centos dns图文配置

sudo vim /var/named/example.com.zone
$TTL 86400
@   IN  SOA ns1.example.com. admin.example.com. (
        2025010101  ; Serial
        3600        ; Refresh
        1800        ; Retry
        604800      ; Expire
        86400       ; Minimum TTL
)
    IN  NS  ns1.example.com.
    IN  A   192.168.1.100
ns1 IN  A   192.168.1.100
www IN  A   192.168.1.101

同样创建反向区域文件:

sudo vim /var/named/192.168.1.db

添加反向解析记录:

$TTL 86400
@   IN  SOA ns1.example.com. admin.example.com. (
        2025010101  ; Serial
        3600        ; Refresh
        1800        ; Retry
        604800      ; Expire
        86400       ; Minimum TTL
)
    IN  NS  ns1.example.com.
100 IN  PTR ns1.example.com.
101 IN  PTR www.example.com.

设置文件权限

确保区域文件具有正确的权限,BIND服务才能正常读取:

sudo chown named:named /var/named/example.com.zone
sudo chown named:named /var/named/192.168.1.db
sudo chmod 640 /var/named/example.com.zone
sudo chmod 640 /var/named/192.168.1.db

验证DNS配置

使用named-checkzone命令检查区域文件语法:

sudo named-checkzone example.com /var/named/example.com.zone
sudo named-checkzone 1.168.192.in-addr.arpa /var/named/192.168.1.db

重启DNS服务使配置生效:

sudo systemctl restart named

测试DNS解析

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

dig @localhost example.com
dig @localhost -x 192.168.1.100

如果返回正确的解析结果,说明DNS配置成功。

centos dns图文配置

配置防火墙规则

确保防火墙允许DNS流量通过:

sudo firewall-cmd --permanent --add-service=dns
sudo firewall-cmd --reload

常见问题排查

如果DNS解析失败,可以检查以下问题:

  1. 查看日志文件/var/log/messages获取错误信息
  2. 确认区域文件语法正确
  3. 检查服务是否正常运行
  4. 验证防火墙设置

相关问答FAQs

Q1: 如何在CentOS系统中修改DNS服务器的监听端口?
A: 编辑/etc/named.conf文件,找到listen-on port 53部分,修改端口号后保存文件,然后重启DNS服务即可,例如要改为端口5353,修改为listen-on port 5353 { any; };

Q2: 如何配置DNS转发功能,将无法解析的请求转发到上游DNS服务器?
A: 在/etc/named.confoptions部分添加forwarders指令,

forwarders {
    8.8.8.8;
    8.8.4.4;
};

保存文件后重启DNS服务,所有本地无法解析的请求将转发到指定的上游DNS服务器。

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

«    2025年12月    »
1234567
891011121314
15161718192021
22232425262728
293031
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
搜索
最新留言
    文章归档
    网站收藏
    友情链接

    Powered By Z-BlogPHP 1.7.3

    Copyright Your WebSite.Some Rights Reserved.