CentOS搭建DNS服务器

服务器规划

DNS服务器IP为:172.16.32.253

需要自定义域名解析

172.16.32.253 dns.zhangsan.com

172.16.32.128 test1.zhangsan.com

172.16.32.129 test2.zhangsan.com

172.16.32.130 www.zhangsan.com

1. 服务器初始化

root@localhost \~# hostnamectl set-hostname dns && bash - - 修改主机名并立即生效

root@dns \~# vim /etc/sysconfig/network-scripts/ifcfg-ens32 - - 修改IP为静态IP

root@dns \~# service network restart - - 重启网络服务

2. bind软件安装

root@dns \~# yum -y install bind bind-utils

如果安装时候解析域名失败,大概率是服务器设置的DNS地址为当前地址,导致无法正常解析,故需临时对DNS配置进行修改,具体如下:

root@dns \~# vim /etc/resolv.conf

配置互联网解析服务器,优点是正常dns会走常规解析,本地DNS服务器上配置的域名解析走内部

3. 修改配置文件

bind安装完成后,开始对默认配置文件进行修改

3.1 修改named.conf

root@dns \~# vim /etc/named.conf

复制代码
options {
        listen-on port 53 { any; }; # 修改处
        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";
        recursing-file  "/var/named/data/named.recursing";
        secroots-file   "/var/named/data/named.secroots";
        allow-query     { any; }; # 修改处

修改后:

3.2 修改named.rfc1912.zones

root@dns \~# vim /etc/named.rfc1912.zones

新增配置

复制代码
zone "zhangsan.com" IN {
        type master;
        file "zhangsan.com.zone";
        allow-update { any; };
};

zone "32.16.172.in-addr.arpa" IN {
        type master;
        file "172.16.32.zone";
        allow-update { any; };
};

3.3 新增文件zhangsan.com.zone

正向代理文件

利用默认配置文件,生成配置文件

root@dns \~# cd /var/named/

root@dns named# cp -a named.localhost zhangsan.com.zone

root@dns named# vim zhangsan.com.zone

复制代码
$TTL 1D
@       IN SOA  @ rname.invalid. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      @
        A       127.0.0.1
        AAAA    ::1
dns     A       172.16.32.253
test1   A       172.16.32.128
test2   A       172.16.32.129
www     A       172.16.32.130

3.4 新增文件172.16.32.zone

反向代理文件

root@dns \~# cd /var/named/

root@dns named# cp -a named.loopback 172.16.32.zone

root@dns named# vim 172.16.32.zone

复制代码
$TTL 1D
@       IN SOA  @ rname.invalid. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      @
        A       127.0.0.1
        AAAA    ::1
        PTR     localhost.
253     PTR     dns.zhangsan.com.
128     PTR     test1.zhangsan.com.
129     PTR     test2.zhangsan.com.
130     PTR     www.zhangsan.com.

4. 重启named服务

root@dns named# systemctl restart named

5. 验证

5.1 DNS服务器验证



由于演示环境中,服务器为最小化安装,故无网络限制,若安装有防火墙,需将DNS服务器防火墙关闭,或者将DNS服务器的53端口放行。
否则其他服务器无法正常使用该DNS进行解析。

5.2 新增服务器验证

新增同网段服务器(172.16.32.132),在该服务器上配置DNS为本地DNS域名解析服务器(172.16.32.253),再测试对上述网址进行解析

本地域名解析服务器未配置的常规解析

至此,在CentOS服务器上搭建本地DNS服务器即完成。

复制代码
备注:
可通过以下命令检测named.conf是否存在异常
[root@dns named]# named-checkconf
没有内容显示为正常

Windows Server搭建DNS服务器详见:https://blog.csdn.net/ym5209999/article/details/135689588

相关推荐
波波0072 小时前
C# 15 重磅新特性: 带标签 break 与 continue:重新定义嵌套循环控制流
服务器·前端·c#
刘某的Cloud4 小时前
ceph osd 导入导出 rbd volume 卷
linux·运维·ceph·volume
隔窗听雨眠5 小时前
GBase 8s并发控制深度解析:封锁机制、隔离级别与死锁处理全攻略
服务器·数据库·oracle
酸菜。6 小时前
dw_axi_dmac总结
linux
神奇霸王龙6 小时前
Agent 准入门控屠夫:5 旗舰 4 维度评估
linux·运维·数据库·ai·ai作画·agent·ai编程
鲸采云SRM采购管理系统6 小时前
采购管理系统哪家好?2026最新测评对比
java·服务器·数据库
那年窗外下的雪.7 小时前
AIDC 学习日志 第 04 天 BGP Underlay 基础与路由选择
服务器·学习·php
0x537 小时前
Java网络编程(二)
java·服务器·网络
果果燕8 小时前
C++学习笔记(三):类与对象拓展学习笔记
java·服务器·前端
小绫网络安全8 小时前
Kali Linux渗透测试入门教程:从零搭建到实战攻防
linux·运维·服务器