У меня есть набор имен хостов, которые могут быть разрешены только с определенным удаленным DNS-сервером A , поэтому у меня есть несколько DNS-серверов в настройках протокола TCP сетевой карты.

Это работает в течение некоторого времени. Я не знаю точно, но это могут быть часы или даже дни. После этого времени имена хостов из DNS просто перестают разрешаться. Я не могу открыть их в веб-браузере, пинговать и т.д. Однако nslookup может разрешить эти имена хостов.

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

Иногда соединение с DNS-сервером A теряется, поэтому я подозреваю, что это является причиной такого поведения, то есть DNS-сервер недоступен, тогда он больше не запрашивается.

Как решить эту проблему?

1 ответ1

1

Объяснение и обходной путь были написаны в этой статье на основе базы знаний Microsoft 320760, которая, кажется, применима к Windows XP и Windows 7.

Microsoft:

Это происходит потому, что служба DNS-клиента Windows XP (Dnscache) следует определенному алгоритму, когда решает порядок использования DNS-серверов, настроенных в свойствах TCP/IP. Если список DNS-серверов перераспределен по приоритетам, служба DNS-клиента Windows XP периодически сбрасывает приоритет сервера. По умолчанию приоритеты сервера сбрасываются каждые 15 минут.

Описание обходного пути:

Чтобы обойти эту проблему, измените реестр таким образом, чтобы DNS-сервер, который был настроен первым, был опробован первым при каждом запросе. Выполните следующие действия и закройте редактор реестра.

  1. Нажмите кнопку Start , выберите пункт Run , введите regedit и нажмите кнопку OK .
  2. Найдите и нажмите следующий ключ в реестре:

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ DNSCache \ Parameters

  3. В меню « Edit выберите пункт « New и нажмите « REG_DWORD» .

  4. Введите ServerPriorityTimeLimit и нажмите ENTER .
  5. В меню « Edit выберите « Modify .
  6. Введите 0 и нажмите кнопку OK .

Когда для ServerPriorityTimeLimit установлено значение 0 (ноль), приоритеты сервера сбрасываются до того, как служба DNS-клиента решит, какой DNS-сервер использовать. Вы должны перезапустить Windows XP, чтобы эти изменения вступили в силу. Любое другое значение, используемое в этом поле, будет вызывать поведение по умолчанию.

Примечание. В параметре реестра ServerPriorityTimeLimit только значения 0 изменяют поведение по умолчанию. Все остальные значения вызывают поведение по умолчанию.

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