DNS緩存問題
環境是這樣的,在區域網搭建了DNS伺服器,用於內部的解析,不需要解析公網地址,在配置文件中將根的配置zone "." 都註釋掉了。客戶端配置好后可以正常使用,只能解析到內部的域名,解析不了公網域名。最近發現客戶端竟然可以解析到公網域名,但解析出的公網域名帶有「Non-authoritative answer:」,如下,在網上查了一下,說明這是從緩存中解析的,試了網上清理緩存的方法,都沒有效果,客戶端依然可以解析到。內網解析當然沒有問題,沒有「Non-authoritative answer:」。麻煩各位高手給看下,如何才可以把DNS的緩存清了,讓客戶端不再解析到公網的地址?或者說這個緩存是不是還可能存在於別的什麼地方嗎?
Non-authoritative answer:
www.baidu.com canonical name = www.a.shifen.com.
Name: www.a.shifen.com
Address: 119.75.218.77
Name: www.a.shifen.com
Address: 119.75.217.56
對了,補充一點,DNS伺服器和客戶端都是可以訪問公網的,不知道這個有沒有影響?
《解決方案》
貼一下named.conf
《解決方案》
#cat /etc/named.conf |grep -v '//'
options {
listen-on port 53 { 192.168.1.10; };
listen-on-v6 port 53 { ::1; };
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
memstatistics-file "/var/named/data/named_mem_stats.txt";
allow-query { localhost; any; };
recursion yes;
dnssec-enable yes;
dnssec-validation yes;
dnssec-lookaside auto;
/* Path to ISC DLV key */
bindkeys-file "/etc/named.iscdlv.key";
};
logging {
channel default_debug {
file "data/named.run";
severity dynamic;
};
};
include "/etc/named.rfc1912.zones";
#cat /etc/named.rfc1912.zones|grep -v '//'
zone "test.com" IN {
type master;
file "test.com";
also-notify { 192.168.1.20; };
allow-update { none; };
};
zone "168.192.in-addr.arpa" IN {
type master;
file "test.ip";
also-notify { 192.168.1.20; };
allow-update { none; };
};
《解決方案》
各位高手。。。。:hug::hug::hug:
《解決方案》
能上網肯定就能解析公網的域名啊,你用的dns伺服器又不是權威的,解析出來必然是「Non-authoritative answer:」。都有些搞不懂你的問題。。。
《解決方案》
shaojiang614 發表於 2012-09-03 15:41 static/image/common/back.gif
能上網肯定就能解析公網的域名啊,你用的dns伺服器又不是權威的,解析出來必然是「Non-authoritative answe ...
能上公網也要配公網DNS才會解析到公網域名吧?我客戶端沒配置公網的DNS,只配了自己內部的DNS,內部DNS把根也註釋掉了,怎麼還會解析到公網的域名呢
《解決方案》
回復 3# gutou888
把 recursion yes; 改成 recursion no; 就行了。
《解決方案》
回復 7# cnfavor
這個參數是做什麼用的?可以給解釋一下嗎?
《解決方案》
回復 8# gutou888
是否允許遞歸查詢。
《解決方案》
回復 9# cnfavor
我現在是一個主DNS和一個備DNS,現在都改了之後是解析不了公網的IP了,但每次解析的結果都是從備的DNS上得到的,如下:
#nslookup www.baidu.com
;; Got recursion not available from 192.168.1.1, trying next server
;; Got recursion not available from 192.168.1.1, trying next server
Server: 192.168.1.2
Address: 192.168.1.2#53
** server can't find www.baidu.com: NXDOMAIN
為有什麼辦法讓它是從主的上面得到嗎?難道我要把/etc/resolv.conf 里,備的寫在上面,主的寫在下面?