Saya memiliki pengontrol domain Windows 2008 R2 yang juga merupakan server DNS. Saat menyelesaikan TLD tertentu, ia mengembalikan SERVFAIL:
$ dig bogus.
; <<>> DiG 9.8.1 <<>> bogus.
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 31919
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;bogus. IN A
Saya mendapatkan hasil yang sama untuk TLD nyata seperti com.
ketika meminta DC seperti yang ditunjukkan di atas. Bandingkan dengan server BIND yang berfungsi seperti yang diharapkan:
$ dig bogus. @128.59.59.70
; <<>> DiG 9.8.1 <<>> bogus. @128.59.59.70
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 30141
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0
;; QUESTION SECTION:
;bogus. IN A
;; AUTHORITY SECTION:
. 10800 IN SOA a.root-servers.net. nstld.verisign-grs.com. 2012012501 1800 900 604800 86400
;; Query time: 18 msec
;; SERVER: 128.59.59.70#53(128.59.59.70)
;; WHEN: Wed Jan 25 14:09:14 2012
;; MSG SIZE rcvd: 98
Demikian pula, ketika saya meminta server DNS Windows saya dig . any
, saya mendapatkan SERVFAIL tetapi server BIND mengembalikan zona root seperti yang diharapkan.
Ini terdengar mirip dengan masalah yang dijelaskan dalam http://support.microsoft.com/kb/968372 kecuali saya menggunakan dua forwarder (128.59.59.70 dari atas dan juga 128.59.62.10) dan kembali ke petunjuk root sehingga prasyarat untuk mengekspos masalah tidak sama. Namun demikian, saya juga menerapkan MaxCacheTTL
perbaikan registri seperti yang dijelaskan dan me-restart DNS dan seluruh server juga tetapi masalahnya masih ada. Masalahnya terjadi pada semua pengontrol domain di domain ini dan telah terjadi sejak setengah tahun yang lalu, meskipun server mendapatkan pembaruan Windows otomatis.
EDIT
Berikut ini adalah log debug. Klien adalah 160.39.114.110, yang merupakan workstation saya.
1/25/2012 2:16:01 PM 0E08 PACKET 000000001EA6BFD0 UDP Rcv 160.39.114.110 2e94 Q [0001 D NOERROR] A (5)bogus(0)
UDP question info at 000000001EA6BFD0
Socket = 508
Remote addr 160.39.114.110, port 49710
Time Query=1077016, Queued=0, Expire=0
Buf length = 0x0fa0 (4000)
Msg length = 0x0017 (23)
Message:
XID 0x2e94
Flags 0x0100
QR 0 (QUESTION)
OPCODE 0 (QUERY)
AA 0
TC 0
RD 1
RA 0
Z 0
CD 0
AD 0
RCODE 0 (NOERROR)
QCOUNT 1
ACOUNT 0
NSCOUNT 0
ARCOUNT 0
QUESTION SECTION:
Offset = 0x000c, RR count = 0
Name "(5)bogus(0)"
QTYPE A (1)
QCLASS 1
ANSWER SECTION:
empty
AUTHORITY SECTION:
empty
ADDITIONAL SECTION:
empty
1/25/2012 2:16:01 PM 0E08 PACKET 000000001EA6BFD0 UDP Snd 160.39.114.110 2e94 R Q [8281 DR SERVFAIL] A (5)bogus(0)
UDP response info at 000000001EA6BFD0
Socket = 508
Remote addr 160.39.114.110, port 49710
Time Query=1077016, Queued=0, Expire=0
Buf length = 0x0fa0 (4000)
Msg length = 0x0017 (23)
Message:
XID 0x2e94
Flags 0x8182
QR 1 (RESPONSE)
OPCODE 0 (QUERY)
AA 0
TC 0
RD 1
RA 1
Z 0
CD 0
AD 0
RCODE 2 (SERVFAIL)
QCOUNT 1
ACOUNT 0
NSCOUNT 0
ARCOUNT 0
QUESTION SECTION:
Offset = 0x000c, RR count = 0
Name "(5)bogus(0)"
QTYPE A (1)
QCLASS 1
ANSWER SECTION:
empty
AUTHORITY SECTION:
empty
ADDITIONAL SECTION:
empty
Setiap opsi dalam kotak log debug diperiksa kecuali "filter by IP". Sebaliknya, ketika saya meminta, katakanlah, accounts.google.com, saya dapat melihat server DNS keluar ke penerusnya (128.59.59.70, misalnya). Dalam hal ini, saya tidak melihat paket keluar dari server DNS saya meskipun bogus.
tidak ada dalam cache (log debug sudah berjalan dan ini adalah pertama kalinya saya menanyakan server ini untuk bogus.
atau TLD). Itu baru saja mengembalikan SERVFAIL tanpa berkonsultasi dengan server DNS lain, seperti dalam artikel Microsoft KB yang ditautkan di atas.