Утилита NSLOOKUP присутствует в операционных системах Windows, начиная с Windows NT , и предназначена для формирования запросов к серверам DNS из командной строки. Фактически, утилита является аналогом службы DNS-клиент и позволяет диагностировать проблемы с разрешением имен в системе DNS. По умолчанию, все запросы отправляются на DNS-сервер, адрес которого задан настройками сетевого подключения. В терминах утилиты такой сервер является сервером по умолчанию (default server). Команда ipconfig /allпозволяет получить информацию о настройках протокола IP и, в том числе, о серверах DNS, используемых в системе.
При запуске nslookup без параметров, утилита переходит в интерактивный режим, ожидая ввод команд пользователя. Ввод знака вопроса или help позволяет отобразить справку о внутренних командах и опциях nslookup:
При запуске с некоторыми из параметров, команда nslookup выполняется в не интерактивном режиме без диалога с пользователем:
nslookup yandex.ru. – выполнить запрос к DNS-серверу, заданному по умолчанию, на разрешение доменного имени yandex.ru Для уменьшения ненужных запросов к серверам имен имя домена нужно вводить в випе полностью определенного (fully qualified domain name) , т.е. с точкой в конце. Если этого не делать, то nslookup будет сначала выполнять запрос на разрешение имени относительно домена того компьютера, на котором она выполняется т.е. yandex.ru.mydomain.ru если имя локальнлгл домена mydomain.ru.
nslookup -type=any -timeout=8 vk.com 208.67.220.220 – то же, что и в предыдущем примере, но для любых типов записей.
Пример отображаемых данных:
Сервер: 208.67.220.220
Не заслуживающий доверия ответ:
vk.com internet address = 87.240.131.119
vk.com internet address = 87.240.131.99
vk.com nameserver = ns2.vkontakte.ru
vk.com nameserver = ns4.vkontakte.ru
vk.com nameserver = ns1.vkontakte.ru
vk.com nameserver = ns4.vkontakte.ru
vk.com nameserver = ns2.vkontakte.ru
vk.com nameserver = ns1.vkontakte.ru
ns1.vkontakte.ru internet address = 93.186.237.2
ns2.vkontakte.ru internet address = 93.186.224.100
Для разных версий nslookup и разных DNS-серверов, обслуживающих запрос, отображаемая информация может отличаться. Тот же запрос, сформированный англоязычной nslookup и направленный на обработку DNS-серверу Google прведет к отображению следующих данных:
Address: 8.8.8.8
Non-authoritative answer:
vk.com internet address = 87.240.131.120
vk.com internet address = 87.240.143.244
vk.com
primary name server = ns1.vkontakte.ru
responsible mail addr = ncc.vkontakte.ru
serial = 2013100501
refresh = 3600 (1 hour)
retry = 900 (15 mins)
expire = 604800 (7 days)
default TTL = 900 (15 mins)
vk.com AAAA IPv6 address = 2a00:bdc0:3:103:1:0:403:901
vk.com AAAA IPv6 address = 2a00:bdc0:3:103:1:0:403:902
vk.com AAAA IPv6 address = 2a00:bdc0:3:103:1:0:403:903
vk.com nameserver = ns1.vkontakte.ru
vk.com nameserver = ns2.vkontakte.ru
vk.com nameserver = ns4.vkontakte.ru
vk.com MX preference = 10, mail exchanger = mail.vk.com
vk.com text =
“v=spf1 ip4:93.186.224.0/20 ip4:87.240.128.0/18 mx include:aspmx.googlem
ail.com ~all”
Сообщение “Не заслуживающий доверия ответ:” (Non-authoritative answer: ) говорит о том, что выполняющий запрос DNS-сервер, не является владельцем зоны vk.com т.е. записи для узла vk.com в его базе отсутствуют, и для разрешения имени использовался рекурсивный запрос к другому DNS-серверу. Если отправить запрос DNS-серверу ns1.vkontakte.ru, то будет получен авторитетный ответ (authoritative answer) :
Server: ns1.vkontakte.ru
Address: 93.186.237.2
vk.com
primary name server = ns1.vkontakte.ru
responsible mail addr = ncc.vkontakte.ru
serial = 2013100501
refresh = 3600 (1 hour)
retry = 900 (15 mins)
expire = 604800 (7 days)
default TTL = 900 (15 mins)
vk.com internet address = 87.240.131.118
vk.com AAAA IPv6 address = 2a00:bdc0:3:103:1:0:403:904
vk.com AAAA IPv6 address = 2a00:bdc0:3:103:1:0:403:905
vk.com AAAA IPv6 address = 2a00:bdc0:3:103:1:0:403:906
vk.com nameserver = ns4.vkontakte.ru
vk.com nameserver = ns1.vkontakte.ru
vk.com nameserver = ns2.vkontakte.ru
vk.com MX preference = 10, mail exchanger = mail.vk.com
vk.com text =
“v=spf1 ip4:93.186.224.0/20 ip4:87.240.128.0/18 mx include:aspmx.googlem
ail.com ~all”
ns4.vkontakte.ru internet address = 93.186.239.253
ns4.vkontakte.ru AAAA IPv6 address = 2a00:bdc0:ff:4::2
ns1.vkontakte.ru internet address = 93.186.237.2
ns1.vkontakte.ru AAAA IPv6 address = 2a00:bdc0:ff:1::2
ns2.vkontakte.ru internet address = 93.186.224.100
ns2.vkontakte.ru AAAA IPv6 address = 2a00:bdc0:ff:2::2
mail.vk.com internet address = 93.186.236.94
Использование опции отладки (debug) позволяет получить дополнительную информацию, содержащуюся в заголовках запросов клиента и ответов сервера (время жизни, флажки, типы записей и т.п.):
Сообщения: 3
Благодарности: 0
Здравствуйте. Есть машинка, на ней стоит свежая Win7 Максимальная x64, билд 7600 RU.
На ней с перебоями работает разрешение имен. Инет приходит через Ethernet от домашнего роутера (Acorp W422G_v3), к которому машинка цепляется по DHCP. D HCP наряду с айпишниками раздает клиентам адреса DNS-серверов в явном виде, то есть не relay самого роутера, а в моем случае OpenDNS (208.67.222.222, 208.67.220.220).
Казалось бы все нормально, однако:
Аналогично не резолвятся имена в других приложениях.
Вывод ipconfig /all:
Я, если честно, не понимаю, как такое вообще возможно – разве механизм разрешения имен в ping и nslookup не один и тот же?
И да, пробовал прописать другие DNS (провайдерские, гугловский, и т.п.) – то же самое. Пробовал статически вписать DNS и айпишники – все равно то же самое.
Причем данная ситуация наблюдается случайным образом – иногда резолвинг работает, иногда нет. Подозреваю, что это что-то связанное со сбросом какого-либо кэша по времени (ARP, DNS), но не знаю куда копать. ipconfig /flushdns ничего не дает.
В Linux и WinXP все нормально работает.
Время на прочтение

В последние несколько месяцев стали поступать жалобы от пользователей, что до них часто не доходит почта от их партнеров. Почта поднята на собственном сервере, поэтому начал изучать логи. Но в логах не было ничего криминального. Кроме того, все тестовые письма, которые я отправлял в этот домен со своих ящиков, прекрасно доходили, и, пожав плечами, я решил, что это какие-то локальные проблемы.
Через некоторое время, мне в руки попал лог отправки письма в наш домен с другого сервера, и тут меня как обухом по голове ударили. Оказывается, их DNS сообщает почтовому серверу, что имя домена не опознано.
Естественно, я сразу проверил регистрацию домена, что показало, что домен активен, проплачен до следующего года и делегирован на DNS-сервера регистратора. Начал делать запросы по всем доступным dns-серверам:
Запрос на собственные DNS-сервера:
Запрос на корневой а-сервер:
И самое интересное — любимый всеми Public DNS от Google:
И не только к нашему. Примерно в это же время мне пожаловался пользователь, что не может отправить почту какому-то очень важному человеку на его официальный адрес. Глянув в логах, увидел такую же строчку, что DNS-сервер не может опознать имя домена. Быстренько поменяв на своих локальных DNS-серверах адрес пересылки с публичных серверов Гугла на адреса публичных серверов Яндекса, все прекрасно прошло.
P. P. S. Уж не знаю, положительная ли энергия хабрасообщества так повлияла, или кто-то из причастных к проблеме людей прочитал этот пост и тихо исправил, может мистический полтергей «поиграл да отдал», а может и повлияло обновление SOA зоны, но сейчас все чудесным образом заработало. Все 21 сервер отресолвили наш домен. Еще раз большое спасибо всем ответившим, да прибудет с Вами Великая информационная сила! 🙂
вывод маршрутов. метрику приходится ставить руками.
казалось бы какой интерфейс главный? разве не с наименьшей метрикой?
смущает лишь
я не понимаю от чего зависит порядок интерфейсов в ipconfig /all и может ли этот порядок влиять?
т.е. отвечает интерфейс с наибольшей метрикой. что по моему неправильно, и влечёт свои последствия(+)
на что метрика влияет так это на tracert и трафик в целом. пакеты идут через тот у которого метрика меньше.
а с dns то в чём косяк?
Утилита NSLOOKUP присутствует в операционных системах Windows, начиная с Windows NT , и предназначена для формирования запросов к серверам DNS из командной строки. Фактически, утилита является аналогом службы DNS-клиент и позволяет диагностировать проблемы с разрешением имен в системе DNS. По умолчанию, все запросы отправляются на DNS-сервер, адрес которого задан настройками сетевого подключения. В терминах утилиты такой сервер является сервером по умолчанию (default server). Команда ipconfig /all позволяет получить информацию о настройках протокола IP и, в том числе, о серверах DNS, используемых в системе.
При запуске nslookup без параметров, утилита переходит в интерактивный режим, ожидая ввод команд пользователя. Ввод знака вопроса или help позволяет отобразить справку о внутренних командах и опциях nslookup:
Описание программы nslookup.
При запуске с некоторыми из выше перечисленных параметров, команда nslookup выполняется в не интерактивном режиме без диалога с пользователем.
2.1. Выполнить запрос к DNS-серверу, заданному по умолчанию, на разрешение доменного имени yandex.ru:
C: nslookup yandex.ru.
Для уменьшения количества ненужных запросов к серверам имен, имя домена нужно вводить в виде полностью определенного имени (fully qualified domain name) , т.е. с точкой в конце. Если этого не делать, то nslookup будет сначала выполнять запрос на разрешение имени относительно домена того компьютера, на котором она выполняется, т.е. yandex.ru.mydomain.ru если имя локального домена — mydomain.ru.
2.2. То же, что и в предыдущем примере, но с указанием типа запрашиваемой записи -type=mx:
C: nslookup -type=mx yandex.ru
Сервер DNS ответит на запрос утилиты nslookup перечислением почтовых серверов, обслуживающих домен yandex.ru
C: nslookup odnoklassniki.ru 8.8.8.8
C: nslookup -type=mx -timeout=8 vk.com 208.67.220.220
При выполнении команды, максимальное время ожидания ответа сервера — 8 секунд.
2.5. То же, что и в предыдущем примере, но выполняется запрос на отображение любых типов записей:
C: nslookup -type=any -timeout=8 vk.com 208.67.220.220
Сервер: 208.67.220.220
Не заслуживающий доверия ответ:
vk.com internet address = 87.240.131.119
vk.com internet address = 87.240.131.99
vk.com nameserver = ns2.vkontakte.ru
vk.com nameserver = ns4.vkontakte.ru
vk.com nameserver = ns1.vkontakte.ru
vk.com nameserver = ns4.vkontakte.ru
vk.com nameserver = ns2.vkontakte.ru
vk.com nameserver = ns1.vkontakte.ru
ns1.vkontakte.ru internet address = 93.186.237.2
ns2.vkontakte.ru internet address = 93.186.224.100
2.6. Для разных версий nslookup и разных DNS-серверов, обслуживающих запрос, отображаемая информация может незначительно отличаться. Тот же запрос, сформированный англоязычной версией утилиты nslookup.exe и направленный на обработку DNS-серверу компании Google приведет к отображению следующих данных:
Address: 8.8.8.8
Non-authoritative answer:
vk.com internet address = 87.240.131.120
vk.com internet address = 87.240.143.244
vk.com
primary name server = ns1.vkontakte.ru
responsible mail addr = ncc.vkontakte.ru
serial = 2013100501
refresh = 3600 (1 hour)
retry = 900 (15 mins)
expire = 604800 (7 days)
default TTL = 900 (15 mins)
vk.com AAAA IPv6 address = 2a00:bdc0:3:103:1:0:403:901
vk.com AAAA IPv6 address = 2a00:bdc0:3:103:1:0:403:902
vk.com AAAA IPv6 address = 2a00:bdc0:3:103:1:0:403:903
vk.com nameserver = ns1.vkontakte.ru
vk.com nameserver = ns2.vkontakte.ru
vk.com nameserver = ns4.vkontakte.ru
vk.com MX preference = 10, mail exchanger = mail.vk.com
vk.com text =”v=spf1 ip4:93.186.224.0/20 ip4:87.240.128.0/18 mx include:aspmx.googlemail.com ~all”
2.7. Сообщение «Не заслуживающий доверия ответ:» (Non-authoritative answer: ) говорит о том, что выполняющий запрос DNS-сервер, не является владельцем зоны vk.com т.е. записи для узла vk.com в его базе отсутствуют, и для разрешения имени использовался рекурсивный запрос к другому DNS-серверу. Если отправить запрос DNS-серверу ns1.vkontakte.ru, то будет получен авторитетный ответ (authoritative answer) :
Server: ns1.vkontakte.ru
Address: 93.186.237.2
vk.com
primary name server = ns1.vkontakte.ru
responsible mail addr = ncc.vkontakte.ru
serial = 2013100501
refresh = 3600 (1 hour)
retry = 900 (15 mins)
expire = 604800 (7 days)
default TTL = 900 (15 mins)
vk.com internet address = 87.240.131.118
vk.com AAAA IPv6 address = 2a00:bdc0:3:103:1:0:403:904
vk.com AAAA IPv6 address = 2a00:bdc0:3:103:1:0:403:905
vk.com AAAA IPv6 address = 2a00:bdc0:3:103:1:0:403:906
vk.com nameserver = ns4.vkontakte.ru
vk.com nameserver = ns1.vkontakte.ru
vk.com nameserver = ns2.vkontakte.ru
vk.com MX preference = 10, mail exchanger = mail.vk.com
vk.com text = “v=spf1 ip4:93.186.224.0/20 ip4:87.240.128.0/18 mx include:aspmx.googlemail.com ~all”
ns4.vkontakte.ru internet address = 93.186.239.253
ns4.vkontakte.ru AAAA IPv6 address = 2a00:bdc0:ff:4::2
ns1.vkontakte.ru internet address = 93.186.237.2
ns1.vkontakte.ru AAAA IPv6 address = 2a00:bdc0:ff:1::2
ns2.vkontakte.ru internet address = 93.186.224.100
ns2.vkontakte.ru AAAA IPv6 address = 2a00:bdc0:ff:2::2
mail.vk.com internet address = 93.186.236.94
2.8. Использование опции отладки (debug) позволяет получить дополнительную информацию, содержащуюся в заголовках запросов клиента и ответов сервера (время жизни, флажки, типы записей и т.п.):
C: nslookup 8.8.4.4
2.10. Отобразить все записи для домена mydomain.ru, обслуживаемого текущим DNS-сервером:
Вывод направляется в файл listdns.txt текущего каталога. Задавать абсолютный путь к файлу не следует, поскольку все существующие на данный момент версии nslookup.exe успешно перенаправляют стандартный вывод в файл, только если он располагается в текущем каталоге.
будет воспринята как ошибочна команда, а команда:
как команда с ошибочной опцией.


