DNS: очистка: записи не удаляются, если очистка вручную отключена с помощью DNSCMD
В этой статье описывается решение проблемы, при которой вы включите очистку на DNS-сервере Windows, чтобы избавиться от некоторых старых и устаревших записей в зоне.
Применяется к: Windows Server 2012 R2
Исходный номер базы знаний: 2791165
Симптомы
Вы можете столкнуться с ситуацией, когда вы включите очистку на DNS-сервере Windows, чтобы избавиться от некоторых старых и устаревших записей в зоне.
Вы настраиваете цикл очистки и старение (без обновления и интервал обновления), соответствующие вашей среде, и дождитесь удаления записей в цикле очистки.
Вы заметили, что цикл очистки выполняется, но не удаляет записи со старыми метками времени.
Вы решили дождаться выполнения еще одного цикла очистки, но все равно записи не удаляются.
Причина
Вы можете столкнуться с этим сценарием, когда зона DNS была ранее настроена вручную для очистки на другом сервере (с помощью dnscmd), а затем очистка была отключена в среде, а затем снова включена на другом сервере.
Разрешение
Для рассматриваемой зоны выполните следующую команду:
dnscmd /zoneinfo contoso.com
(Я буду использовать зону как contoso.com например) Вы получите следующий результат:
Zone query result:
Zone info:
ptr = 0000000000327C90
zone name = ocntoso.com
zone type = 1
shutdown = 0
paused = 0
update = 2
DS integrated = 1
read only zone = 0
in DS loading queue = 0
currently DS loading = 0
data file = (null)
using WINS = 0
using Nbstat = 0
aging = 1
refresh interval = 168
no refresh = 168
scavenge available = 3606130
Zone Masters NULL IP Array.
Zone Secondaries NULL IP Array.
secure secs = 3
directory partition = AD-Domain flags 00000015
zone DN = DC=contoso.com,cn=MicrosoftDNS,DC=DomainDnsZones,DC=contoso,DC=com Scavenge Servers
Ptr = 000000000031D480
MaxCount = 1
AddrCount = 1
Server[0] => af=2, salen=16, [sub=0, flag=00000000] p=13568, addr=192.168.1.1
Здесь вы увидите IP-адрес 192.168.1.1. Это IP-адрес сервера, который имеет разрешение на очистку зоны (скорее всего, это может быть сервер, который больше не существует). Если это не IP-адрес сервера, на котором вы настроили очистку, нам нужно изменить его. Чтобы изменить сервер scavenging для зоны, выполните команду:
dnscmd /zoneresetscavengeservers contoso.com <Ip of the current DNS Server>
где <IP-адрес текущего DNS-сервера> — это IP-адрес DNS-сервера, на котором настроена очистка.
Дополнительная информация
Следующая команда сбрасывает все параметры сервера очистки и удаляет указанные вручную серверы.
dnscmd /zoneresetscavengeservers contoso.com (without ip address).
Примечание.
Максимальное время удаления устаревшей записи с помощью очистки— (без интервала обновления + интервал обновления + интервал цикла очистки).
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по