在RHEL / CentOS 7中安装和配置仅缓存DNS服务器 - 第10部分

在本文中,我们将解释如何使用bind工具在RHEL / CentOS 7中安装和配置DNS Cache-onlyNameservers,并在客户端计算机上对其进行测试。

DNS服务器有几种类型,例如主设备,从设备,转发和高速缓存,仅举几个例子,其中仅高速缓存DNS是更容易设置的DNS。 由于DNS使用UDP协议,它提高了查询时间,因为它不需要确认。

在RHEL和CentOS 7中设置仅缓存DNS

RHCE系列:在RHEL和CentOS 7中设置仅缓存的DNS - 第11部分

仅缓存DNS服务器也称为解析器,它将查询DNS记录并从其他服务器获取所有DNS详细信息,并将每个查询请求保存在其缓存中以供将来使用,以便在将来执行相同请求时,它将从其缓存中提供服务,从而更加缩短响应时间。

如果您正在寻找在CentOS的/ RHEL 6设置DNS缓存-唯一的服务器,按照本指南在这里:

在CentOS / RHEL中设置仅缓存DNSNameservers6

我的测试环境

DNS server		:	dns.howtoinglocal.com (Red Hat Enterprise Linux 7.1)
Server IP Address	:	192.168.0.18
Client			:	node1.howtoinglocal.com (CentOS 7.1)
Client IP Address	:	192.168.0.29

第1步:在RHEL / CentOS 7中安装仅缓存DNS服务器

1.高速缓存仅DNS服务器,可以通过绑定包进行安装。 如果您不记得程序包名称,可以使用以下命令快速搜索程序包名称。

# yum search bind
搜索DNS绑定包

搜索DNS绑定包

2.在上面的结果,你会看到几个包。 从这些,我们需要选择并使用以下命令Yum只安装绑定绑定-utils的软件包。

# yum install bind bind-utils -y
在RHEL / CentOS 7中安装DNS绑定

在RHEL / CentOS 7中安装DNS绑定

第2步:在RHEL / CentOS 7中配置仅缓存DNS

3.一旦DNS软件包安装,我们可以继续配置DNS。 打开并编辑/etc/named.conf使用您喜欢的文本编辑器。 进行以下建议的更改(或者您可以根据需要使用您的设置)。

listen-on port 53 { 127.0.0.1; any; };
allow-query     { localhost; any; };
allow-query-cache       { localhost; any; };
在CentOS和RHEL 7中配置仅缓存DNS

在CentOS和RHEL 7中配置仅缓存DNS

这些指令指示DNS服务器监听UDP端口53,并允许从本地主机的查询和缓存响应和到达服务器的任何其它机器。

4.要注意的是这个文件的所有权必须被设置为重要的是root:named ,也如果启用了SELinux,编辑配置文件之后,我们需要确保其上下文被设置为named_conf_t如图。 4(用于辅助文件相同的事情/etc/named.rfc1912.zones ):

# ls -lZ /etc/named.conf
# ls -lZ /etc/named.rfc1912.zones

否则,在继续之前配置SELinux上下文:

# semanage fcontext -a -t named_conf_t /etc/named.conf
# semanage fcontext -a -t named_conf_t /etc/named.rfc1912.zones

5.此外,我们需要启动绑定服务之前,现在测试DNS配置一些语法错误:

# named-checkconf /etc/named.conf

6.语法验证结果后,似乎完美,重新启动指定的服务采取新的更改生效,也使该服务在系统启动自动启动,然后检查其状态:

# systemctl restart named
# systemctl enable named
# systemctl status named
配置并启动DNS命名服务

配置并启动DNS命名服务

7.接下来,打开端口53在防火墙上。

# firewall-cmd --add-port=53/udp
# firewall-cmd --add-port=53/udp --permanent
在防火墙上打开DNS端口53

在防火墙上打开DNS端口53

第3步:在RHEL和CentOS 7中Chroot仅缓存DNS服务器

8.如果您要部署在chroot环境的唯一缓存DNS服务器,您需要安装在系统上的包的chroot并没有进一步的配置默认情况下,硬链接的chroot需要它。

# yum install bind-chroot -y

一旦chroot的包已经安装,可以重新启动名为采取新的更改生效:

# systemctl restart named

9.接下来,创建一个符号链接(也称为/etc/named.conf内) /var/named/chroot/etc/

# ln -s /etc/named.conf /var/named/chroot/etc/named.conf

第4步:在客户端计算机上配置DNS

10.添加DNS缓存服务器IP 192.168.0.18作为解析到客户机上。 编辑/etc/sysconfig/network-scripts/ifcfg-enp0s3 ,如下图所示:

DNS=192.168.0.18
在客户端计算机上配置DNS

在客户端计算机上配置DNS

的/etc/resolv.conf如下:

nameserver 192.168.0.18

11.最后它的时间来检查我们的缓存服务器。 要做到这一点,你可以使用挖掘工具nslookup命令

选择任何网站,查询两次(我们将使用facebook.com为例)。 请注意,使用dig第二次查询完成更快,因为它是从缓存提供。

# dig facebook.com
仅检查缓存DNS查询

仅检查缓存DNS查询

您还可以使用nslookup来验证DNS服务器是否工作正常。

# nslookup facebook.com
使用nslookup检查DNS查询

使用nslookup检查DNS查询

概要

在这篇文章中,我们已经解释了如何设置红帽企业Linux 7CentOS 7只DNS缓存服务器,并在客户机进行了测试。 如果您有任何问题或建议,请随时使用下面的表格让我们知道。