Рейтинг:2

Все ли домены технически заканчиваются на «.»?

флаг ao
abc

Насколько я понимаю, TLD — это поддомены корневого домена, который представлен знаком «.».

Таким образом, «google.com» в более конкретном смысле должен быть «google.com».

При каких сценариях вы увидите домен, оканчивающийся на «.» как "google.com"? Я видел это раньше, но ничего не думал об этом в то время.

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

Все ли домены технически заканчиваются на «.»?

Да, если вы посмотрите на основные RFC, связанные с DNS, потому что любое имя там передается с конечным байтом значения 0, который кодирует корень, также известный как конечная точка в формате «представления».

См. раздел 3.1.5 RFC 1035:

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

Вот почему при использовании копать землю или записывая файлы зон, вы видите, что имена заканчиваются точкой в ​​конце, чтобы устранить любую двусмысленность.

Теперь все зависит от контекста. В URL-адресах вы пишете имена хостов без точки в конце, и это работает, потому что подразумевается, что они абсолютны.

Вы можете проконсультироваться RFC 8499 который теперь является стандартным справочником для всего, что связано с терминологией DNS. В нем говорится следующее:

      Формат представления имен в глобальной DNS представляет собой список.
     меток, упорядоченных по убыванию расстояния от корня, закодированных
     как ASCII, с "." символ между каждой меткой. В
     формате представления, полное доменное имя включает
     корневая метка и соответствующая разделительная точка. Например, в
     формат представления, полное доменное имя с двумя
     некорневые метки всегда отображаются как «example.tld». вместо
     "пример.tld". [RFC1035] определяет метод отображения октетов.
     которые не отображаются в ASCII.

     Общий формат отображения используется в приложениях и бесплатных
     текст. Это то же самое, что и формат презентации, но показывающий
     корневая метка и "." прежде чем это необязательно и редко
     сделано. Например, в обычном формате отображения полностью квалифицированный
     доменное имя с двумя некорневыми метками обычно отображается как
     «example.tld» вместо «example.tld.». Имена в общем
     формат отображения обычно пишут так, что
     направленность системы письма представляет метки по
     уменьшающееся расстояние от корня (поэтому и в английском, и в
     Язык программирования C метка корневого домена или домена верхнего уровня (TLD)
     в упорядоченном списке самый правый; но на арабском может быть
     самый левый, в зависимости от местных правил).

А позже определяется полное доменное имя и подробно рассказывается о реальной проблеме, связанной с контекстом:

 Полное доменное имя (FQDN): часто это простой способ
  сказать то же самое, что и «доменное имя узла», как указано
  выше. Однако термин неоднозначный. Строго говоря, а
  полное доменное имя будет включать все метки, в том числе
  метка корня нулевой длины: такое имя будет записано
  "www.example.net." (обратите внимание на завершающую точку). Но, поскольку каждый
  имя в конечном итоге имеет общий корень, имена часто пишутся
  относительно корня (например, "www.example.net") и по-прежнему
  называется «полностью квалифицированным». Этот термин впервые появился в [RFC819].
  В этом документе имена часто пишутся относительно корня.

  Необходимость в термине «полное доменное имя» исходит из
  наличие частично определенных доменных имен, которые являются именами
  где одна или несколько последних меток в упорядоченном списке
  опущен (например, доменное имя "www" относительно
  «example.net» идентифицирует «www.example.net»). Такие родственные имена
  понимаются только по контексту.

Что касается:

При каких сценариях вы увидите домен, оканчивающийся на «.» как "google.com"?

Легко, сделайте любой DNS-запрос:

$ dig NS google.com +noall +ans
google.com. 3ч9м51с В NS ns4.google.com.
google.com. 3ч9м51с В NS ns2.google.com.
google.com.    3ч9м51с В NS ns3.google.com.
google.com. 3ч9м51с В NS ns1.google.com.

Обратите внимание, что результаты были бы точно такими же, если бы я использовал google.com. так как копать землю является DNS-клиентом и, следовательно, ожидает, что все имена будут абсолютными (поэтому конечная точка не является обязательной).

Вы также можете добавлять точки к любому имени и, следовательно, иметь такие URL-адреса, как https://www.google.com/. Для плоскости DNS будет то же самое. Так и для IP и TCP тоже. Для TLS должно быть так же, если нет ошибок в реализациях. На уровне HTTP/HTTPS правильный сервер будет работать, но обратите внимание, что вы можете столкнуться с ошибками только из-за этого (и, следовательно, с отображением другой страницы, отличной от обычной, или с ошибкой).

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

И если вы хотите задавать вопросы, то да, по определению есть только один корень... по крайней мере, в теории (см. RFC 2826 «Технический комментарий IAB об уникальном корне DNS»). Каждая сеть (от локального дома до даже полного состояния) может определять локальный корень, а другие протоколы определяют имя, которое выглядит как корень, но не на самом деле (например: эт или же кусочек). Но в этот момент вы выходите на политические арены, а не на технические.

Рейтинг:2
флаг us

Да, полное доменное имя заканчивается точкой. И доменное имя всегда относительно, если оно не заканчивается точкой. ОС, используемое приложение, какой-либо прокси или другой элемент разрешения имен могут попытаться найти имя относительно чего-то другого, кроме корня. . домен. В офисе скорее всего домен компании ищется перед корнем например.

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

Один конкретный случай, когда они очень распространены, — это настройка серверов имен, например записей CNAME. Зона на сервере имен обычно имеет себя как «относительный корень», поэтому для ссылки на доменное имя за ее пределами необходимо использовать полное имя, заканчивающееся точкой.

Patrick Mevzek avatar
флаг cn
«И доменное имя всегда относительно, если оно не заканчивается точкой». Это зависит от контекста. В URL-адресах имена никогда не имеют точки в конце, но они также являются полными.
флаг us
@PatrickMevzek на самом деле их нет при входе в браузер, такой как Chrome. Если я введу http://www/ и в моей конфигурации DNS будет поисковый домен example.com, тогда Chrome с радостью найдет www.example.com и откроет страницу.
Patrick Mevzek avatar
флаг cn
Вот почему я сказал, что «это зависит от контекста». Да на ВАШЕЙ конфигурации DNS может случиться что угодно. С кем-то другим тоже может случиться что угодно. Также помните, что браузеры все больше и больше используют DoH, который обходит любые настройки уровня ОС, касающиеся разрешения DNS.

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

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