Ошибки обратного поиска в конфигурации BIND DNS на серверах Ubuntu

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

В настоящее время я настраиваю DNS на серверах Ubuntu для задания и сталкиваюсь с проблемами обратного поиска. Ниже приведены детали из файлов конфигурации и результаты команд, которые я выполнил:

p04ldns1.pod04.lan = основной сервер [10.4.30.4]

  • Может разрешить client1.pod04.lan в 10.4.30.10
  • Может разрешить p04ldns2.pd04.lan в 10.4.30.5
  • Не может разрешить 10.4.30.10 в client1.pod04.lan
  • Не может разрешить 10.4.30.5 в p04ldns2.pd04.lan

p04ldns2.pod04.lan = ведомый сервер [10.4.30.5]

  • Может разрешить p04ldns1.pd04.lan в 10.4.30.4
  • Не может разрешить client1.pod04.lan в 10.4.30.10
  • Не может разрешить 10.4.30.4 в p04ldns1.pd04.lan
  • Не может разрешить 10.4.30.10 в client1.pod04.lan

client1.pod04.lan = клиент [10.4.30.10]

  • Может пинговать 10.4.30.4 и 10.4.30.5
  • Может выйти в интернет, используя 10.4.30.4 и 10.4.30.5 в качестве DNS-серверов

Конфигурация зоны прямого поиска на основном сервере (/etc/bind/named.conf.local)

// Зона прямого поиска
zone "pod04.lan" {
    type master; // Подтверждено как основной
    file "/etc/bind/db.pod04.lan"; // Верный путь к файлу
};

// Зона обратного поиска
zone "30.4.10.in-addr.arpa" {
    type master; // Подтверждено как основной
    file "/etc/bind/30.4.10.in-addr.arpa"; // Верный путь к файлу
};

Файл зоны для pod04.lan на основном сервере (/etc/bind/db.pod04.lan)

$TTL 604800
$ORIGIN pod04.lan.
@       IN      SOA     p04ldns1.pod04.lan. admin.pod04.lan. (
                         2023100805     ; Серийный номер
                         604800         ; Обновление
                          86400         ; Повтор
                        2419200         ; Истечение
                         604800 )       ; Время жизни негативного кэша
;
@       IN      NS      p04ldns1.pod04.lan.
@       IN      NS      p04ldns2.pod04.lan.

p04ldns1            IN    A   10.4.30.4
p04ldns2            IN    A   10.4.30.5
client1             IN    A   10.4.30.10

Файл зоны для обратного поиска на основном сервере (/etc/bind/30.4.10.in-addr.arpa)

$TTL 604800
$ORIGIN 30.4.10.in-addr.arpa.
@       IN       SOA      p04ldns1.pod04.lan. admin.pod04.lan. (
                          2023100805    ; Серийный номер
                          604800        ; Обновление
                          86400         ; Повтор
                          2419200       ; Истечение
                          604800 )      ; Время жизни негативного кэша
;
@       IN      NS      p04ldns1.pod04.lan.
@       IN      NS      p04ldns2.pod04.lan.

10      IN      PTR     client1.pod04.lan.

Файл зоны ведомого сервера
Ведомый сервер не может разрешить client1.pod04.lan в 10.4.30.10

// ЗОНА ПРЯМОГО ПОИСКА
zone "pod04.lan" {
        type slave;
        file "/var/cache/bind/db.pod04.lan";
        masters { 10.4.30.4; }; # IP-адрес P04LDNS1
};

// ЗОНА ОБРАТНОГО ПОИСКА
zone "30.4.10.in-addr.arpa" {
        type slave;
        file "/var/cache/bind/30.4.10.in-addr.arpa";
        masters { 10.4.30.4; }; # IP-адрес P04LDNS1
};

Я установил права на файл обратной зоны следующим образом:

sudo chown bind:bind /etc/bind/30.4.10.in-addr.arpa
sudo chmod 644 /etc/bind/30.4.10.in-addr.arpa

Тестовые команды и результаты

Прямой поиск:

dig @10.4.30.4 client1.pod04.lan

Результат: Успешно разрешается в 10.4.30.10.

Обратный поиск:

dig -x 10.4.30.10

Результат: NXDOMAIN, что указывает на то, что обратный поиск не разрешается.

dig -x 10.4.30.10 @10.4.30.4

Результат: Также возвращает NXDOMAIN.

sudo ufw status

Status: active

To                         Action      From
--                         ------      ----
22/tcp                     ALLOW       Anywhere
53                         ALLOW       Anywhere
22/tcp (v6)                ALLOW       Anywhere (v6)
53 (v6)                    ALLOW       Anywhere (v6)

Пробовал sudo systemctl restart bind9 много раз на основных и ведомых DNS-серверах

dig @10.4.30.4 pod04.lan AXFR на ВЕДОМОМ

; <<>> DiG 9.18.28-0ubuntu0.24.04.1-Ubuntu <<>> @10.4.30.4 pod04.lan AXFR
; (1 сервер найден)
;; глобальные опции: +cmd
pod04.lan.              604800  IN      SOA     p04ldns1.pod04.lan. admin.pod04.lan. 2023100805 604800 86400 2419200 604800
pod04.lan.              604800  IN      NS      p04ldns1.pod04.lan.
pod04.lan.              604800  IN      NS      p04ldns2.pod04.lan.
client1.pod04.lan.      604800  IN      A       10.4.30.10
p04ldns1.pod04.lan.     604800  IN      A       10.4.30.4
p04ldns2.pod04.lan.     604800  IN      A       10.4.30.5
pod04.lan.              604800  IN      SOA     p04ldns1.pod04.lan. admin.pod04.lan. 2023100805 60480

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

Проблемы с Обратными Поисками в Настройке DNS BIND на Серверах Ubuntu

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

Описание Проблемы

Согласно вашему описанию, сервер master (p04ldns1.pod04.lan, IP-адрес 10.4.30.4) успешно разрешает имена, такие как client1.pod04.lan, в адреса (впереди), но не может выполнить обратное разрешение, то есть получить имя client1.pod04.lan из IP-адреса 10.4.30.10. То же самое происходит и на сервере-слейве (p04ldns2.pod04.lan, IP-адрес 10.4.30.5).

Анализ Настроек

Вы привели конфигурацию, которая выглядит следующим образом:

  1. Файлы конфигурации зоны:

    • db.pod04.lan (для прямого поиска)
    • 30.4.10.in-addr.arpa (для обратного поиска)
  2. Содержимое конфигурации:
    Ваша настройка зон в файле named.conf.local соответствует принципам BIND. Однако, при обратном поиске, конфигурация зоны имеет ряд требований, которые необходимо проверить.

Основные Шаги по Устранению Проблем

  1. Проверка файла зоны обратного поиска:
    Убедитесь, что файл для зоны обратного поиска (/etc/bind/30.4.10.in-addr.arpa) корректен. В логах или выводах dig вы наблюдали, что имена PTR записаны верно. Вы указали только одну запись PTR для IP-адреса 10.4.30.10. Проверьте следующие моменты:

    10      IN      PTR     client1.pod04.lan.

    Убедитесь, что значение записи PTR корректно и что у вас нет лишних пробелов или опечаток.

  2. Проверка разрешений на файлы:
    Вы указали, что установили права на файл зоны так:

    sudo chown bind:bind /etc/bind/30.4.10.in-addr.arpa
    sudo chmod 644 /etc/bind/30.4.10.in-addr.arpa

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

  3. Проверка логов BIND:
    Логи BIND могут содержать информацию о проблемах при загрузке зон или при запросах. Проверьте логи, обычно доступные по пути /var/log/syslog или /var/log/named/named.log, на наличие ошибок.

  4. Проверка конфигурационного файла named.conf.options:
    Убедитесь, что у вас правильно настроены параметры listen и разрешения:

    options {
       directory "/var/cache/bind";
    
       // More options
       allow-query { any; };  // Убедитесь, что разрешены запросы
       recursion no;          // Для сервера без рекурсии
    };
  5. Перезапуск службы BIND:
    После внесения изменений в конфигурацию, не забудьте перезапустить BIND:

    sudo systemctl restart bind9
  6. Проверка кэша на слейве:
    Убедитесь, что слейв-сервер может успешно синхронизировать данные с мастером:

    dig @10.4.30.5 client1.pod04.lan
    dig @10.4.30.5 -x 10.4.30.10

Рекомендации по Тестированию

Проверьте исправления с помощью команды dig:

  • Для прямого поиска:
    dig @10.4.30.4 client1.pod04.lan
  • Для обратного поиска:
    dig -x 10.4.30.10 @10.4.30.4

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

Заключение

Проблемы с обратными поисками в BIND DNS могут возникать из-за неправильной конфигурации зон, неверных прав на файлы или сетевых проблем. Следуя инструкциям, приведенным выше, вы сможете идентифицировать и устранить ошибки. Настройки DNS — критически важная часть сети, и их правильная конфигурация обеспечит надежную работу вашей сети.

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

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