Descrizione dell'utilità DNSLint

Questo articolo descrive l'utilità DNSLint e la relativa sintassi.

Si applica a: Windows Server 2012 R2
Numero KB originale: 321045

Riepilogo

DNSLint è un'utilità di Microsoft Windows che consente di diagnosticare problemi di risoluzione dei nomi DNS (Domain Name System) comuni.

Per altre informazioni su come scaricare supporto tecnico Microsoft file, vedere l'articolo seguente:

119591 Come ottenere file di supporto tecnico Microsoft da Servizi online

Microsoft ha analizzato questo file alla ricerca di virus. Microsoft ha usato il software di rilevamento dei virus più recente disponibile alla data di pubblicazione del file. Il file viene archiviato in server con sicurezza avanzata che consentono di evitare modifiche non autorizzate al file.

Funzioni DNSLint

DNSLint dispone di tre funzioni che verificano i record DNS e generano un report HTML. Le tre funzioni sono:

  • dnslint /d: diagnostica le potenziali cause della "delega zoppo" e altri problemi DNS correlati.
  • dnslint /ql: verifica un set definito dall'utente di record DNS in più server DNS.
  • dnslint /ad: verifica i record DNS usati in modo specifico per la replica di Active Directory.

DNSLint è un'utilità da riga di comando. La sintassi è:

dnslint /d domain_name | /ad [LDAP_IP_address] | /ql input_file [/c [smtp,pop,imap]] [/no_open] [/r report_name] [/t] [/test_tcp] [/s DNS_IP_address] [/v] [/y]  

/dSpecificare , /ado /ql quando si esegue DNSLint. Altri commutatori sono facoltativi.

Usare l'opzione /d per richiedere i test del nome di dominio. Questa opzione è utile per la risoluzione dei problemi di delega zoppo.

  • Specificare un nome di dominio da testare.
  • Non è possibile usare l'interruttore /d con l'interruttore /ad .

Usare l'opzione /ad per richiedere test di Active Directory.

  • L'opzione /ad risolve i record DNS usati per la replica della foresta di Active Directory.

  • Per impostazione predefinita, viene usato il servizio LDAP del sistema locale.

  • È possibile specificare un indirizzo IP del server LDAP remoto (facoltativo).

  • Vengono accettati solo indirizzi IP validi. I nomi non vengono accettati.
    In genere si tratta di un controller di dominio Active Directory.

  • Usare l'opzione /ad con l'opzione /s , dove /s specifica l'indirizzo IP di un server DNS autorevole per la zona _msdcs nella radice della foresta di Active Directory.

  • Non è possibile usare l'opzione /ad con /d o /c.

Usare l'opzione /ql per richiedere test di query DNS da un elenco.

  • L'opzione /ql invia le query DNS specificate in un file di input di testo

  • Specificare il percorso e il nome del file di input.

  • l'opzione /ql supporta query sui record A, PTR, CNAME, SRV e MX.

  • Per creare un file di input di esempio, eseguire il comando seguente:

    dnslint /ql autocreate  
    
  • Non è possibile usare l'opzione /ql con /d, /ado /c.

Nota

  • Non è possibile usare /d, /ade /ql insieme.
  • Non è possibile usare /c insieme a /ad o /ql.
  • Quando si usa /ad, è necessario specificare /sanche .

Opzioni facoltative

Usare /c per richiedere test di connettività nei server di posta elettronica.

  • Il /c commutatore testa le porte SMTP (Simple Mail Transfer Protocol), POP e IMAP nei server di posta elettronica trovati.
  • Per impostazione predefinita, vengono testate tutte e tre le porte SMTP, POP e IMAP. È possibile specificare una o una combinazione. A tale scopo, usare un elenco delimitato da virgole: /c pop,imap,smtp.

Per impedire l'apertura automatica del report, usare /no_open. L'opzione /no_open è utile negli script.

Utilizzare l'opzione /r per specificare il nome del file di report creato.

  • L'estensione del nome file .htm viene aggiunta automaticamente ai nomi dei report.
  • Il report viene creato in formato HTML. Il nome predefinito è Dnslint.htm
  • Il percorso predefinito è la directory corrente.

Usare l'opzione /s per ignorare una ricerca InterNIC whois .

  • È possibile specificare l'indirizzo IP del server DNS invece di eseguire query su InterNIC per uno.
  • L'opzione /s avvia il controllo dei record DNS usando l'indirizzo IP fornito.
  • Vengono accettati solo indirizzi IP validi. I nomi non vengono accettati.
  • Usare questa opzione per controllare i nomi di dominio non supportati da InterNIC.
  • Quando si usa /ad, è necessario utilizzare /s per specificare un server DNS autorevole per il sottodominio _msdcs nel dominio radice della foresta di Active Directory.
  • Quando si usa /ad, è possibile eseguire /s localhost per determinare se il sistema locale è in grado di risolvere i record trovati nei test di Active Directory.

Usare /t per richiedere l'output a un file di testo.

  • Il file di testo condivide lo stesso nome del report .htm, ma ha un'estensione di file .txt.
  • File di testo creato nella stessa directory del file di report .htm.

Usare /test_tcp per richiedere il test della porta TCP 53.

  • Per impostazione predefinita, viene testata solo la porta UDP 53.
  • L'opzione /test_tcp controlla se la porta TCP 53 risponde alle query.
  • L'opzione /test_tcp non può essere usata con /ql.

Usare /v per richiedere l'output dettagliato sullo schermo.

Usare /y per sovrascrivere un file di report esistente senza che venga richiesto. L'opzione /y è utile negli script.

Parametri obbligatori

Per eseguire DNSLint, è necessario usare uno dei tre parametri seguenti:

  1. Usare /d per i test dei nomi di dominio
  2. Usare /ad per i test di replica di Active Directory.
  3. Usare /ql per i test specificati in un elenco di query.

Usare l'opzione /d (test del nome di dominio) per testare un nome di dominio DNS specifico. Usare questa opzione per diagnosticare i problemi di "delega lame" e altri problemi DNS correlati. Il nome di dominio testato può essere:

  • Nome registrato per l'uso su Internet.
  • Nome usato in uno spazio dei nomi privato.

Quando si testano nomi di dominio in una rete privata o nomi di dominio registrati su Internet con più di due livelli di profondità, è necessario usare l'opzione /s .

Usare l'opzione /ad (test di Active Directory) per testare i record DNS responsabili della replica della foresta di Active Directory. Dopo l'opzione /ad , specificare l'indirizzo IP di un server LDAP usato per questo test. In genere si tratta di un controller di dominio Active Directory. Se DNSLint è in esecuzione in un controller di dominio, non è necessario alcun indirizzo IP perché il valore predefinito per questa opzione è 127.0.0.1.

Usare l'opzione /ql (test elenco query) per testare i record DNS specificati in un file di input di testo. Specificare il percorso completo e il nome del file di input di testo immediatamente dopo l'opzione. Eseguire dnslint /ql autocreate per generare un file di input di testo di esempio denominato In-dnslint.txt. Questo file contiene una spiegazione sul formato richiesto. È possibile usare questo file come modello per creare altri file di input.

Altri commutatori facoltativi

L'opzione /v (dettagliata) attiva la "modalità dettagliata". Con questa opzione attivata, DNSLint restituisce i passaggi da eseguire per raccogliere i dati sullo schermo. È possibile inviare questo output a un file. Ad esempio, dnslint /v /d msn.com. Per impostazione predefinita, il nome del report generato da DNSLint è Dnslint.htm. Con l'opzione /r (report), è possibile specificare il nome e il percorso del file di report generato da DNSLint. È possibile assegnare al file di report lo stesso nome del nome di dominio o del server DNS testato. L'estensione del nome file ".htm" viene aggiunta automaticamente al nome del report perché il report è in formato HTML.

Per impostazione predefinita, DNSLint tenta di aprire automaticamente il file di report dopo che è stato generato, usando qualsiasi programma associato al file di .htm del file di report. In genere, Microsoft Internet Explorer è associato all'estensione .htm. Non è possibile modificare il formato del report in un formato diverso da HTML usando DNSLint.

Per definire il percorso in cui viene scritto il file di report, specificare il percorso completo e il nome del file di report. DNSLint supporta sia le unità locali che i percorsi UNC (Universal Naming Convention). Ad esempio, il comando dnslint /d msn.com /r c:\reports\reskit crea un report denominato Reskit.htm nella cartella C:\Reports. Il comando dnslint /d mydom.local /r \\\server1\reports\mydom crea un report nel sistema remoto denominato server1 nella condivisione Report. Il nome del report è Mydom.htm.

Se si specifica l'opzione /t (testo), DNSLint genera un report di testo e un report HTML. Il report di testo usa lo stesso nome del report .htm, ad eccezione del fatto che l'estensione del nome file è .txt. Il file viene creato nella stessa cartella del file .htm. Ad esempio, il comando dnslint /d msn.com /r c:\reports\reskit /t crea due report nella cartella C:\Reports. Un report viene chiamato Reskit.htm e l'altro viene chiamato Reskit.txt.

Per impostazione predefinita, quando DNSLint rileva che un file di report con lo stesso nome di quello che verrà generato esiste già nella cartella di destinazione, DNSLint richiede di sovrascrivere il file. Con l'opzione /y , DNSLint può sovrascrivere un file di report esistente senza richiedere l'autorizzazione. Quando si usa questa opzione, vengono sovrascritti sia il file .htm che il file di .txt facoltativo.

Il comando dnslint /y /d msn.com /r c:\reports\reskit /t crea due report nella cartella C:\Reports. Un report viene chiamato Reskit.htm e l'altro viene chiamato Reskit.txt. I file di report esistenti vengono sovrascritti senza chiedere conferma.

L'opzione /no_open impedisce a DNSLint di aprire automaticamente il report dopo che è stato generato. Questa opzione è utile quando si usa DNSLint negli script se non si vuole:

  • Esaminare immediatamente i report.
  • Esaminare i report del sistema da cui è stato eseguito DNSLint.

Ad esempio, il comando dnslint /y /d msn.com /no_open genera un report denominato Dnslint.htm che sovrascrive un report preesistente con lo stesso nome, senza chiedere conferma all'utente. DNSLint non apre automaticamente il report al termine.

Usare l'opzione /test_tcp (test della porta TCP 53) per richiedere di testare la porta TCP 53 quando /d viene usata. Molti server DNS su Internet oggi non accettano query DNS sulla porta TCP 53, per evitare possibili attacchi a tale porta. Per impostazione predefinita, solo la porta UDP 53 viene testata quando viene eseguito DNSLint. Se si specifica l'opzione /test_tcp , DNSLint invierà una singola query DNS tramite TCP e segnalerà se è stata ricevuta una risposta.

È possibile usare l'opzione /test_tcp con /d e /ad. Tuttavia, non è possibile usare l'opzione /test_tcp con /ql o la /ad/s combinazione localhost. Con la funzione , la /ql porta TCP 53 può essere testata direttamente dal file di input. La /ad /s localhost funzione verifica se i server DNS configurati in locale possono risolvere i record DNS usati per la replica della foresta active directory. È invece possibile testare la connettività della porta TCP 53 usando /ad/sip_addr , dove ip_addr è l'indirizzo IP di un server DNS autorevole per la zona _msdcs nella radice del dominio di Active Directory.

Ad esempio: dnslint /d microsoft.com /v /test_tcp

Il /c commutatore (test di connettività) richiede che DNSLint test le porte di posta elettronica note in tutti i server di posta elettronica individuati durante l'ispezione dei server DNS per il nome di dominio specificato. Sono supportati SMTP, Post Office Protocol (POP versione 3) e Internet Message Access Protocol (IMAP versione 4). Per impostazione predefinita, quando viene specificata l'opzione /c , DNSLint tenta di connettersi a tutte e tre le porte in ogni server di posta elettronica trovato:

  • Porta TCP 25 per SMTP
  • Porta TCP 110 per POP
  • Porta TCP 143 per IMAP

DNSLint segnala lo stato in cui si trova ogni porta: "In ascolto", "Non in ascolto" o "Nessuna risposta". Se DNSLint rileva che una porta è In ascolto, restituisce anche la risposta dalla porta. Ad esempio, se una porta SMTP è in ascolto, in genere restituisce una risposta coerente con la specifica del protocollo SMTP, ad esempio l'esempio seguente:

220 mailsrv.contoso.com Microsoft ESMTP MAIL Service, versione: 5.0.2195.3705 ready at Mon, 13 May 2002 17:08:36 -0700

Quando una porta viene segnalata come "Non in ascolto", indica che il server di posta elettronica sottoposto a query ha risposto con un pacchetto TCP con il flag Reset impostato. Indica anche che non è presente alcun servizio o programma in ascolto sulla porta.

Quando il server di posta elettronica di destinazione non risponde al tentativo di connessione, viene segnalato "Nessuna risposta". Se il server di destinazione è operativo ed in esecuzione, indica che la porta viene filtrata in base a:

  • Server di destinazione.
  • Da qualche parte tra il client che esegue DNSLint e il server di destinazione.

Il comando dnslint /y /v /c /d msn.com genera un report denominato Dnslint.htm che sovrascrive un report preesistente con lo stesso nome, senza chiedere conferma all'utente. Poiché l'opzione /c è specificata, nella parte inferiore del report DNSLint standard viene aggiunta una sezione aggiuntiva:

Test di connettività di rete
Server di posta elettronica: smtp-gw-4.msn.com
Indirizzo IP: 207.46.181.13

Risposta SMTP:
220 cpimssmtpa18.msn.com Microsoft ESMTP MAIL Service, Versione:
5.0.2195.4905 pronto a Mar, 14 maggio 2002 09:26:06 -0700

Risposta POP: NO RESPONSE (possibilmente filtrato)

Risposta IMAP: NO RESPONSE (possibilmente filtrata)

Nota

Uno o più server POP non hanno risposto.
Uno o più server IMAP non hanno risposto.

Quando un server di posta elettronica di destinazione non risponde a un tentativo di connessione su una delle porte di posta elettronica, DNSLint ritenta la connessione tre volte. Si tratta di un comportamento standard per un client TCP. Prima che DNSLint indichi che non è stata eseguita alcuna risposta, attende il timeout di tre connessioni TCP separate. Questo processo può rallentare il completamento del report. Per ottimizzare l'operazione DNSLint, è possibile specificare le porte o le porte di posta elettronica da controllare anziché controllare sempre tutte e tre le porte.

Per impostazione predefinita, quando si specifica l'opzione /c , vengono controllate tutte e tre le porte TCP (25, 110, 143). È tuttavia possibile specificare le porte da controllare dopo l'opzione /c . Specificare un elenco delimitato da virgole immediatamente dopo l'opzione /c . Specificare solo porte valide: smtp, pop, imap. Qualsiasi combinazione di queste tre porte funziona. Ad esempio, il comando dnslint /d contoso.com /c smtp specifica che deve essere controllata solo la porta SMTP (porta TCP 25).

Il comando dnslint /d contoso.com /c pop, smtp specifica che devono essere controllate solo le porte SMTP (porta TCP 25) e POP (porta TCP 110).

Il comando dnslint /d contoso.com /c imap, pop specifica che devono essere controllate solo le porte IMAP (porta TCP 143) e POP (porta TCP 110).

È possibile usare l'opzione /s (server) con le /d funzioni e /ad . L'opzione /s ha diversi scopi, ma accetta solo un tipo di dati, un indirizzo IP valido di un server DNS (con un'eccezione).

Quando si specifica /d, l'opzione /s ignora la ricerca InterNIC Whois eseguita da DNSLint per impostazione predefinita. Di conseguenza, DNSLint può eseguire test su reti private e su nomi di dominio più profondi rispetto ai domini di secondo livello su Internet. DNSLint può anche testare i nomi di dominio non supportati da InterNIC. Al momento della scrittura di questo articolo, InterNIC supportava Whois le ricerche per i domini seguenti: .biz, .com, , .coop.edu, , .info, .int, , .museum, , .nete .org.

Quando si usa /ad, l'opzione /s viene usata per specificare l'indirizzo IP di un server DNS autorevole per il sottodominio in cui vengono registrati i record DNS usati per la replica della foresta active directory. In genere, è il sottodominio _msdcs nella radice della foresta di Active Directory. Ad esempio, se la radice della foresta di Active Directory è denominata myad.contoso.com, anche il server DNS che ospita questo dominio può essere autorevole per la _msdcs.myad.contoso.com zona. Nella zona vengono registrati i record DNS usati nella replica di Active Directory. In alternativa, la _msdcs.myad.contoso.com zona può essere delegata a un server DNS diverso. Tuttavia, l'infrastruttura DNS è stata progettata, l'opzione /s viene usata per specificare un server DNS autorevole per la _msdcs.myad.contoso.com zona.

L'opzione /s deve specificare un indirizzo IP valido. L'unica eccezione a questa regola è la combinazione seguente: dnslint /ad /s localhost

"localhost" non è un indirizzo IP valido. Quando si specifica questo parametro con la /ad /s combinazione, DNSLint verifica la capacità del sistema locale (il sistema che esegue DNSLint) di risolvere i record DNS usati per la replica della foresta di Active Directory. Le query DNS ricorsive vengono inviate ai server DNS configurati del sistema locale per verificare che il sistema locale possa risolvere i record DNS usati per la replica della foresta di Active Directory. Può essere utile per la risoluzione dei problemi di replica di Active Directory in un controller di dominio specifico.

In genere, durante questo processo non vengono eseguite query su tutti i server DNS configurati del sistema locale. Viene osservato il comportamento predefinito del resolver client DNS. Se il server DNS nella parte superiore dell'elenco server DNS del sistema locale non risponde, viene usato il server successivo nell'elenco.