Windows DNS Server 2008 R2 restituisce fallacemente SERVFAIL


8

Ho un controller di dominio Windows 2008 R2 che è anche un server DNS. Quando si risolvono determinati TLD, viene restituito un 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

Ottengo lo stesso risultato per un vero TLD come com.quando interrogo il DC come mostrato sopra. Confronta con un server BIND che funziona come previsto:

$ 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

Allo stesso modo, quando dig . anyeseguo una query sul mio server DNS di Windows , ottengo un SERVFAIL ma i server BIND restituiscono la zona radice come previsto.

Sembra simile al problema descritto in http://support.microsoft.com/kb/968372, tranne per il fatto che sto usando due server di inoltro (128.59.59.70 dall'alto e 128.59.62.10) e tornando ai suggerimenti di root, quindi i presupposti per esporre il problema non sono gli stessi. Tuttavia, ho anche applicato la MaxCacheTTLcorrezione del registro come descritto e riavviato DNS e l'intero server, ma il problema persiste. Il problema si verifica su tutti i controller di dominio in questo dominio e si è verificato da un anno e mezzo fa, anche se i server ricevono aggiornamenti automatici di Windows.

MODIFICARE

Ecco un registro di debug. Il client è 160.39.114.110, che è la mia workstation.

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

Ogni opzione nella casella del registro di debug è stata selezionata tranne "filtro per IP". Al contrario, quando eseguo una query, ad esempio, accounts.google.com, posso vedere il server DNS uscire al suo spedizioniere (128.59.59.70, per esempio). In questo caso, non ho visto alcun pacchetto uscire dal mio server DNS anche se bogus.non era nella cache (il registro di debug era già in esecuzione e questa è la prima volta che ho richiesto questo server bogus.o qualsiasi TLD). È appena tornato SERVFAIL senza consultare nessun altro server DNS, come nell'articolo di Microsoft KB collegato sopra.


Quindi attiva la registrazione di debug e scopri esattamente cosa sta succedendo nel back-end per queste query. Quindi dicci cosa ha registrato il server, nella tua domanda.
JdeBP,

Risposte:


1

Si è verificato un problema simile sui server DNS Microsoft senza server di inoltro configurato. Sembra che questo aggiornamento rapido sia correlato: http://support.microsoft.com/kb/2508835 . Non direi che l'uso degli spedizionieri negherebbe l'applicabilità.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.