windows dns servidor de cache: esvazia o cache de DNS para uma única zona programaticamente

2

no bind9 eu posso usar o rndc flushname zone.tld de um shell.

No DNS do Windows mmc, posso selecionar a zona e excluí-la.

Com o dnscmd eu posso liberar todo o cache, mas eu preciso apenas limpar o cache de uma região de vez em quando.

É possível e como? TIA

    
por natxo asenjo 25.04.2013 / 09:06

2 respostas

3

DNSCmd.exe é usado para exibir e alterar as propriedades de servidores DNS, zonas e registros de recursos. Você pode encontrar a sintaxe detalhada aqui . Por mais que eu gostaria de dar a devida referência e explicação para isso, eu encontrei por googling aleatório, tentativa e erro: pesquisas em cache parecem ser armazenadas internamente em Zone chamado ..Cache, e cada zona em cache é apenas um nó em " ..Cache ", portanto, a opção certa de usar é / NodeDelete :

dnscmd dnsserver.local /NodeDelete ..Cache whatever.com [/Tree] [/f]

 /tree    Specifies to delete all of the child records.
 /f       Executes the command without asking for confirmation.

Ainda assim, seria legal se alguém pudesse encontrar "..cache" na documentação oficial do MS.

    
por 25.04.2013 / 18:05
3

Eu tenho medo de que, de forma programática, você precise recorrer a /clearcache .

dnscmd não tem essa funcionalidade incorporada e não há nada óbvio em a especificação da API que sugere que essa operação seja exposta

Você pode fazer isso a partir da GUI, embora eu duvide que seja de alguma ajuda. Para exibir e remover entradas armazenadas em cache de um servidor DNS do Windows:

  1. Abra o console de gerenciamento de DNS ( dnsmgmt.msc )
  2. Vá para o menu Visualizar e selecione Avançado
  3. Expanda a entrada do servidor DNS no painel esquerdo
  4. Expandir Pesquisas em cache
  5. Para remover um registro em cache ou uma zona inteira, basta clicar com o botão direito do mouse e escolher "Excluir"

Para os servidores autoritativos, você pode atualizar ou recarregar os dados da zona, dependendo do tipo de fonte.
Para servidores de nomes secundários para atualizar os dados da zona do servidor principal:

dnscmd dns1.domain.tld /zonerefresh my.zone.domain.tld

Para zonas integradas ao diretório ativo, recarregue os dados da zona do AD:

dnscmd dns1.domain.tld /zonereload my.zone.domain.tld

assumindo que o fqdn do seu servidor de dns é dns1.domain.tld. e my.zone.domain.tld. é o fqdn da zona

    
por 25.04.2013 / 09:13