В последнее время я довольно долго изучал DNS и в настоящее время получил следующее сообщение об ошибке с помощью команды DIG:
ПЛОХО (ГОРИЗОНТАЛЬНО) REFERRAL
Насколько я понимаю, это вызвано делегированием поиска имени без обхода "дерева DNS". В отличие от вертикального перехода, который делегирует "дерево DNS", горизонтальный переход делегирует имена, подобные следующим:
(Выдуманный пример ответа от сервера имен зоны "google.com")
;; QUESTION SECTION:
;123.google.com. IN A
;; AUTHORITY SECTION:
a.123.google.com. 7200 IN NS ns1.321.google.com.
a.123.google.com. 7200 IN NS ns2.321.google.com.
a.123.google.com. 7200 IN NS ns3.321.google.com.
Когда вы спросите один из указанных выше серверов имен, будет возвращен следующий ответ:
;; QUESTION SECTION:
;123.google.com. IN A
;; AUTHORITY SECTION:
a.123.google.com. 7200 IN NS ns4.321.google.com.
a.123.google.com. 7200 IN NS ns5.321.google.com.
a.123.google.com. 7200 IN NS ns6.321.google.com.
Это продолжается и продолжается, не приближаясь к серверу имен, который может фактически ответить на запрос для «a.123.google.com».
Назад к мой вопрос:
Как правило, горизонтальные отсылки не допускаются или только в этом конкретном случае горизонтальные отсылки являются ПЛОХОЙ?
Горизонтальные переходы - это всегда плохо, поскольку они не приближают вас к вашему конкретному запросу:
Давайте возьмем пример www.bar.com.
Пропуская корень и TLD, мы получаем серверы имен для bar.com. Запрашивая их, мы затем получаем ссылку на foo.com
. Это бесполезно, поскольку не приблизило нас к www.bar.com.
Распространенной причиной этого является наличие делегирования для поддомена при сохранении других записей в родительской зоне.
Например:
foo.bar.com. где-то делегировано, но не bar.com. по-прежнему содержит запись MX для foo.bar.com
Дополнительную информацию см. в следующей ветке ServerFault:
BIND / DNS - dig + trace = Плохой переход и неправильный переход по горизонтали