13

Я знаю, что доменное имя разрешается DNS-сервером в IP-адрес, который затем используется для достижения запрошенного сервера. Я немного смущен тем, что не знаю некоторых деталей того, как это работает.

  • Чтобы мой компьютер попросил службу DNS разрешить домен, мой компьютер должен знать DNS-сервер. Я никогда не говорил своему компьютеру о каких-либо DNS-серверах, так как он узнает, какой DNS-сервер он должен использовать? Это провайдер как-то передает эту информацию на мой компьютер?

  • Кстати, где расположены эти DNS-серверы? Есть ли у моего интернет-провайдера серверы DNS, которые используются всеми его (интернет-провайдерами) клиентами?

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

  • Существует ли какой-либо центральный объект / реестр / ..., который передает произошедшие изменения DNS-сервера?

  • Если я где-то заказываю доменное имя, продавец должен установить связь между IP-адресом и доменным именем, которое он мне продал. Как все DNS-серверы обновляются, чтобы узнать об этой ссылке? Другими словами, какие действия предпримет продавец, чтобы сообщить «Интернету», на что сейчас указывает этот домен?

Я знаю, что это похоже на кучу вопросов, но я думаю, что это просто разные аспекты одной и той же истории. Может кто-нибудь сказать мне, как все это работает вместе?

2 ответа2

14

На вашем компьютере есть список DNS-серверов, которые он может запросить для получения дополнительной информации. В системах Unix или Linux это хранится в /etc/resolv.conf . В Windows это настраивается в настройках вашей сети. Часто ваш DNS-сервер будет предоставляться вашим DHCP-сервером, возможно, наряду с другими настройками, такими как домен по умолчанию, прокси-серверы и т.д.

Расположение используемого вами DNS-сервера не имеет большого значения. Если у вашего компьютера есть IP-адрес и рабочий маршрут по умолчанию (то есть вы можете ping DNS-сервер), вы сможете выполнять DNS-запросы.

DNS-серверам не обязательно знать "все" домены. Им нужно только знать, кто является "авторитетным", что он узнает из набора "корневых" серверов. Каждый DNS-сервер имеет список "корневых" серверов, и этот список меняется нечасто. На одном из моих DNS-серверов настроено 18 корневых серверов, и эта конфигурация появилась, когда я установил DNS-сервер два года назад, и если список корневых серверов изменился с тех пор, достаточно их доступно, чего у меня нет заметил это.

Мой DNS-сервер, когда его просят разрешить домен, который он не знает, отправляет запрос корневому серверу, чтобы выяснить, какой другой DNS-сервер является полномочным для домена. Ответ, который он получает, может содержать дополнительные записи "NS" и помечаться как недоверенный, и в этом случае мой DNS-сервер знает, что он должен "следовать по цепочке" и сделать новый запрос к новому серверу. В конце концов, он находит DNS-сервер, который предоставляет достоверную информацию, и можно выполнять запросы, которые не являются просто записями NS. A (адрес) и MX (обмен почтой), конечно, два наиболее распространенных.

Каждый TLD (домен верхнего уровня), такой как COM, NET, ORG, CA, UK и т.д., Поддерживает свой собственный реестр поддоменов. ("Субдомен" - это любой домен в другом домене, поэтому «example.com» - это субдомен в "com", а "com" - это даже субдомен в «.», "Корне".) Правила для каждого реестра применяются только к TLD, который он администрирует, т. Е. Для каждого TLD с кодом страны существует совершенно другой набор критериев, а "общие" TLD администрируются разными организациями с разными политиками. Но все они поддерживают DNS-серверы для своего TLD, что из командной строки можно увидеть с помощью основных инструментов DNS-запросов:

[ghoti@pc ~]$ host -t ns ca.
ca name server c.ca-servers.ca.
ca name server e.ca-servers.ca.
ca name server z.ca-servers.ca.
ca name server a.ca-servers.ca.
ca name server f.ca-servers.ca.
ca name server sns-pb.isc.org.
ca name server j.ca-servers.ca.
ca name server k.ca-servers.ca.
ca name server tld.isc-sns.net.
ca name server l.ca-servers.ca.
[ghoti@pc ~]$ host -t ns info
info name server c0.info.afilias-nst.info.
info name server d0.info.afilias-nst.org.
info name server b2.info.afilias-nst.org.
info name server b0.info.afilias-nst.org.
info name server a2.info.afilias-nst.info.
info name server a0.info.afilias-nst.info.
[ghoti@pc ~]$ 

Когда вы покупаете домен у регистратора (из которых их много), этот регистратор передает информацию о домене в реестр (из которых только один на TLD). Каждый реестр несет ответственность за ведение списка зарегистрированных доменов в своем ДВУ и обслуживание DNS-серверов, которые предоставляют эту информацию другим серверам.

-1

Работа DNS-сервера в качестве протокола - это набор правил для обмена данными в Интернете в частной сети, например, протокол TCP/IP. Это просто превращает удобный домен в интернет-протокол. Это может быть любое доменное имя, купленное владельцем сайта у любого надежного поставщика домена, такого как domainia или другое. Давайте возьмем пример домена как «myweb.com», который, в свою очередь, будет преобразован в IP, например, 71.12.252.1, который будет использоваться для распознавания компьютера по сети.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .