必须同时配置区域、服务器和客户端三端:区域级启用老化并设无刷新/刷新间隔,服务器级启用自动清理并设周期,ad集成区还需应用到现有区域,客户端须动态更新且时间同步;缺一不可。
要让 windows server dns 自动清理过期的解析记录,必须同时配置区域、服务器和客户端三端,缺一不可。只开一个开关,机制不会启动;参数设错或时间不同步,也会导致“看似开了,实则无效”。
区域级:启用老化并设好两个关键时间
在 DNS 管理器中右键目标正向查找区域(如 contoso.com)→ “属性” → “常规”选项卡 → 点击“老化…” → 勾选清除过时资源记录,然后设置:
- 无刷新间隔:记录创建后,客户端不许刷新的最长时间(默认 7 天)。设太短会增加 AD 复制压力;设太长会让僵尸记录滞留更久
- 刷新间隔:无刷新期结束后,客户端必须每 X 天至少刷新一次时间戳(默认 7 天)。超时未刷,记录即被标记为“待清理”
总生命周期 = 无刷新间隔 + 刷新间隔。例如都设为 7 天,记录最多存活 14 天。注意:手动添加的记录默认无时间戳,不参与老化,除非单独勾选“在此记录上启用老化”。
服务器级:打开自动清理并指定执行频率
右键 DNS 服务器节点(不是区域)→ “属性” → “高级”选项卡 → 勾选启用自动清理,并设置自动清理周期(建议设为 24 小时)。
这个周期决定服务器多久扫描一次所有启用老化的区域。它不控制单条记录何时过期,只控制“删除动作”的执行节奏。若设为 7 天,默认值,可能让过期记录堆积一周才清。
免费 DNS 与邮件安全分析(IntoDNS.ai):包括 DNSSEC、SPF、DKIM、DMARC、MTA-STS、BIMI、SMTP STARTTLS、FCrDNS、黑名单、发件人要求及报告。
AD 集成区域还需额外操作:右键服务器 → “设置所有区域的老化/清理” → 勾选 Scavenge Stale Resource Records → 在弹窗中务必勾选应用到现有 AD 集成区域。这一步极易遗漏,但非常关键。
客户端端:确保动态更新真正发生
服务端全配好,客户端不刷新时间戳,老化就形同虚设。需确认以下三点:
- DHCP 客户端服务已启用,且网络适配器属性中勾选了在 DNS 中注册此连接的地址和使用此连接的 DNS 后缀注册
- DHCP 服务器已配置为“为 DNS 动态更新配置”,并选择仅对安全客户端或对非安全和安全客户端(视环境而定)
- 客户端与 DNS 服务器、域控制器时间偏差 ≤5 分钟(建议统一部署 NTP);否则动态更新失败,时间戳无法重置
验证与应急处理
配置完成后,可通过以下方式确认是否生效:
- 查看 DNS 服务器事件日志:筛选事件 ID 2501(清理开始)、2502(清理完成)、4521(拒绝更新)
- 手动触发一次清理:
dnscmd /startscavenging(立即扫描并删已过期记录,不重置任何时间戳) - 检查某条 A 记录属性:开启“高级”视图后,右键记录 → “属性”,能看到“时间戳”字段和“启用老化”复选框
不要轻易运行 dnscmd /ageallrecords——它会给所有记录(含静态)强行打上当前时间戳,之后全部纳入老化流程,风险极高。










