Протокол DNS
1 1 1 1 1 1 1 1 1 1 Рейтинг 3.58 [13 Голоса (ов)]

DNS ( Domain Name System — система доменных имён) — компьютерная распределённая система преобразование символьного имени (just-networks.ru) в IP-адрес (91.106.203.89) и наоборот.

DNS была разработана Полом Мокапетрисом в 1983 году.

В сети интернет DNS выполняет важную задачу, для доступа к веб-серверу необходимо знать его IP-адрес. Необходимость использования DNS обусловлена тем, что людям легче запоминать буквенные (обычно осмысленные) адреса, чем последовательность четырех цифр IP – адреса, компьютерам, в свою очередь, удобнее обрабатывать численное представление адреса (IP-адрес). Также наличие символьного имени сервера позволяет использовать так называемые виртуальные серверы , например, HTTP-серверы, отличающиеся друг от друга именем запроса (доменным именем), но использующие один и тот же IP-адрес.

В начале для преобразования IP-адресов в символьные имена использовался текстовый файл hosts , расположенный:

  • В Windows: %SystemRoot%\system32\drivers\etc\hosts;
  • В Unix: /etc/hosts;

Пример файла hosts в Windows

hosts

Файл hosts заполнялся автоматически и централизовано на каждой ЭВМ в своей локальной вычислительной сети. Но даны подход со временем показал свою не-состоятельность, поскольку с ростом сети, количество записей в текстовом файле увеличивалось, как следствие увеличивался размер файла, ко всему прочему частая пересылка файла hosts загружала вычислительную сеть.

В итоге стала необходимость в разработке автоматизированного механизма, которым и стала распределенная система DNS.

Следует учесть, что файл hosts используется до сих пор, в частности, при настройке локального сервера на ЭВМ, в hosts записываются созданные локальные символьные имена. Например:

  • 127.0.0.1 mysite.local

Иерархия имен в DNS

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

DNS сервера

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

В основе иерархической структуры DNS лежит представление о доменном имени и зонах. Каждый DNS сервер, отвечающий за имя, может передать ответственность за дальнейшую часть домена другому серверу, что позволяет делегировать ответственность за вновь добавленную информацию на серверы различных организаций (людей), ответственных непосредственно только за «свою» часть доменного имени.

Система доменных имен

Иерархия доменных имен начинается с корневого домена без имени (или еще как его называют «домен точка»), далее идут домены верхнего уровня или домены первого уровня. Домены верхнего уровня поделены на три зоны:

  • arpa это специальный домен, используемый для сопоставления адрес - имя
  • Семь трехсимвольных доменов называются общими (generic) доменами или организационными (organizational) доменами.
  • Двухсимвольные домены, так называемые домены стран или географические домены (ru – Российская федерация, kz - Казахстан), основанные на кодах стран, в соответствии с ISO 3166.

Поскольку DNS поддерживает иерархию доменных имен, но никак не IP-адресов. Для решения “обратной” задачи есть специальный домен, структура которого совпадает со структурой IP-адресов. Называется этот домен IN-ADDR.ARPA .

in-addr.arpa — специальная доменная зона, предназначенная для определения имени хоста по его IPv4-адресу, используя PTR-запись. Имена в домене IN-ADDR.ARPA образуют иерархию цифр, которые соответствуют IP-адресам. Правда, записываются эти имена в обратном порядке относительно написания IP-адреса.

Например, доменное имя just-networks.ru, которое имеет адрес 91.106.203.89 должна быть описана в домене in-addr.arpa как 89.203.106.91.in-addr.arpa, то есть адрес записывается в обратном порядке.

Типы записей DNS

Основные типы записей используемые в протоколе DNS

    • A запись (address record IPv4 ) или запись адреса - основная запись, выполняет связующую роль между именем хоста (just-networks.ru) и IP адресом (5.101.153.37). Если меняется только А запись, то это значит, что наш сайт физически будет размещен на другом хостинге, а все остальные записи останутся работать на старом хостинге.
НазваниеТип записиАдрес
just-networks.ru A 5.101.153.37
    • AAA запись (address record IPv6 ) или запись адреса - аналогична записи A, только для IPv6.
НазваниеТип записиАдрес
just-networks.ru AAA FFEA::CA28:1210:4362
    • CNAME запись (canonical name record) или каноническая запись имени (псевдоним) - используется для перенаправления на другое имя (по аналогии с ссылками), частным примером использования CNAME записи, является создание доменных имен для ftp, mail, ssh, например
НазваниеТип записиАдрес
ftp.just-networks.ru CNAME www.just-networks.ru
mail.just-networks.ru CNAME www.just-networks.ru
ssh.just-networks.ru CNAME www.just-networks.ru
    • MX запись (mail exchange) или почтовый обменник, указывает те сервера, с которыми будет осуществлен обмен для данного домена. То есть определяет сервер, который будет обрабатывать почту для вашего домена. В случае отсутствия MX-записи, запрашивается A-запись
НазваниеТип записиАдрес
www.just-networks.ru MX mx1.beget.ru
www.just-networks.ru MX mx2.beget.ru
    • NS запись (name server) указывает на DNS сервер текущего домена, так называемые authoritative DNS-серверы. Смена NS-записи, при переходе на другой хостинг, всечёт за собой смену всех записей, соответственно нужно или указывать новые записи или копировать со старого сайта (например, для сохранения почты, нужно скопировать MX-запись со старого хостинга). При неправильном изменении NS записи домена, может привести к остановке работы сайта.
НазваниеТип записиАдрес
www.just-networks.ru NS ns1.beget.ru
www.just-networks.ru NS ns2.beget.ru
    • TXT запись текстовая запись содержащая 254 байта любой текостовой информации, в основном используется для подтверждения принадлежности домена для севрисов yandex, google.
НазваниеЗначение
yandex validate value for yandex