В службе DNS-сервера поддерживаются функции очистки. Эти функции предоставляются в виде механизма выполнения очистки и удаления устаревших записей ресурсов, которые со временем накапливаются в данных зоны.
Если используется динамическое обновление, при входе компьютеров в сеть записи ресурсов автоматически добавляются в зоны. Однако в некоторых случаях они не удаляются автоматически при выходе компьютеров из сети. Например, если компьютер регистрирует собственную запись ресурса узла (A) во время входа в систему, а позже неверно отключится от сети, эта запись ресурса узла (A) может не быть удалена. Если в сети имеются мобильные пользователи и компьютеры, такое может повторяться довольно часто.
Если не обращать на них внимания, то присутствие устаревших записей ресурсов в данных зоны может привести к неполадкам:
- Если в зонах содержится большое количество
устаревших записей ресурсов, с течением времени они могут занять
большой объем дискового пространства и привести к нежелательно
долгим передачам зон.
- DNS-серверы, загружающие зоны, которые
содержат устаревшие записи ресурсов, могут использовать устаревшие
сведения при ответе на запросы клиентов, что, в свою очередь, может
вызвать проблемы на стороне клиентов при разрешении имен в
сети.
- Увеличение количества устаревших записей
ресурсов на DNS-сервере может привести к уменьшению
производительности и скорости ответа сервера.
- В некоторых случаях наличие устаревшей записи
ресурса в зоне может препятствовать использованию DNS-имени домена
другим компьютером или устройством.
Для устранения этих неполадок в службе DNS-сервера имеются следующие функциональные возможности:
- Штампы времени, основанные на текущей дате и
времени, которые установлены на компьютере сервера. Штампы времени
предназначены для записей ресурсов, которые были динамически
добавлены в основные зоны. Кроме того, штампы времени записываются
в стандартных основных зонах, для которых включена очистка.
Для записей ресурсов, добавляемых вручную, используется значение штампа времени, равное нулю, означающее, что эти записи не будут удаляться при очистке и что они могут оставаться в данных зоны без временных ограничений, если только не будет изменен штамп времени или эти записи не будут удалены вручную.
- Очистка записей ресурсов в локальных данных,
основанная на указанном периоде времени обновления для любой
допустимой зоны.
Только зоны основного типа, загруженные службой DNS-сервера, могут участвовать в этом процессе.
- Очистка записей ресурсов, которые существуют
дольше указанного периода обновления.
При проведении операции очистки DNS-сервер может определить, стали ли записи ресурсов устаревшими, и удалить их в этом случае. Можно настроить серверы на автоматическое выполнение повторяющихся операций по очистке или запустить немедленное выполнение операции очистки на сервере.
Дополнительные сведения см. в разделах Разрешение немедленной очистки устаревших записей ресурсов и Запуск немедленной очистки устаревших записей ресурсов.
Внимание! | |
По умолчанию механизм очистки в службе DNS-сервера отключен. Его следует включить только при полном понимании всех параметров. В противном случае можно случайно настроить сервер на удаление записей, которые не должны удаляться. Если запись случайно удалена, это приведет не только к неудачному разрешению запросов этой записи, но и к тому, что пользователь сможет создать запись и стать ее владельцем даже в тех зонах, которые настроены на безопасное динамическое обновление. |
Чтобы определить время очистки записей, сервер использует содержимое каждого штампа времени записей ресурсов вместе с другими свойствами очистки, которые можно изменить и настроить.
Необходимые условия для очистки
Прежде чем использовать функциональные возможности очистки в DNS, необходимо выполнение нескольких условий:
- Очистка должна быть включена как на DNS-сервере, так и в
зоне.
По умолчанию очистка записей ресурсов отключена.
- Чтобы записи ресурсов могли быть использованы в операциях
очистки, они должны быть динамически добавлены в зоны или изменены
вручную.
Как правило, в процессе очистки могут принимать участие только те записи ресурсов, которые были динамически добавлены с помощью динамического протокола обновления.
Однако можно включить очистку других записей ресурсов, которые были добавлены другими способами. Для записей, которые были добавлены в зоны подобным образом (или с помощью загрузки текстового файла зоны с другого DNS-сервера, или с помощью ручного добавления в зону), устанавливается штамп времени со значением, равным нулю. Вследствие этого данные записи не смогут участвовать в операциях очистки.
Чтобы изменить это поведение по умолчанию, можно администрировать эти записи по отдельности, запрещать и разрешать им использовать текущее значение штампа времени (отличное от нуля). Таким образом, эти записи могут быть очищены.
Дополнительные сведения см. в разделе Сброс свойств устаревания и очистки для указанной записи ресурса.
Примечание | |
В случае изменения типа зоны со стандартной основной на интегрированную в Active Directory может понадобиться включить очистку для всех существующих записей ресурсов в этой зоне. Чтобы включить очистку для всех существующих записей ресурсов в зоне, можно использовать команду AgeAllRecords, которая доступна в программе командной строки dnscmd. |
Терминология очистки
В следующей таблице указаны новые или измененные термины, которые используются при описании очистки.
Термин | Описание |
---|---|
Штамп времени записи ресурса |
Значение даты и времени, которое используется DNS-сервером для определения времени удаления записи ресурса при выполнении операций очистки. |
Текущее время сервера |
Текущие дата и время DNS-сервера. Это число может быть выражено как точное числовое значение любой временной точки. |
Интервал блокирования |
Интервал времени, определенный для каждой зоны по двум следующим событиям:
Это значение необходимо для уменьшения количества операций записи в базу данных Active Directory. По умолчанию этот интервал равен семи дням. Его не следует увеличивать до слишком высокого уровня, так как преимущество функциональной возможности очистки может быть уменьшено или даже сведено к нулю. |
Интервал обновления |
Интервал времени, определенный для каждой зоны по двум следующим событиям:
Это значение должно быть достаточно большим, чтобы позволить всем клиентам обновлять свои записи. По умолчанию этот интервал равен семи дням. Его не следует увеличивать до слишком высокого уровня, так как преимущество функциональной возможности очистки может быть уменьшено или даже сведено к нулю. |
Время начала очистки |
Определенное время, выраженное в виде числа. Это время используется сервером для определения времени, с которого зона становится доступной для очистки. |
Период очистки |
При разрешении автоматической очистки для сервера этот период означает время между повторами процесса автоматической очистки. Значение по умолчанию равняется семи дням. Чтобы предотвратить уменьшение производительности DNS-сервера, минимальное допустимое значение для этого периода равняется одному часу. |
Обновление записи |
При обработке динамического обновления DNS для записи ресурса, когда из всех характеристик записи ресурса изменяется только штамп времени. Как правило, обновления происходят по следующим причинам:
|
Обновление записи |
При обработке динамического обновления DNS для записи ресурса, в которой были изменены характеристики, включая штамп времени. Как правило, обновления происходят по следующим причинам:
|
Серверы очистки |
Дополнительный параметр зоны, с помощью которого можно определить ограниченный список IP-адресов DNS-серверов, которые могут выполнять очистку зоны. По умолчанию, если этот параметр не указан, все DNS-серверы, загружающие зону, интегрированные в службу каталогов (для которых разрешена очистка), могут выполнять очистку зоны. В некоторых случаях этот параметр может оказаться полезным, если необходимо, чтобы очистка производилась на нескольких серверах, загружающих зону, интегрированную в каталог. Чтобы задать этот параметр, необходимо указать список IP-адресов серверов, которым разрешено выполнять очистку зоны, в параметре ZoneResetScavengeServers для этой зоны. Это действие можно выполнить с помощью команды dnscmd - средства командной строки для администрирования DNS-серверов Windows. |
Допустимое время начала очистки
После выполнения всех необходимых условий для использования очистки, ее можно начать в зоне сервера, когда текущее время сервера будет больше значения начала времени очистки этой зоны.
Значение времени начала очистки устанавливается сервером для каждой зоны при возникновении одного из следующих событий:
- Динамические обновления разрешены для
зоны.
- Вступило в действие изменение состояние
флажка Удалять устаревшие записи ресурсов. Можно
использовать диспетчер DNS для изменения этого параметра для
необходимого DNS-сервера или для одной из основных зон.
- DNS-сервер загружает основную зону, в которой
можно проводить очистку.
Это может произойти, когда запускается компьютер сервера или служба DNS-сервера.
- Зона возобновила обслуживание после
приостановки.
- Если зона интегрирована в доменные службы
Active Directory, репликация этой зоны должна произойти хотя бы
один раз с момента перезапуска службы DNS или перезагрузки
контроллера домена. Если произошло предыдущее событие, DNS-сервер
устанавливает значение времени начала очистки путем суммирования
следующих значений:
Текущее время сервера + Интервал обновления = Время начала очистки
Это значение используется в качестве основы для сравнения во время операций очистки.
Пример. Процесс очистки для отдельной записи
Чтобы получить общее представление о процессе очистки на сервере, обратите внимание на время жизни и последовательные этапы существования отдельной записи ресурса с момента добавления ее на сервер и в зону, где она обрабатывается, а затем устаревает и удаляется из базы данных.
- Гипотетический узел DNS host-a.example.microsoft.com
регистрирует запись ресурса узла (A) на DNS-сервере для зоны, где
была разрешена очистка.
- При регистрации записи DNS-сервер устанавливает штамп времени
для этой записи, основываясь на текущем времени сервера.
После записи штампа времени записи DNS-сервер не принимает обновления этой записи на протяжении интервала блокировки зоны. Однако он может принимать обновления до этого времени. Например, если изменяется IP-адрес записи host-a.example.microsoft.com, DNS-сервер может принять это изменение. В этом случае сервер также обновляет (сбрасывает) штамп времени записи.
- После истечения срока действия периода блокировки сервер
начинает принимать попытки обновления этой записи.
После окончания исходного периода блокировки сразу же начинается период обновления записи. Во время этого периода сервер не препятствует попыткам обновления записи до окончания ее срока действия.
- Во время и после периода обновления при получении сервером
обновления этой записи он сразу же обрабатывает это обновление.
Это приводит к сбросу штампа времени для записи, основываясь на методе, описанном на шаге 2.
- При выполнении сервером последующей очистки для зоны
example.microsoft.com запись (и все другие записи зоны) изучаются
сервером.
Каждая запись сравнивается с текущим временем сервера на основе следующей суммы для определения необходимости удаления записи:
Штамп времени записи + Интервал блокировки для зоны + Интервал обновления для зоны
- Если значение этой суммы превышает значение
текущего времени сервера, действий не предпринимается и запись
продолжает устаревать в зоне.
- Если значение этой суммы меньше значения
текущего времени сервера, запись удаляется из текущих загруженных
данных зоны в памяти сервера и из соответствующего объекта
хранилища зоны DNS в доменных службах Active Directory для зоны
example.microsoft.com, интегрированной в службу каталогов.
- Если значение этой суммы превышает значение
текущего времени сервера, действий не предпринимается и запись
продолжает устаревать в зоне.