Как создать и настроить вторичную (slave) зону в BIND сервере

Обновлено Обновлено: Опубликовано Опубликовано:

* Инструкция написана на примере операционных систем CentOS 7 и Ubuntu. Но она подходит к любому дистрибутиву Linux.

На сервере Master

Чтобы разрешить передачу зоны на вторичный сервер с первичного, необходимо на последнем (master) настроить соответствующее разрешение.

Для этого открываем конфигурационный файл с настройкой зоны.

CentOS:

vi /etc/named.conf

Ubuntu:

vi /etc/bind/named.conf.local

И добавляем allow-transfer. Получится, примерно, следующее:

zone "dmosk.ru" {
        type master;
        file "master/dmosk.ru";
        allow-transfer { 192.168.0.15; };
};

* где dmosk.ru — домен, для которого настраивается зона; 192.168.0.15 — IP-адрес вторичного сервера, на который будет разрешена зонная передача.

Применяем настройки одной из команд:

systemctl reload named

systemctl reload bind

service bind9 reload

Если используется брандмауэр iptables, создаем разрешающее правило для зонной передачи:

iptables -I INPUT 1 -p tcp -m tcp --dport 53 -m state --state NEW,ESTABLISHED -j ACCEPT

На сервере Slave

Открываем на редактирование конфигурационный файл bind.

CentOS:

vi /etc/named.conf

Ubuntu:

vi /etc/bind/named.conf.local

И дописываем туда следующее:

zone "dmosk.ru" {
        type slave;
        file "slaves/dmosk.ru";
        masters { 192.168.0.10; };
};

* где dmosk.ru — зона (домен); slave — указание, что эта зона вторичная; slave/dmosk.ru — файл с записями зоны. Стоит обратить внимание, что используется относительный путь до файла — это значит, что каталог slave должен находиться в рабочей папке bind (ее путь определяется опцией directory). Можно также прописать абсолютный путь, например, /etc/bind/slave/dmosk.ru192.168.0.10 — IP-адрес первичного сервера, с которого будут вытянуты записи для созданной зоны.

Создаем каталог для хранения вторичных зон.

CentOS:

mkdir /var/named/slaves

Ubuntu:

mkdir /var/cache/bind/slaves

* используемые в нашем примере каталоги применяются по умолчанию, но в Вашем случае они могут быть другими. Сверяйте данные по опции directory.

Чтобы настройки применились, необходимо перезапустить вторичный bind-сервер одной из команд:

systemctl reload named

systemctl reload bind

service bind9 reload

 и перечитать информацию о настроенных DNS-зонах:

rndc reload

Проверяем, что файл с записями появился в базе bind:

CentOS:

ls /var/named/slaves/

Ubuntu:

ls /var/cache/bind/slaves

* команда выведет список файлов, среди которых должен быть наш (в конкретном примере, dmosk.ru).

Чтобы проверить работоспособность вторичного сервера BIND, запускаем консоль на любом компьютере в сети и вводим команду:

nslookup dmosk.ru 192.168.0.15

* где dmosk.ru — домен, который мы создали; 192.168.0.15 — IP-адрес резервного DNS-сервера, на котором мы и создавали slave-зону (в моем примере).

# Сервера # Интернет # UNIX # Ubuntu # Linux # CentOS
Дмитрий Моск — частный мастер
Была ли полезна вам эта инструкция?

Да            Нет