Рейтинг:0

Как на практике работает сервер доменных имен TLD?

флаг cn

Как именно сервер имен TLD разрешает запрос и идентифицирует авторитетный сервер имен с необходимой информацией? Хранит ли сервер имен TLD для «.com» соответствующий сервер имен для каждого веб-сайта с TLD «.com»? Разве это не огромная база данных? Или существует какой-то алгоритм, который решает, какие доменные имена назначаются каким авторитетным серверам имен, и, таким образом, запуская доменное имя с помощью алгоритма, вы можете определить правильный авторитетный сервер имен?

Извините, это кажется очень простым вопросом, но я ничего не могу найти в Интернете, я могу найти только поверхностные объяснения DNS, такие как Вот этот от CloudFlare, но ничего, что касается мельчайших подробностей.

dave_thompson_085 avatar
флаг jp
В 1980 или 1990 году да, это было бы проблематично. Сегодня вы можете получить диск размером 1e13 байт менее чем за 100 долларов США и, вероятно, менее чем за 100 байт на домен, что позволяет иметь дюжину доменов для каждого человека на Земле.
redpanda2236 avatar
флаг cn
@dave_thompson_085 хорошо, думаю, моя интуиция ошиблась, лол. Вы точно знаете, как они сопоставляют доменное имя с правильным сервером имен? Это хеш-таблица?
dave_thompson_085 avatar
флаг jp
Может быть. Вы можете посмотреть на программное обеспечение DNS-сервера с открытым исходным кодом, такое как bind и djbdns, но операторы TLD и root почти наверняка используют специальное, если не полностью специальное программное обеспечение. Учитывая их важность, могу поспорить, что существует практика, если не прямое правило, согласно которому _не_ все используют одно и то же программное обеспечение, чтобы предотвратить риск полного отказа из-за ошибки или уязвимости. (Люди в телекоммуникациях до сих пор с болью вспоминают день 32-летней давности, когда все «платные» коммутаторы AT&T неоднократно выходили из строя из-за ошибки, из-за чего их общенациональная сеть дальней связи не работала в течение нескольких часов.)
Рейтинг:2
флаг cn

Как именно сервер имен TLD разрешает запрос и идентифицирует авторитетный сервер имен с необходимой информацией?

Сервер имен TLD ничем не отличается от любого другого уполномоченного сервера имен в любом другом узле дерева DNS, что соответствует структуре и свойству протокола DNS как децентрализованной базы данных.

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

Регистрационная плоскость заключается в том, что обычно есть реестры и регистраторы. Реестр управляет TLD. Он обеспечивает работу серверов имен и получает заказы от регистраторов. У регистраторов есть конечные клиенты, которые выбирают домены и регистрируют их. Регистраторы отправляют команды реестрам, как правило, по протоколу EPP.

Таким образом, реестр поддерживает базу данных (обычно реляционную) со всеми данными, включая данные, не опубликованные в DNS, но доступные через другие протоколы, такие как whois или RDAP (например, контакты).Эта база данных используется для настройки полномочных серверов имен TLD со всеми делегированиями, т. е. NS записи.

Хранит ли сервер имен TLD для «.com» соответствующий сервер имен для каждого веб-сайта с TLD «.com»?

Да, согласно приведенному выше обсуждению.

Разве это не огромная база данных?

Для некоторых TLD, таких как .com Да, но:

  • всего несколько сотен миллионов записей, с чем базы данных могут полностью справиться, это другие случаи с гораздо большим количеством данных
  • Такой TLD является исключением, большинство TLD намного меньше; типичные нДВУ — это, например, несколько миллионов доменов

Или существует какой-то алгоритм, который решает, какие доменные имена назначаются каким авторитетным серверам имен, и, таким образом, запуская доменное имя с помощью алгоритма, вы можете определить правильный авторитетный сервер имен?

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

Извините, это кажется очень простым вопросом, но я не могу ничего найти в Интернете,

https://en.wikipedia.org/wiki/Domain_name_registry короткий, но может быть хорошим введением. Как только вы поймете, что с одной стороны (DNS) есть разрешение, а с другой — регистрация (весь реестр/регистратор), это должно помочь вам лучше понять ситуацию.

Рейтинг:1
флаг cn

Сохраняет ли сервер имен TLD для «.com» соответствующий сервер имен для каждого веб-сайта с доменом верхнего уровня «.com»?

Да. За несколькими служебными IP-адресами находится множество серверов, любой из которых может обслуживать запрос. копать -t NS ком. чтобы получить список.

Ради интереса скачал com. от ICANN. Размер этой зоны составляет 22 ГБ, сжатых — 3,9 ГБ. Большой для DNS, но маленький для современных баз данных и систем хранения. Операторы могут выбирать, какая реализация базы данных хранит данные зоны и как они реплицируются. Скорее всего, у каждого узла есть собственная копия, чтобы повысить общую доступность службы в случае простоя некоторых серверов.

Зона содержит информацию о том, какие DNS-серверы являются авторитетными для данного имени. Те, кто следит за инфраструктурным блогом Stack Exchange, возможно, помнят, что они хеджируют свои ставки на провайдеров DNS, и действительно, это все еще присутствует:

ns1.serverfault.com. 172800 в 198.252.206.80
ns3.serverfault.com. 172800 в 69.59.197.60
serverfault.com. 172800 в ns-ns-1135.awsdns-13.org.
serverfault.com. 172800 в ns ns-860.awsdns-43.net.
serverfault.com. 172800 в ns-cloud-c1.googledomains.com.
serverfault.com. 172800 в ns-cloud-c2.googledomains.com.
stackoverflowdevinsights.com. 172800 в ns1.serverfault.com.
stackoverflowdevinsights.com. 172800 в ns ns3.serverfault.com.

Смотрите также в Super User: Есть ли способ получить полный файл зоны для домена, не связываясь с его хостом?

Рейтинг:1
флаг in

Ну, они должны иметь все записи делегирования (NS) и клея (A/AAAA) для своей зоны. копать ком NS показывает, что серверов имен столько же, сколько корневых серверов:

;; РАЗДЕЛ ОТВЕТОВ:
ком. 63343 В NS i.gtld-servers.net.
ком. 63343 В NS l.gtld-servers.net.
ком. 63343 В NS f.gtld-servers.net.
ком. 63343 В NS b.gtld-servers.net.
ком. 63343 В NS k.gtld-servers.net.
ком. 63343 В NS h.gtld-servers.net.
ком. 63343 В NS j.gtld-servers.net.
ком. 63343 В NS c.gtld-servers.net.
ком. 63343 В NS d.gtld-servers.net.
ком. 63343 В NS g.gtld-servers.net.
ком. 63343 В NS, например, gtld-servers.net.
ком. 63343 В NS a.gtld-servers.net.
ком. 63343 В NS m.gtld-servers.net.

Таким образом, вы можете запросить любой из них следующим образом: копать google.com @a.gtld-servers.net. И они сообщают вам авторитетные серверы имен для запрашиваемого домена:

;; ОТДЕЛ ПОЛНОМОЧИЙ:
google.com. 172800 В NS ns2.google.com.
google.com. 172800 В NS ns1.google.com.
google.com. 172800 В NS ns3.google.com.
google.com. 172800 В NS ns4.google.com.

;; ДОПОЛНИТЕЛЬНЫЙ РАЗДЕЛ:
ns2.google.com. 172800 В АААА 2001:4860:4802:34::а
ns2.google.com. 172800 В А 216.239.34.10
ns1.google.com. 172800 В АААА 2001:4860:4802:32::а
ns1.google.com. 172800 В А 216.239.32.10
ns3.google.com. 172800 В АААА 2001:4860:4802:36::а
ns3.google.com. 172800 В А 216.239.36.10
ns4.google.com. 172800 В АААА 2001:4860:4802:38::а
ns4.google.com. 172800 В А 216.239.38.10

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.