DNS
Система доменных имен (DNS) — это фундаментальная технология современной всемирной паутины. Он основан на иерархической системе именования устройств, служб и ресурсов.
Спецификация DNS была впервые описана в 1983 году Джоном Постелом и Полом Мокапетрисом. Они разработали уникальную структуру идентификации хоста, которая включает в себя как имя, так и категорию.
Через год была введена общая классификация доменов верхнего уровня (gTLD), которая включала описания основных доменов, таких как .com, .org, .edu и других.
Использование DNS
Любой сайт, доступный в глобальной сети. Для развития такого устройства в сети, ему предстоит заболеть IP-адрес — идентификатор вида XXX.XXX.XXX.XXX.
Для открытия определенного сайта необходимо узнать IP-адрес устройства, на котором он расположен.
Пользователи каждый день работают с загрузкой сайтов, и очень сложно запоминают IP-адреса стольких устройств. Поэтому для упрощения работы использовалась система доменных имен.
Порядок работы DNS
Доменное имя обеспечивает простое и запоминающееся имя для любого IP-адреса. Когда пользователь вводит доменное имя в свой браузер, запрос перенаправляется на сервер DNS (система доменных имен). Затем сервер преобразует доменное имя в IP-адрес и ищет во всемирной паутине соответствующее устройство. Если устройство обнаружено, сервер отправляет ему запрос и получает ответ, который затем отображается пользователю. С другой стороны, если IP-адрес устройства не может быть определен, пользователь получит сообщение об ошибке.
Ресурсные записи:
A — главный IP. Формат:
yandex.ru | A | 000.000.000.000 |
cloud.yandex.ru | A | 000.000.000.000 |
CNAME — определяет привязку доменов нижнего уровня к основному:
www.example.com CNAME example.com
MX — работа почтового сервиса:
url.ru | MX | 10 | mail1.url.ru |
url.ru | MX | 20 | mail2.url.ru |
Алгоритм работы
- Когда пользователь вводит адрес веб-сайта в свой браузер, браузер сначала проверяет наличие локального файла под названием «hosts» на компьютере пользователя. Этот файл сопоставляет домен с IP-адресом и полезен только в том случае, если веб-сервер развернут на компьютере пользователя. Если адрес найден в файле hosts, сайт загрузится сразу. Если нет, браузер отправляет DNS-запрос на серверы интернет-провайдера, чтобы найти IP-адрес домена.
- Интернет-провайдер имеет локальные кэширующие DNS-серверы на своем сетевом оборудовании. DNS-сервер проверяет кэш на наличие записей, соответствующих домену и IP-адресу. Если запись найдена, браузер принимает IP-адрес, и страница открывается пользователю. Если запись не найдена, сервер провайдера передает запрос на корневые DNS-серверы.
- Корневые DNS-серверы знают о DNS-серверах определенной доменной зоны, в данном случае .ru. Они проверяют доменное имя и отправляют его на соответствующие DNS-серверы для разрешения. DNS-серверы зоны .ru хранят информацию обо всех доменах в своей зоне. При вводе доменного имени, такого как yandex.ru, DNS-сервер получателя получает соответствующий ему IP-адрес. Затем сервер провайдера кэширует этот IP-адрес и отправляет ответ обратно.
Типы DNS-серверов
TLD-сервера — содержат в себе домены высшего уровня хоста.
Корневые — серверы, находящиеся на верхнем уровне системы доменных имен. Количество корневых серверов — 13. Необходимы для анализа запросов. Авторитативные — самый низкий уровень в иерархии, содержат в себе записи об IP-адресах.
Типы DNS-запросов
Итеративные запросы — эти запросы отправляются в случае, если преобразователь не возвращает ответ по причине отсутствия кеширования. Рекурсивные — первоначальные DNS-запросы используют преобразователь — механизм, предназначенный для преобразования имен хостов в соответствующие им IP-адреса. Как правило, поставщику услуг Интернета (ISP) отправляются только рекурсивные запросы.Нерекурсивные — запросы, отправленные распознавателю, могут дать немедленные результаты либо путем немедленного направления на авторитарный сервер, либо путем доступа к зашифрованному IP-адресу на соответствующем DNS-сервере.
Управление с Cloud DNS
- Инициализируйте зоны DNS. У вас есть возможность создать публичную зону DNS, а также внутреннюю.
- Добавьте записи — https://cloud.yandex.ru/docs/dns/operations/resource-record-create
- Установите роли — https://cloud.yandex.ru/docs/iam/operations/roles/grant