Как настроить имя хоста. Добавление имени хоста в файл hosts для локального тестирования Имя хоста яндекс

Обычно под хостом подразумевается протокол TCP/IP, то есть сетевое имя устройства подключенного к сети. Если подключение к сети создается динамически, то в данном случае речь может идти о том участнике соединения, который управляет сеансом связи. Например, во время онлайн-игр.

Инструкция

Воспользуетесь сначала командной строкой Windows, зайдя в систему на правах администратора. Откройте меню «Пуск» и в разделе «Выполнить» или в окне поиска введите значение cmd и нажмите «OK». Впишите в командную строку: nslookup имя_домена (хоста ). Нажмите «Enter». Узнайте IP-адрес хоста, если это возможно, так как эти данные могут быть и скрыты. Как вариант, вместо nslookup вы можете вписать ping имя_домена (хоста)/t, хотя такой доступ тоже может быть заблокирован.

Обратитесь к таким сайтам, как http://whois-service.ru, http://ip-whois.net или http://2ip.ru. Введите известный вам URL или ознакомьтесь со списком возможных подключений к вашему компьютеру, проанализировав свой IP. Если соединение прямое, то все нужные вам сведения вам удастся получить. Так же вы сможете узнать сведения о сайте, через который вы, например, подключаетесь к игре.

Если вам нужно узнать, кто в настоящий момент подключен к игровому (или не-игровому) сайту, и по каким IP-адресам, сначала зайдите на него. После этого сверните окно и через «Пуск» снова обратитесь к командной строке. Впишите: netstat и нажмите «Enter». В окне командной строки будут отображены все активные на данный момент соединения и порты. Например: 198.168.11.1: 55901, где 198.168.11.1 – это IP-адрес хоста, а 55901 – активный порт.

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

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

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

Существует несколько способов назначения имени хоста устройству. Полностью квалифицированные доменные имена (Fully Quilified Domain Names или FQDN) управляются и назначаются Интернет-хостам через глобальную систему доменных имен (DNS) и уникальны в пределах всего интернета. Тем не менее, тем же способом это может быть сделано и в локальных сетях локальными серверами DNS, или же имя хоста может быть определено с помощью файла "hosts" на отдельном компьютере.

В любом случае, устройства в сети технически могут соединяться только с использованием IP-адреса. Это означает, что для установления соединения с устройством по его имени, необходимо обеспечить возможность разрешать данное имя в IP-адрес. Кроме того, для одного и того же IP можно назначать более одного доменного имени (один IP - несколько доменных имен). В связи с этим, разрешение доменного имени в IP довольно простая и минимально необходимая операция для реализации сетевого соединения. С другой стороны, разрешение IP-адреса в список назначенных ему доменных имен, как правило, не тривиально и не является необходимым. Поэтому технически это не реализовано в протоколах Интернет. За исключением единственного случая, в системе DNS предусмотрена специальная запись PTR (pointer). Именно эта запись позволяет осуществить обратное разрешение IP-адреса в имя хоста, и именно это имя подразумевают под "именем хоста", и именно этим оно отличается от более общего "доменного имени".

В Linux имя хоста используется многими сервисами и утилитами. Если имя хоста задано неправильно, то вы будете постоянно получать сообщения об ошибках и предупреждения. Всё зависит от того, как вы используете операционную систему. Если это обычный домашний компьютер, личный ноутбук, то можно задать любое имя и игнорировать ошибки. А если вы используете компьютер в качестве сервера, то очень важно правильно задать имя хоста (hostname).
Вот несколько причин настроить имя хоста:
  • Имя хоста отображается в подсказке Bash, сразу после символа @. Так намного проще понять на каком сервере вы залогинены.
  • MTA (message transfer agent) используют имя хоста при отправке писем (в зависимости от конфигурации MTA).

В чём разница между доменным именем и именем хоста?

Как ни странно, это не такой простой вопрос как может показаться на первый взгляд. Значение некоторых терминов может меняться в зависимости от контекста. Давайте начнем с доменного имени . Если вы знаете, как работают системы доменных имен (DNS), то вы знаете что такое доменное имя. Система доменных имен хранит запись типа A или AAAA, запись является соответсвием между доменным именем и IP-адресом. То есть, когда говорят о веб-сайте, под доменным именем обычно имеют в виду его адрес (например, "www.сайт").
Имя хоста - это символическое имя, назначенное устройству, подключенному к сети, которое может быть использовано для организации доступа к этому устройству. А какое же имя писать в качестве hostname? Здесь всё запутано, в документации к разным дистрибутивам Linux можно увидеть противоположные рекомендации . Но большинство участников дискуссий сходятся во мнении, что в качестве hostname лучше указывать короткое имя, а в файле /etc/hosts сначала следует писать доменные имена, а потом уже имя хоста.
Стоит ещё упомянуть термин Fully Qualified Domain Name (с англ. "полностью определённое имя домена"). FQDN получается если к имени хоста присоединить имя родительского домена. К примеру, есть сервер с Apache, ему назначено имя хоста websrv1. И есть сервер с базами данных, ему назначено имя dbsrv. И пусть родительским доменом для них будет example.org. Тогда полностью определенными доменными именами будут websrv1.example.org и dbsrv.example.org.
Так в чем же разница между доменным именем и именем хоста? У меня нет четкого ответа, но можно сказать, что имя хоста может зависеть от доменного имени. Наверно, можно сказать, что FQDN должно быть равно доменному имени. То есть если у вас есть сайт www.example.org, то hostname сервера может быть равен www. И в обратную сторону это правило тоже должно работать. То есть если вы в качестве имени хоста используете не www, а websrv1, то стоит добавить соответсвующую запись в DNS. При этом DNS-сервер может эту запись не распространять за пределы своей подсети, это может быть DNS-сервер для внутренних нужд.

Настройка имени хоста в Ubuntu

Есть в Linux специальная команда hostname, если вызвать её без аргументов, то она выведет текущее имя хоста.
Чтобы изменить имя хоста, передайте новое имя в качестве аргумента:
  1. hostname web-srv-1
Новое имя хоста будет активно сразу после выполнения, но после перезагрузки будет восстановлено имя из файла /etc/hostname. Поэтому нужно изменить ещё и файл hostname. В других статьях пишут, что надо перезапустить сервис hostname, но в моей Ubuntu 14.04 такого сервиса нет. Так что я просто перезагрую операционную систему. Кстати, в Ubuntu есть специальная утилитка, которая меняет и текущее значение hostname и файл /etc/hostname. Называется hostnamectl. Если вызвать её без аргументов, то кроме имени хоста она покажет ещё и версию Ubuntu, версию ядра, архитектуру и тип компьютера. А чтобы установить доменное имя, нужно выполнить команду:
  1. hostnamectl set-hostname web-srv-1
После этого необходимо произвести изменения в файле /etc/hosts. IP-адрес 127.0.1.1 должен соответствовать новому имени хоста.
  1. 127.0.1.1 web-srv-1
И для завершения настройки необходимо перезапустить сеть или перезагрузить операционную систему.

Автоматизированная настройка имени хоста с помощью Fabric

Если вы не знаете, что такое Fabric, то вот документация . Я же просто приведу код функции, с помощью которой я настраиваю имя хоста.
  1. def conf_hostname (hostname , domain = None ):
  2. fqdn = hostname if domain is None else hostname + "." + domain
  3. sudo ("hostname %s " % hostname )
  4. sudo ("echo " %s " > /etc/hostname" % hostname )
  5. fabfiles . sed ("/etc/hosts" , "^(127\.0\.1\.1\s+)[-a-z0-9]+" , " \\ 1 %s %s " % (fqdn , hostname ), use_sudo = True )
  6. sudo ("reboot" )
  7. time . sleep (20 )

Я арендую сервер, запуская Ubuntu 16.04 в компании, назовем его company.org.

В настоящее время мой сервер настроен следующим образом:

  • имя : server737263
  • ное имя: company.org

Вот мое полное доменное имя:

User@server737263:~ $ hostname --fqdn server737263.company.org

Это неудивительно.

Я также domain.org доменное имя, domain.org его domain.org . То, что я хотел бы сделать, это переименовать мой сервер как server1.domain.org .

Это означает настройку моего имени хоста как server1 и моего доменного имени как domain.org .

Как я могу сделать это правильно?

Действительно, man-страница для hostname не ясна. Для меня как минимум:

ИМЯ НАБОРА

  • При вызове с одним аргументом или с параметром -file команды устанавливают имя хоста или имя домена NIS / YP. hostname использует функцию sethostname (2), а все три имени домена, ypdomainname и nisdomainname используют setdomainname (2). Обратите внимание, что это действует только до следующей перезагрузки. Измените / etc / hostname для постоянных изменений.

Полное доменное имя

  • Вы не можете изменить полное доменное имя с именем хоста или DNS-именем.

Похоже, что редактирования /etc/hostname недостаточно? Поскольку, если он действительно изменил имя хоста, это изменило бы полное доменное имя. Также есть трюк, который я прочитал, чтобы изменить имя хоста с помощью команды sysctl kernel.hostname=server1 , но ничто не говорит, правильно ли это или уродливый трюк.

    Каков правильный способ установки имени хоста?

    Каков правильный способ установки имени домена?

One Solution collect form web for “Как правильно установить имя хоста и имя домена?”

Настройка имени хоста:

    Вы захотите отредактировать /etc/hostname с новым именем хоста.

    Затем запустите sudo hostname $(cat /etc/hostname) .

Настройка вашего домена:

    Затем, в /etc/resolvconf/resolv.conf.d/head , вы затем добавите search your.domain.name строке search your.domain.name (а не ваше полное доменное имя, просто имя домена).

    Затем запустите sudo resolvconf -u для обновления вашего /etc/resolv.conf (в качестве альтернативы просто воспроизведите предыдущее изменение в вашем /etc/resolv.conf).

И то и другое:

Наконец, обновите файл /etc/hosts . Должна быть хотя бы одна строка, начинающаяся с одного из ваших IP (loopback или нет), вашего FQDN и вашего имени хоста. grepping из адресов ipv6, ваш файл hosts может выглядеть так.

Нет ничего сложного в установке дополнительно корневого веб-сайта в IIS на машине разработчика и использования файла hosts для построения карты дополнительных имен хостов для тестирования.

Что такое имя хоста?

Для начала постараемся объяснить разницу между именем хоста и доменным именем. Когда Вы приобретаете доменное имя (вроде "mydomain.com"), оно же является именем хоста, но таковым оно является по умолчанию только потому, что у домена нет разделов (сегментов). Для любого доменного имени Вы можете установить множество имён хостов (например "www.mydomain.com", "foo.mydomain.com" или "cheeseburger.mydomain.com" будут корректны для Вашего домена). Иногда их называют субдомены, но, на наш взгляд, для большей ясности, это разные имена хостов. Если имя хоста - компьютер, то доменное имя - название группы компьютеров. Стандартная структура "hostname.domainname". В случае с "www.mydomain.com", "www" - часть хоста, а "mydomain.com" часть имени домена. При их объединении получается имя хоста, идентифицируемое по имени домена.

Исторически сложился следующий порядок в названиях хостов: "www.mydomain.com" для веб-сервера, "mail.mydomain.com" для почтового сервера и т.д. Но это не обязательные аббревиатуры. Вы можете использовать имя "www" или нет, на своё усмотрение. Люди просто привыкли видеть "www" в начале адреса сайта. У Вас может быть несколько сайтов (например "web1.mydomain.com", "web2.mydomain.com", "test.mydomain.com" и т.д.)

Имена хостов могут вести на разные ip адреса, или же несколько имён хостов указывает на один ip адрес. Компьютер может иметь один или больше ip адресов, следовательно один или больше имён хостов будут указывать на него.

Понимание того, как именам (именам хостов) присваиваются IP-адреса

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

Но, как упоминалось выше, до проверки серверов DNS ваша машина заглянет в файл хостов для проверки наличия имени хоста.

В Windows файл хостов расположен в папке "C:\Windows\system32\drivers\etc"

файл "hosts" не имеет расширения файла, но это просто текстовый файл. Чтобы изменить его нужно щелкнуть правой кнопкой на блокноте и выбрать "Запуск от имени администратора", затем перейти по адресу "C:\Windows\system32\drivers\etc"

Чтобы просмотреть все файлы, а не только TXT, необходимо изменить расширение файла в блокноте как показано здесь:

Затем Вы можете добавить свои собственные имена хостов, и присвоить им адрес, замкнутый на себя - 127.0.0.1

Вы можете видеть как именно работает имя хоста "localhost". Оно прописывается в Вашем файле хостов.

Можно добавить любое имя хоста и связать его с ip адресом, просто поместив их в одну строку. Например:

127.0.0.1 mojotest1

Ip адрес 127.0.0.1 это специальный ip, который есть на каждом компьютере. Его также называют "внутренняя петля" (loopback address). Для любого компьютера этот адрес указывает сам на себя. Внутренняя петля даже не нуждается в наличии сетевой платы. "localhost" всегда указывает на внутреннюю петлю. В приведённом выше примере мы просто добавили дополнительное имя хоста для внутренней петли. Если у Вашей сетевой карты имеется фиксированый IP адрес, то Вы легко можете связать его с именем хоста вместо 127.0.0.1. Пусть Ваша карта имеет ip адрес 192.168.0.100, тогда следует внести следующую запись:

192.168.0.100 mojotest1

Что делает Узел по умолчанию (The Default Web Site) "Default"

В IIS можно установить столько корневых уровней, сколько необходимо. Каждому сайту можно присвоить любой ip адрес. Следовательно, любые имена хостов приписанные к этому ip адресу могут быть обработаны соответствующим IIS, привязанным к данному ip.

Однако, как уже говорилось, несколько имён хостов могут указывать на один ip адрес. Для запуска нескольких сайтов под разными именами хостов, ссылающимися на один ip адрес, у IIS есть специальная опция. На самом деле Вам даже не нужно указывать определённый ip. Достаточно просто оставить "All Unassigned" ("Все неназначенные") и добавить имя хоста. После этого запрос к конкретному имени будет перенаправлен к правильной корневой папке (сайту). В IIS, при выборе конкретного сайта, в правом окне отобразиться ссылка "Привязка" ("Bindings"), нажав на которую можно прописать имена хостов и ip адреса.

Заметим, что не обязательно для тестирования привязывать имена хостов к соответствующим доменам. Можно использовать простой вариант вида "mojotest1" или, если Вам больше нравится - "www.fake.com", "www.fake.home", "fake.home".

Что же такое "Узел по умолчанию" ("Default Web Site "Default")? Это обычный узел, не имеющий никаких привязок к ip и к именам хостов. Т.е., при обращению к какому-либо не прописанному имени хоста, запрос будет переадресован на узел по умолчанию. Это единственное предназначение данного узла. В случае если Вы укажете ему конкретное имя хоста, то он перестанет быть узлом по умолчанию. В нём нет ничего особенного, кроме отсутствия указания на имя хоста и ip адрес, поэтому можно легко удалить его и создать заново. Причем его имя может быть произвольным, т.к. для IIS не имеет значения, как называется узел по умолчанию.

Для добавления нового сайта в IIS? необходимо указать уникальный ip адрес или имя хоста. Если Вы попытаетесь создать сайт без уникальных ip или имени, то у Вас получится второй узел по умолчанию, который не запустится или нарушит работу первого. С этим сталкиваются новички, которые не могут добавить новый сайт (по причине указанной выше) и идут по пути наименьшего сопротивления, просто присваивая веб сайту по умолчанию различные имена доменов и перенаправляя их на соответствующие виртуальные папки. Но это не отдельные сайты, а, всего лишь, папки в корневой директории.

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

Также смотрите



Статьи по теме