2 min read

dig: разбираемся с DNS-запросами без догадок

dig: разбираемся с DNS-запросами без догадок

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

Что dig умеет показать

  • A-записи — IPv4-адрес домена
  • MX-записи — почтовые серверы домена
  • NS-записи — авторитетные DNS-серверы домена
  • TXT-записи — текстовые данные: SPF, DKIM, верификационные ключи

Диагностика проблем с почтой, проверка доступности сайта, изучение DNS-инфраструктуры — всё через одну утилиту.

Установка

В большинстве дистрибутивов dig идёт в составе пакета dnsutils:

sudo apt install dnsutils      # Debian/Ubuntu
sudo yum install bind-utils    # CentOS/RHEL

Основные команды

A-запись (IPv4-адрес):

dig example.com

MX-записи (почтовые серверы):

dig example.com MX

NS-записи (серверы имён):

dig example.com NS

TXT-записи (SPF/DKIM/верификация):

dig example.com TXT

Запрос через конкретный DNS-сервер (например, Google DNS):

dig @8.8.8.8 example.com

Полезно, чтобы проверить, что видит конкретный резолвер — особенно когда подозреваешь, что изменения ещё не разошлись по всему миру.

Короткий вывод (только ответ):

dig +short example.com

Обратный DNS-поиск (домен по IP):

dig -x 8.8.8.8

Полезные флаги

  • +trace — показывает весь путь запроса по иерархии DNS, от корневых серверов до ответа
  • +noall +answer — выводит только секцию с ответом, без лишнего
  • +stats — статистика выполнения запроса

Пример минимального вывода:

dig +noall +answer example.com

Этим флагом пользуюсь чаще всего — когда нужен просто ответ, без служебной информации.

Как читать вывод

Стандартный ответ dig разбит на секции:

QUESTION SECTION — что именно запросили:

;; QUESTION SECTION:
;example.com.    IN    A

ANSWER SECTION — собственно данные, например IP-адрес:

example.com. 3600 IN A 93.184.216.34

AUTHORITY SECTION — авторитетные серверы для домена:

example.com. 172800 IN NS a.iana-servers.net.
example.com. 172800 IN NS b.iana-servers.net.

Число перед IN — TTL записи в секундах: сколько резолверы могут хранить её в кэше до повторного запроса.


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


Если хочешь обсудить похожую задачу — пиши на [email protected] или заходи на 1it.pro.

Связаться с нами
Telegram
WhatsApp
Email