This article is available in Russian only. English translation is not yet available.
DNS

Что такое DNS и как он работает

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

DNS (Domain Name System) — это распределённая база данных, которая связывает доменные имена с сетевыми ресурсами: IP-адресами, почтовыми серверами, текстовыми записями. Когда вы вводите example.com в браузере, DNS определяет, по какому IP-адресу находится сервер, и браузер подключается к нему.

Без DNS пользователи должны были бы вводить IP-адреса вроде 93.184.216.34 вместо понятных имён. DNS работает незаметно при каждом открытии сайта, отправке письма и делегировании домена.

Как устроен запрос DNS

Запрос проходит через несколько уровней:

  1. Клиент (браузер, почтовый клиент) обращается к рекурсивному резолверу — обычно это сервер вашего провайдера или публичный резолвер вроде 8.8.8.8 (Google) или 1.1.1.1 (Cloudflare).
  2. Рекурсивный резолвер спрашивает корневые серверы (root), чтобы узнать, какие серверы отвечают за зону .com.
  3. Серверы зоны .com (TLD) направляют к авторитетным серверам конкретного домена example.com.
  4. Авторитетный сервер отдаёт запись — например, A-запись с IP-адресом.
  5. Резолвер кеширует ответ на время TTL и возвращает его клиенту.

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

Основные типы записей

Тип Что содержит Когда нужен
A IPv4-адрес сервера Сайт или услуга работает по домену
AAAA IPv6-адрес сервера Клиенты с IPv6 не могут открыть сайт
CNAME Псевдоним для другого домена Поддомен указывает на внешний сервис
MX Почтовый сервер и приоритет Настройка приёма почты на домен
NS Авторитетные серверы зоны Делегирование домена другим DNS-серверам
TXT Текстовые данные: SPF, DKIM, DMARC, верификации Проверки и почтовые политики
SOA Параметры зоны: серийный номер, TTL, контакты Диагностика рассинхронизации DNS-серверов

Для проверки почтовых записей (MX, SPF, DMARC) используйте отдельный инструмент проверки почтовых DNS.

TTL и кеширование

Каждая DNS-запись имеет TTL (Time to Live) — время в секундах, в течение которого резолвер может хранить ответ в кеше. Пока TTL не истечёт, резолвер отдаёт старое значение, даже если на авторитетном сервере запись уже изменилась.

dig example.com A +short
dig example.com AAAA +short
dig example.com MX +short

Команда dig показывает DNS-ответ с указанием оставшегося TTL. Подробнее о влиянии TTL на распространение изменений — в определении TTL. Срок жизни кеша — ключевая причина, по которой DNS-изменения видны не сразу.

Типичные ошибки

  • Ввод URL вместо домена. DNS работает с доменными именами, а не с полными адресами https://example.com/path.
  • Ожидание мгновенного обновления. Изменение DNS-записи с TTL 3600 может быть видно только через час.
  • Проверка только одного NS. Если авторитетные серверы рассинхронизированы, разные NS могут отдавать разные ответы. Сравните ответы всех NS через dig @ns1.example.com и dig @ns2.example.com.
  • Игнорирование IPv6. Если сайт работает по IPv4, но не открывается у IPv6-клиентов, проверьте AAAA-запись отдельно.

Практический пример

Домен example.com зарегистрирован через регистратора, DNS управляется через панель хостинг-провайдера. Чтобы направить домен на новый сервер с IP 203.0.113.10:

  1. Откройте панель управления DNS у вашего провайдера.
  2. Найдите или создайте A-запись для example.com со значением 203.0.113.10.
  3. Если используется www, создайте CNAME-запись wwwexample.com.
  4. Сохраните изменения и дождитесь распространения (проверьте через проверку распространения DNS).

Несколько часов между изменением и доступностью — норма, не ошибка. Если через 24 часа новый IP не виден, проверьте NS-записи и корректность A-записи на авторитетном сервере.

Частые вопросы

Что такое DNS простыми словами?

DNS — это система, которая преобразует доменное имя (например, example.com) в IP-адрес сервера. Без DNS пришлось бы вводить IP-адрес вместо имени.

Чем рекурсивный резолвер отличается от авторитетного сервера?

Рекурсивный резолвер (например, 8.8.8.8) принимает запрос от клиента и сам обходит цепочку DNS-серверов. Авторитетный сервер — финальный источник записей для конкретной зоны.

Какие основные типы DNS-записей существуют?

A (IPv4-адрес), AAAA (IPv6-адрес), CNAME (псевдоним), MX (почтовый сервер), NS (делегирование), TXT (текстовые данные), SOA (параметры зоны).

Check it in practice

Related terms

Sources

  1. RFC 1034: Domain Names — Concepts and Facilities
  2. RFC 1035: Domain Names — Implementation and Specification
  3. IANA: Domain Name System (DNS) Parameters

Как проверить DNS-записи домена

Разбираем, где смотреть DNS-записи, как отличить авторитетный ответ от кешированного и какие ошибки не следует принимать за поломку DNS.

Что такое TTL в DNS

TTL задаёт допустимое время кеширования DNS-данных в секундах, но не гарантирует одновременное обновление всех клиентов.