NSCD 算是老牌而且很常見的 Linux DNS Cache 工具,因為最近有遇上 NSCD 的 DNS flush 問題,所以重新 review 一下對 NSCD 的認知
在講之前先簡單講一下 nscd 怎麼用
在 Ubuntu 上直接 apt-get 就有
$ sudo apt-get install nscd
要開啟 nscd 的 cache 要加一行 enable-cache,舉 host 設定會像這樣:
$ cat /etc/nscd.conf enable-cache hosts yes positive-time-to-live hosts 3600 negative-time-to-live hosts 20 suggested-size hosts 211 check-files hosts yes persistent hosts yes shared hosts yes max-db-size hosts 33554432
除了第一行的 enable-cache 以外,其他就是要 cache 設定
nscd 指令
- 檢查 nscd 狀態
$ nscd -g
- 清除 nscd 的 cache
$ nscd -i passwd $ nscd -i hosts $ nscd -i group
要清除 nscd 只重啟服務不一定有效 … 最好還是用 nscd -i database 的方式會比較好。