Что такое имя хоста?
Определение имени хоста и как его найти в Windows
Имя хоста – это метка (имя), назначаемая устройству (хосту) в сети, и используется для различения одного устройства от другого в конкретной сети или через Интернет.
Имена хостов также используются DNS-серверами, поэтому вы можете получить доступ к веб-сайту по общему, легко запоминаемому имени, чтобы избежать необходимости запоминать строку цифр (IP-адрес) только для открытия веб-сайта.
Примеры имени хоста
Каждое из следующего является примером Полного доменного имени (FQDN) с его именем хоста, записанным на стороне:
Как вы можете видеть, имя хоста (например, pcsupport ) – это просто текст, предшествующий имени домена (например, lifewire), который, конечно же, текст, предшествующий домену верхнего уровня ( ком ).
Как найти имя хоста в Windows
Выполнение имени хоста из командной строки – безусловно, самый простой способ показать имя хоста компьютера, на котором вы работаете.
Никогда раньше не использовал командную строку? Для получения инструкций см. Наш учебник «Как открыть командную строку». Этот метод работает в окне терминала и в других операционных системах, таких как macOS и Linux.
Использование команды ipconfig для выполнения ipconfig/all – это еще один метод, но эти результаты гораздо более подробны и включают в себя информацию в дополнение к имени хоста, которая может вас не заинтересовать.
Как изменить имя хоста в Windows
Доступ к системным свойствам можно получить через ссылку Дополнительные параметры системы внутри апплета «Система» на панели управления, но также можно запустить, выполнив control sysdm.cpl из Выполнить или командная строка.
Подробнее об именах хостов
Имена хостов не могут содержать пробелы, поскольку они могут быть только алфавитными или буквенно-цифровыми. Дефис является единственным допустимым символом.
Часть www URL фактически указывает на поддомен веб-сайта, аналогично тому, как pcsupport является поддоменом lifewire.com, а images – один из поддоменов Google.com.
Чтобы получить доступ к разделу поддержки ПК на веб-сайте lifewire.com, необходимо указать имя хоста pcsupport в URL. Аналогично, имя хоста www всегда требуется, если вы не указали конкретный поддомен (например, images или pcsupport ).
Однако большинство посещаемых вами веб-сайтов по-прежнему будут открываться без указания имени хоста www – либо потому, что веб-браузер делает это за вас, либо потому, что веб-сайт знает, что вы ищете.
DNS. Введение в доменную систему имен
DNS это протокол используемый преимущественно для конвертирования hostname(имя хоста), вроде www.example.com в IP адреса, вроде 192.168.1.0, и наоборот. В Интернет, взаимосвязь между серверами построена на IP адресах, а не на hostname(имя хоста), которые пользователь вводит в программы типа браузеров или telnet клиентов. Это означает, что системе нужно средство, которое бы позволяло отыскивать IP адрес сервера по его hostname(имя хоста). Для этого есть несколько решений. Например, чтение файла /etc/hosts или запрос к NIS серверу. Но использование DNS наиболее распростанено.
Как уже говорилось, DNS протокол используется для отыскания IP адресов по hostname и наоборот. Это часто используется для определения имени хоста клиента, который подключается к серверу. DNS также может использоватся для определения адреса почтового сервера, а также для получения дополнительной информации о хосте. Например, его местоположение, операционная система или его собственник. Однако же чаще всего DNS используют по её прямому назначению.
Большинство систем использует DNS протокол для отправки запросов к серверу, который занимается отысканием IP адресов по hostname(имя хоста). Обычная система является только DNS клиентом и никогда не отвечает на запросы от серверов или других клиентов. В то время, как многие компании и провайдеры имеют один или несколько DNS серверов в своей сети. Так что все остальные хосты этой сети могут ими пользоватся. Если ваша компания уже имеет DNS сервер, значит вам нет необходимости читать эту главу.
Для каждой зоны, существует как минимум один DNS сервер, который является основным и имеет всю информацию об этой зоне. Также существуют несколько второстепенных или подчиненных серверов, которые имеют копию информации с основного сервера. Это позволит сделать бэкап основного сервера если он станет неисправным. Один DNS сервер может обслуживать несколько DNS зон или необслуживать ни одну. Сервер обычно отвечает за предоставление информации о зонах которые он обслуживает.
Каждая зона должна иметь хотя бы один дополнительный сервер, который смог бы подменить главный сервер, если тот недоступен по некоторым причинам. Дополнительные сервера позволят также распределить нагрузку на главный сервер. Это происходит потому, что другие сервера в поисках информации о DNS записи, выбирают DNS сервер из нужной зоны случайным образом. На самом деле, нет никакой возможности для других серверов узнать какой сервер главный, а какой дополнительный для некоторой зоны.
Дополнительные сервера могут запрашивать копию всех записей зоны используя трансфер внутри зоны. Это выполняется когда дополнительный DNS сервер получает впервые на обслуживание некоторую зону, а также когда сервер определяет, что зона изменилась или записи устарели. Главный сервер может быть сконфигурирован таким образом, что он будет уведомлять дополнительные сервера, когда зона изменилась, и они должны обновится, позволяя им всегда иметь новую информацию.
Например, представьте если DNS клиент запрашивает сервер об IP адресе для хоста www.webmin.com.
Сервер пройдет следующие шаги для определения IP адреса:
3. Затем DNS клиент сделает запрос к серверу webmin.com, чтобы узнать адрес для www.webmin.com. Ответом будет 216.136.171.204, что является правильным IP адресом.
4. DNS клиент получит этот IP адрес и кэширует результат. Теперь он будет знать, какой IP адрес у www.webmin.com и ему не понадобится проходить все эти шаги снова. Но этот результат имеет TTL, соответсвенно по истечению этого времени, данные об IP адресе устареют, и DNS клиент вновь пройдет эти шаги, дабы узнать IP адрес для www.webmin.com. Это сделано для того, чтобы не проходить эти шаги снова и снова, создавая большой траффик в Интернет.
Как вы можете видеть, DNS сервер может найти IP адрес любого хоста в Интернете, следуя простому алгоритму. Невозможно найти только адрес root серверов. Они считываются из файла. Поскольку адреса root серверов крайне редко меняются, они хранятся в определенном файле.
Много организаций имеем внутреннюю сеть, которая использует частные IP адреса, начинающиеся, к пример, с 192.168. Сеть вроде этой, подключается к Интеренету через firewall используя NAT. Некоторые люди имеющие домашнюю сеть организуют свой доступ в Интернет следующим образом. Одна из машин имеет доступ в Интернет напрямую. Она является шлюзом(Gateway). Остальные подключаюся через неё. Получается, что они работают в Интернет под одним IP адресом.
Также в таких сетях может понадобится DNS сервер для выдачи hostname компьютерам внутренней сети. Это возможно, создав зону с произвольным именем вроде home или internal, которая содержит записи о внутренних компьютерах сети, а также создав обратную зону для 192.168 сети, таким образом, что IP адреса могут быть найдены по запросу. Сервер также может быть настроен для поиска реальных Интернет hostname(имя хоста), как любой нормальный DNS сервер. Однако, такой поиск ни к чему не приведет, так как ваша локальная зона не зарегистрирована в Интернет.
Разница между именем хоста и доменным именем
Главное меню » Сети » Разница между именем хоста и доменным именем
В следующих разделах мы рассмотрим концепцию доменного имени и имени хоста.
Обзор истории
На заре Интернета (эпоха ARPANET) существовал файл с именем «hosts.txt», в котором были имена и IP-адреса всех компьютеров в сети. Этот файл поддерживался сайтом, с которого все остальные сетевые компьютеры получали обновления обо всех остальных компьютерах. Такой подход годился максимум для нескольких сотен компьютеров в сети. Было ясно, что размер файла «hosts.txt» со временем вырастет с добавлением дополнительных устройств в будущем. Таким образом, поддерживать этот файл стало бы практически неудобно. Это означало, что этот метод в конечном итоге не выживает. Конфликт имени хоста был другой проблемой при сохранении этого огромного файла. Чтобы преодолеть эти проблемы, в 1983 году была введена DNS (система доменных имен). Когда хост хочет подключиться к другому хосту в сети, используя имя хоста, DNS сопоставляет имя хоста с его IP-адресом. Помимо преобразования имени хоста в IP-адрес, DNS выполняет множество других операций.
Иерархия DNS и доменное имя
Есть два типа доменных имен: абсолютные и относительные. Абсолютные домены – это те, которые заканчиваются обозначением точки, например «cs.mit.edu.». Относительные домены не заканчиваются точкой.
Домены именуются снизу вверх, охватывая все объекты от самого домена до корня. Обычно они интерпретируются слева направо, причем левая сущность является наиболее конкретной, а правая – наименее конкретной.
Доменные имена можно использовать с любым регистром, поскольку они нечувствительны к регистру. Переход на GOOGLE.COM эквивалентен переходу на google.com. Доменные имена должны начинаться с буквенной буквы, но могут заканчиваться символом или цифрой. Между этими двумя концами он может содержать дефисы. Длина доменного имени не должна превышать 63 символа.
Имя хоста или полное доменное имя (FQDN)
Термины FQDN и Hostname используются по-разному в тексте, но основное значение остается тем же. Полное доменное имя и имя хоста используются взаимозаменяемо, тогда как считается, что полное доменное имя состоит из имени домена и имени хоста отдельно. Однако в обеих терминологиях существует уникальное имя хоста (с включенным доменным именем) или полное доменное имя (FQDN) для каждого хоста в Интернете.
Имена хостов (включая доменные имена) для конечных систем основаны на иерархии DNS организации. В качестве примера рассмотрим хост-машину host1 в домене cs.mit.edu. Полное доменное имя или имя хоста для этого хоста будет «host1.cs.mit.edu», которое будет уникальным в Интернете. Таким же образом, если это веб-URL, например www.mit.edu, мы можем интерпретировать «www» как имя хоста и «mit.edu» как имя домена.
Полное доменное имя или полное доменное имя абсолютно однозначно, так как оно должно быть уникальным для каждого хоста в Интернете. Лучшая практика для именования хостов (без имени домена) в сети – использовать разные идентификаторы для каждого из них. Однако локальное имя хоста (или имя хоста без полной информации о домене) не обязательно должно быть уникальным, но этот подход может вызвать ошибки, такие как проблемы с сетевым подключением.
Обычно у хоста только одно имя хоста, но он может принимать несколько имен хоста. Файл локального хоста может использоваться для разрешения IP-адресов или имен хостов на локальном компьютере. При разрешении имени хоста сначала проверяется содержимое файла «/etc/hosts». Если запись для имени хоста не найдена здесь, заглушка использует DNS-сервер имен.
Статическое имя хоста может быть указано в файле «/etc/hostname » в системе Linux. Используя утилиту hostnamectl, мы можем просмотреть полное доменное имя системы и также изменить этот файл.
Заключение
Сетевые администраторы должны хорошо разбираться в правильной настройке доменного имени и имени хоста. Это поможет им в устранении многих сетевых проблем в сети их организации. Что вы можете сделать дальше, так это изучить различные инструменты для системного и сетевого мониторинга.
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
Про Debian
Сегодня мы поговорим про одну из самых важных вещей при настройке сервера. Был такой анекдот (дословно не помню):
— чего так сильно задумался?
— да hostname серверу выбираю.
— ну ты прям как имя ребенку выбираешь, час уже сидишь.
— ну ты чо. Ребенку можно имя сменить потом, а вот hostname у сервера хрен сменишь.
Что такое fqdn в принципе? Это доменное имя (да, обычное доменное имя, вроде www.debian.pro). Можно почитать википедию. Я вам лучше покажу на пальцах на примере корректно настроенного сервера, так будет понятнее.
Возьмём для примера корректно настроенный сервер.
Заходим на него по ssh и проверяем hostname:
В ответ на эту команду мы должны получить именно fqdn сервера, а не короткое имя (не messer, например).
Далее узнаем «дефолтный» IP сервера (если у вас всего один IP на сервере — то можете просто скопировать его из письма).
Вообще нужно иметь в виду, что все исходящие коннекты с сервера (если вы не настраивали маршрутизацию локально) будут проходить с одного IP-адреса, вопреки всяческой мифологии.
Собственно, быстрее всего узнать исходящий IP сервера примерно так:
# curl ifconfig.me
46.4.251.93
# curl ip.vlad.pro
46.4.251.93
Запоминаем — с этого адреса (если вы не предпринимали ничего для того, что было по другому) сервер будет открывать все исходящие коннекты — например, обращаться к другим сайтам курлом из php-кода (даже в том случае, если ваш сайт «смотрит» А-записью во второй-третий-десятый IP сервера).
Теперь проверим, что у этого IP есть PTR-запись:
# host 46.4.251.93
93.251.4.46.in-addr.arpa domain name pointer messer.qs.biz.
И напоследок проверим, что мы не совсем сошли с ума и прописали прямую запись для нашего хоста в правильный IP:
# host messer.qs.biz.
messer.qs.biz has address 46.4.251.93
Вообще всё это было присказка. Теперь начинается сама 5-я часть мануала.
Нам нужно сделать, чтобы в итоге все команды выше отдавали в ответ правильные данные.
Первым делом выберите fqdn для сервера. Обычно fqdn — это домен третьего уровня, на котором «не будет сайта». Проще говоря, www.qs.biz — хреновый fqdn в перспективе (потому что www.qs.biz домен когда-нибудь захочет переехать на другой сервер), а вот messer.qs.biz — неплохое имя, вряд ли я когда-нибудь решу поднять там сайт.
Так же не очень хорошая идея делать fqdn второго уровня по той же причине (хотя если вам не лень регистрировать домен второго уровня только ради этого и вы точно не собираетесь на него вешать сайт — то милости просим).
Через пару часов после того, как вы прописали прямую запись (или сколько у вас там TTL), можно прописывать PTR-запись (или по-другому — обратную запись). Как это сделать, опять же, нужно уточнить в саппорте своего хостера. Могу только отметить, что у PTR-записи на конце должна быть точка, если будете прописывать сами в веб-морде.
Ну и после всего этого остаётся настроить hostname сервера. Для этого нужно поправить 2 файла.
/etc/hostname:
То есть пишем fqdn без точки на конце.
В файл /etc/hosts нужно добавить такую строку:
Обратите внимание на порядок столбцов в строке — сначала ip, потом fqdn целиком, потом короткое имя хоста (до первой точки).
И в конце нужно запустить команду:
# /etc/init.d/hostname start
Для убунты 14.04 и дебиана 8-го (и новее):
# service hostname start
На этом всё. Остаётся только дождаться, когда PTR и A записи созданные ранее разъедутся по всем резолверам (обычно — TTL*2) и можно начинать использовать сервер.
hostname в CentOS
Введение
Имя хоста — это уникальная метка, которая идентифицирует машину в сети.
Должна существовать таблица соответствия между hostname и IP адресом это нужно для для маршрутизации пакетов.
Хост может иметь несколько имён, но предпочтительным является вариант, когда имя одно.
Так как CentOS 7 поддреживает только Fully Qualified Domain Names (FQDNs), советую тщательно проверить hostname, который вы планируете использовать.
Узнать имя своего хоста
Существует несоколько способов узнать имя своего хоста.
Часто для этого достаточно просто посмотреть в терминал
Пример моего терминала
[andrei@ localhost Downloads]$
Посмотреть порядок можно выполнив
Static hostname: localhost.localdomain Icon name: computer-vm Chassis: vm Machine ID: 35e254eda578c54084b96e06d5f285cf Boot ID: afb44fef8d764f30bb89550849b02fde Virtualization: kvm Operating System: CentOS Linux 7 (Core) CPE OS Name: cpe:/o:centos:centos:7 Kernel: Linux 3.10.0-1160.36.2.el7.x86_64
Изменить имя хоста
С помощью команды hostname
hostname dns-server
hostname
Если заново открыть терминал изменения будут видны в командной строке.
Это имя хоста сохранится только до перезагрузки системы
Если выполнить hostnamectl видно, что помянелось только динамическое имя хоста
Static hostname: localhost.localdomain Transient hostname: dns-server Icon name: computer-vm Chassis: vm Machine ID: cff8a80b9c356243b5238452511a8ade Boot ID: 64d9ddab85ec4c219ac46c6a2940e628 Virtualization: kvm Operating System: CentOS Linux 7 (Core) CPE OS Name: cpe:/o:centos:centos:7 Kernel: Linux 3.10.0-1160.42.2.el7.x86_64 Architecture: x86-64
С помощью hostnamectl
hostnamectl set-hostname dns-server.andrei.com
hostname
Это постоянное изменение. Т.е. новое имя хоста имеет класс persistent.
pretty name
Чтобы задать pretty name нужно воспользоваться кавычками
hostnamectl set-hostname «andrei’s.host.com»
hostnamectl
Static hostname: andreis.host.com Pretty hostname: andrei’s.host.com Icon name: computer-vm Chassis: vm Machine ID: cff8a80b9c356243b5238452511a8ade Boot ID: 64d9ddab85ec4c219ac46c6a2940e628 Virtualization: kvm Operating System: CentOS Linux 7 (Core) CPE OS Name: cpe:/o:centos:centos:7 Kernel: Linux 3.10.0-1160.42.2.el7.x86_64 Architecture: x86-64
В /etc/hostname отображается только static hostname
pretty hostname можно увидеть в файле /etc/machine-info
hosts
Изучить информацию об именах других хостов можно в файле hosts
В моём примере в сети есть два хоста:
dns-server.andrei.com с IP адресом 192.168.56.149
host113.andrei.com с IP адресом 192.168.56.113
Зайдём на него с помощью ssh и посмотрим, есть ли у него записи об именах других хостов в сети.
Для наглядности я теперь буду показываеть приглашение терминала чтобы было видно имя хоста.
Выполним ping по IP
По IP пингуется успешно
И ping по hostname
ping: dns-server.andrei.com: Name or service not known
host113 не знает как разрешить имя dns-server.andrei.com
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
Добавим запись о dns-server.andrei.com
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 192.168.56.149 dns-server.andrei.com
Теперь всё работает
alias
Чтобы не писать длинные имена хостов можно придумать alias
192.168.56.149 dns-server.andrei.com vbdns
Обратите внимание на dns-server.andrei.com
Хоть пинг и был по алиасу, ответ идёт как от static fqdn
Если поменять порядок так, что vbdns идёт первым а FQDN dns-server.andrei.com вторым, но dns-server.andrei.com будет считаться алиасом
192.168.56.149 vbdns dns-server.andrei.com
В таком случае ответ будет идти от vbdns
Это может стать важным при работе с сертификатами





