Простыми словами о DNS: что это и как работает

Что такое DNS-сервер

DNS-сервер (domain name system) — это сервер системы получения информации о доменах. Например, соответствия доменного имени IP-адресу.  

DNS (Domain Name System) — технология, которая выполняет роль своеобразного «адресного указателя» в интернете. Она преобразует домены, например, ddos-guard.ru, в IP-адреса. Они используются устройствами для обмена информацией. Благодаря существованию DNS-системы не нужно запоминать сложные цифровые последовательности, чтобы посетить сайт — достаточно просто знать его название.

Принцип работы DNS

DNS Представьте, что вы решили отправить письмо другу, но помните только имя своего получателя, забыв его адрес. DNS-система работает так — она находит «адрес» (IP-адрес) для каждого «имени» (домена), чтобы устройства могли связаться друг с другом.

Процесс начинается с отправки запроса: «Какой IP у этого домена?» Этот запрос путешествует через цепочку DNS-серверов о которых сегодня пойдет речь в этой статье. 

Далее по тексту IP и IP-адрес — синонимы. 

Углубляемся в тему:      

Что такое IP-адрес?      
Что такое домен?

DNS-серверы — это устройства, которые выполняют передачу данных о доменах и их IP-адресах. В то время как сам DNS представляет собой общий процесс преобразования доменных имен в числовые адреса, DNS-серверы являются её рабочими элементами, обрабатывающими запросы и передающими нужную информацию.

Система доменных имен играет важную роль для интернета: когда пользователь вводит адрес сайта в браузере, например, ddos-guard.ru, сервер начинает искать в системе соответствующий IP-адрес этого домена. При этом каждый DNS-сервер выполняет строго определённые задачи. Распределённость обязанностей позволяет системе работать быстро и эффективно.

В процессе работы DNS поиска может быть задействовано сразу несколько серверов. В терминологии DNS специалисты чаще всего выделяют 4 опорных вида серверов: рекурсор — он же публичный сервер, root или корневой, TLD и авторитетный. На них остановимся и расскажем подробнее.

1. Публичный DNS-сервер 

Публичный DNS-резолвер, публичный DNS-рекурсор — синонимы. К этому серверу может обращаться любой пользователь интернета — он доступен для широкого использования. Известными публичными DNS-серверами являются Google с адресами 8.8.8.8 и 8.8.4.4.

2. Корневой (root) DNS-сервер

Существует 13 групп корневых серверов, которые управляются различными организациями. Они играют ключевую роль в перенаправлении запросов на нужные DNS-серверы доменов верхнего уровня — TLD от англ. top-level domain.

3. TLD-сервер

Сервер доменов верхнего уровня отвечает за хранение информации о доменах верхнего уровня, таких как .com, .org, .ru и других. TLD помогает найти информацию о DNS-зонах для этих доменов и перенаправляет запросы на авторитетные серверы. Когда пользователь введет «ddos-guard.net», DNS-сервер может запросить сервер доменов верхнего уровня, который укажет, где искать информацию о конкретном домене (в данном случае .net).

4. Авторитетный DNS-сервер

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

Важно сказать о безопасности DNS-серверов. Существует несколько угроз, которые эксплуатируют особенности работы DNS — это DNS-флуд, DNS-амплификация. Если атака придется на DNS-сервер, даже при условии, что веб-хостинг работает исправно, пользователи не смогут попасть на ваш ресурс. Во все услуги DDoS-Guard защищенные DNS-сервера входят по умолчанию.

После ввода доменного имени сайта (ddos-guard.ru) запрос отправляется на DNS-сервер для получения IP-адреса. Это нужно для того, чтобы браузер мог найти этот сайт в сети и отобразить его пользователю. Доменное имя, простыми словами, и есть сайт — это синонимичные значения. 

Работа DNS проходит в несколько этапов:

  1. Запрос. Пользователь вводит доменное имя в строке браузера, тот сначала ищет соответствие домена (сайта) IP-адресу в файлах на локальном компьютере. Если в нем есть соответствующие записи, тогда сайт сразу откроется. В том случае, если нужной информации не найдется, браузер формирует DNS-запрос к DNS-серверу, чтобы он нашел нужный IP-адрес для сайта.
  2. Проверка. Публичный сервер сначала проверяет, есть ли у него в кэше нужный IP для запрашиваемого домена. Если данные отсутствуют, тогда он запрашивает корневой (root) сервер, а тот в свою очередь перенаправляет запрос на TLD-сервер (например, .com или .org).
  3. Запрос к TLD-серверу. Серверы доменов верхнего уровня передают информацию, где находится авторитетный DNS для конкретного домена, например, ddos-guard.ru. 
  4. Запрос к авторитетному DNS-серверу. Рекурсивный резолвер (публичный сервер) отправляет запрос к авторитетному DNS-серверу, который хранит точную информацию о домене, включая его IP-адрес.
  5. Ответ DNS-сервера. Публичный сервер получает IP необходимого сайта от авторитетного сервера и передает его браузеру, который после этого устанавливает соединение с нужным для пользователя веб-сервером.
Упрощенная схема работы DNS-серверов — DDoS-Guard
На схеме изображен упрощенный принцип работы между DNS-серверами.

Общение между DNS-серверами происходит путем отправки запросов. DNS-запросы — это обращения одного устройства к другому в системе DNS. Примеры таких устройств: компьютеры, серверы, смартфоны, умные ассистенты и прочие.     

DNS-запросы бывают двух видов: рекурсивные и итеративные. На схеме, где изображён принцип работы DNS, показано, на каком этапе выполняется каждый из этих запросов.

  • Рекурсивные запросы — это первые запросы на поиск DNS-записей, которые отправляются с пользовательских устройств к резолверу.
  • Нерекурсивные (итеративные) — запросы, которые не требуют полного поиска записей DNS.

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

Процесс обработки запроса DNS-серверов

Начинается все с того как пользователь вводит запрос в браузер, например, ddos-guard.ru:

  1. Браузер проверяет локальный кэш на наличие IP-адреса. В случае если он не найден, запрос отправляется на DNS-резолвер (публичный DNS).
  2. DNS-резолвер обращается к корневому серверу, чтобы получить сведения о том какой TLD-сервер ему нужен.
  3. Корневой отправляет данные с нужным TLD-сервером, где хранятся записи для .ru доменов.
  4. Получив ответ, резолвер обращается к TLD-серверу.
  5. TLD возвращает резолверу данные о запрашиваемом авторитетном DNS-сервере — ns1.ddos-guard.net.
  6. Публичный сервер отправляет запрос к авторитетному, чтобы получить актуальные данные о домене.
  7. Авторитетный сервер возвращает действующий IP-адрес — 185.178.208.163.
  8. Браузер использует этот IP-адрес для установления связи с сервером, чтобы загрузить веб-страницу.

Таким образом, механизм DNS-резолвинга позволяет преобразовать домен ddos-guard.ru в IP-адрес, чтобы браузер мог установить соединение с сервером, отвечающим за данный домен.


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

Функции первичных DNS-серверов

На этом сервере, который является частью системы DNS-серверов, лежит оригинальный (первичный) файл, доступный для редактирования. Он содержит в себе всю авторитетную информацию о домене, включая его IP-адрес, личность администратора домена и различные записи ресурсов.

Первичный сервер отвечает за обслуживание доменных зон и обрабатывает изменения в них в отличие от вторичных серверов.

Функции вторичных DNS-серверов

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

Как и в случае с сетями, DNS делят на два основных типа: публичные и частные.

  • Публичные DNS-серверы — доступны всем пользователям интернета — о их функциях мы говорили в начале статьи.
  • Частные DNS-серверы работают так же, как публичные, выполняя задачи резолвера, но доступны только ограниченной группе пользователей, имеющих доступ к корпоративной или домашней сети, в которой была создана частная DNS-сеть.

Углубляемся в тему:      

Как настроить DNS-записи       
Как выполнить настройку проксирования без изменения существующих A-записей или путем их замены.


Что такое DNS-записи

DNS-записи или ресурсные записи — это данные на DNS-серверах, которые связывают домены с IP-адресами, почтовыми серверами и другими веб-ресурсами. Они определяют работу домена: маршрутизацию трафика (A, AAAA), настройку почты (MX), перенаправление (CNAME) и хранение текстовых данных (TXT). Каждая ресурсная запись включает имя, тип, TTL и значение.

 

TTL (англ. Time to live) — определенный период времени или максимальное количество переходов между маршрутизаторами, которое может пройти пакет данных. В контексте DNS-записей, термин TTL определяет актуальность данных при кэшировании запросов.

Список основных DNS-записей

 

  • A (address) — связывает домен с IPv4-адресом.
  • AAAA (IPv6 address) — связывает домен с IPv6-адресом.
  • CNAME (canonical name) — сопоставляет одно домен с другим.
  • MX (mail exchange) — указывает DNS-сервер для обработки электронной почты домена.
  • NS (name server) — указывает авторитетные DNS-серверы для домена.
  • PTR (pointer) — используется для обратного преобразования IP-адреса в домен.
  • TXT (text) — хранит текстовую информацию.
  • SRV (service) — стандарт DNS-системы, который определяет местоположение имени хоста и номера порта сервера для определенных служб.
  • SOA (start of authority) — содержит административные сведения о зоне: первичный DNS-сервер и данные о синхронизации между серверами.
DNS-адрес

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

 

  • 8.8.8.8 и 8.8.4.4 — DNS-адреса Google
  • 77.88.8.8 и 77.88.8.1 — DNS-адреса Яндекс
DNS-зона

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

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

 

Углубляемся в тему:      

Что такое доменная зона: для чего нужна. Функции, типы доменных зон TLD и советы по выбору.

Где находятся DNS-серверы

Существует 13 корневых DNS-серверов (от a.root-servers.net до m.root-servers.net), но благодаря технологии anycast каждая из них представлена сотнями физических копий по всему миру. Общее количество таких экземпляров превышает 1900, и они расположены в более чем 1300 городах, включая Россию. Например DNS сервера есть в Москве, Санкт-Петербурге, Новосибирске, Екатеринбурге и Ростове-на-Дону.

 «Некорневые» сервера объединяют все остальные уровни DNS-системы: серверы доменных зон (например, .ru), авторитативные серверы хостинг-провайдеров и рекурсивные резолверы интернет-провайдеров (как Ростелеком или МТС) и публичные сервисы (Яндекс.DNS). Их количество исчисляется миллионами по всему миру. В России они представлены повсеместно — у каждого провайдера и в каждом крупном дата-центре, обеспечивая обработку запросов пользователей.


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