Як знайти, який DNS-сервер я використовую (з декількох налаштованих серверів dns)


15

У мене налаштовано два dns-сервери, які перераховані під час перегляду ipconfig /all

Я хотів би знати, який з двох серверів я використовую в даний момент, тобто з мого браузера або за допомогою tracertкоманди. Я вважаю, що я буду використовувати перший перерахований сервер, якщо він недоступний, в який момент я буду використовувати наступний.

Я намагаюся з’ясувати, чи є команда, яку я можу використовувати, яка підкаже, яку я використовую, або, як альтернатива, пояснення, чому це хибне питання.

Мені відомо, ipconfig /displaydnsале це кешований список результатів, який також не показує, з якого сервера прийшов кожен результат.

Мені відомо, nslookup [host]але для цього використовується поточний "за замовчуванням" сервер.

Мені відомо, nslookup [server] [host]але це не допомагає підтвердити, який dns я зараз використовую у tracert або браузері.

Моє запитання виникає з ситуації, коли nslookup дасть мені очікуваний результат для конкретного внутрішнього хоста. Одночасно мій браузер, а також tracertне в змозі вирішити хост. Якщо tracert і мій браузер використовують вторинний сервер dns, я б хотів підтвердити це.

Чи є спосіб це зробити?

Відповіді:


8

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, напевно, найкращий варіант для швидкого отримання вашої відповіді.


9

Я вважаю, що найкраще рішення - перейти на неясний тест та натиснути на тест "Стандарт" . Цей метод я особисто використовую весь час.


1
Посилання не працює.
Пол Меттьюз

Так, здається, зараз немає, я оновив свою відповідь новим сайтом.
Гаурав Кумар

Це був чи не найкращий і найпростіший спосіб без встановлення зовнішньої утиліти. Дякую!
Ankur Jain

7

Команда nslookup з командного рядка підкаже вам, яку з них використовує (як правило, ваш основний). Іноді введення підробленого домену (hdhsgdh.com) не вдасться на першому сервері dns і спробує використовувати другий.

Швидке редагування: не вводьте адресу після команди nslookup, вона підкаже, який сервер dns використовується.


1
nslookupзавжди показує сервер DNS за замовчуванням.
Нейромедіатор

5

Мені невідомий будь-який простий спосіб, вбудований у Windows для відстеження цієї інформації. Однак така утиліта, як Wireshark, дозволяє досить легко відстежувати мережевий трафік та фільтрувати за певними видами трафіку, наприклад DNS.


2

Я вірю, що ви завжди будете використовувати ваш основний dns-сервер, якщо це не вдасться. Ось чому ми маємо альтернативний DNS, який є вторинним сервером DNS.


2
Якщо він не вдався, як я це бачу?
Пол Джордж


2

Ви можете відвідати http://whatsmyresolver.stdlib.net/ На цій сторінці ви знаєте, який dns-сервер ви використовували для вирішення домену. Це має перевагу в тому, що він працює навіть тоді, коли у вас немає доступу до маршрутизатора, або якщо ваші dns-запити є людиною, що стоїть на вашому рахунку, або щось подібне.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.