CentOS7搭建DNS服务器

DNS的详细介绍

配置DNS服务所相关的一些软件

  • bind-9.9.4-37.el7.x86_64.rpm
  • bind-utils-9.9.4-37.el7.x86_64.rpm
  • bind-libs-9.9.4-37.el7.x86_64.rpm
  • bind-chroot-9.9.4-37.el7.x86_64.rpm
    主程序:
  • /usr/sbin/named
    服务名:
    /usr/lib/systemd/system/named.service
    默认监听端口:
    53
    主配置文件:
    /etc/named.conf
    保存DNS解析记录的数据文件:
    /var/named/

准备工作:
VMware上安装两台CentOS7操作系统和一台Win10系统待测试

话不多说上操作

在这里插入图片描述

搭建DNS高速缓存服务器

第一步,安装搭建DNS的软件

1)查询yum仓库中是否存在安装包
[root@hzp000 ~]# yum list | grep '^bind\.'
bind.x86_64                               32:9.11.4-26.P2.el7_9.5      updates 
可以看到仓库中存在这个安装包,如果不存在,考虑更换yum源或者官网下载安装包

2)安装软件包

[root@hzp000 ~]# yum -y install bind*

第二步,更改配置文件

主配置文件位置:
/etc/named.conf

1)全局配置部分
options {…}
更改以下部分:

options{
	listen-on port 53 {192.168.100.10;};			#哪一张网卡的哪一个端口,默认为本地环回接口,可以写成0.0.0.0或者any
	directory "/var/named";							#区域数据文件的,偶人存放位置位置
	allow-query {192.168.100.1/24;173.16.16.0/24}	#允许使用本DNS服务的网段,可以直接写any为全部
}

2)区域配置部分
zone “区域名” IN {…};
1.根区域,如果缓存找不到域名,则交给根服务器

zone "." IN {
        type hint;			#区域类型
        file "named.ca";	#A记录存放位置
};

2.自行配置区域部分
子配置文件:/etc/named.rfc1912.zones
添加配置:

zone "pengzhihe.com" IN {			#域名
        type master;				#类型为主缓存服务器
        file "pengzhihe.zone";		#A记录存放的位置
}; 

3)全局TTL配置项及SOA记录
配置文件存放在/var/named/下文件名为上一步骤的A记录存放位置
文件不在,需要自己创建
将样本配置文件拷贝到我的配置文件

[root@hzp000 ~]# cp -p /var/named/named.empty /var/named/pengzhihe.zone
[root@hzp000 ~]# vim /var/named/pengzhihe.zone

更改其内容:

$TTL 3H														#有效解析记录的生存周期
@       IN SOA  pengzhihe.com. mail.pengzhihe.com. (							#SOA标记、域名、管理邮箱
                                        0       ; serial	#更新序列号,10位以内的整数
                                        1D      ; refresh	#刷新时间,重新下载地址数据的间隔
                                        1H      ; retry		#重试延时,下载失败后的重试间隔
                                        1W      ; expire	#失效时间,超过该时间任无法下载则放弃
                                        3H )    ; minimum	#无效解析记录

时间单位默认为秒
M(分)
H(时)
W(周)
D(天)
@符号表示当前的DNS域名
电子邮件中的第一个点代表邮件中的@

注意:域名和邮件地址最后必须写上根域“.”

在这里插入图片描述

下方为A记录,参照格式:

@       IN      NS      ns1.pengzhihe.com.      ;主机的域名需要和当前主机名一样
        IN      MX 10   ns1.pengzhihe.com.      ;邮件服务器,10代表优先级        
ns1     IN      A       192.168.100.10          ;主机域名A记录
www     IN      A       192.168.100.10          ;www域名服务A记录

NS 域名服务器(Name Server)记录
MX 邮件交换(Mail Exchange)记录
A 地址(Address)记录,只用在正向解析区域中
CNAME 别名(Canonical Name)记录
named.ca文件中包含了13个根域名服务器的A记录

4)检查配置文件语法是否正确

[root@hzp000 ~]# named-checkconf -z /etc/named.conf
zone localhost.localdomain/IN: loaded serial 0
zone localhost/IN: loaded serial 0
zone 1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa/IN: loaded serial 0
zone 1.0.0.127.in-addr.arpa/IN: loaded serial 0
zone 0.in-addr.arpa/IN: loaded serial 0
zone pengzhihe.com/IN: loaded serial 0

第三步、开启服务

1)开启服务

[root@ns1 ~]# systemctl start named
[root@ns1 ~]# systemctl enable named
Created symlink from /etc/systemd/system/multi-user.target.wants/named.service to /usr/lib/systemd/system/named.service.

2)关闭防火墙

[root@ns1 ~]# systemctl stop firewalld
[root@ns1 ~]# systemctl disable firewalld

3)关闭selinux

[root@ns1 ~]# sed -ri 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config 

4)查看端口状态

[root@ns1 ~]# ss -napt | grep :53
LISTEN     0      10     192.168.100.10:53                       *:*                   users:(("named",pid=18893,fd=22))
LISTEN     0      10     127.0.0.1:53                       *:*                   users:(("named",pid=18893,fd=21))
LISTEN     0      10         ::1:53                      :::*                   users:(("named",pid=18893,fd=23))

第四步、测试

1)win10测试
1.开启win10虚拟机
2.配置网卡
3.将dns服务器设置为当前配置的dns服务器地址
在这里插入图片描述
其余根据自己虚拟机设置的ip网段进行设置IP、网关等
4.在dos窗口中使用ping命令进行测试
在这里插入图片描述
如图,nice
在这里插入图片描述

2)CentOS7测试
1.另开一台CentOS主机
2.将网卡中的DNS1配置改为当前服务器
3.使用ping命令测试

[root@hzp001 ~]# ping www.baidu.com
PING www.a.shifen.com (182.61.200.7) 56(84) bytes of data.
64 bytes from 182.61.200.7 (182.61.200.7): icmp_seq=1 ttl=128 time=31.2 ms
64 bytes from 182.61.200.7 (182.61.200.7): icmp_seq=2 ttl=128 time=71.0 ms
^C
--- www.a.shifen.com ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1001ms
rtt min/avg/max/mdev = 31.221/51.123/71.026/19.903 ms
[root@hzp001 ~]# ping ns1.pengzhihe.com
PING ns1.pengzhihe.com (192.168.100.10) 56(84) bytes of data.
64 bytes from 192.168.100.10 (192.168.100.10): icmp_seq=1 ttl=64 time=0.160 ms
^C
--- ns1.pengzhihe.com ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.160/0.160/0.160/0.000 ms

配置反向解析

基于上述步骤:

第一步、创建反向区域配置文件

1)在子配置文件中添加如下配置
zone "100.168.192.in-addr.arpa" IN {
        type master;
        file "192.168.100.arpa";	#反向区域数据文件名
};

2)创建反向区域数据文件

[root@ns1 ~]# cp -p /var/named/named.loopback /var/named/192.168.100.arpa

配置文件中配置:


$TTL 1D
@       IN SOA zhipenghe.com. mail.zhipenghe.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      ns1.zhipenghe.com.
70      PTR     ns1.zhipenghe.com.
73      PTR     www.zhipenghe.com.

第二步、重启服务

[root@ns1 ~]# systemctl restart named

第三步、测试

1.切换到ns2主机 2.下载安装bind-utils软件包 3.使用nslookup命令测试

在这里插入图片描述
如图,nice

在这里插入图片描述

搭建从DNS服务器

第一步、安装软件包

1.新开一台虚拟主机,命名为ns3.zhipenghe.com
[root@hzp002 ~]# hostnamectl set-hostname ns3.zhipenghe.com

2.安装bind软件

[root@ns3 ~]# yum -y install bind*

第二步、配置配置文件

1.编辑主配置文件

[root@ns3 ~]# vim /etc/named.conf

在配置文件中配置如下

options {
        listen-on port 53 { 192.168.100.12 ; };	#本机ip
        ...
        ...
        allow-query     { any; };
		...
}

2.编辑子配置文件

[root@ns3 ~]# vim /etc/named.rfc1912.zones

添加如下配置

zone "zhipenghe.com" IN {
        type slave;						#类型为从区域
        masters { 192.168.100.10; };	#指定主服务器的IP地址
        file "slaves/zhipenghe.zone";	#下载的区域文件保存到slaves/目录下
};
zone "100.168.192.in-addr.arpa" IN {
        type slave;
        masters { 192.168.100.10; };
        file "slaves/192.168.100.arpa";
};

3.配置主服务器的子配置文件

[root@ns1 ~]# vim /etc/named.rfc1912.zones 

添加如下配置

zone "zhipenghe.com" IN {
        type master;
        file "zhipenghe.zone";
        allow-transfer { 192.168.100.12; };	#允许此从服务器下载正向区域数据
};
zone "100.168.192.in-addr.arpa" IN {
        type master;
        file "192.168.100.arpa";
        allow-transfer { 192.168.100.12; };	#允许此服务器下载正向区域数据
};

第三步、测试

1.开启named服务
[root@ns3 ~]# systemctl start named
[root@ns3 ~]# systemctl enable named
Created symlink from /etc/systemd/system/multi-user.target.wants/named.service to /usr/lib/systemd/system/named.service.

2.关闭防火墙

[root@ns3 ~]# systemctl stop firewalld
[root@ns3 ~]# systemctl disable firewalld

3.关闭selinux

[root@ns3 ~]# setenforce 0
[root@ns3 ~]# sed -ri 's/SELINUX=enfrocing/SELINUX=disabled/' /etc/selinux/config 

4.将测试主机配置从DNS服务器地址
在这里插入图片描述
如图将DNS1设置为从服务器地址
DNS2设置为主服务器地址
5.重启网卡

[root@ns2 ~]# ifdown ens33;ifup ens33

6.使用nslookup命令测试
在这里插入图片描述
如图,nice
在这里插入图片描述

  • 7
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

屎到淋头还嚼便

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值