Может возникнуть необходимость проверить работоспособность DNS, посмотреть как быстро работает сервер, увидеть IP адрес и скорость его получения для определенного домена. Для этого cсуществует отличная утилита nslookup. С помощью которой Вы можете получить IP адрес по домену, выполнить обратное преобразование, а также проверить установлены все необходимые записи DNS.
КАК РАБОТАЕТ 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 сервера;
- -(no)recurse — использоваться другие DNS серверы, если на этом нет ответа;
- -retry — количество попыток получить нужную информацию;
- -timeout — время между попытками запросов к серверу;
- -fail — пробовать другой сервер имен, если этот вернул ошибку.
Самое интересное, что команду можно выполнять не только в обычном, но и в интерактивном режиме, если запустить ее без параметров. А теперь перейдем ближе к самим примерам как работает команда nslookup linux.
КАК ПОЛЬЗОВАТЬСЯ NSLOOKUP?
Посмотрим ip адрес для disnetern.ru.
@ns:~$ nslookup disnetern.ru

В выводе утилиты видно ip адрес 10.3.5.21, это не адрес сервера, а системный DNS сервер. В следующей строке выводится тот же ip адрес и порт, это адрес DNS сервера вместе с портом. По умолчанию порт — 53. И только после этого находится информация про запрашиваемый сайт. Наш ip адрес 87.236.16.171 (от отлично хостинг-провайдера Beget), это означает, что все пакеты, которые вы будете отправлять на disnetern.ru будут приходить на этот адрес.
Иногда вы можете получить в ответе утилиты сообщение «Non-authoritative answer» (или на русском: “Не заслуживающий доверия ответ”). Ответ считается авторитетным, только если наш DNS сервер имеет полную информацию о зоне, для рассматриваемой области. Чаще всего, у нашего сервера будет не вся информация, а кэш последнего ответа от авторитетного сервера. Такая информация считается не авторитетной, хотя она была получена из авторитетного источника, но сам DNS сервер таковым не считается.
Первоисточник информации о домене, это его ns сервера. Вы можете их получить, использовав команду с опцией type=ns:
@ns:~$ nslookup -type=ns disnetern.ru

Команда выведет список используемых серверов имен, например, у нас это ns1.beget.com. Обычно это от двух до четырех серверов. Если есть авторитетный источник для получения информации, то он указывается в нижней части вывода.
Например, если мы запросим информацию у сервера имен ns1.beget.com, то это уже будет авторитетный (“Заслуживающий доверия”) ответ:
@ns:~$ nslookup disnetern.ru ns1.beget.com









Comments
So empty here ... leave a comment!