Краткая инструкция, которая описывает быструю настройку Master и Slave DNS серверов с использованием BIND в ОС Ubuntu Server 21.04.
На всех серверах сделаем следующее:
установим необходимые пакеты
# sudo apt install bind9 bind9-dnsutils
открываем файл настроек сетевого интерфейса
# sudo nano /etc/netplan/00-installer-config.yaml
и пропишем ip-адреса наших серверов: 192.168.1.51, 192.168.1.54
перезапускаем сетевые настройки для того, чтобы изменения вступили в силу
# sudo netplan generate # sudo netplan apply
192.168.1.51 и 192.168.1.54 — заданные для примера IP-адреса серверов ns1 (master) и ns2 (slave) соответственно
теперь откроем файл named.conf
# sudo nano /etc/bind/named.conf
и в нём в самом конце допишем строчку
include "/etc/bind/named.conf.zones";
затем создадим файл /etc/bind/named.conf.zones
# sudo touch /etc/bind/named.conf.zones
Переходим к настройкам на сервере ns1:
в файле /etc/bind/named.conf.options стираем строчку
dnssec-validation auto;
и на её месте напишем:
listen-on port 53 { 127.0.0.1; 192.168.1.51; }; recursion yes; dnssec-validation yes;
после этого открываем файл /etc/bind/named.conf.zones
# sudo nano /etc/bind/named.conf.zones
и в нём пропишем настройки нашей зоны localserver12.ru
zone "localserver12.ru" IN { type master; file "/var/lib/bind/master.localserver12.ru"; allow-transfer { 192.168.1.54; }; notify yes; };
далее в каталоге /var/lib/bind/ создадим файл с описанием зоны и передадим на него права пользователю root группы bind
# sudo touch /var/lib/bind/master.localserver12.ru # sudo chown -R root:bind /var/lib/bind/master.localserver12.ru
открываем этот файл
# sudo nano /var/lib/bind/master.localserver12.ru
и добавим туда описание зоны:
$TTL 3600 @ IN SOA ns1.localserver12.ru. admin.localserver12.ru. ( 20210426 ; Serial 3600 ; Refresh 900 ; Retry 3600000 ; Expire 3600 ) ; Minimum ; DNS servers @ IN NS ns1.localserver12.ru. @ IN NS ns2.localserver12.ru. ; A records www IN A 192.168.1.50 win7 IN A 192.168.1.50 ns1 IN A 192.168.1.51 ns2 IN A 192.168.1.54
после этого проверим bind на ошибки
# named-checkconf
и перезапускаем службу
# sudo systemctl restart bind9
Затем переходим к настройке сервера ns2:
в файле /etc/bind/named.conf.options стираем строчку
dnssec-validation auto;
и на её месте напишем:
listen-on port 53 { 127.0.0.1; 192.168.1.54; }; recursion yes; dnssec-validation yes;
после этого открываем файл /etc/bind/named.conf.zones
# sudo nano /etc/bind/named.conf.zones
и в нём пропишем настройки нашей зоны localserver12.ru
zone "localserver12.ru" { type slave; file "/var/lib/bind/slave.localserver12.ru"; masters { 192.168.1.51; }; allow-transfer { 192.168.1.51; }; };
после этого проверим bind на ошибки
# named-checkconf
и перезапускаем службу
# sudo systemctl restart bind9
при этом здесь файл зоны создавать не нужно — он автоматически подтянется из мастера
Проверяем работу DNS-серверов с помощью утилиты dig:
на ns1 (Master DNS) запускаем
# dig @ns2.localserver12.ru localserver12.ru axfr
ответ должен быть таким:
; <<>> DiG 9.16.8-Ubuntu <<>> @ns2.localserver12.ru localserver12.ru axfr ; (1 server found) ;; global options: +cmd localserver12.ru. 3600 IN SOA ns1.localserver12.ru. admin.localserver12.ru. 20210426 3600 900 3600000 3600 localserver12.ru. 3600 IN NS ns1.localserver12.ru. localserver12.ru. 3600 IN NS ns2.localserver12.ru. ns1.localserver12.ru. 3600 IN A 192.168.1.51 ns2.localserver12.ru. 3600 IN A 192.168.1.54 win7.localserver12.ru. 3600 IN A 192.168.1.50 www.localserver12.ru. 3600 IN A 192.168.1.50 localserver12.ru. 3600 IN SOA ns1.localserver12.ru. admin.localserver12.ru. 20210426 3600 900 3600000 3600 ;; Query time: 8 msec ;; SERVER: 192.168.1.54#53(192.168.1.54) ;; WHEN: Вт апр 27 07:54:51 UTC 2021 ;; XFR size: 8 records (messages 1, bytes 260)
на ns2 (Slave DNS) запускаем
# dig @ns1.localserver12.ru localserver12.ru axfr
ждём такого ответа:
; <<>> DiG 9.16.8-Ubuntu <<>> @ns1.localserver12.ru localserver12.ru axfr ; (1 server found) ;; global options: +cmd localserver12.ru. 3600 IN SOA ns1.localserver12.ru. admin.localserver12.ru. 20210426 3600 900 3600000 3600 localserver12.ru. 3600 IN NS ns1.localserver12.ru. localserver12.ru. 3600 IN NS ns2.localserver12.ru. ns1.localserver12.ru. 3600 IN A 192.168.1.51 ns2.localserver12.ru. 3600 IN A 192.168.1.54 win7.localserver12.ru. 3600 IN A 192.168.1.50 www.localserver12.ru. 3600 IN A 192.168.1.50 localserver12.ru. 3600 IN SOA ns1.localserver12.ru. admin.localserver12.ru. 20210426 3600 900 3600000 3600 ;; Query time: 8 msec ;; SERVER: 192.168.1.51#53(192.168.1.51) ;; WHEN: Вт апр 27 07:55:42 UTC 2021 ;; XFR size: 8 records (messages 1, bytes 260)
Если ошибок нет, значит настройка прошла успешно.
Теперь IP-адреса этих серверов можно прописывать на клиентских машинах в сети.