Site icon RDR-IT

Manage the DNS cache on Windows Server

In this “tutorial”, I will give you some PowerShell cmdlets to manage your DNS server cache on Windows Server.

To be more precise, we will see 4 cmdlet PowerShell * -DnsServerCache cmdlets.

Show-DnsServerCache

The first command displays the DNS cache:

Show-DnsServerCache

The output of the command gives all DNS records cached on the server.

In console output, it is not necessarily obvious, the capture below was made on a domain controller server and you will notice that there is no cache for the zones managed by the server.

To more easily use the cache, especially if you need to search for a record, it is possible to output the command to a file using> “filename.txt”.

Show-DnsServerCache > dns_cache.txt

Since the output is sent to a file, the command does not return anything to the screen, on the other hand in the folder, I find my file.

The txt file is easier to use when needed:

Clear-DnsServerCache

Now, we will see the command : Clear-DnsServerCache, as its name suggests, it cleans the server’s DNS cache.

This command does not have the same effect as the ipconfig / flushdns command, it acts at the level of the DNS client of the server and not at the level of the DNS server itself.

To purge / clean the DNS server cache enter the command:

Clear-DnsServerCache

Confirm the operation

After confirmation, the command does not return anything, on the other hand you can use the Show-DnsServerCache command to see the result.

Get-DnsServerCache

This Cmdlet (Get-DnsServerCache) allows you to display the DNS cache configuration on the server:

Get-DnsServerCache

As we can see, the DNS cache settings on the server are few, there are two particularly interesting settings to configure which are:

Set-DnsServerCache

The cmdlet Set-DnsServerCache allows you to configure the parameters that are returned with the cmdlet Get-DnsServerCache.

To upgrade the cache to 20MB:

Set-DnsServerCache -MaxKBSize 20480

The command has no particular return, use the Get-DnsServerCache cmdlet, to check the parameters.


Hope this tutorial helps you manage your DNS server cache.

Exit mobile version