为了DNS解析测试的目的。我想禁用Windows 7中的所有DNS缓存
尽管如此,我仍然连续看到同一个域的"DNS Lookup : 0 ms"请求。
我已经尝试了明显的"ipconfig /flushdns",并且完全停止了服务:
net stop dnscache此外,此命令具有相同的效果:
net stop "DNS Client"而且我也知道浏览器缓存DNS查找的时间非常短。所以我刷新它们的缓存,关闭打开浏览器,或者在不同的浏览器中打开相同的域(火狐,铬,铬隐名,IE )来绕过DNS缓存。
因此,第一次DNS查找时间可以是25 0ms (使用8.8.8.8),但是下一次DNS查找被缓存在系统的某个位置,时间是0MS。只有当我在3到5分钟内等待重复请求时,才会离开。
我能做些什么来强迫系统每一次解析DNS,即使在同一个DNS请求之间只有5秒?
是否与保持活动或Windows对TCP连接的某种重复使用有关?不应该,因为我重新打开浏览器。但我没有主意了,
你能说明一下这个问题吗?
谢谢
发布于 2012-09-16 15:27:18
听起来,您的目标是模拟不存在的配置(因为所有客户端都有DNS缓存)。还不完全清楚为什么这是一个有趣的配置来测试,但这是可能的。
正如您所提到的,所有浏览器都有DNS缓存。Windows的DNS客户端本身有一个缓存。您可能使用的任何上游代理都有DNS缓存。
在本例中,您遇到了两个问题:第一,Fiddler本身维护一个DNS缓存。第二,Fiddler池保持与服务器的连接,无论是否关闭浏览器客户端。
如Fiddler书中所述,您可以使用首选项fiddler.network.timeouts.dnscache控制Fiddler缓存。默认值是150000 (以毫秒为单位,即2.5分钟)。可以将此值设置为0以防止DNS缓存。
为了防止连接的重用,您可以点击Fiddler会话列表中的CTRL+X,或者按需要调用FiddlerApplication.oProxy.PurgeServerPipePool方法。
https://stackoverflow.com/questions/12446121
复制相似问题