Назад | Перейти на главную страницу

Как открыть журнал отладки для BIND в Ubuntu?

У меня есть сервер BIND, работающий в Ubuntu, который не может найти www.microsoft.com или какие-либо записи в Microsoft. Все остальные домены, такие как google.com и yahoo.com, работают нормально. Я ищу несколько предложений о том, как улучшить ведение журнала, чтобы выяснить, почему у BIND возникают проблемы с этим доменом.

Я уже записываю канал запроса в default_syslog и вижу запросы, поступающие на сервер, но я не вижу результата усилий сервера BIND в попытке найти IP-адрес этих имен.

Симптомы

> ping www.microsoft.com не удается найти, указывает, что хост не найден

> dig @A.B.C.D www.microsoft.com также время ожидания, где A.B.C.D - IP-адрес этого внутреннего DNS-сервера.

другие запросы работают нормально

В настоящее время я использую db.root для корневых серверов, и в этой конфигурации у меня нет настроек пересылки. Я ожидал, что этот сервер определит корневые серверы microsoft.com, а затем сможет найти оттуда записи. Благодарим вас за любые предложения о том, как улучшить детализацию ведения журнала в BIND и где искать сообщения журнала.

Как посмотреть, что происходит:

  • Чтобы увидеть, что сервер делает в реальном времени, если у вас есть rndc настроенный запуск rndc trace x (где x уровень отладки, который вы хотите просмотреть).

  • Чтобы увидеть, что сервер делает вживую, без rndc вам нужно будет запустить сервер в режиме переднего плана named -g -d x (где x это снова уровень отладки).

  • Чтобы настроить ведение журнала в файл, откройте named.conf и отредактируйте / добавьте раздел ведения журнала, например:

    logging {
            channel default_file {
                    file "/var/log/named.log" size 10m;
                    severity info;
                    print-time yes;
                    print-severity yes;
                    print-category yes;
            };
            category default{ default_file; };
    };
    

    Обратите внимание, что это настраивает ведение журнала для уровня «информация» и выше. Это сбрасывает довольно много информации для живого сервера. Возможные значения включают «extra», «debug», «info», «error», «fatal» и «dynamic» (значение -d должно быть указано в командной строке для динамического).

Что не так с вашим сервером:

Ваш сервер возвращается к себе, пытаясь рекурсивно разрешить домен. Поскольку это происходит только для одного домена, о котором вы знаете, вероятно, проблема в вашем hosts файл или в вашем named.conf файл (вероятно, последний).

Получение request failed: duplicate query почти всегда проблема с forwarders директива, которая возвращается к серверу или что-то подобное.

Это может быть проблема с кешем. Вы пробовали очистить кеш?

rndc flush # all entries

rndc flushname microsoft.com # all entries for microsoft.com supported from bind 9.3