Dig +trace не отображает всю цепочку делегирования

Dig +trace не отображает всю цепочку делегирования

Когда я отслеживаю DNS-поиск google.com, например, dig отображает только запрос к корневому серверу, а затем переходит сразу к серверам домена 2-го уровня, пропуская домен верхнего уровня. Другими словами, он идет от a.root-servers.net к ns1.google.com. Как вы можете видеть на этой картинке А как насчет сервера TLD [ah].gtld-servers.net, который должен был быть между ними? Почему он не отображается в результатах? То же самое происходит и с другими именами хостов. Например, gaia.cs.umass.edu. Картина Он идет от корневого сервера к ns[1-3].umass.edu. Где находятся все серверы .edu TLD, такие как a.edu-servers.net?

решение1

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

У вас есть какая-то форма прозрачного "проксирования"? То есть, запрос к 199.7.91.13(одному из корневых серверов, как показано в одном из ваших примеров) действительно отправляется на этот адрес или перенаправляется куда-то еще (возможно, какой-то локальный рекурсор)?

Одна из гипотез заключается в том, что весь трафик DNS отправляется на рекурсор, что будет отображено в полном выводе (вы не получите авторитетных ответов... т. е. никакого aaфлага).

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

dig +trace +all example.com

Это будет иметь полный вывод для каждого шага. Посмотрите на детали ответов, является ли ответ от корневого сервера (как указано SERVER: ...в нижней части каждого ответа) на самом деле авторитетным ответом?


Запросы, подобные этим, также могут помочь выявить, происходит ли что-то странное. Сравните с тем, что отвечает настоящий `199.7.91.13` (обратите внимание, что это не один сервер, поэтому ответы не обязательно будут последовательными, но это даст вам хорошее представление о том, чего ожидать), как это наблюдалось при заведомо хорошем подключении к Интернету:
dig @199.7.91.13 version.bind CH TXT +norec

(Может ответить строкой программного обеспечения + версии)

dig @199.7.91.13 hostname.bind CH TXT +norec

(Может ответить именем хоста)

dig @199.7.91.13 id.server CH TXT +norec

(Может ответить идентификатором сервера)

Связанный контент