Как работает DNS
Рекурсивные и авторитетные серверы, типы записей, кэш и TTL.
· 8 мин чтения
Задача DNS
DNS переводит имена в адреса и хранит служебные данные домена. Это распределённая иерархическая база: корневые серверы, серверы зон верхнего уровня и серверы конкретных доменов.
Рекурсивный и авторитетный
Авторитетный сервер хранит записи зоны и отвечает только за неё. Рекурсивный (резолвер) получает запрос клиента и сам обходит иерархию, начиная с корня, а затем кэширует результат.
dig example.com +traceОсновные записи
A и AAAA — IPv4 и IPv6 адреса, CNAME — псевдоним на другое имя, MX — почтовые серверы, TXT — произвольный текст, NS — серверы зоны.
dig example.com A +short
dig example.com MX +short
dig example.com NS +shortКэш и TTL
TTL — время в секундах, в течение которого резолвер может хранить ответ. Перед переездом сервиса заранее снизьте TTL записи, подождите старый срок и только потом меняйте адрес.
Проверка
dig @ns1.example.com example.com A
dig @1.1.1.1 example.com A
resolvectl query example.comСравнение ответа авторитетного сервера и публичного резолвера показывает, где расходятся данные.
Вывод
Разделяйте две роли — авторитетную и рекурсивную — и проверяйте обе. Большая часть проблем DNS объясняется кэшем или неверной записью в зоне.
Связанные статьи
TCP против UDP
Чем отличаются протоколы транспортного уровня и как выбрать подходящий.
Диагностика сети Linux: от ping до tcpdump
Последовательный подход к сетевым проблемам: интерфейс, маршрут, DNS, порт, пакеты.