Мастер DNS – Windows, Р esclaved DNS – Linux

Вопрос или проблема

Мастер DNS – Windows, Р esclaved DNS – Linux

На Windows Server 2016 работает DNS-сервер.
Я установил и настроил вспомогательный DNS-сервер на Oracle Linux 7.
На сервере Windows я включил BIND вторичные и прослушивание всех IP-адресов.

В Oracle Linux у меня есть следующие конфигурации:

named.conf

options {
    listen-on port 53 { any; };
    listen-on-v6 port 53 { ::1; };
    directory   "/var/named";
    dump-file   "/var/named/data/cache_dump.db";
    statistics-file "/var/named/data/named_stats.txt";
    memstatistics-file "/var/named/data/named_mem_stats.txt";
    allow-query     { any; };
    allow-transfer { any; };

    recursion yes;

    dnssec-enable yes;
    dnssec-validation yes;

    /* Путь к ISC DLV ключу */
    bindkeys-file "/etc/named.iscdlv.key";

    managed-keys-directory "/var/named/dynamic";

    pid-file "/run/named/named.pid";
    session-keyfile "/run/named/session.key";
};

logging {
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
};

zone "." IN {
    type hint;
    file "named.ca";
};

zone "example.local" IN {
    type slave;
    masters { 10.1.10.2; };
    allow-transfer { any; };
    allow-query { any; };
    file "slaves/example.local";
    allow-update { any; };
};

zone "0.0.10.in-addr.arpa" IN {
    type slave;
    masters { 10.1.10.2; };
    allow-query { any; };
    allow-transfer { any; };
    file "slaves/example.local";
    allow-update { any; };
};

include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";

IP-адрес Windows DNS-сервера: 10.1.10.2
IP-адрес Linux вспомогательного DNS-сервера: 10.1.10.217
Имя хоста Windows DNS-сервера: dc.example.local
Имя хоста Linux вспомогательного DNS-сервера: dc2.example.local

Я не создавал вручную файлы зон на сервере Linux. Как я читал, он получает файлы зон с Windows.
Но он не получает файлы зон.
В чем может быть причина?
ПК: nslookup dc2.example.local не возвращает ответ.

Попробуйте перезагрузить зоны со вспомогательного DNS-сервера и послать запрос AXFR на MS Master сервер.

# rndc reload

Ответ или решение

Для настройки репликации зон между мастер-DNS-сервером на Windows Server 2016 и слейв-DNS-сервером на Oracle Linux 7, необходимо учесть несколько важных моментов. Исходя из предоставленных вами настроек и описания, вот пошаговое руководство для решения проблемы, чтобы ваш слейв-сервер корректно получал зоны от мастер-сервера.

1. Проверьте настройки мастер-DNS

Убедитесь, что на мастер-сервере Windows правильно настроены параметры для передачи зон. Ваша конфигурация включает BIND secondaries и Listen to all IP addresses. Убедитесь, что:

  • На вкладке Zone Transfers для зоны example.local указаны разрешенные IP-адреса (включая IP вашего линукс-сервера, 10.1.10.217).
  • Мастера разрешают SQL-передачу запросов от слейв-серверов.

2. Проверьте параметры фаерволла

Убедитесь, что на обеих машинах нет правил брандмауэра, блокирующих порт 53:

  • На Windows проверьте настройки брандмауэра (Windows Firewall) и разрешите трафик по порту 53 (UDP и TCP).
  • На Linux используйте iptables или firewalld, чтобы убедиться, что соединения на порт 53 разрешены:
# Проверить правила iptables (если используется)
sudo iptables -L -n

# Для firewalld
sudo firewall-cmd --list-all

3. Перезагрузите службы

После внесения всех изменений не забудьте перезапустить службу BIND на слейв-сервере:

sudo systemctl restart named

4. Выполните запрос AXFR

Запросите полную передачу зон от мастер-сервера к слейв-серверу с помощью команды dig. Это позволит выявить любые ошибки, которые могут происходить во время передачи:

dig @10.1.10.2 example.local AXFR

Если что-то пойдет не так, вы получите сообщение об ошибке, которое поможет в диагностике.

5. Перезагрузите зоны на слейв-сервере

После выполнения всех проверок и изменений выполните команду перезагрузки зон на слейв-сервере:

rndc reload

6. Проверка конфигурации

Создайте файл проверки на слейв-сервере, чтобы убедиться, что зоны были загружены:

named-checkzone example.local /var/named/slaves/example.local

Если команда возвращает сообщения об ошибках, необходимо устранить их.

7. Проверьте завершение настройки

Теперь проверьте, работает ли ваш слейв-сервер, выполнив команду nslookup:

nslookup dc2.example.local

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

Заключение

Если вы следовали всем шагам, и проблема сохраняется, ознакомьтесь с логами named в Linux-сервере для анализа ошибок:

sudo tail -f /var/named/data/named.run

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

Оцените материал
Добавить комментарий

Капча загружается...