Pull to refresh

Настройка DNS/BIND на RHEL

В состав репозитория РЕД ОС включен DNS-сервер bind, поддерживающий стандарты RFC 1034,1035, 2136. Поддерживает реализацию хост-систем на базе стека протоколов Internet, описанных в RFC 1123. Поддерживает механизм инкрементального переноса зон IXFR, описанный в RFC 1995 и механизм извещения ведомых серверов NOTIFY, RFC 1996.

Подготовка

Устанавливаем bind:
sudo dnf update dnf install bind -y
Открываем файл настройки и редактируем следующее в блоке options:
nano /etc/named.conf

listen-on port 53 { 127.0.0.1; 192.168.0.0; }; 
listen-on-v6 port 53 { none; }; 
allow-query { any; }; 
forward first; 
forwarders { 8.8.8.8; };
  • * 192.168.0.0 — IP-адрес нашего DNS-сервера, на котором он будет принимать запросы;

  • listen-on-v6 port 53 присвоим значение none, тем самым отключив ipv6

  • allow-query разрешает выполнять запросы всем, но из соображений безопасности можно ограничить доступ для конкретной сети, например, вместо any написать 10.10.1.0/24.

  • forward с параметром first указывает, DNS-серверу пытаться разрешать имена с помощью DNS-серверов, указанных в параметре forwarders, и лишь в случае, если разрешить имя с помощью данных серверов не удалось, то будет осуществлять попытки разрешения имени самостоятельно.

  • forwarders перенаправляем запросы, которые сами не резолвим, на днс сервер гугла.

В нижней части файла добавьте следующее:

#Пример конфига зоны для файла named.conf
zone "example.org" {
 type master;
 file "master/example.org";
 };

Настройка зон:

Создаём директорию и копируем шаблоны:
mkdir /var/named/master
cp /var/named/named.localhost /var/named/master/(название вашей прямой зоны)
cp /var/named/named.loopback /var/named/master/(название вашей обратной зоны)
chown -R root:named /var/named/master/
chown -R named:named /var/named
chown -R root:named /etc/named.conf
chmod 750 /var/named/
chmod 750 /var/named/master/

Прямая DNS зона

$TTL 604800       ;
example.org.    IN      SOA     ns01.example.org. root.example.org. (
                1               ; Serial
                600             ; Refresh
                3600            ; Retry
                1w              ; Expire
                360             ; Minimum TTL
                )
        IN      NS      ns01.example.org.
        IN      NS      ns02.example.org.
        IN      NS      ns03.example.org.
ns01    IN      A       192.168.10.50
ns02    IN      A       192.168.10.60
ns03    IN      A       192.168.10.70
www     IN      A       192.168.10.20
test    IN      A       192.168.10.12

Пример файла прямой зоны:

  • $TTL 604800 — время жизни (Time to Live, TTL) для всех записей зоны. Значение 604800 секунд означает, что кэшированные данные будут храниться 7 дней. По достижении установленного времени, кеширующий сервер запрашивает DNS-сервер, содержащий доменную зону, информацию о зоне. И при необходимости обновляет записи;

  • SOA (Start of Authority) — запись SOA определяет авторитетную информацию о зоне DNS;

  • ns01.example.org.— первичный DNS-сервер для этой зоны;

  • root.example.org.— адрес электронной почты администратора зоны;

  • 1; Serial — серийный номер зоны, который увеличивается при каждом изменении записи;

  • 600; Refresh — указывает подчиненным DNS-серверам как часто им обращаться, для поиска изменений к master-серверу (600 секунд);

  • 3600; Retry— интервал повторной попытки запроса изменений после неудачной попытки обновления (1 час);

  • 1w; Expire— срок жизни зоны на вторичном сервере (1 неделя). Если зона не обновляется в течение этого срока, она считается недействительной;

  • 360; Minimum TTL — минимальный TTL для записей, которые не имеют явного значения TTL (6 минут);

  • NS ns01.example.org. — первый DNS-сервер;

  • NS ns02.example.org. — второй DNS-сервер;

  • NS ns03.example.org. — третий DNS-сервер;

  • A-записи — эти записи связывают имена хостов с IP-адресами;

  • ns01 IN A 192.168.10.50— имя хоста ns01 привязано к IP-адресу 192.168.10.50;

  • ns02 IN A 192.168.10.60— имя хоста ns02 привязано к IP-адресу 192.168.10.60;

  • ns03 IN A 192.168.10.70— имя хоста ns03 привязано к IP-адресу 192.168.10.70;

  • test IN A 192.168.10.12 — тестовый хост test имеет IP-адрес 192.168.10.12.

Обратная DNS зона

$TTL    3600
@  IN      SOA     example.org. root.example.org (
                   20060204        ; Serial
                   3600            ; Refresh
                   900             ; Retry
                   3600000         ; Expire
                   3600 )          ; Minimum
@  IN      NS      localhost.
50 IN      PTR     ns01
60 IN      PTR     ns02
70 IN      PTR     ns03
20 IN      PTR     www
12 IN      PTR     test

Пример файла обратной зоны:

Запуск сервиса:

systemctl enable --now namedsystemctl status named named-checkconf -z

Для полной работоспособности на всех устройствах нужно установить в качестве dns сервера наш сервер bind:
nano /etc/resolv.conf на всех устройствах должен иметь следующий вид:

resolvectl dns ens3 192.168.0.2
Для полной работоспособности на роутерах необходимо установить ваш сервер bind в качестве DNS-сервера:
ip name-server 192.168.0.2

Tags:
Hubs:
You can’t comment this publication because its author is not yet a full member of the community. You will be able to contact the author only after he or she has been invited by someone in the community. Until then, author’s username will be hidden by an alias.