Найти в Дзене
JuniSysAdmin

Что такое DNS? Коротко о главном

DNS (Domain name system) - система доменных имен, которая представляет собой иерархическую структуру. В DNS хранятся записи об ip-адресах ресурсов.
Существует три уровня домена: первый (TLD), второй (2LD) и третий (3LD). Например: Рассмотрим процесс преобразования доменного имени сайта в IP-адрес. Преобразование это называется разрешение DNS-имени. Нам необходимо открыть сайт "google.com", благодаря DNS, нет нужды вводить ip-адрес сайта, можно просто прописать домен в адресной строке браузера. 1. Для начала DNS-клиент проверяет есть ли такая запись в его КЭШ (записи также можно прописывать принудительно в файле hosts), если результата нет, он отправляет запрос на 1й DNS-сервер (предпочитаемый), который указан в настройках сетевого адаптера ПК, если тот недоступен, запрос отправляется на 2й DNS-сервер (альтернативный). 2. DNS-клиент отправляет на сервер рекурсивный запрос (запрос на предоставление готового результата называется рекурсивным). Сервер DNS, который получил запрос, сначала п

DNS (Domain name system) - система доменных имен, которая представляет собой иерархическую структуру. В DNS хранятся записи об ip-адресах ресурсов.
Существует три уровня домена: первый (TLD), второй (2LD) и третий (3LD). Например:

Уровни домена
Уровни домена

Иерархическая структура:

Иерархическая структура
Иерархическая структура

Рассмотрим процесс преобразования доменного имени сайта в IP-адрес. Преобразование это называется разрешение DNS-имени.

Процесс преобразования
Процесс преобразования

Нам необходимо открыть сайт "google.com", благодаря DNS, нет нужды вводить ip-адрес сайта, можно просто прописать домен в адресной строке браузера.

1. Для начала DNS-клиент проверяет есть ли такая запись в его КЭШ (записи также можно прописывать принудительно в файле hosts), если результата нет, он отправляет запрос на 1й DNS-сервер (предпочитаемый), который указан в настройках сетевого адаптера ПК, если тот недоступен, запрос отправляется на 2й DNS-сервер (альтернативный).

2. DNS-клиент отправляет на сервер рекурсивный запрос (запрос на предоставление готового результата называется рекурсивным). Сервер DNS, который получил запрос, сначала проверяет свой КЭШ, если там такой записи нет - смотрит в зоны DNS, которые находятся на данном сервере (зоны, для которых этот сервер является авторитативным). Если записи нет и там, сервер начинает процесс разрешения записи итерациями. Запрос на предоставления записи без поиска по другим серверам называется итерационным.

3. Теперь необходимо понять, какие DNS-серверы обслуживают зону домена первого уровня (в нашем случае - это com). Соответственно, первая итерация - это разрешение ns-записи этого домена. Для этого необходимо отправить итерационный запрос на любой доступный DNS-сервер зоны "." и запросить у него все имеющиеся ns-записи зоны "com".

4. Когда получен список ns-записей (т.е. список DNS-серверов, которые обслуживают зону "com"), мы можем отправить еще один итерационный запрос на один из них. Нам необходимо узнать, какие DNS-серверы обслуживают зону "google.com".

5. После мы знаем, какие DNS-серверы обслуживают зону "google.com", но для того, чтобы попасть на сам сайт, необходимо разрешить ресурсную запись.

6. Запрашиваем ресурсную запись у одного из DNS-серверов и получаем запись с ip-адресом, которую DNS-клиент положит к себе в КЭШ, а браузер установит соединение с сайтом по ip, который был выдан сервером.

В зоне DNS существуют записи разных типов. Основные из них:

A - адрес любого узла в сети (ПК, сервера, сайта и т.д.). Адреса IPv4;

AAAA - аналогично записи "A", только адреса уже не IPv4, а IPv6;

SOA (Start of Authoryty) - это запись с множеством полей, в которых хранятся параметры текущей зоны DNS;

NS - запись, которая указывает на адрес DNS-сервера, который обслуживает эту зону;

MX - запись, которая указывает на адрес почтового сервера, который принимает почтовые сообщения в этом домене;

CNAME - запись, которая указывает на любую A-запись и является для нее синонимом или алиасом;

TXT - запись, которая содержит просто текст (используется для подтверждения владения доменом на разных сервисах);

PTR (Pointer) - запись указывает на имя для запрашиваемого ip-адреса.

Также существует два вида зон. Зона прямого просмотра и обратного.

Зона прямого просмотра (Forward lookup zone) - зона для преобразования имен в ip-адрес;

Зона обратного просмотра (Reverse lookup zone) - зона для преобразования ip-адресов в имена.