Nslookup (name server lookup) is a command-line tool that is used to diagnose and validate DNS servers and records, and to find name resolution problems in the DNS subsystem. The nslookup tool was originally developed as a part of the BIND package and ported to Windows by Microsoft. Nslookup is currently a built-in tool in all supported versions of Windows.
From simple to complex configurations, there are times you need to check on how your DNS is behaving. Luckily, computers have a built-in utility that can help you do just that. This resource covers useful commands in Windows Command Prompt and PowerShell. It also touches on the differences between the two shells. Ready? Of course you are, that’s why you’re here, right? Oh, who am I kidding? You probably skipped this part and went straight to the commands. Fine. Be that way.
Note: All examples are from a system running Windows 10.
What is the easiest way to know my current DNS server’s IP address or domain name? I am trying to troubleshoot my broadband Internet connection under Windows 7.
asked Oct 12, 2012 at 16:04
If you know your public IP address simply enter in a command prompt window:
You can also specify the name server to check against by appending it to the above command.
You can get your current IP address from sites like http://whatismyip.com
answered Oct 12, 2012 at 16:12
5 silver badges10 bronze badges
You want to open “Run” then type
In the command prompt enter this command
The output should look something like:
answered Oct 12, 2012 at 16:16
1 gold badge7 silver badges7 bronze badges
Personally, I prefer this approach:
It will print the name of your default DNS server in the shell
answered Oct 12, 2012 at 17:29
63 gold badges260 silver badges306 bronze badges
This will show the primary DNS server domain name and IP address.
answered Oct 6, 2016 at 15:12
1 gold badge16 silver badges23 bronze badges
answered Apr 23, 2021 at 0:58
Вы настроили новый DNS-сервер на своем компьютере и не знаете, работает он или нет. Что ж, есть способы это проверить. Вы можете сделать это изначально через командную строку или с помощью сторонних приложений.
Приоритет DNS
Прежде чем мы начнем, важно понять приоритет DNS.
Все мы знаем, что по умолчанию мы используем DNS-серверы, предоставленные нашим интернет-провайдером. Но что происходит, когда вы вводите DNS на своем локальном компьютере или маршрутизаторе? Какой DNS сейчас имеет приоритет?
Итак, если мы ранжируем приоритет DNS-серверов, он будет примерно таким:
Ниже приведено полное руководство по настройке DNS-сервера, или вы также можете быстро просмотреть видео
Самый простой способ — проверить онлайн
Самый быстрый способ проверить, какой DNS-сервер вы используете, — это использовать такие онлайн-сайты, как WhatsMyDNSserver. Просто зайдите на сайт и нажмите кнопку с надписью — «Какой у меня DNS-сервер?«. И он покажет ваш текущий DNS-сервер.

Точно так же, если вы переключились на OpenDNS, вы можете проверить свой DNS-сервер из этого ссылка на сайт.
Какой DNS-сервер я использую — Windows 10/8/7
Есть несколько способов проверить DNS-сервер, который вы используете в Windows. Вот пара из них.
Чтобы проверить DNS-сервер, который вы используете в Windows, просто откройте командную строку. Для этого в Windows 10 нажмите Начало, тогда Все программы, тогда Аксессуары, и, наконец, о Командная строка. и выполните следующую команду.
Если вам интересно, все, что делает команда, это извлекает все значения конфигурации сети, а затем отфильтровывает из них строку «DNS-серверы».


Какой DNS-сервер я использую — Linux
Читайте: Лучшие приложения для шифрования DNS-трафика

Какой DNS-сервер я использую — Mac
Точно так же в macOS откройте терминал и введите следующую команду.
Чтобы запустить терминал в macOS, нажмите CMD + ПРОБЕЛ, чтобы запустить Spotlight, а затем введите «терминал». и нажмите Enter. Кроме того, вы можете открыть папку «Приложения», затем открыть «Утилиты» и дважды щелкнуть «Терминал». Когда откроются окна терминала, скопируйте и вставьте следующую команду и нажмите Enter.

Какой DNS-сервер я использую — Android
На рынке есть несколько приложений для сканирования сетей Android, которые позволяют узнать, какой DNS вы используете. Я бы предложил Сетевая информация II. Приложение бесплатное, легкое, без рекламы.
Просто загрузите его из игрового магазина, откройте его и перейдите на вкладку WiFi. Там вы увидите записи DNS 1 и DNS 2. Это DNS-серверы, которые вы используете.
Читайте: измените настройки Android DNS с помощью этих 5 приложений DNS Changer

Кроме того, вы также можете попробовать Сетевые утилиты PingTools. В нем есть одни из лучших и полезных инструментов. Вы также получаете дополнительные утилиты, которые могут выполнять такие задачи, как сканирование UPnP, пробуждение LAN, сканирование портов и т. Д.
Чтобы узнать DNS-адрес, установите приложение из Play Store и откройте его. Теперь нажмите на значок «Маршрутизатор» или «Интернет», и он отобразит все сведения о сети. Здесь вы можете узнать, какой DNS вы используете, просмотрев записи DNS 1 и DNS 2.

Какой DNS-сервер я использую — iOS

Какой DNS-сервер я использую — маршрутизатор

Заключительные слова
Итак, это были некоторые из способов узнать, какой DNS-сервер вы используете. В зависимости от вашей операционной системы выберите наиболее эффективный способ. В случае каких-либо других вопросов или трудностей, дайте мне знать в комментариях ниже.
DNS Debug Command
To get additional details about your domain’s DNS, you can use the debug command. This will provide the header information of DNS server requests (see screenshot below).
Ping Command
For network diagnostics, you can run a ping command in CMD. A ping measures the latency of a connection for a target location. For demonstration purposes, I’ll run a ping test using 8.8.8.8, Google’s public DNS address.
You now have the round trip time of how long it takes to get a response from the pinged server.
Traceroute Command
What the command is doing is verifying the route packets take to arrive at their destination. The different stops listed are also called hops. Along with the number of hops, you can see the query resolution time. This information can help you improve your DNS speed or identify problematic routers.
Tip: Command Prompt keeps a history of recent commands. If you need to see a command entered earlier in a session, just hit the up arrow key to scroll through them. See the Gif below for an example of how this works.
Примеры наиболее часто используемых команд Nslookup
Получить IP-адрес хоста/домена (запись A):
Получить и IPv6-адрес для хоста/домена:
nslookup -type=AAAA mx.theitbros.com
Список записей MX домена:
nslookup -query=mx theitbros.com

Запрос NS-записей (список DNS-серверов, ответственных за домен):
nslookup -type=ns theitbros.com
Получите запись SOA для домена:
nslookup -type=soa theitbros.com
Список всех доступных записей DNS для определенного домена:
nslookup -type=любой theitbros.com
Обратный поиск DNS (получить запись DNS по IP-адресу):
Запрос определенного DNS-сервера вместо сервера по умолчанию (предпочтительный DNS):
nslookup theitbros.com ns1.siteground.net
Проверить запись PTR:
nslookup -type=ptr 0.36.209.35.in-addr.arpa
Запросить DNS-сервер, используя режим отладки nslookup:
nslookup -debug theitbros.com
Изменить интервал ожидания ответа по умолчанию:
nslookup -timeout=20 theitbros.com
Использование Nslookup для получения различных типов записей DNS
Тип записей ресурсов nslookup по умолчанию — A и AAAA, но вы можете использовать другие типы записей ресурсов:
Вы можете указать определенные типы записей для поиска с помощью параметра nslookup:
Например, чтобы вывести список всех почтовых серверов, настроенных для определенного домена (записи MX, Mail eXchange), выполните команду:
nslookup -type=mx theitbros.com

theitbros.com предпочтение MX = 10, почтовый обменник = mail.theitbros.com
theitbros.com предпочтение MX = 20, почтовый обменник = mail.theitbros.com
mail.theitbros.com интернет-адрес = 37.1.214.145
Как видите, у этого домена 2 MX записи с приоритетами 10 и 20 (чем меньше число, тем выше приоритет MX адреса). Если вы не видите записи MX, возможно, они просто не настроены для этого домена.
Чтобы просмотреть все записи DNS в доменной зоне, выполните команду:

Интернет-адрес theitbros.com = 37.1.214.145
сервер имен theitbros.com = ns2.theitbros.com
theitbros.com сервер имен = ns1.theitbros.com
ns2.theitbros.com Интернет-адрес = 74.80.224.189
ns1.theitbros.com Интернет-адрес = 37.1.214.145
nslookup -type=soa theitbros.com
theitbros.com
первичный сервер имен = pdns1.registrar-servers.com
ответственный почтовый адрес = hostmaster.registrar-servers.com
серийный номер = 1601449549
обновление = 43200 (12 часов)
повтор = 3600 (1 час)
истекает = 604800 (7 дней)
по умолчанию TTL = 3601 (1 час 1 секунда)
pdns1.registrar-servers.com интернет-адрес = 156.154.130.200
pdns1.registrar-servers.com IPv6-адрес AAAA = 2610:a1:1022::200

Если вы хотите получить список TXT-записей домена (например, при просмотре настроек SPF), выполните команду:
nslookup -type=TXT theitbros.com
Опция отладки позволяет получить дополнительную информацию, содержащуюся в заголовках клиентских DNS-запросов и ответов сервера (время жизни, флаги, типы записей и т.д.):

Вы можете просмотреть текущие значения для всех указанных опций nslookup с помощью команды:
Сервер по умолчанию: ns1.theitbros.com

По умолчанию DNS-серверы прослушивают UDP-порт 53, но при необходимости вы можете указать другой номер порта, используя параметр -port:
nslookup порт 56 theitbros.com
установить порт = 56
Вы можете изменить интервал ожидания ответа от DNS-сервера. Обычно это необходимо при медленных или нестабильных сетевых соединениях. По умолчанию, если в течение 5 секунд не приходит ответ, запрос повторяется, увеличивая время ожидания в 2 раза. Но вы можете вручную установить это значение в секундах, используя опцию -timeout:
nslookup -timeout=10 theitbros.com
Командная строка Windows и Windows PowerShell
Существует несколько способов запуска командной строки Windows. Один из способов — щелкнуть значок поиска на панели задач и ввести «командная строка» или «cmd». Это должно поместить приложение в верхнюю часть окна поиска в разделе «Лучшее соответствие».
Если вам нравятся сочетания клавиш, как и мне, вы можете нажать Win + R, чтобы вызвать команду «Выполнить». Введите cmd и нажмите «ОК». Бум, ты в деле!
Вы можете получить доступ к PowerShell точно так же, как к командной строке Windows. Вместо того, чтобы вводить cmd, вы должны ввести PowerShell в окне «Поиск» или «Выполнить команду». Использование опции поиска – это то, где все по-другому. Если вы выберете маршрут поиска, вы увидите вариант для Windows PowerShell и PowerShell ISE. В этом ресурсе я буду использовать базовую версию Windows PowerShell.
Знаете ли вы?: PowerShell ISE — это хост-приложение для PowerShell. I SE расшифровывается как Integrated Scripting Environment. Этот вариант предоставляет интерфейс, тогда как стандартный PowerShell больше похож на командную строку.
В этом разделе мы перечисляем распространенные ошибки, которые может возвращать инструмент nslookup:
Как использовать Nslookup для проверки записей DNS?
С помощью утилиты командной строки nslookup можно определить IP-адрес любого сервера по его DNS-имени, выполнить обратный поиск DNS и получить информацию о различных записях DNS для определенного доменного имени.
Вы можете просмотреть или изменить предпочитаемый и альтернативный IP-адрес DNS-сервера в свойствах сетевого подключения.

Или вы можете получить настройки DNS-сервера из командной строки CLI с помощью команды ipconfig:

Вы можете использовать инструмент nslookup в интерактивном или неинтерактивном режиме.
Чтобы запустить DNS-запрос с помощью инструмента nslookup в неинтерактивном режиме, откройте командную строку и выполните приведенную ниже команду для базового синтаксиса nslookup:
В этом примере мы запросили IP-адрес домена theitbros.com. Утилита nslookup запрашивает DNS-сервер (он указан в строке Server) и возвращает, что это имя соответствует IP-адресу 37.1.214.145 (по умолчанию отображаются записи A и AAAA).
Этот ответ означает, что ваш DNS-сервер доступен, работает правильно и обрабатывает запросы на разрешение DNS-имен.
Если вы получили такой ответ:
*** dns1.contoso.com не может найти theitbros.com: несуществующий домен
Это означает, что для данного доменного имени на DNS-сервере не найдено ни одной записи.
Если ваш DNS-сервер недоступен или не отвечает, вы получите сообщение об ошибке превышения времени ожидания запроса DNS.
В этом случае проверьте, правильно ли вы указали адрес DNS-сервера и нет ли проблем с сетевым подключением у провайдера ИС.
Неавторитетный ответ означает, что DNS-сервер, выполнивший запрос, не является владельцем зоны theitbros.com (в его базе нет записей об этом домене) и выполнять разрешение имени рекурсивным запросом к другому Использовался DNS-сервер.
Включить и отключить рекурсивный режим nslookup можно с помощью команд (по умолчанию рекурсивные DNS-запросы включены):
установить рекурсию
установить нерекурсию
Вы можете получить доступ к авторитетному DNS-серверу, указав его адрес непосредственно в параметрах утилиты nslookup. Например, чтобы разрешить имя на авторитетном DNS-сервере (который содержит этот домен), используйте команду:
Nslookup theitbros.com ns1.theitbros.com
При запуске nslookup без параметров утилита переходит в интерактивный режим. В этом режиме вы можете выполнять различные команды. Полный список доступных внутренних команд утилиты nslookup можно просмотреть, введя вопрос.
Совет. Обратите внимание, что команды nslookup чувствительны к регистру.

Чтобы закрыть интерактивный сеанс nslookup, введите exit и нажмите Enter.
Вы можете выполнять обратный поиск (получать DNS-имя по IP-адресу). Просто введите IP-адрес в интерактивной строке nslookup и нажмите Enter.

Инструмент поиска DNS
Интернет-ресурсы также отлично подходят для устранения неполадок DNS. Эти инструменты особенно полезны, поскольку они доступны из любого места и с любого устройства. Например, инструмент поиска DNS от Constellix (наша дочерняя компания) может извлекать записи DNS и выполнять проверки на основе географического местоположения. Он также будет запрашивать любой указанный вами сервер имен. Поддерживаются записи A, AAAA, CNAME, MX, TXT, NS, SOA и SRV.
Есть некоторые дополнительные преимущества использования инструмента Constellix DNS Lookup. Вы можете запускать проверки для разных доменов и/или серверов имен в одном и том же сеансе. Результаты можно фильтровать по домену, типу записи, распознавателю или местоположению, и вы можете расширить или свернуть каждую проверку. Вы также можете скопировать URL-адрес результатов и отправить их по электронной почте своей команде, что удобно и значительно экономит время.
Все дело в скорлупе
С помощью указанных выше параметров вы можете проверить свой DNS и устранить неполадки. Ключевые моменты: Командная строка, PowerShell и онлайн-инструменты DNS предоставляют сервер имен, инструкции по записи и другую информацию DNS, но они работают по-разному. C MD использует однострочные команды, тогда как PowerShell использует командлеты и может запускать пакетные команды. Такие ресурсы, как онлайн-инструмент поиска DNS от Constellix, выполняют проверки на основе введенных вами данных.
Конечно, это далеко не полное руководство по командной строке или PowerShell. Они оба могут сделать гораздо больше. Ниже приведены несколько ссылок, которые помогут углубить ваше понимание любой утилиты.
Если вам это понравилось, вы можете найти это полезным:
Список команд Windows CMD
Список команд PowerShell
Знакомство с Windows PowerShell
Часто задаваемые вопросы
nslookup — бесценный инструмент для диагностики проблем с DNS. Это позволяет вам проверять ответы DNS-сервера, подтверждать детали записи домена и устранять проблемы с разрешением, предоставляя четкий путь к устранению сетевых проблем.
Почему DNS сравнивают с «телефонной книгой» Интернета?
При запуске nslookup отправляет запросы на DNS-сервер, указанный в настройках сетевого адаптера, этот сервер считается вашим DNS-сервером по умолчанию (предпочтительным). Понимание этого взаимодействия может помочь в настройке параметров для оптимальной производительности сети.
Каково значение «неавторитетного ответа», который я вижу при использовании nslookup?
«Неавторитетный ответ» означает, что DNS-сервер, выполняющий запрос, не является владельцем запрошенного домена и выполнил рекурсивный запрос к другому DNS-серверу. Это ключевой момент в понимании пути решения вашего запроса.
Что делает параметр ‘-type’ в командах nslookup?
Параметр «-type» в командах nslookup помогает указывать и запрашивать различные типы записей DNS, такие как A, MX, SOA и другие. Этот параметр расширяет возможности nslookup, предоставляя подробные сведения о различных аспектах DNS.
Что означает термин «обратный просмотр» в контексте DNS?
Обратный поиск означает получение доменного имени путем ввода IP-адреса. Эта функция nslookup помогает идентифицировать источник трафика или атак и является важнейшим инструментом сетевой экспертизы.
При использовании nslookup вы можете столкнуться с такими ошибками, как «Время ожидания запроса DNS истекло», «Несуществующий домен» или «Нет ответа от сервера». Понимание этих ошибок может помочь эффективно диагностировать проблемы с сетью или сервером.
Что такое система доменных имен (DNS)?
DNS похож на «телефонную книгу» Интернета, которая переводит понятные имена, которые мы вводим, в базовые IP-адреса, назначенные веб-серверам или другим серверам, к которым мы подключаемся. Локальный DNS-сервер обычно преобразует локальные веб-серверы в локальной сети в IP-адреса, необходимые для внутренних DNS-имен, в то время как общедоступные DNS-серверы разрешают общедоступные ресурсы.
Установить команду
Допустим, вы хотите найти сервер имен для домена или установить определенный параметр в командной строке. Для этого вы должны использовать команду Windows set. Вот пример:
(нажимайте Enter после каждой команды)
Результат должен выглядеть примерно так:
Поиск записей DNS
Вы также можете использовать команду nslookup и set для проверки или устранения неполадок записей DNS для вашего домена. Этот процесс такой же, как в приведенном выше примере, но на этот раз вы укажете, какую запись вы хотите запросить. Вы можете быстро устранить любые ошибки или проблемы, которые вы обнаружите из этой информации. На снимке экрана ниже я выполнил поиск записей MX, PTR и SOA, но, конечно, вы не ограничены только ими.
Совет. Если вы проверяете несколько типов записей, вам не нужно вводить «nslookup» для каждого из них. После начальной команды nslookup вы можете запускать команды set для каждой записи. Это применимо, даже если вы начинаете проверять записи для другого домена.
Результаты команды записи DNS – определения

Совет: может быть полезно очистить кеш DNS перед выполнением команд. Для этого введите: ipconfig/flushdns и нажмите Enter. Теперь ваш кеш должен быть очищен.
Команда nslookup полезна при диагностике проблем с разрешением DNS-имен. Эта команда сравнима с функцией dig в Mac или Linux. Он может найти IP-адрес хоста или выполнить обратный поиск DNS (чтобы найти доменное имя IP). Nslookup также может предоставить информацию о записях DNS для вашего домена.
В этом примере я сделал простой запрос IP-адреса для DNS Made Easy. В ответ я получил адрес IPv6 и IPv4 для домена. Причина, по которой он говорит «неавторитетный ответ», заключается в том, что я использую рекурсивный сервер для запроса.
Команды командной строки Windows для DNS
Хорошо, а теперь самое интересное! Вот несколько команд Windows CMD, которые могут помочь устранить неполадки или проверить ваш DNS. Не волнуйся. У меня очень активное воображение. Я сделаю вид, что вы не пропустили всю мою тяжелую работу выше и пришли прямо сюда.
Команды DNS для Windows PowerShell
Если вы предпочитаете Windows PowerShell, этот раздел для вас. Это эквиваленты PowerShell приведенных выше оконных команд:
Nslookup — Resolve-DnsName в PowerShell
Nslookup в PowerShell = Resolve-DnsName
Совет. Чтобы сэкономить время в PowerShell, введите первые несколько букв командлета, а затем нажмите клавишу Tab, чтобы автоматически заполнить остальные. Например, если вы наберете «reso», а затем нажмете вкладку (reso + tab), PowerShell заполнит Resolve-DnsName. Это работает так же с другими командлетами, такими как Test-Connection. Начните вводить «test-con», затем нажмите вкладку «Test-Connection» и т. д.».
Поиск записей DNS в Windows PowerShell
PowerShell использует свой командлет Resolve-DnsName для поиска записей. Чтобы указать, какая запись, вы должны добавить «-type» для завершения командлета.
Обратите внимание, что когда я вводил -Type или -type, командлет выполнялся одинаково, поэтому регистр не учитывается
Команда Ping в PowerShell
Ping в PowerShell = Test-Connection
Результаты выглядят иначе, но вы по-прежнему видите источник (имя компьютера) и переходы, а также время, которое потребовалось для получения ответа.
Трассировка в PowerShell
Если у вас есть IP-адрес и вам нужно доменное имя, вы можете выполнить обратный поиск DNS. Это то же самое, что и в приведенном выше примере, только, как вы уже догадались, в обратном порядке:
Подведение итогов
Понимание и эффективное использование nslookup в Windows может изменить правила игры при устранении неполадок в сети. Этот мощный инструмент, встроенный прямо в вашу операционную систему, дает ценную информацию о мире DNS-серверов и записей. Будь то простая задача проверки IP-адреса домена или сложное исследование записей DNS, nslookup — отличный инструмент.
В этом руководстве мы рассмотрели многогранную функциональность nslookup — от базового синтаксиса до сложных команд, от запроса различных типов записей до обработки распространенных ошибок. Мы также рассмотрели, как nslookup может помочь в диагностике и устранении проблем с DNS, повышая надежность и производительность вашей сети. Эффективно устраняя проблемы с DNS с помощью nslookup, вы сможете устранить одну из наиболее распространенных проблем, лежащих в основе многих проблем с подключением клиентов.

