Проверить работу dns сервера linux

Как пользоваться nslookup

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

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

Как работает DNS?

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

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

Команда nslookup

Перед тем как мы перейдем дальше, к практике и примерам, давайте рассмотрим синтаксис и опции утилиты. Синтаксис достаточно прост:

$ sudo nslookup опции домен сервер

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

  • -type — тип информации, которую хотим получить, возможные типы: txt, soa, ptr, ns, mx, mr, minfo, mg, mb, hinfo, gid, cname, a, any;
  • -port — другой порт DNS сервера;
  • -recurse — использоваться другие DNS серверы, если на этом нет ответа;
  • -retry — количество попыток получить нужную информацию;
  • -timeout — время между попытками запросов к серверу;
  • -fail — пробовать другой сервер имен, если этот вернул ошибку.

Самое интересное, что команду можно выполнять не только в обычном, но и в интерактивном режиме, если запустить ее без параметров. А теперь перейдем ближе к самим примерам как работает команда nslookup linux.

Читайте также:  Мост wifi ethernet linux

Как пользоваться nslookup?

Сначала посмотрим ip адрес для losst.pro. Для этого не нужно передавать никаких дополнительных параметров, только само доменное имя:

В выводе утилиты мы можем видеть ip адрес 192.168.137.1, это не адрес сервера, а наш, системный DNS сервер. В следующей строке выводится тот же ip адрес и порт, это адрес DNS сервера вместе с портом. По умолчанию порт — 53. И только после этого находится информация про запрашиваемый сайт. Наш ip адрес 194.67.215.125, это означает, что все пакеты, которые вы будете отправлять на losst.pro будут приходить на этот адрес.

Иногда вы можете получить в ответе утилиты сообщение «Non-authoritative answer». Ответ считается авторитетным, только если наш DNS сервер имеет полную информацию о зоне, для рассматриваемой области. Чаще всего, у нашего сервера будет не вся информация, а кэш последнего ответа от авторитетного сервера. Такая информация считается не авторитетной, хотя она была получена из авторитетного источника, но сам DNS сервер таковым не считается.

Также вы можете выполнить обратное преобразование IP адреса в домен. Для этого передайте утилите IP адрес:

Первоисточник информации о домене, это его ns сервера. Вы можете их получить, использовав команду с опцией type=ns:

Команда выведет список используемых серверов имен, например, у нас это ns1.nameself.com. Обычно это от двух до четырех серверов. Если есть авторитетный источник для получения информации, то он указывается в нижней части вывода. Например, если мы запросим информацию у сервера имен ns1.nameself.com, то это уже будет авторитетный ответ:

nslookup losst.pro ns1.nameself.com

Еще вы можете получить MX запись для домена, для этого нужно установить тип запроса в mx:

Здесь будут отображены все настроенные почтовые серверы, у каждого сервера есть свой приоритет, например, 10, 15 или 5. Чем меньше число, тем выше приоритет адреса.

SOA или Start Of Authority предоставляет техническую информацию о домене, для получения этого поля используйте тип запроса soa:

nslookup -type=soa losst.pro

Здесь будет выведена такая информация:

  • origin — происхождение полученной информации;
  • mail addr — адрес электронной почты администратора домена;
  • serial — время с момента последнего обнволения домена в формате timestamp;
  • refresh — количество секунд, с момента последнего обновления, когда его нужно повторить;
  • retry — количество секунд, через которое нужно повторить попытку подключения, если DNS сервер недоступен;
  • expire — количество секунд, по истечении которых полученная от первичного DNS информация будет считаться устаревшей;
  • minimum — минимальное количество секунд до следующего обновления.
Читайте также:  Посмотреть uptime сервера linux

Также возможно использование nslookup для просмотра всех доступных записей DNS:

nslookup -type=any losst.pro

Для просмотра более подробной информации про выполнение запроса вы можете использовать опцию -debug:

nslookup -type=any -debug linux.com

Здесь отображается сообщение, отправленное на сервер и полученный от него ответ. Если ip адресов несколько, то система может отобразить ttl для каждого из них. Некоторые крупные сайты размещены на нескольких серверах, это сделано для противостояния DDoS атакам.

Команда nslookup linux может использоваться и в интерактивном режиме, для этого нужно выполнить ее без параметров:

Дальше просто наберите имя домена, чтобы узнать его IP:

С помощью команды set вы можете задавать различные параметры, например, порт, или тип запроса:

Чтобы завершить работу с утилитой, используйте команду exit.

Выводы

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

Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.

Источник

8 Linux Nslookup Commands to Troubleshoot DNS (Domain Name Server)

nslookup is a command-line administrative tool for testing and troubleshooting DNS servers (Domain Name Server). It is used to query specific DNS resource records (RR) as well. Most operating systems come with a built-in nslookup feature.

This article demonstrates the widely used nslookup command in detail. Nslookup can be run in two modes: Interactive and Non-Interactive.

The Interactive mode is used to query DNS-Server about various domains and hosts. Non-Interactive mode is used to query about information of a domain or host.

You might also be interested in the following article :

1. Find out “A” record (IP address) of Domain

# nslookup yahoo.com Server: 4.2.2.2 Address: 4.2.2.2#53 Non-authoritative answer: Name: yahoo.com Address: 72.30.38.140 Name: yahoo.com Address: 98.139.183.24 Name: yahoo.com Address: 209.191.122.70

Above command query domain www.yahoo.com with 4.2.2.2 public DNS server and below section shows Non-authoritative answer: displays A record of www.yahoo.com

2. Find out Reverse Domain Lookup

# nslookup 209.191.122.70 Server: 4.2.2.2 Address: 4.2.2.2#53 Non-authoritative answer: 70.122.191.209.in-addr.arpa name = ir1.fp.vip.mud.yahoo.com. Authoritative answers can be found from:

3. Find out specific Domain Lookup.

# nslookup ir1.fp.vip.mud.yahoo.com. Server: 4.2.2.2 Address: 4.2.2.2#53 Non-authoritative answer: Name: ir1.fp.vip.mud.yahoo.com Address: 209.191.122.70

4. To Query MX (Mail Exchange) record.

# nslookup -query=mx www.yahoo.com Server: 4.2.2.2 Address: 4.2.2.2#53 Non-authoritative answer: www.yahoo.com canonical name = fd-fp3.wg1.b.yahoo.com. fd-fp3.wg1.b.yahoo.com canonical name = ds-fp3.wg1.b.yahoo.com. ds-fp3.wg1.b.yahoo.com canonical name = ds-any-fp3-lfb.wa1.b.yahoo.com. ds-any-fp3-lfb.wa1.b.yahoo.com canonical name = ds-any-fp3-real.wa1.b.yahoo.com. Authoritative answers can be found from: wa1.b.yahoo.com origin = yf1.yahoo.com mail addr = hostmaster.yahoo-inc.com serial = 1344827307 refresh = 30 retry = 30 expire = 86400 minimum = 1800

MX record is being used to map a domain name to a list of mail exchange servers for that domain. So that it tells that whatever mail received/sent to @yahoo.com will be routed to the mail server.

Читайте также:  Linux консоль поменять язык

5. To query NS(Name Server) record.

# nslookup -query=ns www.yahoo.com Server: 4.2.2.2 Address: 4.2.2.2#53 Non-authoritative answer: www.yahoo.com canonical name = fd-fp3.wg1.b.yahoo.com. fd-fp3.wg1.b.yahoo.com canonical name = ds-fp3.wg1.b.yahoo.com. ds-fp3.wg1.b.yahoo.com canonical name = ds-any-fp3-lfb.wa1.b.yahoo.com. ds-any-fp3-lfb.wa1.b.yahoo.com canonical name = ds-any-fp3-real.wa1.b.yahoo.com. Authoritative answers can be found from: wa1.b.yahoo.com origin = yf1.yahoo.com mail addr = hostmaster.yahoo-inc.com serial = 1344827782 refresh = 30 retry = 30 expire = 86400 minimum = 1800

6. To query SOA (Start of Authority) record.

# nslookup -type=soa www.yahoo.com Server: 4.2.2.2 Address: 4.2.2.2#53 Non-authoritative answer: www.yahoo.com canonical name = fd-fp3.wg1.b.yahoo.com. fd-fp3.wg1.b.yahoo.com canonical name = ds-fp3.wg1.b.yahoo.com. ds-fp3.wg1.b.yahoo.com canonical name = ds-any-fp3-lfb.wa1.b.yahoo.com. ds-any-fp3-lfb.wa1.b.yahoo.com canonical name = ds-any-fp3-real.wa1.b.yahoo.com. Authoritative answers can be found from: wa1.b.yahoo.com origin = yf1.yahoo.com mail addr = hostmaster.yahoo-inc.com serial = 1344827965 refresh = 30 retry = 30 expire = 86400 minimum = 1800

7. To query all Available DNS records.

# nslookup -query=any yahoo.com Server: 4.2.2.2 Address: 4.2.2.2#53 Non-authoritative answer: yahoo.com origin = ns1.yahoo.com mail addr = hostmaster.yahoo-inc.com serial = 2012081016 refresh = 3600 retry = 300 expire = 1814400 minimum = 600 Name: yahoo.com Address: 98.139.183.24 Name: yahoo.com Address: 209.191.122.70 Name: yahoo.com Address: 72.30.38.140 yahoo.com mail exchanger = 1 mta7.am0.yahoodns.net. yahoo.com mail exchanger = 1 mta5.am0.yahoodns.net. yahoo.com mail exchanger = 1 mta6.am0.yahoodns.net. yahoo.com nameserver = ns3.yahoo.com. yahoo.com nameserver = ns4.yahoo.com. yahoo.com nameserver = ns2.yahoo.com. yahoo.com nameserver = ns8.yahoo.com. yahoo.com nameserver = ns1.yahoo.com. yahoo.com nameserver = ns6.yahoo.com. yahoo.com nameserver = ns5.yahoo.com. Authoritative answers can be found from:

8. Enable Debug mode

To enable Debug Mode ‘set debug’ will return you verbose information like TTL, here’s the output.

# nslookup -debug yahoo.com > set debug > yahoo.com Server: 4.2.2.2 Address: 4.2.2.2#53 ------------ QUESTIONS: yahoo.com, type = A, ANSWERS: -> yahoo.com internet address = 72.30.38.140 ttl = 1523 -> yahoo.com internet address = 98.139.183.24 ttl = 1523 -> yahoo.com internet address = 209.191.122.70 ttl = 1523 AUTHORITY RECORDS: ADDITIONAL RECORDS: ------------ Non-authoritative answer: Name: yahoo.com Address: 72.30.38.140 Name: yahoo.com Address: 98.139.183.24 Name: yahoo.com Address: 209.191.122.70

In this article, we have tried to cover nslookup commands which may help you to search (DNS) Domain Name Service-related information.

The next article will be on the Linux dig command which is similar to nslookup. If you liked the article please share it with your friends and don’t forget to give your valuable feedback through the comment box.

Источник

Оцените статью
Adblock
detector