ubuntu 14.04 64 bit上开启nscd服务缓存加速及清除dns缓存
生活随笔
收集整理的這篇文章主要介紹了
ubuntu 14.04 64 bit上开启nscd服务缓存加速及清除dns缓存
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
簡介
linux本身是沒有dns緩存的,想使用dns緩存的話需要自己安裝一個服務(wù)程序NSCD(name service cache daemon).?
Nscd會緩存libc接口(比如 getpwnam(3), getpwuid(3), getgrnam(3), getgrgid(3), gethostbyname(3))發(fā)起的名稱服務(wù)的請求。
nscd緩存三種服務(wù)passwd, group, hosts,所以它會記錄三個庫,分別對應(yīng)源/etc/passwd, /etc/hosts 和 /etc/resolv.conf每個庫保存兩份緩存,一份是找到記錄的,一份是沒有找到記錄的。每一種緩存都保存有生存時間(TTL).
如果您已經(jīng)在本地緩存了不正確的 DNS 條目,那么您需要清空您的緩存來使 DNS 客戶端提出新的 DNS 請求并更新解析結(jié)果。當然,您也可以等緩存的 DNS 條目過期以后讓系統(tǒng)自動沖掉該條目……這通常需要24個小時。
在 Ubuntu 中沖掉 DNS 緩存的方式是重新啟動 nscd 守護程序。
安裝
sudo apt-get install nscd //Ubuntu
或
配置
默認的配置文件是/etc/nscd.conf,通過編輯/etc/nscd.conf文件,在其中增加如下一行可以開啟本地DNS cache:
enable-cache hosts yes
配置文件內(nèi)容如下
logfile debug-file-name
指定調(diào)試信息寫入的文件名。
debug-level value
設(shè)置希望的調(diào)試級別。
threads number
這是啟動的等待請求的線程數(shù)。最少將創(chuàng)建5個線程。
server-user user
如果設(shè)置了該選項,nscd將作為該用戶運行,而不是作為root。如果每個用戶都使用一個單獨的緩存(-S參數(shù)),將忽略該選項。
enable-cache service <yes|no>
啟用或禁用制定的 服務(wù) 緩存。
positive-time-to-live service value
設(shè)置 service 在指定緩存中正的項目(成功的請求)的TTL(存活時間)。 Value 以秒為單位。較大的值將增加緩存命中率從而減低平均響應(yīng)時間,但是將增加緩存的一致性問題。
negative-time-to-live service value
設(shè)置 service 在指定緩存中負的項目(失敗的請求)的TTL(存活時間)。 Value 以秒為單位。如果存在由不在系統(tǒng)數(shù)據(jù)庫中的uid(用戶ID)(例如在以root身份解包linux 內(nèi)核源代碼時)所擁有的文件將明顯改善性能;應(yīng)該維持較小的值以降低緩存一致性問題。
suggested-size service value
這是內(nèi)部散列表的大小, value 應(yīng)該保持一個素數(shù)以達到優(yōu)化效果。
check-files service <yes|no>
啟用或禁用檢查屬于指定 服務(wù) 的文件的改變。這些文件是 /etc/passwd, /etc/group, 以及 /etc/hosts。
開啟/停止/重啟nscd服務(wù)
sevices nscd start | stop | restart
清除緩存
nscd -i passwd
nscd -i group
nscd -i hosts
除了上面的方法,重啟nscd服務(wù)同樣可以達到清理cache的目的。
如果系統(tǒng)下有nscd,那么就直接
sudo /etc/init.d/nscd restart
如果沒有就安裝
sudo apt-get install nscd
sudo /etc/init.d/nscd restart
或
service nscd restart
其實我們也可以直接
sudo /etc/init.d/dns-clean start
來完成的。
參考文獻
[1].http://linux.about.com/library/cmd/blcmdl8_nscd.htm
linux本身是沒有dns緩存的,想使用dns緩存的話需要自己安裝一個服務(wù)程序NSCD(name service cache daemon).?
Nscd會緩存libc接口(比如 getpwnam(3), getpwuid(3), getgrnam(3), getgrgid(3), gethostbyname(3))發(fā)起的名稱服務(wù)的請求。
nscd緩存三種服務(wù)passwd, group, hosts,所以它會記錄三個庫,分別對應(yīng)源/etc/passwd, /etc/hosts 和 /etc/resolv.conf每個庫保存兩份緩存,一份是找到記錄的,一份是沒有找到記錄的。每一種緩存都保存有生存時間(TTL).
如果您已經(jīng)在本地緩存了不正確的 DNS 條目,那么您需要清空您的緩存來使 DNS 客戶端提出新的 DNS 請求并更新解析結(jié)果。當然,您也可以等緩存的 DNS 條目過期以后讓系統(tǒng)自動沖掉該條目……這通常需要24個小時。
在 Ubuntu 中沖掉 DNS 緩存的方式是重新啟動 nscd 守護程序。
安裝
sudo apt-get install nscd //Ubuntu
或
yum install nscd ? //CentOS
這里以在Ubuntu 14.04 64bit上的安裝為例, 截圖如下:
配置
默認的配置文件是/etc/nscd.conf,通過編輯/etc/nscd.conf文件,在其中增加如下一行可以開啟本地DNS cache:
enable-cache hosts yes
配置文件內(nèi)容如下
相關(guān)參數(shù)的解釋如下:
logfile debug-file-name
指定調(diào)試信息寫入的文件名。
debug-level value
設(shè)置希望的調(diào)試級別。
threads number
這是啟動的等待請求的線程數(shù)。最少將創(chuàng)建5個線程。
server-user user
如果設(shè)置了該選項,nscd將作為該用戶運行,而不是作為root。如果每個用戶都使用一個單獨的緩存(-S參數(shù)),將忽略該選項。
enable-cache service <yes|no>
啟用或禁用制定的 服務(wù) 緩存。
positive-time-to-live service value
設(shè)置 service 在指定緩存中正的項目(成功的請求)的TTL(存活時間)。 Value 以秒為單位。較大的值將增加緩存命中率從而減低平均響應(yīng)時間,但是將增加緩存的一致性問題。
negative-time-to-live service value
設(shè)置 service 在指定緩存中負的項目(失敗的請求)的TTL(存活時間)。 Value 以秒為單位。如果存在由不在系統(tǒng)數(shù)據(jù)庫中的uid(用戶ID)(例如在以root身份解包linux 內(nèi)核源代碼時)所擁有的文件將明顯改善性能;應(yīng)該維持較小的值以降低緩存一致性問題。
suggested-size service value
這是內(nèi)部散列表的大小, value 應(yīng)該保持一個素數(shù)以達到優(yōu)化效果。
check-files service <yes|no>
啟用或禁用檢查屬于指定 服務(wù) 的文件的改變。這些文件是 /etc/passwd, /etc/group, 以及 /etc/hosts。
開啟/停止/重啟nscd服務(wù)
sevices nscd start | stop | restart
nscd 服務(wù)查看和清除
默認該服務(wù)在redhat或centos下是關(guān)閉的,可以通過services nscd start開啟。緩存DB文件在/var/db/nscd下。可以通過nscd -g查看統(tǒng)計的信息,這里列出部分:清除緩存
nscd -i passwd
nscd -i group
nscd -i hosts
除了上面的方法,重啟nscd服務(wù)同樣可以達到清理cache的目的。
如果系統(tǒng)下有nscd,那么就直接
sudo /etc/init.d/nscd restart
如果沒有就安裝
sudo apt-get install nscd
sudo /etc/init.d/nscd restart
或
service nscd restart
其實我們也可以直接
sudo /etc/init.d/dns-clean start
來完成的。
參考文獻
[1].http://linux.about.com/library/cmd/blcmdl8_nscd.htm
[2].http://www.361way.com/linux-nscd-dns-cache/4265.html
總結(jié)
以上是生活随笔為你收集整理的ubuntu 14.04 64 bit上开启nscd服务缓存加速及清除dns缓存的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 在Ubuntu 14.04 64bit上
- 下一篇: 在Ubuntu 14.04 64bit中