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

相关推荐
热爱嵌入式的小许2 小时前
Linux基础项目开发1:量产工具——显示系统
linux·运维·服务器·韦东山量产工具
韩楚风6 小时前
【linux 多进程并发】linux进程状态与生命周期各阶段转换,进程状态查看分析,助力高性能优化
linux·服务器·性能优化·架构·gnu
陈苏同学6 小时前
4. 将pycharm本地项目同步到(Linux)服务器上——深度学习·科研实践·从0到1
linux·服务器·ide·人工智能·python·深度学习·pycharm
Ambition_LAO6 小时前
解决:进入 WSL(Windows Subsystem for Linux)以及将 PyCharm 2024 连接到 WSL
linux·pycharm
Pythonliu77 小时前
茴香豆 + Qwen-7B-Chat-Int8
linux·运维·服务器
你疯了抱抱我7 小时前
【RockyLinux 9.4】安装 NVIDIA 驱动,改变分辨率,避坑版本。(CentOS 系列也能用)
linux·运维·centos
追风赶月、7 小时前
【Linux】进程地址空间(初步了解)
linux
栎栎学编程7 小时前
Linux中环境变量
linux
我是哈哈hh7 小时前
专题十_穷举vs暴搜vs深搜vs回溯vs剪枝_二叉树的深度优先搜索_算法专题详细总结
服务器·数据结构·c++·算法·机器学习·深度优先·剪枝
郭二哈7 小时前
C++——模板进阶、继承
java·服务器·c++