Установка и настройка сервера DNS только для кэширования в RHEL/CentOS 7 – Часть 10

DNS серверы бывают нескольких типов, таких как мастер, рабочий, указание и кэш, например, с кэш-только DNS, который является более простым для установки. Так как DNS использует протокол UDP, это улучшает время запроса, поскольку он не требует подтверждения.

RHCE Series: Setup Cache-Only DNS in RHEL and CentOS 7 – Part 11

Кэш-только DNS сервер также известен как резолвер, который будет запрашивать записи DNS и забирать все детали DNS с других серверов, и сохранять каждый запрос в своем кэше для последующего использования, так что когда мы выполним тот же запрос в будущем, он будет использовать свой кэш, тем самым уменьшая время ответа еще больше.

Если вы ищете настроить DNS кэш-только сервер в CentOS/RHEL 6, следуйте этому руководству:

Установка кэш-только DNS имя сервера в CentOS/RHEL 6

Моя тестовая среда

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

Шаг 1: Установка кэш-только DNS сервера в RHEL/CentOS 7

1. Кэш-только DNS сервер может быть установлен с помощью пакета bind. Если вы забыли название пакета, вы можете быстро найти название пакета с помощью команды ниже.

# yum search bind
Search DNS Bind Package

2. В указанных выше результатах вы увидите несколько пакетов. из них нам нужно выбрать и установить только пакеты bind и bind-utils с использованием следующей команды yum.

# yum install bind bind-utils -y
Install DNS Bind in RHEL/CentOS 7

Шаг 2: Конфигурирование кэш-только DNS в RHEL/CentOS 7

3. После установки пакетов DNS, мы можем начать настраивать DNS. Откройте и редактируйте /etc/named.conf с помощью preferovaného текстового редактора. Внесите ниже предложенные изменения (или можете использовать настройки по собственному требованию).

listen-on port 53 { 127.0.0.1; any; };
allow-query     { localhost; any; };
allow-query-cache       { localhost; any; };
Configure Cache-Only DNS in CentOS and RHEL 7

Данные директивы указывают DNS серверу прислушиваться к UDP порту 53, и разрешать запросы и кэширование ответов с localhost и любого другого устройства, связанного с сервером.

4. важно заметить, что ownership этого файла должен быть установлен как 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 конфигурацию на наличие синтаксических ошибок, прежде чем запустить службу bind:

# named-checkconf /etc/named.conf

6. После того, как результаты проверки синтаксиса кажется идеальными, перезапустите службу named, чтобы применить новые изменения и также чтобы служба запускалась автоматически при загрузке системы и потом проверьте ее состояние:

# systemctl restart named
# systemctl enable named
# systemctl status named
Configure and Start DNS Named Service

7. затем, откройте порт 53 в брандмауэре.

# firewall-cmd --add-port=53/udp
# firewall-cmd --add-port=53/udp --permanent
Open DNS Port 53 on Firewall

Шаг 3: Chroot Cache-Only DNS Server in RHEL and CentOS 7

8. Если вы хотите установить кэширующий DNS-сервер в среде chroot, вам нужно установить пакет chroot на системе, и дополнительной настройки не требуется, так как по умолчанию он связан с chroot.

# yum install bind-chroot -y

Когда chroot пакет установлен, вы можете перезапустить named, чтобы внедрить новые изменения:

# systemctl restart named

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

# 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
Configure DNS on Client Machine

并按照以下方式编辑/etc/resolv.conf

nameserver 192.168.0.18

11. 最后,该检查我们的缓存服务器了。为此,您可以使用dig工具nslookup命令

选择任何网站并对其查询两次(我们将使用facebook.com作为示例)。请注意,使用dig第二次查询速度要快得多,因为它是从缓存中提供的。

# dig facebook.com
Check Cache only DNS Queries

您还可以使用nslookup来验证DNS-сервер работает как ожидалось.

# nslookup facebook.com
Checking DNS Query with nslookup

Summary

В этой статье мы объяснили, как настроить сервер DNS только для кэширования в Red Hat Enterprise Linux 7 и CentOS 7 и протестировали его на клиентской машине. Не стесняйтесь сообщить нам, если у вас есть какие-либо вопросы или предложения, используя форму ниже.

Source:
https://www.tecmint.com/install-configure-cache-only-dns-server-in-rhel-centos-7/