Команда dig
в Linux используется для сбора информации о DNS. Она расшифровывается как Domain Information Groper (сборщик информации о домене) и, как очевидно из названия, собирает данные о серверах доменных имен. Команда dig
полезна для устранения проблем с DNS, но также используется для отображения информации о доменах.
Это руководство поможет вам понять и использовать команду dig
в Linux.
Что вам потребуется
Для работы нам понадобится:
- Операционная система Linux
- Доступ к правам администратора
- Доступ к терминалу (командной строке)
Установка утилиты dig
В большинстве современных систем Linux команда dig уже установлена.
Убедитесь, что она установлена, проверив версию программного обеспечения. Для этого откройте командную строку и введите следующее:
Убедитесь, что она установлена, проверив версию программного обеспечения. Для этого откройте командную строку и введите следующее:
dig -v
Если же вместо номера версии вы получили ошибку, значит утилита dig не установлена. Для того, чотбы установить её, выполните следующую колма
sudo apt-get install dnsutils
Синтаксис команды dig
Команда dig имеет следующий синтаксис:
dig [домен] [сервер] [тип]
Здесь [домен]
- это адрес, информацию о котором вы хотите получить
[сервер]
- адрес DNS-сервера, с которого нужно получить информацию
[тип]
- тип NS-записи.
Наиболее распространены следующие типы записей:
- A – Запись об адресе, которая определяет соответствие между доменными именем и IP-адресом
- MX – Почтовая запись, содержит информацию для передачи почты
- SIG – Запись о подписи, которая используется в протоколах шифрования
Как использовать команду dig с примерами
Давайте рассмотрим, как использовать команду dig.
Поиск DNS
Команда dig позволяет производить поиск по записям DNS, для чего необходимо выполнить в терминале следующую команду:
dig yandex.ru
Результат будет примерно следующим:
Самая важная информация содержится в разделе A
- В первой колонке указано название сервера, по которому выполнялся запрос
- Вторая колонка содержит Время жизни (Time to Live), время, через которое запись будет обновлена
- Третья колонка указывает на класс запроса – здесь “IN” обозначает интернет
- В четвертой колонке указан тип запроса – в этом случае “A” обозначает запись типа A (адрес)
- В последней колонке выводится IP-адрес, связанный с доменными именем
Поиск DNS на определенном сервере
По умолчанию команда dig использует системные сетевые настройки. Но можно указать ей, с какого сервера имен брать информацию. Например, для того, чтобы запросить запись с серверов Google, нужно выполнить следующую команду:
dig @8.8.8.8 yandex.ru
Результат будет похожим, но информация будет получена с указанного вами сервера:
Эта функция может быть полезной, если вы настраиваете запись для сайта на нейм-серверах хостинг-провайдера.
Получение всех записей домена
Для того, чтобы получить не только A, но и все остальные записи, указанные на сервере для домена, добавьте к команде параметр ANY
:
dig yandex.ru ANY
Результат будет более развернутым:
Вместо опции ANY
можно использовать записи любого другого типа. К таким типам относятся MX (почтовый обмен), A (адрес), SIG (подпись) и т.д. Существует множество различных типов записей DNS. Если вы не уверены, какая вам нужна, оставьте опцию типа пустой.
Короткий ответ
Если вам не нужна вся вспомогательная информация, с помощью опции +short
можно получить только главное:
dig yandex.ru +short
Результат будет лаконичным:
Компромиссный вариант с исопльзованием опций +noall +answer
позволяет выводить только раздел ответа:
dig yandex.ru +noall +answer
Обратный поиск DNS
Для того, чтобы узнать, какой домен привязан к IP-адресу, используйте параметр -x
:
dig -x 77.88.55.88
Заключение
Приведенной здесь информации будет достаточно для базового использования команды dig. Если вы желаете ознакомиться с дополнительными функциями, обратитесь к документации:
man dig