Как использовать команду dig в Linux
Можно ли взломать веб-сайты и серверы Linux с помощью dig?
формацию системы доменных имен (DNS) о конкретном удаленном сервере. В отличие от
tcpdump , он позволяет получить представление о том, как машина взаимодействует с серверами имен. Это руководство научит вас основам использования утилиты dig в Ubuntu и тому, как использовать утилиту dig, чтобы понять, как работает DNS.
Совет. Узнайте, как достичь используйте Traceroute для диагностики проблем с сетью .
Что такое DNS и как работает dig?
По своей сути DNS — это система, которая позволяет машине легко преобразовывать удобочитаемое доменное имя в соответствующий IP-адрес. В этом отношении DNS похож на телефонный справочник, в котором указан адрес машины вместе с легко запоминающейся меткой.
Contents
Что такое DNS и как работает dig?
" alt="Используйте образец телефонной книги Dig Linux">
Система доменных имен работает путем хранения записей домена на наборе иерархических серверов имен, которые объявляют об этих записях всякий раз, когда пользователь пытается разрешить доменное имя.
Например, всякий раз, когда вы заходите на сайт maketecheasier.com, ваш компьютер сначала подключается к известному серверу имен, а затем запрашивает сервер, знает ли он IP-адрес домена, который вы ищете. Как только ваш компьютер узнает соответствующий адрес, он использует эту информацию для подключения к веб-сайту MakeTechEasier.
Утилита dig
раскрывает этот процесс, показывая, как ваш компьютер взаимодействует с серверами имен. Он помечает и печатает каждый шаг, выполняемый от первоначального подключения до разрешения имен. Это делает команду dig полезной для понимания любых потенциальных проблем с DNS на вашем сервере.
Установка dnsutils в Linux
Команда dig
предустановлена в большинстве дистрибутивов Linux. Если он не найден в вашей системе, вам необходимо установить пакет dnsutils
для доступа к команде dig
.
В системах Ubuntu и Debian установите его с помощью команды:
sudo apt install dnsutils
В Fedora:
sudo yum install bind-utils
Об Arch Linux и его производных:
sudo pacman -S bind-tools
Опрос DNS-серверов с помощью dig в Linux
Одно из самых простых действий, которые вы можете выполнить с помощью dig в Linux, — это запросить в записи A веб-адрес. Запись A содержит основной IPv4-адрес доменного имени. Именно ее запрашивает ваш веб-браузер при попытке доступа к веб-сайту.
Чтобы запросить запись A с помощью dig, выполните следующую команду:
При этом будет напечатана длинная строка текста, показывающая действия, которые команда dig предприняла для разрешения домена. По большей части эту строку можно разделить на четыре раздела: заголовок, вопрос, ответ и сервер имен.
В разделе заголовка показано краткое описание выполненной вами команды. Значение «opcode» показывает действие, которое выполнил dig. В то же время значение «статус» отображает общий результат запроса.
Установка dnsutils в Linux.ru/wp-content/uploads/2024/05/use-dig-linux-06-dig-header-section.png" alt="Используйте раздел заголовка Dig Linux 06 Dig">
В разделе вопросов показан список запросов, которые вы сделали с помощью dig. В первом столбце печатается полное имя домена, а затем класс запроса и тип записи DNS.
В разделе ответов отображается результат вашего запроса. Первый столбец содержит полное доменное имя, за которым следует значение «Время жизни». В третьем и четвертом столбцах показаны класс запроса и тип записи DNS, а в пятом столбце выводится резуль
Опрос DNS-серверов с помощью dig в Linux
saintist.ru/wp-content/uploads/2024/05/use-dig-linux-08-dig-answer-section.png" alt="Используйте раздел ответов Dig Linux 08 Dig">
Раздел сервера имен содержит подробную информацию о DNS-сервере, который dig используется для этой команды. «ВРЕМЯ ЗАПРОСА» — это количество времени, которое потребовалось серверу для обработки запроса. Значение «SERVER» — это IP-адрес сервера имен, а «MSG SIZE» показывает размер запроса в байтах.
Если вам нужно только быстро найти IP-адрес веб-сайта, включите параметр +short
, чтобы он возвращал только IP-адреса.
dig +short maketecheasier.com
Запрос пользовательского типа записи DNS
Помимо выполнения запросов A, также можно использовать dig для поиска других типов DNS. Вы можете запустить следующую команду, чтобы проверить, есть ли в домене запись IPv6:
dig maketecheasier.com aaaa
Запрос пользовательского типа DNS также полезен, если вы выполняете разведывательную работу во время тест на проникновение . Например, вы можете использовать dig
, чтобы проверить, используется ли доменное имя на почтовом сервере:
dig maketecheasier.com mx
Наконец, dig
также может быть невероятно полезным для получения дополнительной информации об основных службах домена. Записи «CNAME» и «NS» содержат более подробную информацию о сервере и сервере имен, который он использует:
dig maketecheasier.com cname
dig maketecheasier.com ns
Совет : научитесь включить DNS через HTTPS в различных браузерах .
Пользовательские запросы на раскопку в Linux
По умолчанию dig
работает, подключаясь к серверу имен и запрашивая у него данные доменного имени. Однако программа также предоставляет ряд дополнительных функций, которые могут помочь в решении проблем с DNS.
Одна из самых полезных функций dig — +trace
. Как и в случае с трассировкой, он отслеживает все переходы, которые совершает ваша машина при каждом подключении к домену.
Например, следующая команда будет отслеживать каждый переход, который делает ваш компьютер перед загрузкой maketecheasier.com.
dig maketecheasier.com +trace
Вы также можете настроить серверы имен, которые dig использует для опроса определенного доменного имени. Это полезно, если у вас есть сервер имен и вы хотите проверить, правильно ли он работает.
Чтобы принудительно использовать пользовательский сервер имен, выполните следующую команду:
dig maketecheasier.com A @168.138.12.137
Наконец, dig — это очень гибкая программа, которая
Запрос пользовательского типа записи DNS
удительно выполните команду dig, чтобы распечатать только результат вашего запроса:
dig maketecheasier.com +noall +answer +nocomments mx
Примечание. Иногда полученный результат не является правильным обновленным из-за проблемы с кэшем DNS в вашей системе. Чтобы это исправить, очистите кеш DNS в вашей системе Linux .
Пакетная обработка запросов
Помимо обработки отдельных доменных имен, dig также можно использовать для разрешения нескольких веб-адресов. Это особенно полезно, если вы сетевой инженер и хотите проверить несколько доменов одновременно.
Например, следующая команда будет искать как запись NS для «maketecheasier.com», так и запись A для «yetanotherpleromaserver.xyz».
dig +qr maketecheasier.com ns yetanotherpleromaserver.xyz a
Вы также можете использовать параметр -f
, чтобы указать dig получать инструкции из внешнего файла. Однако вам следует писать этот файл только в формате «запроса на раскопки». Зная это, рассмотрим следующие строки текста:
maketecheasier.com mx
maketecheasier.com ns
-x maketecheasier.com
Сохранение этого в текстовом файле и запуск dig -f textfile
приведет к выполнению запросов MX, NS и обратного поиска в домене maketecheasier.com.
<
Часто задаваемые вопросы
Можно ли использовать dig в локальной сети?
Да. В большинстве случаев эти запросы будут разрешены только на вашем локальном DNS-сервере. Это может быть полезно, если у вас есть внутренний DNS-сервер и вы хотите проверить, распознается ли он в сети.
Пользовательские запросы на раскопку в Linuxx с помощью dig?
Хотя dig — очень полезный инструмент, это лишь малая часть набора инструментов тестера на проникновение. Его основная роль — помочь вам понять, как машина и ее доменное имя взаимодействуют с DNS-серверами. Если вас беспокоят взломы серверов, ознакомьтесь с защита Linux-сервера .
Мой интернет-провайдер не поддерживает IPv6. Могу ли я запустить dig исключительно в IPv4?
Можно запустить dig в режиме «только IPv4» или «только IPv6». Для этого вам нужно добавить параметры -4
или -6
в команду dig. Например, запуск dig -4 +qr maketecheasier.com mx
заставит dig использовать в своих запросах только IPv4.
В чем разница между dig и nslookup?
И dig
, и nslookup
— это инструменты командной строки, которые опрашивают DNS-серверы. Основное различие между ними заключается в том, что dig — гораздо более мощный инструмент с гораздо большим количеством возможностей. Nslookup проще в использовании, но у него не так много функций. Однако для большинства базовых DNS-запросов подойдет любой инструмент.
Изображение предоставлено: Unsplash . Все изменения и скриншоты Рамсеса Реда.
Пакетная обработка запросов
Часто задаваемые вопросы
Можно ли использовать dig в локальной сети?
Мой интернет-провайдер не поддерживает IPv6. Могу ли я запустить dig исключительно в IPv4?
В чем разница между dig и nslookup?