DNS Trust Manager 04-18-2023

Comandi DNS per Windows

DigiCert
DNS Commands for Windows

A volte è necessario controllare come si comporta il DNS, al di là della semplicità o complessità della sua configurazione. Oggi per fortuna i computer sono dotati di un'utilità integrata che può aiutarti in queste verifiche. Questa risorsa mostra i comandi utili del Prompt dei comandi di Windows e di PowerShell, evidenziando anche le differenze tra le due shell. Vogliamo iniziare? Beh, siamo qui per questo, dunque partiamo! Ah, ma tu sei già avanti, no? Probabilmente hai saltato questa parte e sei già ai comandi. Bene. Iniziamo sul serio allora.

Nota: tutti gli esempi provengono da un sistema con Windows 10.

Prompt dei comandi di Windows vs. Windows PowerShell

Windows ha introdotto il Prompt dei comandi (CMD) originale sui sistemi operativi Microsoft nel 1981. Questo programma lavora "sotto" Windows e ti permette di avere più controllo sul tuo sistema. Viene eseguito in una semplice finestra nera che visualizza un prompt. A seconda del tuo computer, il prompt può essere simile a questo: C:\> o C:\Users\esempio. Con questo strumento è possibile eseguire comandi a riga singola.

PowerShell è stato rilasciato per la prima volta su Windows nel 2006. Questa shell viene eseguita in una finestra blu e utilizza i comandi cmdlet invece dei comandi CMD o MS-Dos. Dispone inoltre di un sistema di scripting e funzionalità amministrative integrate, e può eseguire comandi batch. Questo ti permette di completare una serie di cmdlet anziché un solo comando alla volta. A differenza del Prompt dei comandi, PowerShell non si limita ai programmi della console. La versione attuale gira su .Net 5.0, che supporta Linux e macOS. PowerShell può anche accedere a più librerie in diversi sistemi.

Come accedere al Prompt dei comandi di Windows

Esistono diversi modi per avviare il Prompt dei comandi di Windows. Un modo è quello di fare clic sull'icona di ricerca nella barra delle applicazioni e digitare "prompt dei comandi" o "cmd". Così facendo dovresti visualizzare l'applicazione nella parte superiore della finestra di ricerca, alla voce "Miglior corrispondenza".

Se, come me, apprezzi le scorciatoie da tastiera, premi Win + R per richiamare il comando Esegui. Digita cmd e fai clic su Ok. Ecco fatto, sei dentro!

Accedere a Windows PowerShell

L'accesso a PowerShell richiede la stessa identica procedura del Prompt dei comandi di Windows. Anziché digitare cmd, digita PowerShell nella finestra Cerca o Esegui. Utilizzando l'opzione di ricerca i risultati cambiano. Se segui il percorso di ricerca, vedrai un'opzione per Windows PowerShell e una per PowerShell ISE. In questa risorsa utilizzerò la versione base di Windows PowerShell.

In alternativa, puoi premere Win + X e verrà visualizzato un nuovo menu. In questo modo potrai accedere a PowerShell anche come amministratore. Questo menu include anche Esegui e molte altre utilità di Windows.

Sapevi che?: PowerShell ISE è un'applicazione host per PowerShell. ISE è l'acronimo di Integrated Scripting Environment. Questa opzione offre un'interfaccia, mentre PowerShell standard è più simile al Prompt dei comandi.

Comandi del Prompt dei comandi di Windows per il DNS

Finalmente arriviamo alla parte interessante! Ecco alcuni comandi CMD di Windows che possono aiutarti a risolvere problemi o a verificare il tuo DNS. Non preoccuparti. Avevo previsto tutto. Farò finta che tu non abbia saltato tutte le informazioni precedenti e stia iniziando da qui.

Nslookup

Il comando nslookup è utile per diagnosticare i problemi di risoluzione dei nomi DNS. È un comando paragonabile alla funzione dig di Mac o Linux. Può trovare l'indirizzo IP di un host o eseguire una ricerca DNS inversa (per trovare il nome di dominio di un IP). Nslookup può anche darti informazioni sui record DNS del tuo dominio.

Un comando nslookup può apparire così: C:\Users\username>nslookup dnsmadeeasy.com

In questo esempio, ho effettuato una semplice richiesta dell'indirizzo IP per DNS Made Easy. In risposta, ho ricevuto gli indirizzi IPv6 e IPv4 per il dominio. Il motivo per cui mi dice "risposta non autorevole" è perché sto usando un server ricorsivo per la query.

Ricerca DNS inversa

Se hai un indirizzo IP e ti serve il nome di dominio, puoi fare una ricerca DNS inversa. Funziona come nell'esempio precedente, ma al contrario, come avrai intuito:

C:\Users\username>nslookup 162.243.68.201

Comando set

Supponiamo che tu voglia trovare il nameserver di un dominio o impostare un parametro specifico nella riga di comando. Per farlo, puoi usare il comando set di Windows. Ecco un esempio:

C:\Users\username>nslookup

>set q=ns

>dnsmadeeasy.com

(premi invio dopo ogni comando)

Il risultato dovrebbe essere simile a questo:

Ricerca di record DNS

Puoi utilizzare i comandi nslookup e set anche per verificare o risolvere i problemi dei record DNS del tuo dominio. La procedura è identica all'esempio precedente, ma devi specificare quale record vuoi interrogare. Grazie a queste informazioni potrai risolvere con rapidità eventuali errori o problemi. Nella schermata in basso, ho eseguito una ricerca per i record MX, PTR e SOA, ma ovviamente puoi cercare anche altro.

C:\Users\username>nslookup

>set q=mx

>dnsmadeeasy.com

(premi invio dopo ogni comando)

Consiglio: se stai controllando più tipi di record, non hai bisogno di digitare "nslookup" per ognuno di questi. Dopo il comando iniziale di nslookup, puoi eseguire i comandi set per ogni record. Questo vale anche se inizi a verificare i record di un altro dominio.

Risultati del comando dei record DNS - Definizioni

  • Responsible mail addr – Rappresenta l'email dell'amministratore del dominio
  • Serial - È il numero di serie del file di zona
  • Refresh - È il tempo che un server DNS secondario impiega per richiedere nuove informazioni se il numero di serie del server primario è cambiato
  • Retry – Se un server primario non risponde a una richiesta, si riconnetterà entro questo intervallo di tempo
  • Expire - Tempo di scadenza della cache DNS secondaria
  • Default TTL – Indica per quanto tempo un record rimane memorizzato nella cache prima di essere aggiornato

Consiglio: potrebbe essere utile cancellare la cache DNS prima di eseguire i comandi. Per farlo, digita: ipconfig/flushdns e poi premi invio. Ora la cache dovrebbe essere cancellata.

Comando di debug DNS

Per conoscere altri dettagli sul DNS del tuo dominio, puoi utilizzare il comando debug. Questo comando ti fornisce le informazioni sull'intestazione delle richieste del server DNS (vedi schermata sotto).

C:\Users\username>nslookup

>set debug

>example.com

Comando Ping

Per la diagnostica di rete, in CMD puoi eseguire un comando ping. Un ping misura la latenza di una connessione per una posizione target. Per dimostrazione, eseguo ora un test ping utilizzando 8.8.8.8, l'indirizzo DNS pubblico di Google.

C:\Users\username>Ping 8.8.8.8

Questo è il tempo di andata e ritorno, impiegato per ottenere una risposta dal server a cui è stato inviato il ping.

Comando Traceroute

Un altro comando utile per la diagnostica della rete è il comando traceroute. Un traceroute traccia il percorso di un pacchetto, dal punto di partenza alla destinazione. Questa funzionalità è utile soprattutto per risolvere i problemi di connettività. Nella seguente illustrazione, eseguirò un traceroute per il nome di dominio www.example.com e per il suo indirizzo IP.

C:\Users\username>tracert 127.0.0.1

C:\Users\username>tracert www.example.com

Il comando verifica il percorso seguito dai pacchetti per arrivare a destinazione. Le varie fermate indicate sono chiamate anche hops (salti). Oltre al numero di hops, puoi vedere il tempo di risoluzione della query. Queste informazioni possono aiutarti a migliorare la velocità del tuo DNS o a identificare i router problematici.

Consiglio: il Prompt dei comandi conserva la cronologia dei comandi recenti. Se vuoi vedere un comando inserito in precedenza nella sessione, premi il tasto freccia su per scorrerli. Guarda l'esempio della GIF qui sotto per capire come funziona.

Comandi DNS per Windows PowerShell

Se Windows PowerShell è la tua utilità preferita, questa è la sezione per te. Questi sono gli equivalenti PowerShell dei comandi Windows sopra indicati:

Nslookup – Resolve-DnsName in PowerShell

Nslookup in PowerShell = Resolve-DnsName

PS C:\Users\username>Resolve-DnsName dnsmadeeasy.com (o C:\Users\username>Resolve-DnsName 162.243.68.201)

Consiglio: per risparmiare tempo in PowerShell, digita le prime lettere di un cmdlet e poi premi Tab per la compilazione automatica del resto. Ad esempio, se digiti "reso" e poi premi tab (reso + tab), PowerShell visualizzerà Resolve-DnsName. La procedura è uguale per altri cmdlet come Test-Connection. Inizia a digitare "test-con" e poi premi il tasto tab per visualizzare Test-Connection, ecc."

Ricerca di record DNS in Windows PowerShell

Per le ricerche dei record PowerShell utilizza il cmdlet Resolve-DnsName. Per specificare il tipo di record, devi aggiungere "-type" per completare il cmdlet.

PS C:\Users\username>Resolve-DnsName dnsmadeeasy.com -Type MX (o altro record a tua scelta).

Nota che quando ho inserito -Type o -type, il cmdlet è stato eseguito allo stesso modo, quindi non fa distinzione tra maiuscole o minuscole

Comando Ping in PowerShell

Ping in PowerShell = Test-Connection

PS C:\Users\username>Test-Connection dnsmadeeasy.com

I risultati sembrano diversi, ma vengono comunque visualizzati l'origine (nome del computer) e i salti (hops), oltre al tempo impiegato per ricevere una risposta.

Traceroute in PowerShell

Tracert in PowerShell = tracert – yes, questa volta il cmdlet ha lo stesso nome del comando CMD.

PS C:\Users\username>tracert example.com

Strumento di ricerca DNS

Per risolvere i problemi DNS sono disponibili anche ottime risorse online. Questi strumenti sono particolarmente utili perché sono accessibili ovunque e su tutti i dispositivi. Ad esempio, lo strumento DNS Lookup di Constellix (nostra consociata) può recuperare i record DNS ed eseguire controlli in base alla posizione geografica. Effettuerà inoltre una query su qualsiasi nameserver specificato. I record supportati sono A, AAAA, CNAME, MX, TXT, NS, SOA e SRV.

L'utilizzo dello strumento DNS Lookup di Constellix offre anche altri vantaggi. È possibile eseguire controlli su diversi domini e/o nameserver nella stessa sessione. I risultati si possono filtrare per dominio, tipo di record, resolver o posizione e puoi espandere o minimizzare ogni verifica. Puoi anche copiare l'URL dei risultati e inviarlo via email al tuo team, rendendo tutto più semplice e veloce.

Una sola shell per ogni problema

Con le opzioni mostrate sopra puoi verificare il tuo DNS e risolvere vari problemi. Punti chiave: Il Prompt dei comandi, PowerShell e gli strumenti DNS online ti forniscono nameserver, istruzioni di record e altre informazioni DNS, ma ognuno funziona in modo diverso. CMD utilizza comandi a riga singola, mentre PowerShell utilizza i cmdlet e può eseguire comandi batch. Risorse come lo strumento online DNS Lookup di Constellix eseguono controlli in base ai dati che inserisci.

Naturalmente, queste istruzioni non sono minimamente paragonabili a una guida completa per il Prompt dei comandi o per PowerShell. Una guida completa ti offre molto di più. Ma qui di seguito ti indichiamo alcuni link utili per approfondire la tua conoscenza di entrambe le utilità.

Se ti è piaciuto questo articolo, potresti trovare utili queste risorse:

Elenco dei comandi CMD di Windows

Comando Nslookup

Elenco cmdlet di PowerShell

Introduzione a Windows PowerShell

UP NEXT
pki

3 Surprising Uses of PKI in Big Companies and How to Ensure They Are all Secure

5 Min