緩存域名服務器是對任何域都不提供權威解析的域名服務器。 它自己簡單地完成查詢, 并記住這些查詢以備后續使用。 要建立這樣的服務器, 只需像平時一樣配置一個域名服務器, 而不配置域就可以了
在/etc/namedb/master目錄下會生成localhost.rev文件。proxy4bak# cd /etc/namedb
proxy4bak# sh make-localhost
options {
directory "/etc/namedb";
pid-file "/var/run/named/pid";
dump-file "/var/dump/named_dump.db";
statistics-file "/var/stats/named.stats";
// forwarders {
// 221.228.255.1; 218.2.135.1;
// };
};
zone "." {
type hint;
file "named.root";
};
zone "0.0.127.IN-ADDR.ARPA" {
type master;
file "master/localhost.rev";
};
這里我沒有用到forwarders(轉發),在freebsd中文手冊中有這樣一段話:
要從上級的緩存中受益, 可以在此處啟用 forwarders。 在一般情況下, 域名服務器會逐級地查詢 Internet 來找到特定的域名服務器, 直到得到答案為止。 啟用這個將讓它首先查詢上級域名服務器 (或另外提供的域名服務器), 從而從它們的緩存中得到結果。 如果上級域名服務器的負載很重, 在更快的域名服務器上啟用它將有助于改善服務品質。3、更改/etc/resolv.conf
3、使named啟動nameserver 127.0.0.1
proxy4bak# cd /etc
proxy4bak# ee rc.conf
加入
named_enable="YES"
添加完成后重啟服務器,使用top命令可以查看named進程是否啟動。也可以通過nslookup查詢一個網址,如果可以,說明緩存已經建立了,顯示如下:
proxy4bak# nslookup
> set type=any
> www.google.com
Server: 127.0.0.1
Address: 127.0.0.1#53
Non-authoritative answer:
www.google.com canonical name = www.l.google.com.
Authoritative answers can be found from:
google.com nameserver = ns4.google.com.
google.com nameserver = ns1.google.com.
google.com nameserver = ns2.google.com.
google.com nameserver = ns3.google.com.
在搜索相關參考資料時還發現了一個dns緩存軟件――djbdns,也有朋友已經在用了。我為了方便,就直接用BIND了,因為freebsd安裝時就帶上了。但在性能上具體還不知道哪個會好些。
第一次建立dns緩存服務器,寫的有錯誤之處請指出。希望這篇筆記能對想要在局域網中建立高速dns緩存服務器的朋友有用。
|
新聞熱點
疑難解答