Я использовал эту команду, чтобы проверить, правильно ли я все настроил с поставщиком DNS:
host hostname.example.com ns1.example-nameserver.com
Насколько я могу сказать, это просит ns1.example-nameserver.com
посмотреть hostname.example.com
и сообщает ответ. Я получал ответ "не найден хозяин", поэтому подумал, что сделал это неправильно. Однако, без указания их имя-сервера (что позволяет имя-сервера моего провайдера , чтобы посмотреть его) , я получил правильный ответ ( hostname
является CNAME
ли это имеет значение). Я не мог понять это, поэтому я искал вокруг и нашел dig
команду:
dig @ns1.example-nameserver.com hostname.example.com
Насколько я могу судить, это делает то же самое, что и host
команда - просит определенный сервер имен найти хост. Поэтому я прихожу к выводу, что они должны каким-то образом делать это по-другому, и что кэширующие серверы имен должны использовать тот же метод, что и dig
.
Мой вывод либо правильный, либо неправильный, если он правильный:
В чем разница между этими двумя методами поиска?
Если это не так:
Каковы мои недоразумения о DNS и host
и dig
команды , которые привели меня к такому выводу?
Пример вывода:
$ host cardiff.tzmchapters.org ns1.livedns.co.uk
Using domain server:
Name: ns1.livedns.co.uk
Address: 213.171.192.250#53
Aliases:
Host cardiff.tzmchapters.org not found: 3(NXDOMAIN)
$ dig @ns1.livedns.co.uk cardiff.tzmchapters.org
; <<>> DiG 9.8.3-P1 <<>> @ns1.livedns.co.uk cardiff.tzmchapters.org
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 23620
;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 0
;; WARNING: recursion requested but not available
;; QUESTION SECTION:
;cardiff.tzmchapters.org. IN A
;; ANSWER SECTION:
cardiff.tzmchapters.org. 3600 IN CNAME ghs.google.com.
;; AUTHORITY SECTION:
google.com. 3600 IN SOA ns1.livedns.co.uk. admin.google.com. 1354213742 10800 3600 604800 3600
;; Query time: 27 msec
;; SERVER: 213.171.192.250#53(213.171.192.250)
;; WHEN: Mon Apr 22 23:47:05 2013
;; MSG SIZE rcvd: 128
источник
dig
иhost
отчетNXDOMAIN
. С помощьюdig
вы можете увидеть это в заголовке (5-я непустая строка вывода), и сhost
этим это более очевидно.NXDOMAIN
означает, что домен не существует. И все жеCNAME
возвращается в разделе ответов! Я верю, что это ошибка в DNS-сервере!dig
иhost
тот же запрос, получают ли тот же самый ответный пакет (не считая отметок времени), но интерпретируют ли они его по-разному? Есть лиhost
под залог, как только он видитNXDOMAIN
?Ответы:
host
,dig
Иnslookup
все разделяют большинство той же функциональности. В случае, о котором вы спрашиваете (задаете конкретный вопрос DNS конкретному серверу имен),dig
иhost
(и действительноnslookup
) ведете себя точно так же.Для устранения неполадок DNS
dig
предпочтительнее, потому что его выходной формат является более «сырым»: в его выводе он непосредственно показывает содержимое всех 4 полей в ответе DNS: вопрос, ответ, полномочия и дополнительные разделы (плюс флаги в заголовке) , а также у него есть больше вариантов.host
с другой стороны, имеет более удобный для пользователя формат вывода.Если вам не нужен параметр, который есть у одной из команд, а у других нет, или часть информации, которую одна из них выводит, а другие нет, то это сводится к вопросу предпочтения.
источник
host
но правильный ответ при использованииdig
? Даже если сервер настроен с использованием определенного параметра (по выбору или случайно), чтобы вызвать это, он должен иметь возможность дифференцировать запросы.dig
дали вам реальный ответ, а не запись в дополнительном или авторитетном разделе? Как предполагает Ренан , это может помочь показать результат.host
работает нормально. Пожалуйста, попробуйте сами и дайте мне знать результаты.dig
запрос другой способ, как сервер имен?Если вы используете имя хоста, не являющееся полным доменным именем, результаты могут отличаться, потому что
host
будут использовать поисковые доменыresolv.conf
, аdig
не по умолчанию.Вы должны использовать
+search
опцию, если вы хотитеdig
использоватьresolv.conf
(или добавить его~/.digrc
).Например:
источник