Semenalidery.com

IT Новости из мира ПК
2 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Nslookup в linux

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

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

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

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

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

Пример: vseprolinux —> 195.161.114.71

Теперь вместо адреса достаточно ввести в адресную строку доменное имя, название сайта в виде 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 — время в секундах до следующего обновления.

Как установить и использовать команды dig и nslookup в Linux?

В этой статье вы узнаете, как установить команду dig и команду nslookup в Linux. Эти команды используются для устранения неполадок в сети и сбора информации о доменных именах.

Dig, сокращение от Domain Information Gopher — это утилита поиска DNS, используемая для проверки DNS-серверов и устранения неполадок, связанных с DNS-серверами.

Nslookup используется для обработки поиска DNS и отображает важную информацию, такую ​​как записи MX, и IP-адрес, связанный с именем домена.

Более новые системы Linux по умолчанию поставляются с утилитами dig и nslookup.

Давайте посмотрим, как мы можем установить утилиты устранения неполадок DNS в Linux.

Как установить dig и nslookup в CentOS/RHEL

В Red Hat Linux/CentOS установите dig и nslookup с помощью команды dnf:

После успешной установки проверьте версию, используя команду приведённую ниже:

Как установить dig и nslookup в Debian/Ubuntu

В Debian и любых его производных, установка выполняется с помощью команды apt:

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

Как установить dig и nslookup на ArchLinux

Для ArchLinux команда установки dig и nslookup будет такой:

Чтобы проверить версию dig, запустите:

Использование команды dig

Команда dig может использоваться для запроса доменного имени и получения информации:

Команда отображает информацию узла, такую как версия утилиты команды dig, DNS-сервер и соответствующий IP-адрес.

Пример вывода

Чтобы получить более конкретное представление и отображать только IP-адрес имени домена, добавьте аргумент «+short«, как показано ниже:

Для проверки MX записи доменного имени запустите:

Использование команды nslookup

Чтобы получить информацию о доменном имени с помощью утилиты nslookup, используйте следующую команду:

Пример вывода

Итоги

В этой статье вы узнали, как установить утилиты dig и nslookup в разных дистрибутивах Linux, а также как использовать эти команды.

Спасибо за уделенное время на прочтение статьи!

Если возникли вопросы, задавайте их в комментариях.

Подписывайтесь на обновления нашего блога и оставайтесь в курсе новостей мира инфокоммуникаций!

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

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

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

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

Читать еще:  Установка mongodb linux

Синтаксис команды 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-сервером до повторного запроса

Просмотр всех имеющихся записей 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 в Кали Линукс.

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

nslookup в интерактивном режиме

Синтаксис nslookup

В простом виде команда типа:

В терминале вернёт информацию в виде, где верхняя часть терминала указывает на IP и DNS адреса вашей машины. А вот вторая часть будет немного отличаться в зависимости от вводимых опций. Однако, прежде чем мы к ним перейдём, следует зафиксировать, что:

  • опрос DNS серверов будет производиться по порту 53 ( по умолчанию), что меняется, например, командой nslookup -port 57 сайт.ру
  • интервал между запросами к серверам также можно изменять: nslookup -timeout=10 сайт.ру
  • работа утилиты подразумевает специальный режим отладки, в котором в терминале будет выводиться информация по пакетам во время сканирования: nslookup -debug сайт.ру

СРАЗУ

Терминал время от времени будет выводить ответы, подчёркивая ненадёжность (Non-authoritative) источников. Однако “ненадёжные ответы”- абсолютно нормальная ситуация, которая означает, что DNS сервер, который отвечает на ваш запрос, просто находится в другой зоне по отношению к той, откуда вы запрос посылаете. Если запрашиваемый вами ресурс доступен и интерактивен, причина такого ответа – скорее всего обычное кеширование запрашиваемой страницы с какого-то локального DNS сервера.

Читать еще:  Ssh туннель linux

Чтобы удостовериться…

Доверяй, как говориться, но проверяй. А значит, нам лучше подстраховаться и получать все формы ответов от всех видов источника. Если появление “ненадёжных ответов” вас настораживает, то следующая команда покажет список DNS серверов из записи Name Server record, которые точно “знакомы” с интересующим вас доменом:

Смотрим нижнюю часть сообщения: авторитетные источники информации находятся в абзаце “Authoritative answers can be found from:“. Здесь, кстати, может оказаться дополнительная информация о серверах, которые связаны с интересующим вас хостом. И, если вы собираетесь получать информацию только из доверенных источников, остальныt запросы можете делать только к этим DNS серверам (совершенно необязательно это делать, но вы имеете право на такие запросы):

Ищем почтовые серверы (Mail Exchange)

Если таковые у запрашиваемого домена возможны, проверьте их командой в формате:

Так, для этого блога терминал вернул ответ об одной записи, принадлежащей этому домену. Цифра перед почтовым сервером (у меня 5) означает прерогативу или предпочтительность почтовика в списке, если их несколько (чем ближе число к 1, тем больше вероятность того, что написанное вами мне письмо будет обработано именно этим MX-сервером).

Подкрадываемся к администратору сайта

Следующая запись из базы DNS – это SOA (Start Of Authority) – в которой хранится личная информация по домену, доменной зоне, почтовому адресу администратора, доменному серийнику и т.п.

Информация, которая здесь содержится, выводится утилитой в следующей последовательности (время, здесь фигурирующее – в секундах):

origin = адрес первостепенного DNS сервера, который вам сейчас отвечает
mail addr = почтовый сервер, с которого администратор сайта будет читать сообщение
serial = отображает дату модификации зонального файла. При смене файла, меняется и серийный номер. Типичное оформление даты – это формат ГодМесяцДеньСекунды, однако нередко формат представляется сервером в “неадекватном виде” с единственной целью: серийный номер файла для проверки просто должен оставаться неизменным
refresh = интервал, по истечение которого резервный DNS поверяет информацию на первичном, не изменился ли сгенерированный серийник. Если это произошло, резервный делает запрос на создание копии нового зонального файла
retry = интервал для повторной связи с первичным DNS
expire = покажет время, в течение которого резервный DNS сервер будет считать зональный файл и хранимую в нём информацию соответствующим действительности
minimum = отображает время, через которое резервный DNS сервер отправить зональный файл в кэш.

СПРАВКА

Зональный файл – текстовый файл, хранящий подробную информацию по конкретному домену и разворачивающий все цепочки IP адресов данного доменного имени. Зональные файлы и работа с ними – ключевой момент во взаимодействии DNS сервера и отдельного хоста.

Идём дальше – проверяем, всё что есть

И, наконец, с помощью следующей команды можно просмотреть все доступные DNS записи для этого домена:

Linux nslookup command

On Unix-like operating systems, the nslookup command queries Internet name servers interactively for information.

Description

nslookup, which stands for «name server lookup», finds information about a named domain.

By default, nslookup will translate a domain name to an IP address (or vice versa). For instance, to find out what the IP address of microsoft.com is, you could run the command:

. and you would receive a response like this:

Here, 8.8.8.8 is the address of our system’s Domain Name Server. This is the server our system is configured to use to translate domain names into IP addresses. «#53» indicates that we are communicating with it on port 53, which is the standard port number domain name servers use to accept queries.

Below this, we have our lookup information for microsoft.com. Our name server returned two entries, 134.170.185.46 and 134.170.188.221. This indicates that microsoft.com uses a round robin setup to distribute server load. When you access micrsoft.com, you may be directed to either of these servers and your packets will be routed to the correct destination.

You can see that we have received a «Non-authoritative answer» to our query. An answer is «authoritative» only if our DNS has the complete zone file information for the domain in question. More often, our DNS has a cache of information representing the last authoritative answer it received when it made a similar query; this information is passed on to you, but the server qualifies it as «non-authoritative»: the information was recently received from an authoritative source, but the DNS server is not itself that authority.

Reverse DNS lookups

We can also perform the above operation in reverse by providing the IP address rather than the domain name. For instance, the command:

. will return information resembling the following:

Querying the NS record of a domain

The NS Record of a domain is a map of all name servers that are authoritative for that domain. You can query a domain’s NS Record using the option -type=ns, like this:

. and the response will resemble the following:

This output gives us the names of the four microsoft.com name servers (which actually belong to the msft.net domain), according to our DNS’s (non-authoritative) information. If there is an available source for authoritative answers, it is listed at the bottom of the output.

Querying the MX record

The MX Record is a map of mail exchange servers for a domain. When you send an e-mail to a domain, for example «@microsoft.com», mail is routed to Microsoft’s MX servers.

You can query a domain for its MX Record using the -type=mx option. For example:

. will respond with output resembling the following:

Читать еще:  Linux kerberos authentication

Here, the mail exchanger address is prefixed with a number (10). If there were more than one mail exchanger, they would each have a different number, with the lower numbers representing a higher priority. So if there were another exchanger with the prefix 5, that server would take precedence over the server listed here.

Querying the SOA record

The SOA («Start Of Authority») Record for a domain provides technical information about the domain. It can be queried with the option -type=soa.

The information listed here is the cached version held by our domain name server. It includes:

  • origin: The authority from which the information originated.
  • mail addr: The e-mail address of the domain administrator (The first dot would be an @ symbol in an e-mail address, so here the e-mail address is [email protected]).
  • serial: Revision data for this information, in the form YYYYMMDDNN. Here, the information is current as of August 11, 2014; 02 means it was the second revision made on that day.
  • refresh: A number representing the interval, in seconds, after which the secondary name server will check the primary name server for an updated revision of this information. This information tells us that the secondary Microsoft name server’s information is never more than two hours (7200 seconds) out of date.
  • retry: The secondary nameserver will wait this many seconds before attempting to reconnect to the primary name server after a failed attempt.
  • expire: The secondary nameserver’s cache of the primary nameserver’s information will always be considered invalid after this many seconds.
  • minimum: The secondary nameserver’s cache of the primary nameserver’s information should not be refreshed if this amount of time has not elapsed since the last refresh.

Viewing all available NS records

We can also view all available NS records for a domain by using the option -type=any. For example:

Querying another DNS

By default, nslookup will query the same DNS the system is configured to use for all network operations. You can specify a custom DNS to query, however, by specifying it on the command line. For example:

. will provide us with the authoritative answer to our previous query of microsoft.com:

This is useful not only for obtaining authoritative information, but for finding out exactly what information a certain DNS currently has cached.

Querying on a non-standard port

By default, domain name servers accept queries on port 53. If this is configured differently on the server you are trying to query, you can specify another port number using the -port= option:

Here, the query attempt failed because our DNS uses the standard port, number 53.

Debugging the query transaction

Advanced users may need to examine more closely the details of the query transaction. This can be achieved using the -debug option:

Interactive mode

You can also run multiple commands interactively by running nslookup with no options:

This will bring you to a special command prompt where you can use commands to perform any of the operations listed above. It will look like this:

At this prompt, you can type in a domain name or IP address to query your DNS for its basic information:

. or, to submit a specific query type, you can set the type with set type=value, and then run the query. For instance, these two commands are the equivalent of running nslookup -type=any microsoft.com from the command line:

When you are ready to exit nslookup‘s Interactive Mode, run the command exit:

. and you will be returned to the command line.

There are other commands you can run from Interactive Mode; see Interactive Commands below for a list.

Syntax

Technical description

nslookup is a program used to query Internet domain name servers for information.

nslookup has two modes: interactive and non-interactive. Interactive mode allows the user to query name servers for information about various hosts and domains or print a list of hosts in a domain. Non-interactive mode is used to print the name and requested information for a host or domain.

Arguments

Interactive mode is entered in the following cases:

  1. when no arguments are given (the default name server will be used)
  2. when the first argument is a hyphen (««) and the second argument is the hostname or Internet address of a name server.

Non-interactive mode is used when the name or Internet address of the host to be looked up is given as the first argument (which can be preceded by options). The optional second argument specifies the hostname or address of a name server, to be used instead of the system’s default DNS.

Options

Options can be specified on the command line if they precede the arguments and are prefixed with a hyphen. For example, to change the default query type to host information, and the initial timeout to 10 seconds, type:

The name of the option corresponds to the keyword of the set command. See below for a description of these keywords, and their available settings.

Interactive commands

Look up information for host using the current default server, or server if specified. If host is an Internet address and the query type is A or PTR, the name of the host is returned. If host is a name and does not have a trailing period, the search list is used to qualify the name.

To look up a host not in the current domain, append a period to the name.

Used to change state information that affects the lookups. Valid keywords are:

Ссылка на основную публикацию
Adblock
detector