admin管理员组

文章数量:1598073

CentOS7 配置DNS服务-第三篇

某校园网要架设一台主DNS服务器负责linux-xxx域(xxx为姓名拼音或首字母)的域名解析工作,服务器IP地址为192.168.1.学号。
要求:1、为以下域名实现正向和反向域名解析服务。
dns.linux-xxx 192.168.1.学号
mail.linux-xxx MX记录 192.168.1.180
study.linux-xxx 192.168.1.181
teach.linux-xxx 192.168.1.182
www.linux-xxx 192.168.1.183
2、配置从DNS服务器,IP地址为192.168.1.199
3、其它虚拟机设置以上主从DNS服务器测试正常。
4、windows主机设置以上主从DNS服务器测试正常。

一、主服务器dns的配置

1. 安装BINDC

BINDC Berkeley Internet Name Domain,伯克利因特网名称域)服务是全球范围内使用最广泛、最安全可靠且高效的域名解析服务程序。DNS域名解析服务作为互联网基础设施服务,其责任之重可想而知,因此建议读者在生产环境中安装部署BIND服务程序时加上chroot(俗称牢笼机制)扩展包,以便有效地限制BIND服务程序仅能对自身的配置文件进行操作,以确保整个服务器的安全。

 yum install -y bind-chroot

BIND服务程序中有下面这三个比较关键的文件来配置DNS查询服务。
(1)主配置文件(/etc/named. conf):只有58行,而且在去除注释信息和空行之后,实际有效的参数仅有30行左右,这些参数用来定 义BIND服务程序的运行。
(2)区域配置文件(/etc/named. rfe1912. zones):用来保存城名和IP地址对应关系的
所在位置。类似于图书的目录,对应着每个城和相应IP地址所在的具体位置,当需要查看或修改时,可根据这个位置找到相关文件。
(3)数据配置文件目录(/var/named):该目录用来保存城名和IP地址真实对应关系
的数据配置文件。

2.配置主配置文件

打开BIND服务程序的主配置文件

 vim /etc/named.conf

把第11行和第17行的地址均修改为any,如图所示

listen-on port53 ( any; ):设置监听在这部DNS服务器系统上面的哪个网络接口。预设是监听"localhost或127.0.0.1”,即只有本机可以对DNS服务进行查询,那当然是很不合理的。所以这里要将大括号内的数据改写成any.因为可以监听多个接口,因此any后面要加上分号才算结束。另外,这个项目如果忘记写也没有关系,因为默认是对整个主机系统的所有接口进行监听的。
allow-query ( any; );是针对客户端的设定.到底谁可以对我的DNS服务提出查询请求的意思。原本的内容预设只是针对localhost开放而已,这里改成对所有的用户开放,防火墙也得放行才行。不过,默认DNS就是对所有用户放行,所以这个设定值也可以不用写。

3.配置正向解析区域

(1)配置区域配置文件

打开区域配置文件

vim /etc/named.rfc1912.zones

可以将下面的参数添加的文件下面

zone "linux-gjy" IN{
      type master;
      file "linux-gjy.zone";
      allow-update { none; };

};

下面是对参数的解释

(2)编辑数据配置文件

1.先从/var/named复制一份模板

cp -p /var/named/named.localhost /var/named/linux-gjy.zone

注意复制的文件名linux-gjy.zone与上一个file"xxx"是一致的如图所示


打开/var/named/linux-gjy.zone文件

vim /var/named/linux-gjy.zone

编辑参数

$TTL 1D
@       IN SOA  linux-gjy root.linux-gjy. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      dns.linux-gjy.
dns     IN A    192.168.1.7
        IN MX 10 mail.linux-gjy.
mail    IN A    192.168.1.7
study   IN A    192.168.1.181
teach   IN A    192.168.1.182
www     IN A    192.168.1.183


保存之后重启BINDC,BINDC服务程序的名称是named

systemctl restart named

可能会报错权限问题

使用chmod 755 文件名给权限

(3)检验解析结果

打开/etc/resolv.conf文件

vim /etc/resolv.conf

编辑DNS地址参数为自己的ip,如图所示

注意
1.如果重启网络systemctl restart network可能会导致文件配置失效,变为ipV6地址,为下面尝试自我域名解析时候不成功。
除非把IPv6给关了

nmtui

2.如果重启电脑可能会导致文件配置失效,需要重新试一次

保存之后重启BINDC

systemctl restart named

使用nslookup命令进行域名解析

如果不成功可以尝试
关闭防火墙systemctl stop firewalld

4、配置反向解析区域

(1)配置区域配置文件

打开区域配置文件

vim /etc/named.rfc1912.zones

可以将下面的参数添加的文件下面

zone "1.168.192.in-addr.arpa" IN{
        type master;
        file "192.168.1.arpa";
};


(2)编辑数据配置文件
1.先从/var/named复制一份模板

cp -p /var/named/named.loopback /var/named/192.168.1.arpa

注意复制的文件名192.168.1.arpa与上一个file"xxx"是一致的如图所示

打开/var/named/192.168.1.arpa配置文件

vim /var/named/192.168.1.arpa

添加下面参数

$TTL 1D
@       IN SOA  linux-gjy. root.linux-gjy. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      dns.linux-gjy.
dns     A       192.168.1.7
7       PTR     dns.linux-gjy.
7       PTR     mail.linux-gjy.
181     PTR     study.linux-gjy.
182     PTR     teach.linux-gjy.
183     PTR     www.linux-gjy.

保存之后重启BINDC,BINDC服务程序的名称是named

systemctl restart named

(2)配置网卡

使用nmtui命令图形化界面添加ip

编辑连接->网卡名称->添加ip,如图所示

之后重启网卡就好了,

 nmcli co down 666;nmcli co up 666;

666是我的网卡名

(3)检验解析结果

使用nslookup命令进行域名解析

三、配置主、从服务器

主服务器配置

在之前的配置主服务器的基础上,更改一下配置区域配置文件

打开区域配置文件

vim /etc/named.rfc1912.zones

可以将下面的参数添加的文件下面

zone "linux-gjy" IN{
      type master;
      file "linux-gjy.zone";
      allow-update { 192.168.1.199; };

};
zone "1.168.192.in-addr.arpa" IN{
        type master;
        file "192.168.1.arpa";
        allow-update { 192.168.1.199; };

};


重启DNS服务

systemctl restart named

一定要用nslookup测试一遍,确定主服务器没有问题

从服务器配置

因为我之前已经克隆了一台没有配置主的服务器,用这个来当从服务器

(1)配置区域配置文件

打开区域配置文件

vim /etc/named.rfc1912.zones

可以将下面的参数添加的文件下面

zone "linux-gjy" IN{
      type slave;
      masters { 192.168.1.7; };
      file "slaves/linux-gjy.zone";
      
};
zone "1.168.192.in-addr.arpa" IN{
        type slave;
        masters { 192.168.1.7; };
        file "slaves/192.168.1.arpa";

};

2)修改配置文件/etc/named.conf

vim /etc/named.conf


改为any

(3)配置网卡

使用nmtui命令图形化界面更改ip和DNS

编辑连接->网卡名称->更改ip(192.168.1.199)和DNS服务器ip(192.168.1.7)主机的,如图所示

之后重启网卡就好了,

 nmcli co down 666;nmcli co up 666;

打开/etc/resolv.conf文件

vim /etc/resolv.conf

配置从服务器DNS为主机ip 192.168.1.7和从机的192.168.1.199

1.如果重启网络systemctl restart network会导致文件配置失效,变为ipV6地址,为下面尝试自我域名解析时候不成功。
除非把IPv6给关了

nmtui

重启DNS服务

systemctl restart named

(4)检验解析结果

1.先打开从服务器的cd /var/named/slaves/目录

ll查看目录下文件


发现已经有了这两个文件说明成功了
如果没有主服务器和从服务器分别执行下面命令
DNS域名解析不了的一半原因是这些

systemctl stop firewalld
setenforce 0
systemctl restart named

2.使用nslookup解析一下域名或者ip


说明成功了DNS域名解析
3.我们再使用dig命令

dig 命令是一个强大的工具,用于进行 DNS(Domain Name System)查询。它可以用于获取有关域名解析、DNS 服务器配置和其他相关信息的详细数据。

我们要使用 dig 命令对 IP 地址 192.168.1.183 进行 DNS 查询,执行以下命令:

dig -x 192.168.1.183

如图所示

我们要使用 dig 命令对 域名www.linux-gjy 进行域名解析,执行以下命令:

dig www.linux-gjy


到这里就成功了!!!

本文标签: 第三篇dns