Linux nslookup set type

Команда nslookup, получение информации от DNS

Команда nslookup — инструмент сетевого администрирования для запросов в доменной системе имен (DNS) с целью получения доменного имени, IP-адреса или другой информации из записей DNS.

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

Команда nslookup может работать в интерактивном и неинтерактивном режимах. Интерактивный режим позволяет пользователю в режиме диалога отправлять DNS-серверу запросы о различных узлах и доменах. Неинтерактивный режим позволяет отправить один запрос об одном узле или домене.

Синтаксис команды nslookup

Наиболее распространенные опции и типы аргументов мы рассмотрим ниже в соответствующих примерах.

Получение IP-адреса домена

Если указать в качестве аргумента команды nslookup доменное имя, она возвращает его «запись A» (A — address, IP-адрес).

Здесь поле Server означает IP-адрес DNS-сервера, а затем выводится информация об IP-адресе домена «yandex.ru».

Авторитативный и неавторитативный ответы

В приведенном результате присутствует фраза «Non- Authoritative Answer» (неавторитативный ответ).

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

Запрос записи MX

Запись MX (Mail eXchange, обмен почтой) хранит соответствие доменного имени почтовому серверу этого домена. Например, для redhat.com в этих записях содержатся почтовые серверы домена, через которые должна отправляться вся электронная почта на адреса «@redhat.com». Получить запись MX можно при помощи опции -query=mx:

В рассмотренном выше примере для домена «redhat.com» есть 2 записи MX. Число рядом с именем сервера (5, 10) означает его приоритет. Чем меньше число, тем выше приоритет. То есть при отправке письма на адрес «@redhat.com» сначала будет использоваться сервер mx1.redhat.com, а если он недоступен — mx2.redhat.com.

Запрос записи NS

Запись NS (Name Server, сервер имен) содержит соответствие доменного имени DNS-серверу, авторитативному для заданного домена. Ее можно получить при помощи опции -query=ns:

Запрос записи SOA

Запись SOA (Start of Authority, начальная запись зоны) содержит информацию о зоне домена, адрес его администратора, серийный номер и т.д. Ее можно получить при помощи опции -query=soa:


origin — имя первичного сервера зоны
mail addr – адрес администратора домена (noc@redhat.com, так как символ @ в описании зоны имеет собственное значение, в данном поле он заменен на точку)
serial – серийный номер файла зоны, используется для учета изменений. Здесь может быть любое целое число, но стандартный формат — «ГГГГММДДНН», то есть сначала указывается дата, а НН (в данном случае 01) увеличивается в случае нескольких обновлений в день
refresh – период времени (в секундах), через который вторичный DNS-сервер отправит запрос первичному, чтобы проверить, поменялся ли серийный номер. В случае изменения будет сделан новый запрос для получения информации о зоне
retry – указывает интервал для повторного соединения с первичным DNS-сервером, если он по каким-то причинам не смог ответить на запрос
expire – указывает время хранения кэша вторичным DNS-сервером, по истечении которого он будет считаться устаревшим
minimum – минимальное время хранения кэша вторичным DNS-сервером до повторного запроса

Читайте также:  Платформы windows macos linux

Просмотр всех имеющихся записей DNS

При помощи опции -query=any мы можем просмотреть все записи DNS, которые у нас есть для заданного доменного имени:

Обратный поиск DNS

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

Использование конкретного DNS-сервера

Для разрешения доменного имени можно использовать конкретный сервер имен (в данном случае ns1.redhat.com):

Обратите внимание, что в результате отсутствует фраза «Non-authoritative answer», так как ns1.redhat.com обладает всей информацией о зоне для redhat.com.

Изменение номера порта

По умолчанию DNS-серверы используют порт 53, но при необходимости можно указать другой номер порта посредством опции -port:

Изменение интервала ожидания ответа

Интервал ожидания ответа по умолчанию можно изменить, указав желаемое значение в секундах с опцией -timeout:

$ nslookup -timeout=10 google.com

Режим отладки

При помощи опции -debug вы можете включить режим отладки:

В режиме отладки при поиске выводится информация о пакетах.

Интерактивный режим

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

возвращают результат, аналогичный команде

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

Заключение

Мы рассмотрели основы работы с командой nslookup, а также основные типы записей DNS. Для более подробной информации о команде и ее опциях можно обратиться к соответствующей man-странице.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Источник

Использование утилиты nslookup

Утилита и одноименная команда nslookup позволяет обращаться к серверу имен (NS) из командной строки. С ее помощью можно выполнить проверку работы DNS-сервера и созданных в нем записей. В данной инструкции подробно разберем работу с данной утилитой.

Ввод команды и синтаксис

Для работы с утилитой необходимо открыть командную строку (cmd или powershell в Windows и unix-shell в UNIX). В системах на базе Windows утилита встроена, и мы можем работать с ней в любой момент. Для некоторых дистрибутивов Linux потребуется установка утилиты одной из команд:

Читайте также:  Криптопро hdimage path windows

yum install nslookup

apt-get install nslookup

* первая команда для систем на базе Red Hat, вторая — Debian.

Для выполнения запросов используем команду:

nslookup [опции] [сервер DNS]

Самый простой пример использования команды:

. позволит получить IP-адрес для узла dmosk.ru.

Утилита также поддерживает работу в интерактивном режиме — вводим команду:

После можно делать запросы.

Опции nslookup

При выполнении запросов мы можем использовать следующие опции:

Опция Описание
Применяются для команды и интерактивного режима
all Выводит параметры текущего запроса и настроек сервера DNS.
class=X Задает класс запроса, который указывает группу протоколов информации. Возможны варианты:
1. IN — Internet. Более, чем в 99% случаев используется он.
2. CHAOS, HESIOD — данные классы используются, крайне, редко.
3. ANY — запрос по всем возможным классам.
d2 Выводит полной информации по осуществлению запроса.
nod2 Обычный вывод (по умолчанию).
debug Покажет отладочную информацию по запросу.
nodebug Запрос без отображения отладочной информации (по умолчанию).
defname При запросе к хосту не FQDN автоматически подставит домен, который находится в настройках системы (DNS-суффикс).
nodefname Не подставлять домен.
domain=’NAME’ Задает домен, который должен быть подставлен к имени хоста (альтернатива DNS-суффиксу).
querytype=TYPE Указывает на тип запроса или тип записи, например, А, mx, txt и так далее. Аналогична опции type.
recurse Рекурсивный запрос (информация запрашивается у других серверов, если ее нет на используемом в запросе).
norecurse Запрет на использование рекурсивного запроса.
retry=X В случае долгого ответа, параметр позволяет указать количество повторов опроса.
root Назначает текущий DNS в качестве корневого сервера по умолчанию.
root=NAME Позволяет задать корневой сервер.
search Добавлять DNS-имена к имени хоста из списка доменов (сам список задается опцией srchlist).
nosearch Не использовать список доменов для подстановки к имени хоста.
srchlist=N1[/N2/. /N6] Задает список доменов, который нужно подставлять при использовании опции search.
timeout=X Задает время в секундах, сколько утилита должна ждать ответа от сервера.
type=X Указывает на тип записи, которую будем опрашивать. Например, для получения записи AAAA мы вводим опцию type=АААА.
vc Позволяет использовать виртуальную схему при отправке запросов. К сожалению, я не нашел подробного описания, что это значит.
novc Не использовать виртуальную схему при отправке запросов.
Работают только в интерактивном режиме (задается без SET)
lsserver NAME Задает имя сервера DNS. При определении имени NAME используется начальная настройка DNS.
server NAME Задает имя сервера DNS. При определении имени NAME используется текущее значение для DNS.

Также мы можем вызвать описание для nslookup.

Источник

Как пользоваться командой nslookup в Linux?

Для проверки DNS используется универсальная команда nslookup. Она есть как в Windows, так и в Linux. Утилита поможет получить IP-адрес, а также сделать обратное преобразование и определить скорость работы DNS сервера.

Принцип работы DNS

Интернет — большое количество устройств, которые связаны между собой в сеть. Под устройством можем понимать сервера, компьютеры, ноутбуки и так далее. Для объединения компьютеров в сеть используются ip-адреса, однако людям работать с ними не удобно, гораздо удобнее воспринимать информацию с символьными именами, например www.vseprolinux.ru.

Чтобы не запоминать много цифр в виде ip-адресов, в 80-х годах была создана DNS — система доменных имен, протокол прикладного уровня. Он преобразовывает имена устройств (компьютеров) в IP-адреса.

Теперь вместо адреса достаточно ввести в адресную строку доменное имя, название сайта в виде www.site.ru, далее уже Ваш ДНС делает запрос, чтобы узнать ip-адрес запрашиваемого узла.

Все это хорошо, только если не работает ДНС, то и не работает сайт, для диагностики проблем ДНС системы обычно используется команда nslookup.

Синтаксис nslookup

Рассмотрим синтаксис команды.

nslookup [параметры] [домен] [сервер]

Домен — доменное имя. Сервер — необязательный аргумент

  • -type — тип записи ДНС. ns, txt, ptr, cname, soa и другие;
  • -port — порт ДНС;
  • -recurse — если ДНС не отвечает, то использоваться другие DNS;
  • -retry — количество попыток;
  • -timeout — время;
  • -fail — если DNS доменных имен возвращает ошибку, то использовать другой сервер.

Примеры

Узнаем IP-адрес сайта vseprolinux.ru. Для этого выполним команду без аргументов.

На скриншоте выше видно:

  1. Server: 192.168.201.254 — адрес текущего ДНС сервера компьютера, который указан а настройках сети, в моем случае /etc/resolv.conf
  2. Address: 192.168.201.254#53 — IP-адрес вместе с портом. По умолчанию используется 53 порт.
  3. Non-authoritative answer — не авторитетный ответ. Такой ответ выдается в двух случаях: ДНС не обслуживает зону, и ответ получен из кэша, данные могли устареть. Авторитетным ответом будет считаться только если сервер имеет полную информацию о зоне.
  4. 195.161.114.71 — IP-адрес сайта.

Теперь сделаем обратное преобразование.

Получим NS запись.

Как узнать адрес почтового сервера MX (Mail eXchange)?. Для этого введем команду

Запись MX содержит всего два поля:

  1. приоритет;
  2. адрес сервера принимающего почту для данного домена.

Чем ниже значения, тем более высокий приоритет.

В наше время все больше внимания уделяется защите от спама в email сообщениях. Выделим два основных варианта, через TXT запись DNS:

  • spf — Sender Policy Framework. Представляется собой текстовую запись, которая содержит список хостов, которые имеют права отправлять письма от домена;
  • dkim -DomainKeys Identified Mail. TXT запись ключа. Для определения отправителя добавляется цифровая подпись, далее подпись автоматически проверяется получателем.

Чтобы узнать TXT надпись, введем в терминале команду с типом txt:


Утилита может вывести техническую информацию о домене «Start Of Authority». Для этого используется тип запроса soa:

Утилита в Линуксе покажет такие записи:

  • origin — от кого узнали информацию;
  • mail addr — email address администратора домена;
  • serial — время в формате timestamp;
  • refresh — время в секундах, когда нужно повторить подключения для обновления информации;
  • retry — время в секундах, через которое повторять подключения к DNS, если он недоступен;
  • expire — время в секундах, через сколько времени считать иформацию устаревшей полученную от первого ДНС;
  • minimum — время в секундах до следующего обновления.

Источник

Читайте также:  Код ошибки dxgmms2 sys windows 10
Оцените статью