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 维护自己的域名列表。但我不这么认为,因为只要我打开一个新网页,ipconfig 命令就会显示该页面的域名;除非它的刷新或重试次数很短,在这种情况下它不会显示在列表中。
有谁知道可能是什么问题或者是否可以显示完整的缓存域名列表?(因为显然给出的列表ipconfig
并不完整)
答案1
ipconfig /displaydns
答案2
按顺序运行以下命令:
- ipconfig /flushdns
- ping google.com。
- ipconfig /displaydns
您应该看到以下内容(或非常类似的内容),除非有什么东西(可能是恶意软件)干扰了您的 DNS 解析:
C:\>ipconfig /flushdns
Windows IP Configuration
Successfully flushed the DNS Resolver Cache.
C:\>ping google.com.
Pinging google.com [74.125.45.100] with 32 bytes of data:
Reply from 74.125.45.100: bytes=32 time=36ms TTL=50
Reply from 74.125.45.100: bytes=32 time=32ms TTL=50
Reply from 74.125.45.100: bytes=32 time=40ms TTL=50
Reply from 74.125.45.100: bytes=32 time=38ms TTL=50
Ping statistics for 74.125.45.100:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 32ms, Maximum = 40ms, Average = 37ms
C:\>ipconfig /flushdns
Windows IP Configuration
google.com
----------------------------------------
Record Name . . . . . : google.com
Record Type . . . . . : 1
Time To Live . . . . : 140
Data Length . . . . . : 4
Section . . . . . . . : Answer
A (Host) Record . . . : 209.85.171.100
Record Name . . . . . : google.com
Record Type . . . . . : 1
Time To Live . . . . : 140
Data Length . . . . . : 4
Section . . . . . . . : Answer
A (Host) Record . . . : 74.125.67.100
Record Name . . . . . : google.com
Record Type . . . . . : 1
Time To Live . . . . : 140
Data Length . . . . . : 4
Section . . . . . . . : Answer
A (Host) Record . . . : 74.125.45.100
C:\>
答案3
关于您已编辑的问题(有关缓存中缺少某些低 TTL 的 DNS 条目),请查看这个谷歌搜索这将解释一切:
答案4
例如,google.com 没有出现在我的列表中,但根据 DNS 响应,它应该被缓存:
google.com
primary name server = ns1.google.com
responsible mail addr = dns-admin.google.com
expire = 1209600 (14 days)
default TTL = 300 (5 mins)
控制记录缓存时间的值是 TTL(生存时间),而不是重试或刷新。根据您发布的内容,Google 的默认 TTL 为 5 分钟,但特定记录的 TTL 可能要低得多。在我的测试中,与 www.google.com 记录关联的 A 记录的 TTL 往往在 30-60 秒之间。如果您没有访问 Google 然后立即检查缓存,则记录可能过期得太快而您无法注意到。尝试执行ping www.google.com然后运行ipconfig /displaydns立即地。