Меню

Bind настройка вторичного dns сервера

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

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

На сервере Master

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

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

И добавляем 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, создаем разрешающее правило для зонной передачи:

На сервере Slave

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

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

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.ru; 192.168.0.10 — IP-адрес первичного сервера, с которого будут вытянуты записи для созданной зоны.

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

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

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

systemctl reload named

systemctl reload bind

service bind9 reload

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

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

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

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

Источник

Установка и настройка DNS-сервера BIND в Linux

BIND – наиболее распространенное open-source приложение, в котором реализованы протоколы DNS, предоставляющие возможность преобразования доменных имен в IP-адреса и наоборот.

Данная статья представляет собой руководство по быстрой настройке DNS-сервера в Linux при помощи BIND. Мы не будем подробно разбирать, что такое система DNS и как она работает, а сосредоточимся на примере настройки своей зоны и файла конфигурации для домена/узла с поддержкой сервисов www и электронной почты.

В нашем примере мы будем использовать следующие параметры:
IP-адрес, на котором будет установлен сервер имен: 172.31.0.122
имя домена/узла: itproffi.ru
авторитативные сервера имен для зоны itproffi.ru: ns1.itproffi.ru (172.31.1.10) и ns2. itproffi.ru (172.31.1.11)
службы www и электронной почты для itproffi.ru будут использовать адрес 172.31.1.10

Читайте также:  Проблемы настройки роутера d link dir 320

Установка сервера bind

Установка bind очень проста – нужно воспользоваться менеджером пакетов. В Debian и Ubuntu выполните следующую команду:

В CentOS или Fedora:

Пакет dnsutils необязателен для запуска сервера bind, но для тестирования конфигурации мы будем пользоваться командой dig из этого пакета.

Создание файла зоны DNS

Директория /etc/bind/zones/master будет содержать файл зоны для домена itproffi.ru. При желании можно использовать другую директорию. Файл зоны db.itproffi.ru будет содержать запись DNS, которая поможет серверу имен установить соответствие полного доменного имени IP-адресу. Создайте этот файл со следующим содержимым:

Рассмотрим ключевые строки этого файла:

Настройка обратной зоны

На данном этапе DNS-сервер bind может выдать IP-адрес, связанный с узлом itproffi.ru. Теперь нам нужно научить наш сервер имен обратному процессу, то есть устанавливать соответствие имени IP-адресу. Для этого создадим еще один файл db.172.31.1 со следующим содержимым:

Запись PTR: DNS-запись, используемая для определения соответствия IP-адреса имени узла.

Настройка файла конфигурации bind

На данный момент у нас должно быть два файла:

Последний момент перед проверкой конфигурации – внести в файл named.conf.options IP-адрес стабильного DNS-сервера. Он будет использоваться, если локальный DNS-сервер не будет знать ответ на запрос разрешения имени. Часто этот адрес предоставляется интернет-провайдером, но если вы поклонник Google, можно указать адрес 8.8.8.8 или 8.8.4.4.

Замените следующий блок текста в файле named.conf.options:

на блок текста с адресом стабильного DNS-сервера

Если вы планируйте что к вашему серверу будут подключаться другие компьютеры, то нужно разрешить в опциях внешние подключения. Для этого в основном файле конфигурации, в секции options добавьте или замените следующие правила

А лучше, для безопасности вместо any пропишите ваши сети с которых разрешено подключение

Если этого не сделать, то при попытке обращения к серверу с другого компьютера вы получите ошибку

Проверка файлов зоны и конфигурации

Прежде чем попытаться запустить сервер имен с новой зоной и конфигурацией, можно воспользоваться некоторыми инструментами, чтобы проверить, что конфигурация корректна и не содержит ошибок.

Для проверки файлов конфигурации выполните следующую команду:

С этой командой работает простое правило: отсутствие результата – это хороший результат. Если команда ничего не возвращает, значит ошибок в ваших файлах конфигурации не обнаружено.

Для проверки файлов зоны DNS можно воспользоваться командой named-checkzone:

Проверка обратной зоны

Запуск и перезапуск сервера bind

Теперь мы можем запускать сервер bind:

Если сервер уже был запущен, его можно перезапустить командой restart:

Для того что бы перечитать конфигурацию не перезапуская сервер, используйте команду

Тестирование сервера bind

Для тестирования новой конфигурации сервера имен bind нам пригодится команда dig из пакета dnsutils. Эту команду можно запустить на любом компьютере с сетевым доступом к вашему DNS-серверу, но лучше всего начать тестирование с локального узла. В рассматриваемом нами примере IP-адрес сервера имен 172.31.0.122. Сначала проверим прямое разрешение имени (получение IP-адреса по доменному имени):

Читайте также:  Глазов нет настройка интернета

dig @172.31.0.122 www.itproffi.ru

Теперь проверим обратную зону:

Если вы получили аналогичные результаты, то зона DNS настроена правильно. Вместо команды dig для тестирования можно также использовать команду nslookup.

nslookup 172.31.1.10 172.31.0.122

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Источник

Настройка Split DNS на одном сервере Bind

В двух словах, Split DNS (или split-horizon, или split-brain) — это конфигурация, позволяющая отдавать разные записи зон DNS в зависимости от подсети источника запроса. Ее можно реализовать с применением нескольких разных серверов DNS, однако, Bind позволяет сделать нужную нам настройку на одном единственном сервере с помощью view. В данной инструкции мы рассмотрим пример настройки зоны dmosk.ru в 3-х направлениях. Команды будут применимы для Linux CentOS (Red Hat) и Ubuntu (Debian).

Настройка Bind

Первым делом настроим view. Открываем конфигурационный файл. В зависимости от типа операционной системы, его местоположение будет разным.

а) в CentOS / Red Hat:

б) в Ubuntu / Debian:

* в вашей инфраструктуре для описания зон могут использоваться другие файлы. Стоит это учитывать при настройке view.

Пример конфигурации для зон в 3-х представлениях — 2 внутренние сети и все остальные:

* для удобства восприятия, разные блоки конфигурации отмечены разными цветами. Рассмотрим их подробнее:

Особенности настройки

Мы создали конфигурацию для нашего сервера DNS. Давайте попробуем разобраться, какие три нюанса нужно учитывать.

1. Any должен быть внизу.

Наши блоки view читаются системой сверху вниз. Если сервер DNS при поиске нужной зоны натыкается на подходящий вариант, он использует его. Таким образом, если view с match-clients < "any"; >; поместить в самый верх, будет использоваться только этот блок, а другие так и не задействуются.

2. Настройка зон внутри view.

Внутри view мы можем описывать зоны по-разному. Это могут быть различные настройки или разное количество зон, например, для одного из представлений мы можем создать только одну зону, когда в остальных их может быть больше. Другими словами, view не обязаны зеркалировать друг друга.

3. Вне view не должно быть зон.

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

Создание зон

В нашей конфигурации мы описали зону dmosk.ru в трех view. Соответственно, нам нужно создать 3 файла. В зависимости от типа операционной системы, их местоположение будет различаться.

а) CentOS / Red Hat:

б) Ubuntu / Debian:

Читайте также:  Сброс всех настроек телевизора самсунг смарт

* если мы еще не создавали зоны, то создаем данные каталоги.

Теперь можно создавать сами файлы для зон.

а) CentOS / Red Hat:

б) Ubuntu / Debian:

Пример файла с минимально необходимым набором записей:

dmosk.ru. IN SOA ns1.dmosk.ru. admin.dmosk.ru. (
2020120401 ; Serial
10800 ; Refresh
3600 ; Retry
604800 ; Expire
604800 ; Negative Cache TTL
)

@ IN A 192.168.0.20
ns1 IN A 192.168.0.2

* это файл для зоны dmosk.ru во view «internal-01». Он будет возвращать IP для записи 192.168.0.20. Предполагается, что адрес DNS-сервера в данном сетевом сегменте 192.168.0.2.

Создаем описание для зоны в следующем view.

а) CentOS / Red Hat:

б) Ubuntu / Debian:

dmosk.ru. IN SOA ns1.dmosk.ru. admin.dmosk.ru. (
2020120401 ; Serial
10800 ; Refresh
3600 ; Retry
604800 ; Expire
604800 ; Negative Cache TTL
)

@ IN A 192.168.1.20
ns1 IN A 192.168.1.2

* файл для зоны во view «internal-02». Он будет возвращать IP для записи 192.168.1.20. Предполагается, что адрес DNS-сервера в данном сетевом сегменте 192.168.1.2.

Наконец, создаем последний файл.

а) CentOS / Red Hat:

б) Ubuntu / Debian:

dmosk.ru. IN SOA ns1.dmosk.ru. admin.dmosk.ru. (
2020120401 ; Serial
10800 ; Refresh
3600 ; Retry
604800 ; Expire
604800 ; Negative Cache TTL
)

@ IN A 92.53.123.166
ns1 IN A 92.53.123.165

* файл для зоны во view «external». Он будет возвращать IP для записи 92.53.123.166. Предполагается, что адрес DNS-сервера в данном сетевом сегменте 92.53.123.165.

Проверка

Настройки завершены. Чтобы убедиться в их корректности, первым делом, проверяем конфигурационный файл командой:

* команда должна вернуть пустую строку.

После проверяем корректность настройки зон:

Команда должна вернуть что-то на подобие:

zone dmosk.ru/IN: loaded serial 2020120401
zone dmosk.ru/IN: loaded serial 2020120401
zone dmosk.ru/IN: loaded serial 2020120401

* в данном примере для зоны dmosk.ru проверены все файлы. Они корректны.

Теперь можно перезапустить сервер DNS.

а) CentOS / Red Hat:

systemctl restart named

б) Ubuntu / Debian:

systemctl restart bind9

Переходим на клиентский компьютер в первом сетевом сегменте (192.168.0.0/24). Для проверки работы нашего сервера вводим команду (на Linux или Windows клиенте):

nslookup dmosk.ru 192.168.0.2

Мы должны увидеть IP из нашей зоны во view internal-01:

Server: 192.168.0.2
Address: 192.168.0.2#53

Name: dmosk.ru
Address: 192.168.0.20

Переходим на другой компьютер в сетевом сегменте 192.168.1.0/24. Вводим:

nslookup dmosk.ru 192.168.1.2

В моем случае был получен уже другой ответ:

Server: 192.168.1.2
Address: 192.168.1.2#53

Name: dmosk.ru
Address: 192.168.1.20

Выполняем команду с компьютера вне диапазонов 192.168.0.0/24 или 192.168.1.0/24:

nslookup dmosk.ru 92.53.123.165

Server: 92.53.123.165
Address: 92.53.123.165#53

Name: dmosk.ru
Address: 92.53.123.166

Мы настроили Split DNS на Linux сервере с Bind.

Альтернативы

Немного слов о других реализациях, которые позволят развернуть Split DNS на едином устройстве/сервере.

Наверняка, есть и другие реализации, которые позволят настроить сервер DNS с разделяемыми ответами для одних и тех же зон.

Читайте также

Вам могут быть полезны следующие инструкции про DNS:

Источник

Adblock
detector