Ubuntu

權威 DNS 不會響應域上的 ping 或探勘

  • October 17, 2010

我正在為一個新站點製作權威 DNS。該站點對其 IP 地址的所有 ping 和大多數探勘都做出了很好的響應,但拒絕對其域名進行任何處理。我認為這是由於 DNS 轉發問題,但我無法確定它的正面或反面。我希望比我更有智慧的人會看到答案。需要注意的是,我的伺服器是在同一個網路上的。

簡而言之(jk),這是我的症狀:

編輯

我猜想我的第一個問題與 Forward Zone 文件 ( /exe/bind/db.example.com) 有關。TIFFolk 證實了這一點,並建議我添加一行程式碼,如下所述。所有的 ping 和 digs 都按現在的預期工作。我已將舊的 ping/dig 結果留給可能遇到相同問題的其他人。

此時我不知道如何更正式地說,但剩下的問題是在瀏覽器中無法通過域名呼叫該站點。

內容/exe/bind/db.example.com

$TTL    604800
@               IN      SOA    box.example.com. root.example.com. (
                             4         ; Serial
                        604800         ; Refresh
                         86400         ; Retry
                       2419200         ; Expire
                        604800 )       ; Negative Cache TTL
;
@               IN      NS      box.example.com.
               IN      A       1.2.3.4   ;box ip, suggested by TIFFolk
box             IN      A       192.168.1.64
localhost       IN      A       127.0.0.1
www             IN      CNAME   box.

舊資料

輸出dig -x 127.0.0.1

;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 6189
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1

;; QUESTION SECTION:
;1.0.0.127.in-addr.arpa.                IN      PTR

;; ANSWER SECTION:
1.0.0.127.in-addr.arpa. 604800  IN      PTR     localhost.

;; AUTHORITY SECTION:
0.0.127.in-addr.arpa.   604800  IN      NS      box.example.com.

;; ADDITIONAL SECTION:
box.example.com. 604800 IN  A       192.168.1.64

;; Query time: 0 msec
;; SERVER: 192.168.1.64#53(192.168.1.64)
;; WHEN: Tue Nov 24 00:08:59 2009
;; MSG SIZE  rcvd: 120

dig 1.2.3.4(全域 IP 地址或網路 IP 地址)的輸出:

;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 27762
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0

;; QUESTION SECTION:
;1.2.3.4.                        IN      A

;; AUTHORITY SECTION:
.                       10800   IN      SOA     A.ROOT-SERVERS.NET. NSTLD.VERISIGN-GRS.COM. 2009112301 1800 900 604800 86400

;; Query time: 59 msec
;; SERVER: 128.107.241.184#53(128.107.241.184)
;; WHEN: Mon Nov 23 21:09:13 2009
;; MSG SIZE  rcvd: 107

-的輸出dig example.com(之前超時):

;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 52478
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0

;; QUESTION SECTION:
;example.com.                 IN      A

;; AUTHORITY SECTION:
example.com.          604800  IN      SOA     box.example.com.             root.example.com. 4 604800 86400 2419200 604800

;; Query time: 0 msec
;; SERVER: 192.168.1.64#53(192.168.1.64)
;; WHEN: Mon Nov 23 23:56:45 2009
;; MSG SIZE  rcvd: 86

ping 1.2.3.4 (本地網路、全域 IP 地址或本地主機的結果相同)的輸出

PING 1.2.3.4 (1.2.3.4) 56(84) bytes of data.
(pings)
--- 1.2.3.4 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 2998ms
rtt min/avg/max/mdev = 0.012/0.015/0.020/0.004 ms

ping example.com <— 的輸出仍然是主要問題

ping: unknown host example.com

只是為了好玩:內容resolv.conf

search example.com
nameserver 127.0.0.1
nameserver 192.168.1.64

一些建議的東西

以下 3 次探勘結果都相同:

dig @1.2.3.4 (server ip)

dig @127.0.0.1 example.com

dig @box example.com

; &lt;&lt;&gt;&gt; DiG 9.6.1-P1 &lt;&lt;&gt;&gt; @box example.com
; (1 server found)
;; global options: +cmd
;; connection timed out; no servers could be reached

-的內容/etc/bind/db.local(與 Ubuntu 預設值相同):

$TTL    604800
@       IN      SOA     localhost. root.localhost. (
                             2         ; Serial
                        604800         ; Refresh
           w              86400         ; Retry
                       2419200         ; Expire
                        604800 )       ; Negative Cache TTL
;
@       IN      NS      localhost.
@       IN      A       127.0.0.1
@       IN      AAAA    ::1

輸出(來自ns’網路nslookup example.com的comp )

Server:         127.0.0.1
Address:        127.0.0.1#53

Name:   example.com
Address: 1.2.3.4

輸出nslookup example.com(來自ns’ 網路外的組件)

;; Got SERVFAIL reply from 68.238.64.12, trying next server
;; Got SERVFAIL reply from 68.238.96.12, trying next server
;; connection timed out; no servers could be reached

輸出nslookup example.com 192.168.1.64

Server:         192.168.1.64
Address:        192.168.1.64#53

Name:   example.com
Address: 1.2.3.4

首先,127.0.0.1 不回答您的查詢。

您的區域文件將響應

box.example.com

example.com

您必須添加:

       IN      A       your_server_ip

如果您希望您的 dns 響應 example.com

無論如何, show db.local,然後重新啟動 bind9 和cat syslog | grep named

您應該使用 dig @ip-of-server 來確保有問題的伺服器是被查詢的伺服器。即,如果要查詢在 localhost 上執行的伺服器,請使用

dig @127.0.0.1 example.com

如果您不提供@server,則 dig 會查詢 /etc/resolv.conf 並向每台伺服器發出查詢,然後以任何伺服器首先回答的方式進行響應。

至於伺服器的問題是什麼,我從您的文章中不清楚確切的問題是什麼。

引用自:https://serverfault.com/questions/87650