最近有不少关于DNS Cache 的帖子,让我学到了不少技巧。汇总一下。
Q: 如何查看 BIND DNS Server 的 Cache :
A: 在 bind 9 中,可以使用 rndc -dumpdb 命令来查看 DNS Cache,当然你的 rndc 要先配置好。这个命令会在 /var/named (这个目录是在 named.conf 文件中指定的)目录中生成 named_dump.db 文件。
在 bind 8 下,可以试试用 kill -INT named_pid 。
Q: DNS Cache 的时间如何设置:
A: 在 bind 9 中,使用 TTL 参数来设置 DNS 默认的缓存时间,但要记住这个是你解析的域名在别人的 DNS 中的缓存时间。
Q: 在客户端如何清空 DNS Cache:
A: 在 Unix 下,DNS 客户端只是几个例程,负责转发和接受查询的功能,并不缓存。
在 Windows 2000 & XP 下: ipconfig /flushdns can clear the cache;
ipconfig /displaydns can display the dns cache.
windows 下的 dns cache 是由 dns client 后台进程控制的,你可以在控制面板 -> 服务中将其关闭,这样 windows 就不会进行 dns 缓存,每次都将直接查询 dns server 。
Q: 在 DNS 服务器端如何清空 DNS Cache:
A: 最简单的方法就是重新启动 named 进程;当然也有不用重启的方法: rndc flush