Хостинг Linux: какова цель установки имени хоста / FQDN в файле hosts?

Я только что купил план хостинга Linode VPS и следовал этому руководству по настройке. раздел «Настройка имени хоста» и «Обновить / etc / hosts com независимо

каждая сеть, запрашивающая «www.yahoo.com» или «что угодно», будет перенаправлена ​​на IP-адрес 63.117.14.58 (который является IP-адресом google.com). Это способ заблокировать нежелательные сайты на локальном компьютере.

Теперь в руководстве предлагается добавить эту строку в файл «hosts» на моем сервере

12.34.56.78(//my server's IP) myhostname.anything.com myhostname

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

1) Основываясь на факте № 3, я думаю, что эта строка перенаправляет любые запросы на сервере для myhostname.anything.com или myhostname на мой IP-адрес, Но что это значит? Не должно быть никаких запросов на myhostname.anything.com от пользователя » компьютер уже переведен на определенный IP-адрес (будь то мой IP-адрес или нет)? Почему мне нужно перенаправить его на свой сервер? Я понимаю, как работает HTTP-запрос, когда пользователь вводит имя домена в браузере, браузер свяжется с сервером домена, и сервер домена направит его на DNS-сервер на основе DNS-записи домена, а затем DNS Сервер разрешит IP-адрес, а затем браузер получит данные с этого IP-адреса. Насколько я понимаю, эта процедура не имеет ничего общего с файлом "hosts" на моем сервере.

2) и сервер домена направит его на DNS-сервер на основе DNS-записи домена, а затем DNS-сервер разрешит IP-адрес, а затем браузер получит данные с этого IP-адреса. Насколько я понимаю, эта процедура не имеет ничего общего с файлом "hosts" на моем сервере.

2) и сервер домена направит его на DNS-сервер на основе DNS-записи домена, а затем DNS-сервер разрешит IP-адрес, а затем браузер получит данные с этого IP-адреса. Насколько я понимаю, эта процедура не имеет ничего общего с файлом "hosts" на моем сервере.

2) A. Что касается FQDN, почему имя хоста должно совпадать с именем хоста, которое я установил на моем сервере, а имя домена - нет?

B. Что произойдет, если я установлю здесь другое имя хоста?

C. И какова цель установки или не установки моего доменного имени в качестве FQDN здесь?

D. А что произойдет, если я установлю только полное доменное имя, но не имя хоста? вроде этого

12.34.56.78(//my server's IP) myhostname.anything.com

Много вопросов, но я считаю, что ответы на некоторые из них частично совпадают, и в целом я думаю, что главный вопрос заключается в следующем: «Какую роль играет установка имени хоста / редактирование файла hosts в моем бизнесе веб-хостинга?»

Заранее благодарю за ваше время.

4
задан 5 January 2016 в 00:26
1 ответ

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

Хост-файл vs.DNS

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

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

Сравнение имени хоста с полным доменным именем

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

Например, предположим, что вы владеете компанией с именем Contoso и управляете веб-сайтом с именем example.com . Веб-сайт размещен на шести машинах с именами от dalek01 до dalek06 . Все, что нужно знать внешнему миру, - это то, что они могут получить желаемый веб-сайт, если подключат www.example.com в свой веб-браузер. Чрезмерно любознательным Повелителям Времени не нужно беспокоиться о том, что их запрос на www.example.com обслуживается dalek03 .

Само по себе имя хоста не обязательно имеет ничего, вообще связанного с DNS. Это просто имя устройства, с которым даже не обязательно связан суффикс домена. Пока все просто!

Теперь мы немного усложнили задачу. Время рассказов!

  • Ваша компания, Contoso, владеет множеством настольных компьютеров, которые обмениваются данными с кластером dalek через частную сеть.
  • Когда возникает проблема на одном из серверов, вам необходимо войти на конкретное устройство с помощью проблема. Мы не можем просто подключиться к www.example.com , потому что он размещен на нескольких разных машинах. Хорошо, что у нас есть однозначно идентифицирующее имя для сервера, с которым возникла проблема!
  • Поскольку у нас большая сеть устройств, чаще всего мы хотим управлять им с помощью DNS. Это означает, что нам нужно вставить имена хостов с dalek01 по dalek06 где-нибудь в домен DNS. К счастью, нам принадлежит contoso.com (названный в честь нашей компании), полностью отделенный от www.example.com , который может быть одним из наших клиентов.
  • Потому что Интернет не ' Нам не нужно знать наши внутренние IP-адреса, мы поддерживаем частный DNS-домен под названием corp.contoso.com . Все наши настольные компьютеры настроены с суффиксом поиска DNS corp.contoso.com . Это означает, что если мы создадим запись DNS с именем dalek01.corp.contoso.com , любой в нашей сети сможет получить доступ к этой машине, просто подключившись к dalek01 со своим SSH-клиентом. Удобно!
  • dalek01 знает, что он называется dalek01 , потому что мы помещаем его в файл hosts. Мы хотим, чтобы он знал, что он также называется dalek01.corp.contoso.com , но мы не хотим, чтобы он полагался на DNS, чтобы узнать свое собственное имя. Это было бы глупо. Поэтому мы определяем псевдоним для dalek01.corp.contoso.com в файле hosts на dalek01 , чтобы он знал все свои имена.
  • Тем временем люди продолжают использовать www.example.com , не обращая внимания на тот факт, что у вас шесть серверов с именами от dalek01 до dalek06 , тот факт, что ваша компания называется Contoso (не считая ваших клиентов ) или что для удобства ваших сотрудников вы создали записи DNS для dalek01 - dalek06.corp.contoso.com .

Собираем все вместе

  • Имя вашего хоста имеет значение для вас и людей, которые запускают сервер, не обязательно для людей, которые пользуются его услугами.
  • Имена хостов не должны храниться в DNS (или иметь домен DNS вообще), если только вы не владеете несколькими устройствами, совместно использующими частную сеть .
  • Для сервера глупо полагаться на DNS, чтобы общаться с самим собой.
  • Ввод ваших имен хостов в DNS создает необходимость также определять, что • Полное доменное имя в вашем хост-файле, чтобы он не полагался на DNS, чтобы общаться с самим собой, используя полное доменное имя. (что, как сказано, было бы глупо)

Надеюсь, это покрывает все основы.

12
ответ дан 3 December 2019 в 02:28

Теги

Похожие вопросы