Disabilitare la memorizzazione nella cache sul lato client DNS nei client DNSDisable DNS client-side caching on DNS clients

Windows contiene una cache DNS sul lato client.Windows contains a client-side DNS cache. La funzionalità di memorizzazione nella cache DNS sul lato client può generare una falsa impressione che il bilanciamento del carico "round robin" DNS non sia in corso dal server DNS al computer client Windows.The client-side DNS caching feature may generate a false impression that DNS "round robin" load balancing is not occurring from the DNS server to the Windows client computer. Quando si usa il comando ping per cercare lo stesso nome di dominio A record, il client può usare lo stesso indirizzo IP.When you use the ping command to search for the same A-record domain name, the client may use the same IP address.

Come disabilitare la memorizzazione nella cache sul lato clientHow to disable client-side caching

Per arrestare la memorizzazione nella cache DNS, eseguire uno dei comandi seguenti:To stop DNS caching, run either of the following commands:

net stop dnscache
sc servername stop dnscache

Per disabilitare la cache DNS in modo permanente in Windows, usare lo strumento controller di servizio o lo strumento Servizi per impostare il tipo di avviodel servizio client DNS su disabilitato.To disable the DNS cache permanently in Windows, use the Service Controller tool or the Services tool to set the DNS Client service startup type to Disabled. Si noti che il nome del servizio client DNS di Windows può essere visualizzato anche come "dnscache".Note that the name of the Windows DNS Client service may also appear as "Dnscache."

Nota

Se la cache del resolver DNS viene disattivata, le prestazioni complessive del computer client diminuiscono e il traffico di rete per le query DNS aumenta.If the DNS resolver cache is deactivated, the overall performance of the client computer decreases and the network traffic for DNS queries increases.

Il servizio client DNS ottimizza le prestazioni della risoluzione dei nomi DNS archiviando in memoria i nomi risolti in precedenza.The DNS Client service optimizes the performance of DNS name resolution by storing previously resolved names in memory. Se il servizio client DNS è disattivato, il computer può comunque risolvere i nomi DNS usando i server DNS della rete.If the DNS Client service is turned off, the computer can still resolve DNS names by using the network's DNS servers.

Quando il resolver di Windows riceve una risposta, positiva o negativa, a una query, aggiunge tale risposta alla cache e quindi crea un record di risorse DNS.When the Windows resolver receives a response, either positive or negative, to a query, it adds that response to its cache and thereby creates a DNS resource record. Il resolver controlla sempre la cache prima di eseguire una query su qualsiasi server DNS.The resolver always checks the cache before it queries any DNS server. Se un record di risorse DNS si trova nella cache, il resolver usa il record dalla cache anziché eseguire una query su un server.If a DNS resource record is in the cache, the resolver uses the record from the cache instead of querying a server. Questo comportamento accelera le query e riduce il traffico di rete per le query DNS.This behavior expedites queries and decreases network traffic for DNS queries.

È possibile utilizzare lo strumento Ipconfig per visualizzare e scaricare la cache del resolver DNS.You can use the ipconfig tool to view and flush the DNS resolver cache. Per visualizzare la cache del resolver DNS, eseguire il comando seguente al prompt dei comandi:To view the DNS resolver cache, run the following command at a command prompt:

ipconfig /displaydns 

Questo comando Visualizza il contenuto della cache del resolver DNS, inclusi i record di risorse DNS precaricati dal file host e tutti i nomi di cui è stata eseguita una query di recente che sono stati risolti dal sistema.This command displays the contents of the DNS resolver cache, including the DNS resource records that are preloaded from the Hosts file and any recently queried names that were resolved by the system. Dopo un certo periodo di tempo, il resolver Elimina il record dalla cache.After some time, the resolver discards the record from the cache. Il periodo di tempo è specificato dal valore TTL (time to Live) associato al record di risorse DNS.The time period is specified by the Time to Live (TTL) value that is associated with the DNS resource record. È possibile svuotare la cache anche manualmente.You can also flush the cache manually. Dopo lo scaricamento della cache, il computer deve eseguire di nuovo la query sui server DNS per tutti i record di risorse DNS risolti in precedenza dal computer.After you flush the cache, the computer must query DNS servers again for any DNS resource records that were previously resolved by the computer. Per eliminare le voci nella cache del resolver DNS, eseguire ipconfig /flushdns al prompt dei comandi.To delete the entries in the DNS resolver cache, run ipconfig /flushdns at a command prompt.

Uso del registro di sistema per controllare il tempo di memorizzazione nella cacheUsing the registry to control the caching time

Importante

Segui con attenzione la procedura descritta in questa sezione.Follow the steps in this section carefully. Se le modifiche al Registro di sistema vengono apportate in modo non corretto, possono verificarsi problemi gravi.Serious problems might occur if you modify the registry incorrectly. Prima di modificarlo, esegui il backup del Registro di sistema per il ripristino nel caso in cui si verifichino problemi.Before you modify it, back up the registry for restoration in case problems occur.

L'intervallo di tempo durante il quale una risposta positiva o negativa viene memorizzata nella cache dipende dai valori delle voci nella chiave del registro di sistema seguente:The length of time for which a positive or negative response is cached depends on the values of entries in the following registry key:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DNSCache\ParametersHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DNSCache\Parameters

Il valore TTL per le risposte positive è minore dei valori seguenti:The TTL for positive responses is the lesser of the following values:

  • Numero di secondi specificati nella risposta alla query ricevuta dal resolverThe number of seconds specified in the query response the resolver received

  • Valore dell'impostazione del registro di sistema MaxCacheTtl .The value of the MaxCacheTtl registry setting.

Nota

  • Il valore TTL predefinito per le risposte positive è 86.400 secondi (1 giorno).The default TTL for positive responses is 86,400 seconds (1 day).
  • Il valore TTL per le risposte negative è il numero di secondi specificato nell'impostazione del registro di sistema MaxNegativeCacheTtl.The TTL for negative responses is the number of seconds specified in the MaxNegativeCacheTtl registry setting.
  • Il valore TTL predefinito per le risposte negative è 900 secondi (15 minuti).The default TTL for negative responses is 900 seconds (15 minutes). Se non si desidera che le risposte negative vengano memorizzate nella cache, impostare l'impostazione del registro di sistema MaxNegativeCacheTtl su 0.If you do not want negative responses to be cached, set the MaxNegativeCacheTtl registry setting to 0.

Per impostare il tempo di memorizzazione nella cache in un computer client:To set the caching time on a client computer:

  1. Avviare l'editor del registro di sistema (Regedit. exe).Start Registry Editor (Regedit.exe).

  2. Individuare e quindi fare clic sulla chiave seguente nel registro di sistema:Locate and then click the following key in the registry:

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Dnscache\ParametersHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Dnscache\Parameters

  3. Scegliere Nuovo dal menu modifica, fare clic su valore DWORD, quindi aggiungere i valori del registro di sistema seguenti:On the Edit menu, point to New, click DWORD Value, and then add the following registry values:

    • Nome valore: MaxCacheTtlValue name: MaxCacheTtl

      Tipo di dati: REG_DWORDData type: REG_DWORD

      Dati valore: Valore predefinito di 86400 secondi.Value data: Default value 86400 seconds.

      Se si riduce il valore TTL massimo nella cache DNS del client a 1 secondo, si ottiene l'aspetto che la cache DNS sul lato client è stata disabilitata.If you lower the Maximum TTL value in the client's DNS cache to 1 second, this gives the appearance that the client-side DNS cache has been disabled.

    • Nome valore: MaxNegativeCacheTtlValue name: MaxNegativeCacheTtl

      Tipo di dati: REG_DWORDData type: REG_DWORD

      Dati valore: Valore predefinito di 900 secondi.Value data: Default value 900 seconds.

      Impostare il valore su 0 se non si desidera che le risposte negative vengano memorizzate nella cache.Set the value to 0 if you do not want negative responses to be cached.

  4. Digitare il valore che si desidera utilizzare, quindi fare clic su OK.Type the value that you want to use, and then click OK.

  5. Chiudere l'Editor del Registro di sistema.Quit Registry Editor.