10

Я искал, чтобы понять, что такое «www» в начале многих веб-адресов в Интернете. Я где-то читал, что «www» называется «hostname».

Мир «hostname» заставил меня пойти дальше в поиске, я прочитал так много веток и статей, но я все еще не уверен в этом.

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

  1. «Имя хоста» и имя компьютера: совпадает ли «имя хоста» с именем компьютера, если оно истинно, предположим, что мой компьютер является веб-сервером, а имя моего компьютера - «Робин», поэтому правильно сделать вывод, что гипотетическая сеть сайт будет что-то вроде: Robin.websitename.com?

  2. « Имя хоста» и поддомен: если «mail» в mail.google.com и «developers» в developers.google.com называются поддоменами, почему en в en.wikipedia.org называется hostname? В чем разница между именем хоста и поддоменом?

  3. Какова связь между именем хоста и полным доменным именем (FQDN)?

  4. Что такое «www» в URL некоторых веб-сайтов? Как вы знаете, веб-адрес Google - www.google.com но у нас есть много веб-сайтов без «www», например: superuser.com и en.wikipedia.org . В этой статье я прочитал, что «www» - это просто декларативная вещь, не более того, и она не связана с концепцией имени хоста. Вы это проверяете?

2 ответа2

20

Лучший способ объяснить различия между этими различными элементами, которые связаны между собой, но отличаются друг от друга, - это показать их на примере. Думайте о сетях как о дереве:

  • Существует ствол, который разделяется на основные ветви.
  • Ветви, которые в свою очередь разделяются на более мелкие ветви.
  • Меньшие ветви в конечном итоге приводят к отдельным листьям.

«Магистраль» и «ветви» являются «доменами» и «поддоменами», а листья - отдельными устройствами, например компьютерами. Итак, начнем там.

  • «Имя компьютера» - это строго местное соглашение: у меня есть компьютер с именем jakegould . Это имя компьютера - просто имя, которое я назначил своей локальной машине. Никто за пределами моей локальной сети не будет знать это имя компьютера; это строго местная обстановка.

  • «Имя хоста» (он же «nodename») - это сетевой идентификатор: если бы я хотел публично рекламировать свой локальный компьютер другим, мне бы пришлось прикрепить «имя хоста» к IP-адресу моего компьютера. «Имя хоста» на самом деле не имеет никакого отношения к имени компьютера, но администраторы часто предпочитают использовать одно и то же имя, чтобы упростить понимание. Также «имя хоста» не всегда означает, что компьютер подключен к Интернету; Это простой способ показать другим пользователям вашей сети, где находится ваш компьютер. Как объясняет Википедия ; Акцент мой:

    В компьютерной сети имя хоста (архаично имя узла) - это метка, которая назначается устройству, подключенному к компьютерной сети, и используется для идентификации устройства в различных формах электронной связи, таких как World Wide Web, электронная почта или Usenet. ,

  • Полное доменное имя (FQDN) - только это; Полное доменное имя. Теперь это может показаться запутанным, но вам нужно подумать об этом следующим образом: Это просто означает в великой схеме, каков фактический «путь» к компьютеру. Допустим, у меня есть компьютер с именем jakegould и в моей локальной сети есть имя хоста jakegould . В контексте моей локальной сети, что jakegould мое имя компьютера, и мой «имя хоста» и может возможно рассматривать мое «полное доменное имя» в зависимости от моей архитектуры локальной сети. То есть, допустим, в моей офисной локальной сети есть другие узлы, такие как first_floor и second_floor а мое «имя хоста» jakegould находится в сети second_floor . Что ж, если бы это было так, то моим «полностью определенным доменным именем» на основе локальной сети было бы jakegould.second_floor и все. Но скажем, я работал в большой компании с именем big_company.com, и мой компьютер каким-то образом был представлен миру. Тогда в этом случае мое «полностью определенное доменное имя» на основе WAN может быть jakegould.second_floor.big_company.com или, может быть, просто jakegould.big_company.com если сетевой администратор не хочет, чтобы его называли «second_floor». , Опять же, как объясняет Википедия ; Акцент мой:

    Полное доменное имя (FQDN), иногда также называемое абсолютным доменным именем, является доменным именем, которое указывает его точное местоположение в древовидной иерархии Системы доменных имен (DNS). Он определяет все уровни домена, включая домен верхнего уровня и корневую зону. Полное доменное имя отличается отсутствием двусмысленности: его можно интерпретировать только одним способом.

  • «Www» в названиях некоторых веб-сайтов является обозначением «hostname», которое носит исторический характер: в основном, в 1990-х годах, когда всемирная паутина еще находилась в зачаточном состоянии, к сетям было присоединено множество различных сервисов. И в основном в академическом контексте. Так что будет такое место, как whattsamattau.edu и в этой школе будут FTP-сервисы на ftp.whattsamattau.edu , электронная почта на mail.whattsamattau.edu и т.д. Итак, когда появится всемирная паутина, они просто разместят веб-сервер на www.whattsamattau.edu . В настоящее время у каждого - и, похоже, всего на свете - есть веб-сайт. И многие люди просто регистрируют домены только для веб-сервиса. Таким образом, историческая конвенция www во многих случаях отбрасывается. Многие люди имеют веб-сайты без www но все равно будут иметь приспособления для перенаправления трафика www на основное, не www имя хоста. Но технически говоря, www все еще можно считать именем хоста.

  • БОНУС (Никогда не спрашивал, но упоминал / подразумевал): Что такое «субдомен» в великой схеме вещей: субдомен по сути является просто дочерним по отношению к родительскому домену / имени хоста. Так что в моем примере с jakegould.big_company.com jakegould можно считать поддоменом big_company.com а big_company можно считать «доменом», а .com - доменом верхнего уровня (TLD). Еще раз, как объясняет Википедия ; Акцент мой:

    В иерархии системы доменных имен (DNS) поддомен - это домен, который является частью более крупного домена.

Теперь после составления всего этого это может сбить с толку. Многие имена компьютеров являются именами хостов и являются полными доменными именами, а в некоторых случаях они могут быть поддоменами. Это все зависит от контекста. И, глядя на статьи онлайн, слова «домен», «хост» и «узел» используются довольно свободно и быстро повсюду. Так что, на мой взгляд, многие употребления этих терминов являются синонимами.

Что также помогает объяснить вашу путаницу в пункте № 2:

Если «mail» в mail.google.com и «developers» в developers.google.com называются поддоменами, почему en в en.wikipedia.org называется hostname? В чем разница между именем хоста и поддоменом?

en.wikipedia.org - это поддомен и имя хоста. en в en.wikipedia.org является поддоменом доменного имени wikipedia.org . И en.wikipedia.org сам по себе является именем хоста, поскольку en.wikipedia.org имеет подключенный к нему IP-адрес и, следовательно, компьютер, подключенный к этому IP-адресу. Это означает, что само en семантически считается поддоменом, но также является именем хоста, поскольку существует хост (компьютер), подключенный к IP-адресу, подключенному к en.wikipedia.org . Итак, зная, что mail.google.com и developers.google.com - это также имена хостов, которые являются поддоменами google.com .

Чтобы прояснить ситуацию, подумайте об этом так; давайте в качестве примера рассмотрим несуществующий поддомен fakename.wikipedia.org :

  • org в fakename.wikipedia.org является доменом верхнего уровня (ДВА). Как домен верхнего уровня он не преобразуется в IP-адрес. Таким образом, это не имя хоста. Это просто соглашение об именах.
  • wikipedia.org в fakename.wikipedia.org это доменное имя и имеет потенциал , чтобы быть имя хоста , а также , если он подключен к IP - адресу и разрешает к компьютеру , когда один идет в wikipedia.org
  • Имя fakename в fakename.wikipedia.org - это имя субдомена, поскольку оно является дочерним доменом wikipedia.org в контексте самого имени домена. Это может быть имя хоста, если оно подключено к IP-адресу и преобразуется в компьютер, когда он переходит на fakename.wikipedia.org .

Если вы fakename.wikipedia.org вы пытаетесь пропинговать поддомен fakename в wikipedia.org . Если этот пинг умирает - что, скорее всего, произойдет, так как это фальшивка - это означает, что хост не работает или его не существует. Если он умирает с подключенным к нему IP-адресом, это означает, что имя хоста fakename.wikipedia.org не работает. Если эхо- запрос пропадет со 100% отсутствующим IP-адресом, это будет означать, что поддомен fakename.wikipedia.org является недопустимым именем хоста.

Да, все это может сбить с толку. Но к чему это сводится, так это к разнице между тем, что домен / субдомен в контексте записей DNS, и тем, что домен / субдомен в контексте подключения хоста / компьютера к нему.

Так что, если все это началось с вашего любопытства по поводу www , то это историческое имя хоста / имя узла / поддомен, которое больше не используется в качестве соглашения, но все еще используется так часто, что многие сайты имеют некоторые приспособления для «ловли» запросов на www и перенаправить их на основное имя хоста сайта.

2
  1. Имя хоста - это атрибут системы, хранящийся локально в этой системе. "Имя компьютера" - это то, что Windows использует для ссылки на имя хоста.

  2. Субдомен - это концепция DNS. В DNS доменные имена (для краткости домены) могут быть авторитетными или неавторизованными - если они не авторизованы, это означает, что другой сервер "обрабатывает" этот домен. Таким образом, в домене, таком как www.mysite.invalid одна вещь, которая может произойти, заключается в том, что корневой домен обращается к серверу, обрабатывающему invalid домен, который затем дополнительно обращается к серверу, обрабатывающему домен mysite , и т.д.

    Ваша система может отслеживать домен, на котором она считает, а также локально управляемое имя хоста.

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

    Многие клиенты DHCP также могут изменять локальное имя компьютера в ответ на ответ DHCP от сервера DHCP.

    Обычно внутреннее имя хоста системы и внешнее DNS-имя совпадают, но это не обязательно, хотя в 99% случаев вы этого хотите.

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

  4. Допустим, вы где-то управляете сетью и для нее есть домен DNS, например mynetwork.invalid . Предположим также, что у вас есть собственный DNS-сервер, поэтому любые DNS-запросы на все, что заканчивается в mynetwork.invalid поступают на ваш DNS-сервер. Теперь предположим, что у вас есть пара серверов, таких как FTP, веб-сервер и т.д. Вам придется создать запись на вашем DNS-сервере для каждой машины, и www был более менее стандартным для веб-серверов в сети. Тогда ftp.mynetwork.invalid будет указывать на ваш FTP-сервер, а www.mynetwork.invalid будет указывать на ваш веб-сервер и т.д.

    Вы можете выбрать старый mynetwork.invalid указывающий на наиболее распространенную службу, которую вы используете, например, веб-сервер, чтобы избавить людей от необходимости много печатать и сделать ваши URL-адреса лучше, но если кто-то входит просто в mynetwork.invalid на FTP-клиент, будут проблемы.

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

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