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.