Почему невозможно сделать запрос напрямую из DNS на уровне страны?

Я попытался сделать запрос трассировки DNS (на примере сайта Оксфорда www.ox.ac.uk ), начиная из DNS Google 8.8.8.8 . Я успешно получил результат, и маршрут проходил через DNS на уровне страны nsa.nic.uk .

Однако, когда я попытался напрямую спросить nsa.nic.uk , Маршрут не показан. Это нормально и почему не показывает результат?

Заранее спасибо!

Команда 1 (запрашивает DNS в Google): -

$ dig + trace www.ox.ac.uk @ 8.8.8.8

Результат команды 1 (успешно получить маршрут): -

8.8.8.8 (Google DNS)

-> 192.203.230.10 ( e.root-servers. net )

-> 156.154.100.3 ( nsa.nic. uk )

-> 193.62.157.66 ( ns4.ja.net )

-> 193.63.105.17 ( ns2.ja.net )

-> 129.67.242.155 ( www.ox.ac.uk )

Команда 2 (запрос nsa. nic.uk напрямую): -

$ dig + trace www.ox.ac.uk @ 156.154.100.3

Результат команды 2 (нет маршрута): -

Получено 28 байтов из 156.154. 100.3 # 53 (156.154.100.3) через 79 мс

0
задан 6 April 2018 в 07:56
1 ответ

Да, это нормально.

Google DNS 8.8.8.8 - это «рекурсивный» DNS, что означает, что он будет разрешать любые домены за вас (путем запроса последовательных полномочных DNS-серверов для каждого компонентов домена, начиная с корневого и заканчивая компонентом www.)

DNS страны nsa.nic.uk является официальным DNS для «uk». но он не принимает рекурсивные запросы.

Если вы выполните команду «dig» без + trace, вы увидите, что он что-то ответит, но это только следующий уровень дерева:

$ dig www.ox.ac.uk @156.154.100.3
;; AUTHORITY SECTION:
ac.uk.          172800  IN  NS  ns3.ja.net.
ac.uk.          172800  IN  NS  ns4.ja.net.
ac.uk.          172800  IN  NS  ns2.ja.net.
ac.uk.          172800  IN  NS  ns1.surfnet.nl.
ac.uk.          172800  IN  NS  dns-3.dfn.de.
ac.uk.          172800  IN  NS  ns0.ja.net.
ac.uk.          172800  IN  NS  auth03.ns.uu.net.

Если вы перейдете к на следующем шаге и спросите один из них для домена, вы получите следующий шаг:

$ dig www.ox.ac.uk @ns0.ja.net
;; AUTHORITY SECTION:
ox.ac.uk.       86400   IN  NS  dns1.ox.ac.uk.
ox.ac.uk.       86400   IN  NS  dns2.ox.ac.uk.
ox.ac.uk.       86400   IN  NS  dns0.ox.ac.uk.
ox.ac.uk.       86400   IN  NS  ns2.ja.net.

Когда вы запрашиваете 8.8.8.8, он выполняет все шаги разрешения за вас ... А когда вы выполняете + trace, он также покажет вам отдельные шаги ...

1
ответ дан 4 December 2019 в 15:59

Теги

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