Solução de problemas de servidores DNS

Experimente nosso Agente virtual, ele ajuda a identificar e corrigir rapidamente problemas comuns de DNS.

Este artigo discute como solucionar problemas em servidores DNS.

Verificar configuração de IP

  1. Execute ipconfig /all em um prompt de comando e verifique o endereço IP, a máscara de sub-rede e o gateway padrão.

  2. Confira se o servidor DNS é autoritativo para o nome pesquisado. Se for, veja Verificação de problemas com dados autoritativos.

  3. Execute o comando a seguir:

    nslookup <name> <IP address of the DNS server>
    

    Por exemplo:

    nslookup app1 10.0.0.1
    

    Se a resposta for uma falha ou tempo limite excedido, veja Verificação de problemas de recursividade.

  4. Limpe o cache do resolvedor. Para fazer isso, execute este comando em um Prompt de Comando como administrador:

    dnscmd /clearcache
    

    Outra opção é executar este cmdlet em uma janela do PowerShell como administrador:

    Clear-DnsServerCache
    
  5. Repita a Etapa 3.

Corrigir problemas do servidor DNS

Log de eventos

Analise os seguintes logs para ver se há erros registrados:

  • Aplicativo

  • Sistema

  • Servidor DNS

Testar usando a consulta nslookup

Execute o comando a seguir e verifique se os computadores clientes estão conseguindo acessar o servidor DNS.

nslookup <client name> <server IP address>
  • Se o resolvedor retornar o endereço IP do cliente, significa que o servidor não tem problema.

  • Se o resolvedor retornar uma resposta "Falha do servidor" ou "Consulta recusada", a zona provavelmente está pausada ou o servidor possivelmente está sobrecarregado. Para saber se ele está em pausa verifique a guia Geral das propriedades da zona no console DNS.

Se o resolvedor retornar uma resposta "Solicitação ao servidor excedeu o tempo limite" ou "Servidor não responde", o serviço DNS provavelmente não está executando. Tente reiniciar o serviço do servidor DNS digitando isto em um prompt de comando no servidor:

net start DNS

Se o problema ocorrer quando o serviço estiver em execução, o servidor pode não estar escutando o endereço IP que você usou na consulta nslookup. No console DNS, na guia Interfaces da página de propriedades do servidor, os administradores podem restringir um servidor DNS para escutar apenas os endereços selecionados. Se o servidor DNS foi configurado para limitar o serviço a uma lista específica dos endereços IP configurados, é possível que o endereço IP usado para contatar o servidor DNS não esteja na lista. Tente usar um endereço IP diferente que está na lista ou adicione o endereço IP à lista.

Em casos raros, o servidor DNS pode ter uma configuração avançada de segurança ou de firewall. Se o servidor estiver em outra rede que só pode ser acessada por meio de um host intermediário (como um roteador de filtragem de pacotes ou servidor proxy), o servidor DNS poderá usar uma porta não padrão para escutar e receber solicitações do cliente. Por padrão, o nslookup envia consultas para servidores DNS na porta UDP 53. Portanto, se o servidor DNS estiver usando outra porta, as consultas nslookup falharão. Se você acha que esse pode ser o problema, verifique se um filtro intermediário está sendo usado intencionalmente para bloquear o tráfego em portas DNS conhecidas. Se não estiver, tente mudar os filtros de pacote ou as regras de porta no firewall para permitir o tráfego na porta UDP/TCP 53.

Verificação de problemas com dados autoritativos

Verifique se o servidor que retorna a resposta incorreta é um servidor primário da zona (o servidor primário padrão da zona ou um servidor que usa a integração do Active Directory para carregar a zona) ou um servidor que está hospedando uma cópia secundária da zona.

Se o servidor for um servidor primário

A causa do problema pode ser erro na inserção de dados na zona pelos usuários. Também pode ser que um problema esteja afetando a replicação do Active Directory ou a atualização dinâmica.

Se o servidor estiver hospedando uma cópia secundária da zona

  1. Examine a zona no servidor primário (o servidor do qual este servidor extrai as transferências de zona).

    Observação

    Para saber qual é o servidor primário, no console DNS, examine as propriedades da zona secundária.

    Se o nome não estiver correto no servidor primário, pule para a Etapa 4.

  2. Se o nome estiver correto no servidor primário, verifique se o número de série no servidor primário é menor ou igual ao número de série no servidor secundário. Se for, modifique o servidor primário ou o servidor secundário para que o número de série no servidor primário fique maior que o número de série no servidor secundário.

  3. No servidor secundário, force uma transferência de zona de dentro do console DNS ou execute o comando:

    dnscmd /zonerefresh <zone name>
    

    Por exemplo, se a zona for corp.contoso.com, insira: dnscmd /zonerefresh corp.contoso.com.

  4. Analise o servidor secundário novamente para ver se a zona foi transferida corretamente. Se não foi, você provavelmente tem um problema de transferência de zona. Para obter mais informações, veja Problemas de transferência de zona.

  5. Se a zona foi transferida corretamente, confira se agora os dados estão corretos. Se não estiverem, os dados estão incorretos na zona primária. A causa do problema pode ser erro na inserção de dados na zona pelos usuários. Também pode ser que um problema esteja afetando a replicação do Active Directory ou a atualização dinâmica.

Verificação de problemas de recursividade

Para que a recursividade funcione, todos os servidores DNS usados no caminho de uma consulta recursiva devem conseguir responder e encaminhar os dados corretos. Se não conseguirem, as consultas recursivas poderão falhar por qualquer um destes motivos:

  • A consulta atinge o tempo limite antes de ser concluída.

  • Um servidor usado na consulta não responde.

  • Um servidor usado na consulta forneceu dados incorretos.

Inicie a solução de problemas pelo servidor que foi usado na consulta original. Verifique se esse servidor encaminha consultas para outro servidor: no console DNS, nas propriedades do servidor, examine a guia Encaminhadores. Se a caixa de seleção Habilitar encaminhadores estiver marcada e mostrar um ou mais servidores, esse servidor está encaminhando as consultas.

Se esse servidor estiver encaminhando consultas para outro servidor, confira se há problemas que afetam o servidor que está recebendo as consultas. Para verificar se há problemas, veja Verificar problemas do servidor DNS. Nesta seção, se você vir instruções para executar uma tarefa no cliente, execute-a no servidor.

Se o servidor estiver íntegro e conseguindo encaminhar consultas, repita esta etapa para examinar o servidor que está recebendo as consultas.

Se esse servidor não estiver encaminhando consultas para outro servidor, teste se ele consegue consultar um servidor raiz. Para fazer isso, execute o seguinte comando:

nslookup
server <IP address of server being examined>
set q=NS
  • Se o resolvedor retornar o endereço IP do servidor raiz, provavelmente há uma delegação com falha entre o servidor raiz e o nome ou o endereço IP que você está tentando resolver. Siga o procedimento Testar delegação com falha para determinar em que ponto está a falha.

  • Se o resolvedor retornar uma resposta "Solicitação ao servidor excedeu o tempo limite", verifique se as dicas de raízes apontam para servidores raiz em funcionamento. Para fazer isso, use o procedimento Para exibir as atuais dicas de raízes. Se as dicas de raízes apontarem para servidores raiz em funcionamento, pode haver um problema de rede ou o servidor pode estar usando uma configuração de firewall avançada que impede que o resolvedor consulte o servidor, conforme descrito na seção Verificar problemas do servidor DNS. Também é possível que o tempo limite por padrão de recursividade seja muito curto.

Testar delegação com falha

Veja o procedimento a seguir e inicie os testes consultando um servidor raiz válido. O teste é um processo que consulta todos os servidores DNS desde o raiz até o servidor que você suspeita que esteja com a delegação com falha.

  1. No prompt de comando do servidor que você está testando, insira:

    nslookup
    server <server IP address>
    set norecursion
    set querytype= <resource record type>
    <FQDN>
    

    Observação

    O tipo de registro de recurso é aquele que você estava consultando na consulta original, e o FQDN é aquele para o qual você estava consultando (interrompido por um período).

  2. Se a resposta incluir uma lista de registros de recursos "NS" e "A" para servidores delegados, repita a Etapa 1 para cada servidor e use o endereço IP dos registros de recurso "A" como o endereço IP do servidor.

    • Se a resposta não contiver um registro de recurso "NS", você terá encontrado uma delegação com falha.

    • Se a resposta contiver registros de recursos "NS", mas nenhum "A", insira definir recursividade e consulte individualmente os registros de recursos "A" dos servidores listados nos registros "NS". Se você não encontrar pelo menos um endereço IP válido de um registro de recurso "A" para cada registro de recurso "NS" em uma zona, terá encontrado uma delegação com falha.

  3. Se você encontrar uma delegação com falha, para corrija-la, use um endereço IP válido de um servidor DNS correto para a zona delegada e adicione ou atualize um registro de recurso "A" na zona pai.

Para exibir as atuais dicas de raízes

  1. Inicie o console DNS.

  2. Adicione ou conecte-se ao servidor DNS que falhou na consulta recursiva.

  3. Clique com o botão direito do mouse e selecione Propriedades.

  4. Clique em Dicas de raízes.

Teste a conectividade básica dos servidores raiz.

  • Se as dicas de raízes estiverem configuradas corretamente, verifique se o servidor DNS usado na resolução de nomes com falha consegue executar ping nos servidores raiz usando o endereço IP.

  • Se os servidores raiz não responderem ao ping do endereço IP, talvez os endereços IP dos servidores raiz tenham sido alterados. No entanto, é raro ver reconfigurações de servidores raiz.

Processo de transferência de zona

Execute o comando:

  • Examine o Visualizador de Eventos do servidor DNS primário e do secundário.

  • Verifique se o servidor primário não está enviando a transferência por segurança.

  • No console DNS, analise a guia Transferências de Zona das propriedades de zona. Se o servidor estiver restringindo as transferências de zona para determinados servidores, como aqueles listados na guia Servidores de Nome das propriedades da zona, verifique se o servidor secundário está nessa lista. Confira se o servidor está configurado para enviar transferências de zona.

  • Verifique se há problemas no servidor primário seguindo as etapas na seção Verificar problemas do servidor DNS. Quando for solicitado que você execute uma tarefa no cliente, execute a tarefa no servidor secundário.

  • Verifique se o servidor secundário está executando outra implementação de servidor DNS, como por exemplo, BIND. Se estiver, a causa do problema pode ser:

    • O servidor primário do Windows pode estar configurado para enviar transferências velozes de zona, mas o servidor secundário de terceiros não suporta transferências velozes de zona. Se esse for o caso, desabilite as transferências velozes de zona no servidor primário: no console DNS, na guia Avançado das propriedades do servidor, marque a caixa de seleção Habilitar Associar secundários.

    • Se uma zona de pesquisa direta no servidor Windows contiver um tipo de registro (por exemplo, um registro SRV) que o servidor secundário não suporta, o servidor secundário poderá ter problemas para extrair a zona.

Verifique se o servidor secundário está executando outra implementação de servidor DNS, como por exemplo, BIND. Nesse caso, é possível que a zona no servidor primário inclua registros de recursos incompatíveis que o Windows não reconhece.

Se o servidor principal ou o secundário estiver executando outra implementação de servidor DNS, examine os dois servidores para conferir se eles suportam os mesmos recursos. Verifique o servidor Windows no console DNS, guia Avançado da página de propriedades do servidor. Além da caixa Habilitar Associar secundários, essa página inclui a lista suspensa Verificação de nome. Isso permite que você selecione a aplicação da estrita conformidade com RFC para caracteres em nomes DNS.