Windows中是否有命令或任何东西可以让我查看系统当前解析的域名列表?
类似于arp
命令的东西,但用于域名。
谢谢。
编辑:
我一直在使用 Matt 给出的命令进行一些测试,我注意到刷新时间和/或重试时间较短的域名没有显示在ipconfig
.
例如,google.com
没有出现在我的列表中,但根据 dns 响应它应该被缓存:
google.com
primary name server = ns1.google.com
responsible mail addr = dns-admin.google.com
serial = 2009052800
refresh = 7200 (2 hours)
retry = 1800 (30 mins)
expire = 1209600 (14 days)
default TTL = 300 (5 mins)
而serverfault.com
具有较高刷新和重试时间的 确实出现在 ipconfig 给出的列表中。
serverfault.com
primary name server = ns21.domaincontrol.com
responsible mail addr = dns.jomax.net
serial = 2009031400
refresh = 28800 (8 hours)
retry = 7200 (2 hours)
expire = 604800 (7 days)
default TTL = 86400 (1 day)
以下是另一个从未显示的域ipconfig
,即使它的 TTL 很高:
minijuegostop.com.mx
primary name server = ns1.theplanet.com
responsible mail addr = support.minijuegostop.com.mx
serial = 2008122302
refresh = 900 (15 mins)
retry = 900 (15 mins)
expire = 1209600 (14 days)
default TTL = 86400 (1 day)
显然 Windows 决定不缓存某些域,刷新和重试时间与它有关。要么是 Internet Explorer,要么是 Internet Explorer 维护自己的域名列表。但我不这么认为,因为当我打开一个新网页时,该页面的域名由 ipconfig 命令显示;除非它的刷新或重试时间较短,在这种情况下,它不会显示在列表中。
有谁知道可能是什么问题,或者是否可以显示缓存域名的完整列表?(因为显然给出的列表ipconfig
不完整)
ipconfig /displaydns
按顺序运行以下命令:
这(或非常相似的东西)是您应该看到的,除非某些东西(可能是恶意软件)扰乱了您的 DNS 解析:
关于您已编辑的关于缓存中缺少一些 TTL 较低的 DNS 条目的问题,请查看此谷歌搜索,该搜索将解释所有内容:
http://www.google.com/search?q=HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DNSCache\Parameters++site%3Amicrosoft.com
控制记录缓存多长时间的值是 TTL(生存时间),而不是重试或刷新。根据您发布的内容,Google 的默认 TTL 为 5 分钟,但特定记录的 TTL 可能要低得多。在我的测试中,与 www.google.com 记录关联的 A 记录的 TTL 往往在 30-60 秒之间。如果您没有点击 Google,然后立即检查缓存,则记录可能过期得太快,您无法注意到。尝试ping www.google.com,然后立即运行ipconfig /displaydns。