歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> linux下清空dns緩存的方法

linux下清空dns緩存的方法

日期:2017/2/27 16:02:14   编辑:Linux教程
一、Linux下清空DNS緩存
  Linux下DNS緩存實現通常有兩種方式:一種是用DNS緩存程序NSCD(name service cache daemon)負責管理DNS緩存。另一種實現DNS緩存則是用Bind來架設Caching Name Server來實現。

  如果是清除NSCD上的Cache,可重新啟動NSCD服務來達成清除DNS Cache的效果。用這個命令:

? [Copy to clipboard] View Code BASH
1
2
3
# service nscd restart

或是
# /etc/init.d/nscd restart

  如果是清除BIND服務器上的CACHE,用這個命令:

? [Copy to clipboard] View Code BASH
1
# rndc flush


  如果你的DNS服務器是用dnsmasq實現的,用下面這個命令

? [Copy to clipboard] View Code BASH
1
$ sudo
/
etc/
init.d/
dnsmasq restart

  注:DNSmasq是一個輕巧的,容易使用的DNS服務工具,它可以應用在內部網和Internet連接的時候的IP地址NAT轉換,也可以用做小型網絡的DNS服務。
    
  幾個用dnsmasq建立dns緩存服務器的文章,發給大家參考下。
  
  用dnsmasq建立dns緩存服務器
  用dnsmasq做dns代理緩存服務器
  通過dnsmasq來提高ADSL上網速度

二、其它操作系統下清空DNS緩存的方法
  1、微軟windows下如何清空dns:

  你可以用以下命令來清空dns緩存內容。

? [Copy to clipboard] View Code BASH
1
ipconfig /
flushdns

  你也可以用以下命令來查看dns緩存內容。

? [Copy to clipboard] View Code BASH
1
ipconfig/
displaydns

  windows下的DNS Cache 是由DNS Client後台進程控制的,你可以在控制面板 ->服務中將其關閉,這樣windows就不會進行DNS緩存,每次都將直接查詢DNS Server 。

  2、Mac OSX下如何清空DNS緩存:

  在Mac OSX中,你可以用以下命令來清空DNS緩存內容:

? [Copy to clipboard] View Code BASH
1
bash-2.05a$lookupd
-flushcache

三、其它一些DNS Cache小技巧
  Q: 如何查看BIND DNS Server的Cache :

  A: 在 bind 9中,可以使用rndc -dumpdb命令來查看DNS Cache,當然你的rndc要先配置好。這個命令會在/var/named(這個目錄是在named.conf文件中指定的)目錄中生成named_dump.db文件。

  在bind8下,可以試試用kill -INT named_pid。

  Q: DNS Cache的時間如何設置:

  A: 在bind9 中,使用TTL參數來設置DNS默認的緩存時間,但要記住這個是你解析的域名在別人的DNS中的緩存時間。

  Q: 在客戶端如何清空DNS Cache:

  A: 在Unix下,DNS客戶端只是幾個例程,負責轉發和接受查詢的功能,並不緩存。

  Q: 在DNS服務器端如何清空DNS Cache:

  A: 最簡單的方法就是重新啟動 named 進程;當然也有不用重啟的方法: rndc flush
Copyright © Linux教程網 All Rights Reserved