14

У меня настроены два DNS-сервера, которые отображаются при просмотре ipconfig /all

Я хотел бы знать, какой из двух серверов я использую в настоящее время, т.е. из моего браузера или с помощью команды tracert . Я считаю, что я буду использовать первый из перечисленных серверов, если только он не будет доступен, и в этот момент я буду использовать следующий.

Я пытаюсь выяснить, есть ли команда, которую я могу использовать, которая скажет мне, какую команду я использую, или, альтернативно, объяснение, почему это некорректный вопрос.

Мне известно о ipconfig /displaydns но это список кэшированных результатов, который также не показывает, с какого сервера пришел каждый результат.

Я знаю о nslookup [host] но он использует текущий сервер по умолчанию.

Я знаю о nslookup [server] [host] но это не помогает с подтверждением того, какой днс я сейчас использую из tracert или браузера.

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

Есть ли способ сделать это?

7 ответов7

8

Я думаю, что лучшее решение - перейти на dnsleaktest и щелкнуть по стандартному тесту. Я использую этот метод лично все время.

7

Windows запрашивает DNS в следующем порядке:

  1. Файл хостов
  2. Локальный кеш DNS
  3. Предпочитаемые DNS-серверы
  4. Другие DNS-серверы (вторичный, третичный, ...)

Вы можете узнать больше об этом поведении в Microsoft (как работает DNS-запрос, функции клиента). Кроме того, есть также список таймаутов для DNS-запросов:

Value        Default Value  Attempt
-------------------------------------------------------------------------------------
1st limit    1 second       Query the preferred DNS server on a preferred connection.
2nd limit    2 seconds      Query the preferred DNS server on all connections.
3rd limit    2 seconds      Query all DNS servers on all connections (1st attempt).
4th limit    4 seconds      Query all DNS servers on all connections (2nd attempt).
5th limit    8 seconds      Query all DNS servers on all connections (3rd attempt).
6th value    (Must be 0.)

Windows может регистрировать тайм-аут DNS-запроса где-то в средстве просмотра событий, я не уверен в этом. Wireshark, упомянутый @BBlake, вероятно, является лучшим выбором для быстрого получения ответа.

7

Команда nslookup из командной строки подскажет вам, какая из них используется (обычно ваша основная). Иногда ввод в поддельный домен (hdhsgdh.com) не удастся на первом DNS-сервере и попытаться использовать второй.

Быстрое редактирование: не вводите адрес после команды nslookup, она скажет вам, какой DNS-сервер он использует.

5

Я не знаю ни одного легкого способа, встроенного в Windows, чтобы отслеживать эту информацию. Однако такая утилита, как Wireshark, позволяет довольно легко отслеживать сетевой трафик и фильтровать его по определенным видам трафика, например DNS.

2

Вы можете посетить http://whatsmyresolver.stdlib.net/. На странице рассказывается, какой DNS-сервер вы использовали для разрешения домена. Это имеет то преимущество, что работает, даже если у вас нет доступа к маршрутизатору, или ваши DNS-запросы находятся в центре вашего ISP или что-то подобное.

2

Я считаю, что вы всегда будете использовать свой основной сервер DNS, если это не сработает. Вот почему у нас есть альтернативный DNS или вторичный DNS-сервер.

2

Утилита DNSQuerySniffer от NirSoft будет отображать результаты DNS-запросов по мере их появления и включать в себя IP-адрес DNS-сервера.

http://www.nirsoft.net/utils/dns_query_sniffer.html

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .