Назад | Перейти на главную страницу

Почему невозможно сделать запрос напрямую из 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 (нет маршрута): -

Received 28 bytes from 156.154.100.3#53(156.154.100.3) in 79 ms

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

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

DNS страны nsa.nic.uk авторитетный DNS для "uk." но он не принимает рекурсивные запросы.

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

$ 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, он также покажет вам отдельные шаги ...