Расширенное руководство по nslookup

Когда вы хотите позвонить кому-нибудь на свой мобильный телефон, вы, скорее всего, просто найдете этого человека в своем списке контактов и выберите его имя. Затем трубка использует уникальный телефонный номер, связанный с этим человеком, и выполняет вызов. Как правило, вам не нужно запоминать сам номер телефона, поскольку адресная книга хранит его для вас под именем контакта.

Интернет работает очень похоже. Каждому серверу в Интернете назначен адрес и имя. Существует глобальная адресная книга, в которой хранится адрес (или адреса) вместе с соответствующим именем (или именами). Эта огромная адресная книга известна как DNS (система доменных имен). Это работает так: когда вы вводите URL-адрес в свой браузер, например Techberg.com, затем браузер (через базовую операционную систему) запрашивает DNS, чтобы получить адрес сервера, на котором размещен веб-сайт. То же самое, но не идентичное, происходит, когда мы отправляем электронные письма.

В Интернете есть два типа адресов - IPv4 и IPv6. Первая - это текущая и наиболее распространенная схема адресации, используемая сегодня в Интернете, а вторая - ее замена, IPv6, которая необходима, потому что у нас заканчиваются адреса IPv4.

Адрес IPv4 состоит из четырех чисел (менее 256), разделенных точками, например:

Адрес IPv6 более сложен. Он состоит из 16 байтов, сгруппированных попарно и записанных в шестнадцатеричном формате. Пары разделяются двоеточиями, например:

Большинство дистрибутивов Linux включают утилиту "nslookup". Это программа для запроса DNS и отображения полученной информации. Чтобы найти адрес сервера, связанного с доменным именем, используйте "nslookup" следующим образом:

nslookup-Techberg

В этом примере мы запрашиваем у DNS адрес сервера, на котором размещен сайт Techberg.com. Последняя строка ответа сообщает нам, что сервер имеет IPv4-адрес "50.116.24.50".

Первые две строки ответа (сервер и адрес) сообщают нам, какой DNS-сервер использовался для разрешения запроса. В этом случае сервер указан как 127.0.0.1, который является адресом обратной связи. Другими словами, для решения запроса использовался локальный хост. Причина этого в том, что Ubuntu по умолчанию использует сервер под названием "dnsmasq". Dnsmasq предоставляет мини-DNS-сервер, который пересылает все запросы вверх, а затем кэширует результаты.

Все ответы, поступающие от DNS, классифицируются как "авторитетный ответ" или "неавторизованный ответ". Когда ответ приходит от DNS-сервера, который имеет "главную" информацию для доменного имени, то ответ является авторитетным ответом. Однако в большинстве случаев ответы DNS будут отправляться DNS-серверами, которые имеют кешированную копию необходимой информации, но не контролируют исходную информацию. В этом случае ответ не является авторитетным.

Чтобы указать конкретный DNS-сервер, который будет использоваться для запроса, вам необходимо указать адрес DNS-сервера в качестве второго параметра:

nslookup-Techberg-8888

Где 8.8.8.8 - общедоступная служба DNS Google.

Для поиска других типов записей DNS (кроме простых доменных имен) можно использовать флаг -query. Допустимые параметры для флага запроса: MX, NS, SOA и ANY. Например, чтобы найти запись Mail eXchange (MX) для домена, используйте следующее:

nslookup-Techberg-mx

Когда электронное письмо адресовано пользователю в определенном домене, запись MX сообщает серверу-отправителю, где найти сервер, который обрабатывает электронные письма для этого домена. В нашем примере выше мы видим, что в данном случае это Google.

nslookup также имеет интерактивный режим. Если просто запустить утилиту без каких-либо параметров, то вы сразу перейдете в интерактивный режим. Здесь любая строка, которую вы вводите, будет интерпретироваться как запрос, за исключением нескольких специальных команд:

  • домен сервера или домен lserver - изменяет DNS-сервер по умолчанию на домен; "Lserver" использует исходный сервер для поиска информации о домене, тогда как "server" использует текущий сервер по умолчанию.
  • type=querytype - измените тип запроса, как с флагом -query. Параметр "querytype" может быть A, MX, SOA или ANY.

Утилита nslookup может получить много полезной информации о домене, и это особенно полезно при переносе домена с одного сервера на другой или когда вы только что приобрели новое доменное имя.

Если у вас возникли проблемы с использованием приведенного выше примера, не стесняйтесь использовать раздел комментариев ниже, чтобы задать любые вопросы, которые могут у вас возникнуть.

5 комментариев

  1. Как получить IPv6-адрес с помощью nslookup?

  2. Установите тип записи, которую вы ищете. Тип IPv6 - aaaa.
    Пример: nslookup -type=aaaa www.google.com 8.8.8.8


    Вау это здорво! Я попробовал это на Facebook и получил потрясающий IP-адрес. Было сказано лицо :: буц. Кто знал!!

  3. nslookup устарел, почему бы не использовать руководство по копанию?


    Мэтт, поскольку BIND 9.9.0a3 nslookup больше не является устаревшим.

    https://kb.isc.org/article/AA-00496/0/BIND-9.9.0a3-Release-Notes.htm

Комментарии закрыты.