DNS 缓存多久清除一次?

Har*_*rry 33 dns windows-7 cache

Windows 7 机器上的 DNS 缓存多久清除一次?

hea*_*vyd 36

DNS 缓存永远不会刷新,除非您明确告诉它或进行与 DNS/网络相关的配置更改。DNS 记录有一个与之关联的生存时间 (TTL) 值,它告诉 DNS 缓存特定记录的有效时间。缓存中的记录保留其 TTL,然后重新查询。

在 Windows 机器上,您可以通过在命令提示符下执行以下命令来查看缓存中所有记录的列表及其 TTL:

ipconfig /displaydns
Run Code Online (Sandbox Code Playgroud)

您可以使用以下命令强制刷新所有缓存的 DNS 记录:

ipconfig /flushdns
Run Code Online (Sandbox Code Playgroud)

欲了解更多信息:

  • 根据其他答案(和常识),似乎 Windows 中缓存的 DNS 条目确实存在最长生命周期。考虑相反的情况:随着时间的推移,网站通过触发大量 DNS 查询来对访问者执行拒绝服务攻击将是微不足道的,直到 Windows 由于不断增加的缓存而耗尽 HDD/RAM/CPU尺寸。所以这个答案似乎是错误的。 (2认同)

Dar*_*all 12

据我所知,Windows 7 没有为 dnscache MaxCacheEntryTtlLimit设置参数。

MaxCacheEntryTtlLimit 的默认值为 DWORD = 0x15180 = 86400 seconds = 1 day

  • 如果 DNS 区域 TTL < MaxCacheEntryTtlLimit,则使用 DNS TTL
  • 如果 DNS 区域 TTL > MaxCacheEntryTtlLimit,则使用 MaxCacheEntryTtlLimit


小智 8

根据:减少 Windows Server 2012 R2 中的 DNS 客户端缓存

而不是MaxCacheEntryTtlLimit你应该修改maxcacheTTL. 它也适用于 Windows 8。

描述

确定域名系统 (DNS) 服务器可以保存递归名称查询记录的时间。

如果此项的值为 0x0,则 DNS 服务器不保存任何记录。

在此处输入图片说明