Корневые подсказки в Ubuntu

Я проверил, что/etc/bind/db.root текстовый файл и весь корневой дюйм/с сервера имен являются текущими (я проверил дюйм/с один за другим). Таким образом, BIND9 читает этот файл и знает, как найти корневые серверы.

Вывод dig . ns команда показывает мне это. Почему я не вижу в выводе фактических IP-адресов? Это нормально?

;; ANSWER SECTION:
. 13309 IN NS i.root-servers.net.
. 13309 IN NS e.root-servers.net.
. 13309 IN NS g.root-servers.net.
. 13309 IN NS d.root-servers.net.
. 13309 IN NS b.root-servers.net.
. 13309 IN NS a.root-servers.net.
. 13309 IN NS m.root-servers.net.
. 13309 IN NS l.root-servers.net.
. 13309 IN NS k.root-servers.net.
. 13309 IN NS j.root-servers.net.
. 13309 IN NS f.root-servers.net.
. 13309 IN NS c.root-servers.net.
. 13309 IN NS h.root-servers.net.

Затем, почему некоторые люди включают это в свои конфигурационные файлы?

zone "." {
  type hint;
  file "root.hints";
}; 

ИЛИ:

zone "." {
  type hint;
  file "db.root";
}; 
-6
задан 26 October 2015 в 06:16
2 ответа

Вы не видите IP-адреса в разделе ответов вашей команды dig , потому что IP-адреса корневых серверов не являются частью авторитетного ответа на предоставленный вами запрос. Если вы зададите один из корневых серверов тот же вопрос, вы получите ответ, включающий IP-адреса корневых серверов в «дополнительном» разделе ответа, но это потому, что эта информация: in bailiwick "по этому вопросу. Когда вы запрашиваете эту информацию у своего локального рекурсивного преобразователя, она выходит из-под контроля, и поэтому вы не получаете эту информацию.

Что касается того, почему люди включают файл корневых подсказок, это потому, что без этого DNS-сервер не знаю, с чего начать поиск. Поскольку это зона типа «подсказка», ее содержимое никогда не используется для ответа на запрос, а просто для того, чтобы предоставить преобразователю некоторую внутреннюю информацию для «начальной загрузки». Как только от самих корневых серверов будет получена более свежая информация, распознаватель забывает, что было в зоне подсказок, и вместо этого использует обновленную информацию.

5
ответ дан 5 December 2019 в 22:20

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

При запуске BIND посылает "прайминг-запрос" серверам имён корней, чтобы заменить загруженные корневые подсказки текущим списком (и попробует другие серверы имён корней, если выбранный не ответит).

Серверы имён корней возвращают список IP-адресов, потому что список является необходимым "клеем" для этого запроса. Некоторые рекурсивные серверы могут возвращать его, другие нет. [Я только что проверил, и один из моих возвращает, а другой нет - я еще не выяснил почему]

.
1
ответ дан 5 December 2019 в 22:20

Теги

Похожие вопросы