centos 7部署dns服务器

1、配置yum源和关闭SELinux

bash 复制代码
sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config
setenforce 0

cd /etc/yum.repos.d/
mkdir backup
mv CentOS-* backup/
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum clean all && yum makecache

2、安装DNS服务

bash 复制代码
yum install -y bind bind-utils

3、配置DNS服务器

bash 复制代码
vi /etc/named.conf

修改为以下配置:

bind 复制代码
options {
    listen-on port 53 { any; };
    directory "/var/named";
    allow-query     { any; };
    allow-recursion { any; };  # 新增
};

zone "westos1.com" IN {
    type master;
    file "westos1.com.zone";
    allow-update { none; };   # 新增
};

zone "11.16.172.in-addr.arpa" IN {
    type master;
    file "172.16.11.zone";
};

4、创建并配置区域文件

bash 复制代码
cd /var/named
cp named.empty westos1.com.zone
cp named.empty 172.16.11.zone
chown -R named.named 172.16.11.zone westos1.com.zone

配置正向解析文件:

bash 复制代码
vi westos1.com.zone
bind 复制代码
$TTL 3H
@       IN SOA  @ rname.invalid. (
                                      0       ; serial
                                      1D      ; refresh
                                      1H      ; retry
                                      1W      ; expire
                                      3H )    ; minimum
        NS      dns.westos1.com.
dns     IN   A   172.16.11.115
www     IN  A   172.16.11.115

配置反向解析文件:

bash 复制代码
vi 172.16.11.zone
bind 复制代码
$TTL 3H
@       IN SOA       @ rname.invalid. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H ) ; minimum
    NS          dns.westos1.com.
115   IN   PTR  dns.westos1.com.
115   IN   PTR  www.westos1.com.

5、启动DNS服务

bash 复制代码
systemctl restart named
systemctl enable named
systemctl status named

6、防火墙放行DNS流量

bash 复制代码
firewall-cmd --permanent --add-service=dns
firewall-cmd --reload

7、DNS验证

(前提是把网络DNS指向DNS服务器IP 172.16.11.115)

bash 复制代码
# 验证正向解析
dig -t A www.westos1.com @172.16.11.115

# 验证反向解析
dig -x 172.16.11.115 @172.16.11.115

# 使用nslookup验证
nslookup www.westos1.com 172.16.11.115
nslookup 172.16.11.115 172.16.11.115

重要修改说明:

  1. 反向区域名称 :从 52.168.192.in-addr.arpa 改为 11.16.172.in-addr.arpa(IP 172.16.11.115 的反向表示)
  2. 反向区域文件名 :从 192.168.52.zone 改为 172.16.11.zone
  3. 所有IP地址:从 192.168.52.15 改为 172.16.11.115
  4. 反向解析记录 :PTR 记录从 .15 改为 .115

客户端测试配置:

在客户端上,将 DNS 服务器设置为 172.16.11.115,然后测试:

bash 复制代码
# Linux客户端
echo "nameserver 172.16.11.115" > /etc/resolv.conf
dig www.westos1.com
nslookup www.westos1.com

# Windows客户端
# 在网络设置中将DNS服务器设置为172.16.11.115
# 然后在CMD中执行:
nslookup www.westos1.com
相关推荐
XIAOHEZIcode3 小时前
Ubuntu 终端美化全栈指南:Bash 到 Kitty 踩坑实录
linux·ubuntu·命令行
唐青枫5 小时前
别再只会用 cron:Linux systemd Timer 定时任务实战详解
linux
AlfredZhao2 天前
生产环境里,为什么不建议把普通端口直接暴露到公网?
linux·https·443·80
戴为沐3 天前
Linux内存扩容指南
linux
zylyehuo4 天前
Linux 彻底且安全地删除文件
linux
用户805533698034 天前
主线 U-Boot 上 RK3506:和闭源 rkbin 拔河的三个隐性契约
linux·嵌入式
用户034095297914 天前
linux fcitx 5 雾凇拼音 设置在中文输入法下仍然输入英文标点
linux
赵文宇5 天前
CoreDNS大屏看板、监控、和企业微信告警通知
dns
Web3探索者6 天前
可视化服务器管理和传统命令行区别是什么?新手教程:Linux 运维到底该用图形界面还是 SSH 命令行?
linux·ssh
zylyehuo6 天前
Linux系统中网线与USB网络共享冲突
linux