歡迎您光臨本站 註冊首頁

一個富有挑戰性的問題來了:關於Query refused的解釋。

←手機掃碼閱讀     火星人 @ 2014-03-04 , reply:0

一個富有挑戰性的問題來了:關於Query refused的解釋。

首先採用命令:nslookup www.google.com  ns1.google.com,得到下面的結果:
Server:  ns1.google.com
Address:  216.239.32.10

Name:   www.google.com
Served by:
- f.l.google.com
          72.14.235.9
          l.google.com
- g.l.google.com
          74.125.95.9
          l.google.com
- a.l.google.com
          209.85.139.9
          l.google.com
- e.l.google.com
          209.85.137.9
          l.google.com
- d.l.google.com
          74.125.77.9
          l.google.com
- b.l.google.com
          74.125.45.9
          l.google.com
- c.l.google.com
          64.233.161.9
          l.google.com

Served by:  f.l.google.com這句話是不是表示域名「www.google.com」由Served by:後面列出來的伺服器負責解析?如果是,那麼再往下。

再採用命令:nslookup www.google.com  g.l.google.com,得到下面的結果:
*** Can't find server name for address 74.125.95.9: Query refused
Server:  UnKnown
Address:  74.125.95.9

*** UnKnown can't find www.google.com: Query refused
如果採用命令:nslookup www.g.cn  g.l.google.com,則可以得到下面的結果:
Server:  UnKnown
Address:  74.125.45.9

Name:    google.cn
Addresses:  203.208.39.99, 203.208.39.104
Aliases:  www.google.cn

問題:
為什麼在同一DNS伺服器上查詢www.g.cn和www.google.com得到的結果不一樣?即:google.com被refused了,而g.cn得以passed。
為什麼會出現Query refused?這裡的refuse是針對什麼進行refuse?在DNS-server上如何實現?

能否給小弟解釋一下?
謝謝!

[ 本帖最後由 hjp0021 於 2009-4-16 14:36 編輯 ]
《解決方案》

因為74.125.95.9(g.l.google.com)不是google.com域的權威伺服器,而是g.cn域的權威伺服器。所以回答是正常的。
不要再用nslookup了,用dig看看就清楚了。
《解決方案》

謝謝樓上的回復。
我用dig查詢結果如下:

$ dig @ns1.google.com www.google.com

; <<>> DiG 9.3.2 <<>> @ns1.google.com www.google.com
; (1 server found)
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 65213
;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 7, ADDITIONAL: 7

;; QUESTION SECTION:
;www.google.com.                        IN      A

;; ANSWER SECTION:
www.google.com.         604800  IN      CNAME   www.l.google.com.

;; AUTHORITY SECTION:
l.google.com.           86400   IN      NS      b.l.google.com.
l.google.com.           86400   IN      NS      f.l.google.com.
l.google.com.           86400   IN      NS      g.l.google.com.
l.google.com.           86400   IN      NS      e.l.google.com.
l.google.com.           86400   IN      NS      a.l.google.com.
l.google.com.           86400   IN      NS      d.l.google.com.
l.google.com.           86400   IN      NS      c.l.google.com.

;; ADDITIONAL SECTION:
a.l.google.com.         86400   IN      A       209.85.139.9
b.l.google.com.         86400   IN      A       74.125.45.9
c.l.google.com.         86400   IN      A       64.233.161.9
d.l.google.com.         86400   IN      A       74.125.77.9
e.l.google.com.         86400   IN      A       209.85.137.9
f.l.google.com.         86400   IN      A       72.14.235.9
g.l.google.com.         86400   IN      A       74.125.95.9




看來結果和用nslookup查詢到的一樣。
上面的意思是說www.google.com設置了別名為www.l.google.com,而l.google.com的解析由上面列出的7台負責。
如果:dig @b.l.google.com www.google.com ,將無任何答覆;
如果:dig @b.l.google.com www.l.google.com ,將會收到答覆。
這是不是說明:google的伺服器不是直接解析www的A記錄,而是通過CNAME來解析,它的所有A記錄都是在l.google.com上建立的。

不知我的理解對否,請指教。

[火星人 ] 一個富有挑戰性的問題來了:關於Query refused的解釋。已經有590次圍觀

http://coctec.com/docs/service/show-post-23133.html