Отключение кэширования DNS на стороне клиента в Windows XP и Windows Server 2003

Переводы статьи Переводы статьи
Код статьи: 318803 - Vizualiza?i produsele pentru care se aplic? acest articol.
Версия данной статьи для Microsoft Windows 2000: 245437.
Развернуть все | Свернуть все

В этой статье

Аннотация

В операционной системе Windows имеется клиентский кэш службы доменных имен (DNS). Возможность кэширования DNS на стороне клиента может создать ложное впечатление, что этот циклический перебор не включает передачу данных от DNS-сервера к клиентскому компьютеру Windows. При использовании команды ping для поиска доменного имени с одной и той же записью А клиент может использовать один и тот же IP-адрес. Такое поведение появилось только в операционных системах корпорации Майкрософт, начиная с Windows 2000. В предшествующих операционных системах возможность кэширования DNS на стороне клиента не была реализована. В данной статье описывается, как отключить кэширование DNS.

Примечание. В данной статье описывается клиентская часть DNS. Приведенные в этой статье сведения не следует применять для изменения DNS-серверов.

Дополнительная информация

Чтобы остановить кэширование DNS, выполните одну из следующих команд.
  • net stop dnscache

    или
  • sc servername stop dnscache
Для полного отключения кэша DNS в Windows задайте для службы DNS-клиента тип запуска "Отключено" с помощью контроллера служб или средства "Службы". Обратите внимание, что имя службы DNS-клиента в Windows может также отображаться как Dnscache.

Примечание. При отключении кэша сопоставителя DNS общая производительность клиентского компьютера снижается, а сетевой трафик для запросов DNS возрастает.

Служба DNS-клиента оптимизирует работу по разрешению DNS-имен, сохраняя ранее разрешенные имена в памяти. Если служба DNS-клиента отключена, компьютер может использовать для разрешения DNS-имен сетевые DNS-серверы.

При получении положительного или отрицательного отклика на запрос сопоставитель Windows заносит этот ответ в кэш и таким образом создает запись ресурса DNS. Перед обращением к DNS-серверу сопоставитель всегда обращается к кэшу. Если в кэше имеется запись ресурса DNS, сопоставитель использует эту запись вместо обращения к серверу. Такое поведение позволяет быстрее обработать запрос и снизить сетевой трафик для DNS-запросов.

Для просмотра и очистки кэша сопоставителя DNS используется средство Ipconfig. Чтобы просмотреть кэш сопоставителя DNS, введите в командной строке ipconfig /displaydns. Программа Ipconfig отображает содержимое кэша сопоставителя DNS, включая записи ресурсов DNS, предварительно загруженные из файла Hosts, и все запрошенные за последнее время имена, разрешенные системой. По истечении определенного периода времени сопоставитель удаляет запись из кэша. Длительность этого периода времени указывается в сроке жизни (TTL), связанном с записью ресурса DNS. Кроме того, можно записать кэш на диск вручную. После записи кэша на диск компьютеру необходимо опять запросить DNS-серверы для получения записей ресурсов DNS, разрешенных ранее компьютером. Чтобы удалить записи из кэша сопоставителя DNS, введите в командной строке ipconfig /flushdns.

Использование реестра для определения времени кэширования

Внимание! В данный раздел, описание метода или задачи включены сведения об изменении параметров реестра. Однако их неправильное изменение может привести к серьезным проблемам. Поэтому такие действия необходимо выполнять очень внимательно. Чтобы обеспечить дополнительную защиту, создайте резервную копию реестра. Это позволит восстановить реестр при возникновении проблем. Дополнительные сведения о создании резервной копии и восстановлении реестра см. в следующей статье базы знаний Майкрософт:
322756 Создание резервной копии и восстановление реестра Windows
Время кэширования позитивного или негативного отклика зависит от значений в записях следующего раздела реестра:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DNSCache\Parameters
Срок жизни для положительных и отрицательных откликов — меньшее из следующих значений:
  • количество секунд, указанное в отклике на запрос, полученном сопоставителем;
  • значение параметра реестра
    MaxCacheTtl
    .

Примечания
  • По умолчанию срок жизни для положительных откликов составляет 86 400 секунд (1 день).
  • Срок жизни для отрицательных откликов равен количеству секунд, указанному в параметре реестра
    MaxNegativeCacheTtl
    .
  • По умолчанию срок жизни для отрицательных откликов составляет 900 секунд (15 минут).
Если кэширование отрицательных откликов не требуется, задайте для параметра реестра
MaxNegativeCacheTtl
значение 0.

Чтобы задать время кэширования на клиентском компьютере:
  1. Запустите редактор реестра (Regedit.exe).
  2. Найдите и выделите следующий раздел реестра:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Dnscache\Parameters
  3. В меню Правка выберите пункт Создать, щелкните элемент значение DWORD и введите следующие значения.
    Параметр:
    MaxCacheTtl

    Тип данных: REG_DWORD
    Значение по умолчанию: 86 400 секунд
    Значение: уменьшение максимального значения срока жизни в клиентском кэше DNS до 1 секунды равнозначно отключению клиентского кэша DNS.

    Имя параметра:
    MaxNegativeCacheTtl

    Тип данных: REG_DWORD
    По умолчанию: 900 секунд
    Значение: если кэширование отрицательных откликов не требуется, задайте значение 0.
  4. Введите нужное значение и нажмите кнопку ОК.
  5. Закройте редактор реестра.

Назначение приоритетов подсети

Сопоставитель DNS в Windows XP использует назначение приоритетов подсети. Если сопоставитель получает от DNS-сервера несколько сопоставлений IP-адресов (записей ресурса A), некоторые из которых имеют IP-адреса в сетях, к которым данный компьютер подключен непосредственно, сопоставитель помещает эти записи ресурса первыми. Это уменьшает сетевой трафик между подсетями за счет соединения компьютеров с теми сетевыми ресурсами, которые расположены ближе.

Несмотря на то что назначение приоритетов подсети уменьшает сетевой трафик в подсетях, в некоторых случаях может понадобиться использовать циклический перебор согласно RFC 1794. В этом случае для отключения приоритетов подсети на клиентских компьютерах добавьте запись реестра
PrioritizeRecordData
со значением 0 (тип данных REG_DWORD) в следующий раздел реестра.
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DnsCache\Parameters
Дополнительные сведения см. в следующих статьях базы знаний Майкрософт:
297510 Изменение срока жизни в записях службы доменных имен
286834 Служба DNS-клиента не возвращается к использованию первого сервера (может быть на английском языке)
Дополнительные сведения см. в документации пакета ресурсов Microsoft Windows XP Professional в главе о кэшировании DNS, сетевых приоритетах и безопасности.
Примечание. Это ЭКСПРЕСС-ПУБЛИКАЦИЯ, подготовленная непосредственно службой технической поддержки Майкрософт . Сведения, содержащиеся в данном документе, предоставлены в качестве отклика на возникшие проблемы. Из-за срочности в материалах могут быть опечатки, и в любое время и без уведомления в них могут быть внесены изменения. Чтобы получить дополнительные сведения, см. Условия использования.

Свойства

Код статьи: 318803 - Последний отзыв: 26 марта 2014 г. - Revision: 1.0
Информация в данной статье относится к следующим продуктам.
  • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
  • Microsoft Windows XP Professional
Ключевые слова: 
kbnetwork kbhowto kbinfo KB318803

Отправить отзыв

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com