才子佳人博客

我的故事我讲述

如何在 Windows 中禁用客户端 DNS 缓存
 
来源:xjh  编辑:xjh  2006-12-15

前文已谈到,为方便管理,网络中心设置内网、外网地址,内网用户访问网站时由内网dns服务器解析域名,外网用户访问时由外网dns服务器解析域名。

产生的问题:

因为Windows 包含客户端域名系统 (DNS) 缓存,当访问网页时,DNS 请求首先被发送到本地 DNS 缓存,如果本地已经缓存该域名与地址的映射,则 Windows 会使用该映射,并且不将请求发送到 DNS 服务器,这样,内网的客户端 DNS 缓存可能会产生一种错误映射关系。

解决办法1:修改注册表禁用客户端 DNS 缓存

1. 启动注册表编辑器 (Regedit.exe)。

2. 在以下注册表项中找到 MaxCacheEntryTtlLimit 值:

HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/Dnscache/Parameters

3. 在编辑菜单上,单击修改。键入 1,然后单击确定。

4. 退出注册表编辑器。

注意:

(1) 此设置并没有真正禁用客户端 DNS 缓存,而是把客户端的 DNS 缓存中的最大 TTL 值(生存时间)降为 1 秒,生存时间超时后,将映射从本地 DNS 缓存中清除,于是将请求直接发送到 DNS 服务器进行查询,这样看起来已经禁用了客户端 DNS缓存。

(2) 要查看 DNS 缓存,请在命令提示符下键入 ipconfig /displaydns

(3) 要从 DNS 缓存中删除该项,请在命令提示符下键入 ipconfig /flushdns

解决办法2:修改hosts文件直接把域名指向内网地址,前文已谈过。



分类:网络日志| 查看评论
相关文章
文章点击排行
本年度文章点击排行
发表评论:
  • 昵称: *
  • 邮箱: *
  • 网址:
  • 评论:(最多100字)
  • 验证码: