nslookup: вот как работает полезная проверка DNS

Являясь центральной службой каталогов сетевых адресов, система доменных имен (DNS) играет важную роль в успехе Интернета и Всемирной паутины. Сеть глобально распределенных служб DNS (также называемых серверами имен) выполняет важную работу по обеспечению преобразования имен различных участников сети и приложений, таких как example.org, в числовые и машиночитаемые IP-адреса (и наоборот). Таким образом, это гарантирует, что нужный компьютер или нужный веб-сайт всегда будет доступен через соответствующий IP, даже если вы об этом не знаете.

В некоторых ситуациях (например, когда возникают проблемы с разрешением имен) полезно заглянуть за кулисы и изучить IP-адрес, связанный с доменным именем, или доменное имя, связанное с IP-адресом. Полезным инструментом для этого является программа nslookup, которая входит в стандартную установку Windows, macOS и Linux.

Что такое nslookup?

nslookup — это простой, но очень практичный инструмент командной строки, который в основном используется для поиска IP-адреса, соответствующего хосту, или доменного имени, соответствующего IP-адресу (процесс называется «обратный поиск DNS»). nslookup позволяет использовать себя в командной строке соответствующей операционной системы; пользователи Windows запускают службу через командную строку, а пользователи Unix — через окно терминала. Кроме того, в настоящее время существует ряд служб, позволяющих использовать nslookup в режиме онлайн.

Примечание

Название nslookup означает «поиск сервера имен».

nslookup извлекает соответствующую адресную информацию непосредственно из кэша DNS серверов имен, причем этот процесс может осуществляться в двух различных режимах, которые может выбрать пользователь. В неинтерактивном режиме инструмент проверяет записи ресурсов (именно так называются записи адресов в кэше DNS), которые хранятся на локальном сервере имен, стандартным образом. Этот режим особенно хорошо подходит для простых запросов, для которых необходимо найти одну запись домена. Если вы хотите использовать для исследования другой DNS-сервер и выполнить более сложные поисковые процессы, вам необходим интерактивный режим, в котором программу командной строки сначала нужно запускать отдельно.

Примечание

В отличие от широкого спектра других программ командной строки из Windows/DOS, nslookup имеет параметр «-q», чувствительный к регистру. Другими словами, параметр, в котором важна капитализация или ее отсутствие.

Для чего может использоваться nslookup?

Существуют различные сценарии, в которых уместно использование nslookup. Таким образом, программа командной строки является особенно важным инструментом при решении проблем DNS. Прежде всего, запрос данных помогает найти причину возникшей проблемы. Например, те, кто использует Windows и столкнулся с проблемой в работе активного каталога, могут использовать nslookup, чтобы быстро и легко проверить, все ли задействованные серверы преобразованы в систему доменных имен в соответствии с планом. В целом, эта программа проявляет свои сильные стороны, когда задействованы различные поддомены — не только когда нужно просто проверить их, но и когда возникают проблемы с подключением.

В целях защиты вашей конфиденциальности видео не будет загружаться, пока вы не щелкнете на нем.

Другой типичный сценарий — поиск оптимальных почтовых серверов SMTP, POP, IMAP) для нужного домена. В этом случае nslookup определяет нужные серверы на основе MX-записей (почтовый обменник), которые принадлежат домену поставщика услуг электронной почты. Эти записи содержат IP-адреса и имена серверов провайдера, которые впоследствии необходимо указать только при настройке почтовых клиентов для идеальной маршрутизации электронной почты.

Вот как работает nslookup в Linux, Windows и macOS

Чтобы использовать nslookup на компьютерах Mac, Windows или Linux, первым шагом будет открытие командной строки соответствующей операционной системы. После этого можно воспользоваться двумя ранее представленными режимами, чтобы мобилизовать инструмент DNS для своих целей:

  • Интерактивный режим: запустите nslookup с помощью одноименной команды, а затем добавьте параметры отдельно.
  • Неинтерактивный режим: непосредственно введите команду nslookup, а также желаемые параметры.

Выбор наиболее подходящего подхода зависит от имеющегося у вас ноу-хау. Если вы знаете необходимые параметры, ничто не мешает вам выполнить нужный запрос к DNS-серверу за один шаг (при условии, что DNS-сервер не нужно переключать). Новички, которым впервые нужно познакомиться со службой, могут облегчить переход, запустив nslookup и затем шаг за шагом изучая синтаксис и параметры. Поиск доступных параметров с помощью команды «help» возможен и очень полезен в интерактивном режиме.

Чтобы закрыть nslookup после выполнения запроса, просто дайте команду «exit» или закройте командную строку. В качестве альтернативы можно воспользоваться комбинацией клавиш [CTRL] + [C].

nslookup: Примеры использования инструмента запросов

Если вы начали работу с запуска nslookup с одного шага, командная строка будет ждать ввода дальнейших команд. Теперь у пользователей есть возможность выполнить запросы со стандартной настройкой или определить индивидуальные параметры. В первом случае достаточно ввести в командную строку имя домена, для которого необходимо узнать IP-адрес (или наоборот), и подтвердить свой выбор нажатием клавиши Enter. nslookup, например, выдает следующий результат при поиске адреса домена example.org:

В этом случае выдается уведомление «неавторитетный ответ», поскольку локальный DNS-сервер не смог самостоятельно ответить на запрос, и вместо этого ему пришлось обратиться к одному или нескольким другим серверам имен. Содержимым результатов nslookup являются IPv4 (четырехзначные) и IPv6 адреса (более длинные, разделенные двоеточиями) домена примера.

Для индивидуальной настройки запросов nslookup в интерактивном режиме см. следующие два примера.

Извлечение конкретных адресов из записей ресурсов

nslookup принципиально настроен на запрос адресов IPv4 и IPv6. Однако, как уже упоминалось ранее, инструмент командной строки может получить другие типы адресов домена через свой метод доступа к записям DNS. Для этого пользователь должен установить желаемый тип, прежде чем вводить имя домена в командную строку. Синтаксис соответствующих команд nslookup выглядит следующим образом:

set type= <RESOURCE RECORD TYPE>

«тип записи ресурса» соответствует желаемому типу запроса, некоторые из параметров которого приведены в следующей таблице:

значения параметров nslookup Тип запроса
A IPv4-адрес
AAAA IPv6 адрес
MX Почтовый сервер доменного имени (почтовый обменник)
NS Сервер имен доменных имен
PTR Запись «Указатель» (указывает на имя хоста, соответствующее IP-адресу)
SOA Запись «Start-of-Authority» (подробная информация об управлении зоной DNS).

Переключение DNS-серверов для получения точных результатов

Стандартной процедурой для nslookup является обращение к локальному DNS-серверу, который обычно предопределен маршрутизатором, а точнее интернет-провайдером. Но использование его для запроса иногда может привести к неточным результатам, например, потому, что искомый сервер не указан в кэше локального сервера имен. К счастью, инструмент командной строки предоставляет возможность самостоятельно выбрать DNS-сервер, который вы хотите использовать для запроса. Если вы выберете сервер, подключенный к соответствующему домену, вы даже получите авторитетные ответы. Для этого сначала нужно найти сервер имен или серверы имен, о которых идет речь, установив тип запроса «NS», а затем ввести имя домена, чтобы отобразить запись DNS:

  set type=NS
  example.org

В данном примере nslookup предлагает два возможных сервера имен («a.iana-servers.net» и «b.iana-servers.net»), как показано на следующем снимке экрана:

Один из двух представленных серверов имен должен быть назначен стандартным сервером, чтобы последующие запросы выполнялись через него. Соответствующая команда состоит из параметра «server» и имени нужного сервера. Соответственно, эти две команды возможны для рассматриваемого примера nslookup:

server a.iana-servers.net
server b.iana-servers.net

Последний шаг требует от пользователя изменить тип запроса, который все еще установлен на поиск сервера имен, на нужный запрос адреса, например, «A» для домена, «MX» для проверки IP почтового сервера или «ANY» для общей проверки (используется здесь):

set type=ANY

Если вы снова введете example.org для начала запроса, nslookup предоставит обширные данные DNS для домена example, источником данных для которого является сервер имен, назначенный стандартным сервером (здесь a.iana-servers.net):

Авторитетный и точный ответ, полученный на этот раз, показывает, среди прочего, ранее упомянутые серверы имен и основной сервер имен, с которого были получены данные DNS.

Запрос DNS-сервера в браузере с помощью онлайн-инструментов nslookup

Для выполнения запросов DNS-сервера с помощью nslookup не обязательно запускать инструмент на собственной системе. В Интернете есть различные приложения, предоставляющие такие ресурсы. В этом случае IP-адрес (или, скорее, доменное имя) затем возникает на другом компьютере — под управлением вашего собственного браузера. Два nslookup примера таких веб-приложений — ping.eu и centralops.net.

ping.eu ограничивается базовой функцией nslookup. После ввода IP-адреса или имени хоста инструмент предлагает соответствующий аналог:

В инструменте, предоставленном centralops.net, nslookup позволяет использовать себя и в интерактивном режиме онлайн. Таким образом, пользователи могут ввести сервер имен по своему выбору вместо использования стандартного DNS-драйвера провайдера, переключить порт или определить тип запроса. В этом процессе также можно получать авторитетные ответы, как и в предыдущем примере nslookup.

Обратите внимание на

ping.eu, а также centralops.net предлагают дополнительные сетевые инструменты, такие как Traceroute или WHOIS.

Оцените статью
cdelat.ru
Добавить комментарий