DNS. Введение в доменную систему имен. Установка имени хоста в Ubuntu Имя хоста пример

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 сервер, значит вам нет необходимости читать эту главу.

Доменная система имен поделена на зоны(названные доменами), каждая из которых имеет имя вроде example.com или foo.com.au . Зоны имеют иерархию. Это означает, что зона foo.com.au находится в зоне com.au , которая в свою очередь является частью зоны au . На самом верху этой иерархии распологается. или root(корень ) зона.

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

Прежде чем, сервер сможет обслуживать некоторую зону, её(зону) нужно зарегистрировать в родительской зоне. Большинство родительских зон вроде . com , .net , .ru недоступны простым людям и управляются компаниями, которые имеют право на регистрацию дочерних зон в этих родительских зонах. Обычно они называются регистраторами. Это означает, что вы не можете просто установить DNS сервер, который обслуживал бы домен вроде example.com и сделать его доступным из Интернет. Вы должны заплатить за то, чтобы ваш домен зарегистировали. Это может сделать любая компания-регистратор. Таким образом, заплатив, вы зарегистрируете доменное имя, являющееся поддоменом главного домена, например домена .com .

Каждая зона включает в себя множество DNS записей, каждая из которых имеет имя, тип и значения. Наиболее распространенным типом записи является адрес или, для краткости A запись . Этот тип записи содержит следующую информацию: IP адрес и ассоциированное с ним hostname(имя хоста ) . Другой тип это NS или name server(сервер имен ) записи, которые содержат информацию о DNS сервере, обслуживающем зону или поддомен. И третий тип это MX или mail server(почтовый сервер ) записи, который содержит информацию о хосте, который обслуживает почту для этой зоны.

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

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

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

Обычно на одном сервере распологается только master(мастер, главные) зоны или только slaves(второстепенные) зоны. Однако, бывает так, что сервер является главным для одних зон и в то же время, дополнительными для других. Правила на количество серверов обслуживающих зону нет. Важные зоны.com и root(корневая, главная) имеют 13 серверов обслуживания, поскольку эти зоны составляют огромную часть Интернет и к ним происходит большое количество обращений. Чем больше дополнительных серверов на зону, тем лучше, главное, чтобы они постоянно синхронизировали свое содержимое.

Когда DNS сервер получает запрос от клиента на поиск записи, он сначала проверяет у себя - может требуемая запись входит в те зоны, которые обслуживаются им. Если так, то он может ответить клиенту немедленно. Однако если требуемая запись не найдена на этом сервере, то сервер направит запросы к другим сервера для ее поиска. Поиск начинается с одного из серверов отвечающего за root(главную) зону, который направит на другой DNS сервера, а он на третий и так далее, пока требуемая запись не будет найдена. Если требуемая запись не существует, тогда один из DNS серверов скажет об этом и поиск остановится.

Например, представьте если DNS клиент запрашивает сервер об IP адресе для хоста www.webmin.com.

Сервер пройдет следующие шаги для определения IP адреса:

1. Сначала он сделает запрос к одному из root(главный) серверов, такой как a.root-servers.net(198.41.0.4), чтобы попробовать отыскать IP адрес для www.webmin.com . Root сервер ответит списком DNS серверов обслуживающих зону.com. Один из них a.gtld-servers.net(192.5.6.30).

2. Далее он сделает запрос к серверу обслуживающему.com зону с запросом IP адреса для www.webmin.com . Ответом будет список DNS серверов, один из которых au.webmin.com(203.89.239.235). Это главный DNS сервер для домена webmin.com.

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 адресами и их hostname(имя хоста) хранится в DNS отдельно от связи между hostname(имя хоста) и IP адресом. Это сделано для того, чтобы сделать возможным поиск hostname(имя хоста) по IP адресу используя схожий, с описанным выше, алгоритм действий. Объясняется это тем, что могут случится несоответствия между отношениями IP адреса к hostname, и hostname к IP адресу. К примеру, www.webmin.com связан с 216.136.171.204, но 216.136.171.204 относится к usw-pr-vhost.sourceforge.net! Это вызывает путаницу, но это реальный факт. Когда клиент хочет найти hostname(имя хоста) для IP адреса вроде 216.136.171.204, он преобразует этот адрес в запись вида 204.171.136.216.in-addr.arpa. Как вы можете видеть это тот же самый IP адрес, только задом на перед и к нему добавлено к концу in-addr.arpa. Специальная зона in-addr.arpa обслуживается root DNS серверами, и её поддомены доступны для других DNS серверов. Обычно каждая зона класса C (например, 171.136.216.in-addr.arpa) обслуживается DNS серверами компаний или интернет-провайдеров, которые обладают этими зонами. Это означает, что они могут создавать записи, которые определяют свзяь между IP адресом и его hostname(имя хоста). Все эти записи специального типа - PTR. Большая проблема связана с методом отыскания всего, что меньше класса C (который включает в себя 256 адресов) и обслуживается одним DNS сервером. Таким образом, если сервер обслуживает зону example.com, которая содержит лишь одну запись, www.example.com с адресом 1.2.3.4, то некоторый сервер не сможет отыскать этот адрес. Поэтому лучше, чтобы эту одну запись имел DNS сервер интернет-провайдера или хостинг компании, чья сеть включает веб-сервер для www.example.com . Только организации могут иметь необходимость владеть сетью класса C и обслуживать обратную зону для этой сети используя их собственный DNS сервер.

Много организаций имеем внутреннюю сеть, которая использует частные IP адреса, начинающиеся, к пример, с 192.168. Сеть вроде этой, подключается к Интеренету через firewall используя NAT. Некоторые люди имеющие домашнюю сеть организуют свой доступ в Интернет следующим образом. Одна из машин имеет доступ в Интернет напрямую. Она является шлюзом(Gateway). Остальные подключаюся через неё. Получается, что они работают в Интернет под одним IP адресом.

Также в таких сетях может понадобится DNS сервер для выдачи hostname компьютерам внутренней сети. Это возможно, создав зону с произвольным именем вроде home или internal, которая содержит записи о внутренних компьютерах сети, а также создав обратную зону для 192.168 сети, таким образом, что IP адреса могут быть найдены по запросу. Сервер также может быть настроен для поиска реальных Интернет hostname(имя хоста), как любой нормальный DNS сервер. Однако, такой поиск ни к чему не приведет, так как ваша локальная зона не зарегистрирована в Интернет.

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

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

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

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

Обычно под хостом подразумевается протокол 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 или после перехода по неизвестной ссылке предоставить вам все эти сведения.

| |

Многие хостинг-провайдеры предоставляют доступ к панели управления. В ней есть раздел настроек DNS. Здесь создаются DNS-записи.

Требования

Чтобы настроить имя хоста, нужно иметь:

  • Виртуальный сервер.
  • Доменное имя.

1: Сбор информации с помощью WHOIS

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

Для этого введите в командную строку:

whois example. com

WHOIS отобразит все данные, связанные с сайтом, включая регистратора вашего домена.

2: Изменение сервера домена

Войдите в панель управления регистратора домена и найдите поле типа Domain Name Server.

Направьте его на серверы имен провайдера и заполните три поля Domain Name Server. После этого сохраните изменения и выйдите.

Чтобы убедиться, что новые серверы имен были зарегистрированы, снова используйте WHOIS; в результате вы увидите обновленную информацию:

Domain Name: EXAMPLE.COM
Registrar: ENOM, INC.
Whois Server: whois.enom.com
Referral URL: http://www.enom.com
Name Server: NS1.HOSTING-PROVIDER.COM
Name Server: NS2.HOSTING-PROVIDER.COM
Name Server: NS3.HOSTING-PROVIDER.COM
Status: ok

Хотя серверы имен видны в выводе WHOIS, может потребоваться час или два, чтобы изменения отразились на сайте.

3: Настройка домена

Теперь откройте панель управления вашего хостинг-провайдера.

Найдите раздел типа «Добавить домен» и введите свой домен.

Примечание : Домен не должен содержать префикс www.

Вы попадете на страницу, где вы сможете ввести все данные своего сайта. Чтобы создать новое имя хоста, вам нужно только заполнить запись A. Если вы используете адрес IPv6, вы должны ввести его в запись AAAA.

Запись А

Введите IP-адрес сервера, который будет использовать этот домен и имя хоста. Имя хоста идет перед доменом:

test.example.com

Создайте новую запись А, где HOSTNAME имеет значение test. В поле WILL DIRECT TO введите IP-адрес сервера, с которым нужно связать это имя.

HOSTNAME: test
WILL DIRECT TO: 1111.1.111.1
TTL (SECONDS): 3600

Вы также можете подключить IP-адрес к доменному имени без префикса:

http://example.com

Для этого создайте новое имя хоста с символом «@» в поле HOSTNAME. Запись должна выглядеть так:

HOSTNAME: @
WILL DIRECT TO: 1111.1.111.1
TTL (SECONDS): 3600

Нажмите кнопку Создать запись.

Запись АААА

Введите адрес IPv6 сервера, который будет использовать этот домен и имя хоста. Имя хоста идет перед доменом. Вы также можете подключить свой IP к базовому доменному имени без префикса. Для этого создайте новое имя хоста с символом @ в поле HOSTNAME. Запись должна выглядеть так:

HOSTNAME: @
WILL DIRECT TO: 1111:1DB1::d:1111
TTL (SECONDS): 3600

Нажмите кнопку Создать запись.

Запись CNAME

Запись CNAME работает как псевдоним записи A, направляя субдомен на запись A. Если IP-адрес записи А изменится, CNAME будет следовать новому адресу. Чтобы добавить префикс www к URL-адресу, выберите запись CNAME и заполните два поля.

Экран должен выглядеть так:

HOSTNAME: www
IS AN ALIAS OF: @
TTL (SECONDS): 43200

Также можно создать шаблонную запись CNAME, которая будет направлять всве субдомены на указанную запись A (например, если посетитель случайно введет wwww вместо www). Для этого в поле HOSTNAME ставится звездочка.

HOSTNAME: *
IS AN ALIAS OF: @
TTL (SECONDS): 43200

Если вам нужно настроить почтовый сервер используйте записи MX.

Записи МХ

Запись МХ состоит из полей:

  • HOSTNAME (определяет, к каким хостам должна применяться запись),
  • MAIL PROVIDERS MAIL SERVER (указывает на почтовый сервер),
  • PRIORITY (обозначает порядок подключения к почтовым серверам).

В большинстве случаев поле HOSTNAME содержит символ @, чтобы запись применялась к базовому домену. Эти записи всегда заканчиваются символом точки. Стандартная запись МХ выглядит так:

mail1.example.com

3: Заключительные действия

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

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



error: Контент защищен !!