DNS (англ. Domain Name System — система доменных имён) — компьютерная распределённая система для получения информации о доменах. Основная цель DNS – это преобразование доменных имен в IP адреса и наоборот.

  • Доме́н (англ. domain — область) — узел в дерева имён, вместе со всеми подчинёнными ему узлами, то есть именованная ветвь или поддерево в дереве имен. Структура доменного имени отражает порядок следования узлов в иерархии; доменное имя читается слева направо от младших доменов к доменам высшего уровня : вверху находится корневой домен (не имеющий идентификатора), ниже идут домены первого уровня (доменные зоны), затем — домены второго уровня, третьего и т. д. (например, для адреса ru.wikipedia.org. домен первого уровня — org, второго wikipedia, третьего ru). На практике точку перед корневым доменом часто опускают («ru.wikipedia.org» вместо «ru.wikipedia.org.»), но она бывает важна в случаях разделения между относительными доменами и FQDN (англ. Fully Qualifed Domain Name, полностью определённое имя домена).

  • Поддомен (англ. subdomain) — подчинённый домен (например, wikipedia.org — поддомен домена org, а ru.wikipedia.org — домена wikipedia.org). Теоретически такое деление может достигать глубины 127 уровней, а каждая метка может содержать до 63 символов, пока общая длина вместе с точками не достигнет 254 символов. Но на практике регистраторы доменных имён используют более строгие ограничения.   Например, если у вас есть домен вида mydomain.ru, вы можете создать для него различные поддомены вида mysite1.mydomain.rumysite2.mydomain.ru и т. д.
  • Зона — часть дерева доменных имен, размещаемая как единое целое на некотором сервере доменных имен, а чаще — одновременно на нескольких серверах. Целью выделения части дерева в отдельную зону является передача ответственности  за соответствующий домен другому лицу или организации. Это называется делегированием . Как связная часть дерева, зона внутри тоже представляет собой дерево. Если рассматривать пространство имен DNS как структуру из зон, а не отдельных узлов/имен, тоже получается дерево; оправданно говорить о родительских и дочерних зонах, о старших и подчиненных. На практике большинство зон 0-го и 1-го уровня (‘.’, ru, com, …) состоят из единственного узла, которому непосредственно подчиняются дочерние зоны. В больших корпоративных доменах (2-го и более уровней) иногда встречается образование дополнительных подчиненных уровней без выделения их в дочерние зоны

Рассмотрим на примере работу всей системы.

Предположим, мы набрали в браузере адрес ru.wikipedia.org. Браузер спрашивает у сервера DNS: «какой IP-адрес у ru.wikipedia.org»? Однако сервер DNS может ничего не знать не только о запрошенном имени, но и даже обо всём домене wikipedia.org. В этом случае сервер обращается к корневому серверу  — например, 198.41.0.4. Этот сервер сообщает — «У меня нет информации о данном адресе, но я знаю, что 204.74.112.1 является ответственным за зону org.» Тогда сервер DNS направляет свой запрос к 204.74.112.1, но тот отвечает «У меня нет информации о данном сервере, но я знаю, что 207.142.131.234 является ответственным за зону wikipedia.org.» Наконец, тот же запрос отправляется к третьему DNS-серверу и получает ответ — IP-адрес, который и передаётся клиенту — браузеру.

В данном случае при разрешении имени, то есть в процессе поиска IP по имени:

  • браузер отправил известному ему DNS-серверу рекурсивный запрос — в ответ на такой тип запроса сервер обязан вернуть «готовый результат», то есть IP-адрес, либо пустой ответ и код ошибки NXDOMAIN;
  • DNS-сервер, получивший запрос от браузера, последовательно отправлял нерекурсивные запросы, на которые получал от других DNS-серверов ответы, пока не получил ответ от сервера, ответственного за запрошенную зону;

 

Обратный DNS-запрос (rDNS «reverse DNS» или PTR)

DNS используется в первую очередь для преобразования символьных имён в IP-адреса, но он также может выполнять обратный процесс. Для этого используются уже имеющиеся средства DNS. Дело в том, что с записью DNS могут быть сопоставлены различные данные, в том числе и какое-либо символьное имя. Существует специальный домен in-addr.arpa, записи в котором используются для преобразования IP-адресов в символьные имена. Например, для получения DNS-имени для адреса 11.22.33.44 можно запросить у DNS-сервера запись 44.33.22.11.in-addr.arpa, и тот вернёт соответствующее символьное имя. Обратный порядок записи частей IP-адреса объясняется тем, что в IP-адресах старшие биты расположены в начале, а в символьных DNS-именах старшие (находящиеся ближе к корню) части расположены в конце

Записи DNS

  • имя(NAME) — доменное имя, к которому привязана или которому «принадлежит» данная ресурсная запись,
  • тип(TYPE) ресурсной записи — определяет формат и назначение данной ресурсной записи,
  • класс(CLASS) ресурсной записи; теоретически считается, что DNS может использоваться не только с TCP/IP, но и с другими типами сетей, код в поле класс определяет тип сети
  • TTL(Time To Live) — допустимое время хранения данной ресурсной записи в кэше неответственного DNS-сервера,
  • длина поля данных (RDLEN),
  • поле данных (RDATA), формат и содержание которого зависит от типа записи.

Наиболее важные записи в домене:

  • Запись A(address record) или запись адреса связывает имя хоста с адресом протокола IPv4. Например, запрос A-записи на имя icann.org вернёт его IPv4-адрес — 192.0.34.164.
  • Запись AAAA(IPv6 address record) связывает имя хоста с адресом протокола IPv6. Например, запрос AAAA-записи на имя ROOT-SERVERS.NET вернёт его IPv6-адрес — 2001:7fd::1.
  • Запись CNAME(canonical name record) или каноническая запись имени (псевдоним) используется для перенаправления на другое имя.
  • Запись MX (mail exchange) или почтовый обменник указывает сервер(ы) обмена почтой для данного домена.
  • Запись NS(name server) указывает на DNS-сервер для данного домена.
  • Запись PTR(point to reverse) или запись указателя связывает IP-адрес хоста с его каноническим именем. Запрос в домене in-addr.arpa на IP-адрес хоста в reverse-форме вернёт имя (FQDN) данного хоста (см. Обратный DNS-запрос). Например (на момент написания), для IP-адреса 0.34.164 запрос записи PTR 164.34.0.192.in-addr.arpa вернёт его каноническое имяreferrals.icann.org. В целях уменьшения объёма нежелательной корреспонденции (спама) многие серверы-получатели электронной почты могут проверять наличие PTR-записи для хоста, с которого происходит отправка. В этом случае PTR-запись для IP-адреса должна соответствовать имени отправляющего почтового сервера, которым он представляется в процессе SMTP-сессии.
  • Запись SOA (Start of Authority) или начальная запись зоны указывает, на каком сервере хранится эталонная информация о данном домене, содержит контактную информацию лица, ответственного за данную зону, тайминги (параметры времени) кеширования зонной информации и взаимодействия DNS-серверов.

WHOIS

WHOIS (от англ. who is — «кто это?») — сетевой протокол прикладного уровня, базирующийся на протоколе TCP (порт 43). Основное применение — получение регистрационных данных о владельцах доменных имён, IP-адресов и автономных систем.

Протокол подразумевает архитектуру «клиент-сервер» и используется для доступа к публичным серверам баз данных (БД) регистраторов IP-адресов и регистраторов доменных имён. Чаще всего WHOIS-клиенты реализованы в виде консольных программ. Однако, поскольку для многих пользователей командная строка недоступна или неудобна, на основе консольных клиентов обычно создаются веб-формы, доступные пользователям на многих сайтах в Интернете.

Изначально целью появления системы WHOIS на свет было дать возможность системным администраторам искать контактную информацию других администраторов IP-адресов или доменных имён.

Пример запроса о доменном имени в консоле Linux:

Whois i.ua – узнать о доменном имени

1. Информация о доменном имени:

— регистратор : ukrnames.ua

— Днс (NS-name server) :ns1.i.uaNs2.i.ua

— статус домена: Ok (домен был зарегистрирован и начал свою работу) Hold (заморожен, надо продлить срок регистрации)

— создан: 2006-03-24

— изменен: 2015-10-02

— срок окончания регистрации домена   2017-03-24

-далее еще раз NS и их айпи

 

 

2. Подробности о регистраторе

 

 

 

 

3.Подробности о реестраторе

 

 

4. Административные подробности

 

 

 

 

 

 

 

 

5. Технические подробности

 

 

 

 

 

Пример запроса о доменном имени на ОС Windows :

Так как командная строка не знает команды whois можно воспользоваться разными интернет сайтами. В поисковой программе пишем слово whois, и перед нами множество сайтов, например https://dns.com.ua

Второй вариант whois в командной строке Windows

— необходимо скачать утилиту whoiscl

— забрасываем ее в директорию текущего пользователя C:\Windows\System32, после этого для удобства переименовываем whoiscl.exe файл в whois.exe и готово!

— запускаем командную строку и пишем whois  (доменное имя)

Более того, программа позволяет самому задать адреса регистраторов, у которых она будет брать данные в зависимости от доменной зоны. Все это можно прописать в файле whois-servers.txt.

Пример:

Comrs.internic.net
ru whois.nic.ru

А параметр -r уберет все ненужную информацию о регистраторе и оставит только инфу о домене.

 

NsLookup  =  dig, host

Для Linux

dig (англ. слово «копать», а формально — сокращение от «domain information groper») — утилита (DNS-клиент), предоставляющая пользователю интерфейс командной строки для обращения к системе DNS. Позволяет задавать различные типы запросов и запрашивать произвольно указываемые сервера. Является аналогом утилиты nslookup

host — предназначена для выполнения запросов к DNS-серверам.
По умолчанию она просто находит IP-адрес, соответствующий заданному имени хоста и наоборот.

Пример команды dig:

dig i.ua (mx, ns, A, soa, txt, any) – вставляем после домена чтоб посмотреть конкретную запись

А – ip адрес сайта

Ns – DNS( NS-name server) сервер где расположен домен

А (NS) – ip адрес DNS сервера

Query time: 0 msec  — время обработки запроса через DNS 62.244.62.244

А вот PTR запись удобно смотреть командой  host

 

Для Windows

nslookup (англ. name server lookup поиск на сервере имён) — утилита, предоставляющая пользователю интерфейс командной строки для обращения к системе DNS (проще говоря, DNS-клиент). Позволяет задавать различные типы запросов и опрашивать произвольно указываемые сервера. Её аналогом являются утилиты host и dig. Разработана в составе пакета BIND (для UNIX-систем).

Пример команды Nslookup :

nslookup –type=A i.ua  — (отобразить A запись  для домена)

nslookuptype=mx i.ua (отобразить запись MX для домена)

nslookuptype=any i.ua (отображение любых типов записей)

nslookuptype=ns i.ua (отобразить запись NS для домена)

nslookuptype=txt i.ua (отобразить запись txt для домена)

nslookuptype=ptr 91.198.36.14 (отобразить запись ptr )

Отправить ответ

avatar