Понять имя хоста и / etc / hosts

В / etc / hostname у меня есть myname .

В / etc / hosts у меня есть:

 127.0.0.1 localhost.localdomain localhost myname ::1 localhost.localdomain localhost myname 

У меня есть смутное понимание того, что на самом деле является именем хоста и для чего оно используется.

Эти более точные вопросы могут помочь мне лучше понять это:

  1. Каково действительно мое имя хоста в приведенном выше примере? myname или что-то еще? Если бы у меня вместо этого было имя myname.domain.com в /etc/hostname , то каким будет мое настоящее имя хоста?

  2. В этом примере hostname команды возвращает myname , тогда как myname команды hostname -f возвращает localhost.localdomain . Я имел в виду, что /etc/hosts – это всего лишь сопоставление между именами и IP-адресами. Кажется, это служит другой функции здесь. Что такое fqdn и для чего он используется? Как он извлекается? Почему это localhost.localdomain ?

  3. Если бы я вместо myname.domain.com в /etc/hostname , hostname -f вернул бы myname.domain.com . Зачем?

  4. Почему fqdn не заканчивается точкой в ​​этих файлах?

  5. Являются ли hostname -d и dnsmydomain эквивалентом?

  6. В каком контексте я могу использовать мое имя хоста ( myname ), и когда мне нужно использовать мой fqdn ( localhost.localdomain )?

2 Solutions collect form web for “Понять имя хоста и / etc / hosts”

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

Чтобы предоставить некоторую помощь, некоторые из выдержек, которые затрагивают ваши вопросы: – Ваше имя хоста – это то, что вы видите в / etc / hosts. – Возвращенное FQDN основано на том, что возвращает resolver, поэтому вы видите, что значение в / etc / hosts возвращается, поскольку resolver сначала проверяет файл hosts, затем выполняет любые необходимые DNS-запросы.

Тот, который, как мне кажется, не затрагивается в man-странице hostname (на основе моего повторного чтения страницы man), почему записи в файлах не заканчиваются точкой.

Это соглашение используется при работе с записями DNS. Файлы имен хостов и хостов на самом деле не являются записями DNS. Если вы настраивали эти записи в bind, которые должны быть разрешены для поиска в DNS, тогда использование точки может вступить в игру (ознакомьтесь с этим хорошим ресурсом: http://www.zytrax.com/books/dns/apa/dot.html ).

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

  1. /etc/hostname содержит имя машины, как известно для приложений, выполняемых локально. /etc/hosts и DNS ассоциировать имена с IP-адресами. myname может быть сопоставлено с каким-либо IP-адресом, к которому машина может получить доступ, но сопоставление его с 127.0.0.1 является неэстетичным.
  2. Нет /etc/hosts , но /bin/hostname выполняет другую функцию с -f .
  3. Потому что /etc/hosts могут переопределить здравый смысл . Отредактируйте это с осторожностью и не оставляйте мусор там после временных патчей и экспериментов.
  4. Оба стиля (⋯ . TLD и ⋯ . TLD ) являются приемлемыми. Первый недвусмыслен, тогда как последний вездесущ.
  5. Не знаю, что такое dnsmydomain , но маловероятно. Поиск чего-либо в /etc/hosts не является технически «DNS».
  6. Помните пункт 1. Hostname – для приложений, которые запускаются локально; также для таких специфических сетевых протоколов, как SMB (samba). FQDN (если это не подделка или местозаполнитель, например localhost.localdomain ) – для доступа к машине снаружи. FQDN должно быть разрешимым, если оно используется.
  • Ли Dropbear заботиться о hosts.allow и hosts.deny?
  • Почему мой файл /etc/hosts.deny игнорируется?
  • / etc / hosts. Можно ли установить один IP-адрес для зоны?
  • Есть ли какой-то хост. Дополнительный файл для Linux
  • / usr / bin / host не подбирает изменения в / etc / hosts даже после перезагрузки
  • Простой альтернативный сервер имен a la / etc / hosts
  • Как изменить имя localhost на пользовательское имя, доступное для других пользователей в локальной сети
  • Как проверить / etc / hosts
  • Поиск хоста, который уважает / etc / hosts
  • Изменение файла хоста в Ubuntu
  • Как заставить мой сервер использовать файл hosts для разрешения имен?
  • Linux и Unix - лучшая ОС в мире.