Como os controladores de domínio estão localizados no Windows
Este artigo descreve o mecanismo usado pelo Windows para localizar um controlador de domínio em um domínio baseado no Windows.
Observação
Este artigo se aplica ao Windows 2000. O suporte ao Windows 2000 termina em 13 de julho de 2010. O Centro de Soluções de Fim de Suporte do Windows 2000 é um ponto de partida para planejar sua estratégia de migração do Windows 2000. Para obter mais informações, consulte a política de ciclo de vida Suporte da Microsoft.
Aplica-se a: Windows Server 2019, Windows Server 2016, Windows Server 2012 R2
Número de KB original: 247811
Resumo
Este artigo detalha o processo de localização de um domínio por seu nome no estilo DNS e seu nome de estilo simples (NetBIOS). O nome de estilo simples é usado para compatibilidade com versões anteriores. Em todos os outros casos, os nomes no estilo DNS devem ser usados como uma questão de política. Este artigo também aborda a solução de problemas do processo de localização do controlador de domínio.
Como o Localizador encontra um controlador de domínio
Esta sequência descreve como o Localizador encontra um controlador de domínio:
No cliente (o computador que está localizando o controlador de domínio), o Localizador é iniciado como uma RPC (chamada de procedimento remoto) para o serviço netlogon local. A chamada de API (interface de programação de aplicativo) do Localizador DsGetDcName é implementada pelo serviço Netlogon.
O cliente coleta as informações necessárias para selecionar um controlador de domínio. Em seguida, ele passa as informações para o serviço Netlogon usando a chamada DsGetDcName.
O serviço Netlogon no cliente usa as informações coletadas para procurar um controlador de domínio para o domínio especificado de duas maneiras:
Para um nome DNS, o Netlogon consulta o DNS usando o Localizador compatível com IP/DNS. Ou seja, dsGetDcName chama a chamada DnsQuery para ler os registros srv (recurso de serviço) e registros "A" do DNS depois que ele acrescenta o nome de domínio à cadeia de caracteres apropriada que especifica os registros SRV.
Uma estação de trabalho que está fazendo logon em uma DNS de consultas de domínio baseada no Windows para registros SRV no formulário geral:
_service._protocol.DnsDomainName
Os servidores do Active Directory oferecem o serviço LDAP (Protocolo de Acesso ao Diretório Leve) por meio do protocolo TCP. Assim, os clientes encontram um servidor LDAP consultando o DNS para obter um registro do formulário:
_ldap._tcp. DnsDomainName
Para um nome NetBIOS, o Netlogon executa a descoberta do controlador de domínio usando o Localizador compatível com o Microsoft Windows NT versão 4.0. Ou seja, usando o mecanismo específico do transporte, como WINS.
No Windows NT 4.0 e anterior, "discovery" é um processo para localizar um controlador de domínio para autenticação no domínio primário ou em um domínio confiável.
O serviço Netlogon envia um datagram para os computadores que registraram o nome. Para nomes de domínio do NetBIOS, o datagram é implementado como uma mensagem de emaillot. Para nomes de domínio DNS, o datagram é implementado como uma pesquisa UDP (Protocolo de Datagrama de Usuário) LDAP. (UDP é o protocolo de transporte de datagram sem conexão que faz parte do pacote de protocolos TCP/IP. O TCP é um protocolo de transporte orientado à conexão.)
Cada controlador de domínio disponível responde ao datagram para indicar que ele está operacional no momento e retorna as informações ao DsGetDcName.
O UDP permite que um programa em um computador envie um datagram para um programa em outro computador. O UDP inclui um número de porta de protocolo, que permite que o remetente distingue entre vários destinos (programas) no computador remoto.
- Cada controlador de domínio disponível responde ao datagram para indicar que ele está operacional no momento e retorna as informações ao DsGetDcName.
- O serviço Netlogon armazena em cache as informações do controlador de domínio para que as solicitações posteriores não precisem repetir o processo de descoberta. O cache dessas informações incentiva o uso consistente do mesmo controlador de domínio e uma exibição consistente do Active Directory.
Quando um cliente faz logon ou entra na rede, ele deve ser capaz de localizar um controlador de domínio. O cliente envia uma consulta de pesquisa DNS ao DNS para encontrar controladores de domínio, preferencialmente na sub-rede do próprio cliente. Assim, os clientes encontram um controlador de domínio consultando o DNS para obter um registro do formulário:
_LDAP._TCP.dc._msdcs.domainname
Depois que o cliente localiza um controlador de domínio, ele estabelece a comunicação usando o LDAP para obter acesso ao Active Directory. Como parte dessa negociação, o controlador de domínio identifica em qual site o cliente está com base na sub-rede IP desse cliente.
Se o cliente estiver se comunicando com um controlador de domínio que não está no site mais próximo (ideal), o controlador de domínio retornará o nome do site do cliente. Se o cliente já tentou encontrar controladores de domínio nesse site, o cliente usará o controlador de domínio que não é ideal. Por exemplo, o cliente envia uma consulta de pesquisa DNS ao DNS para encontrar controladores de domínio na sub-rede do cliente.
Caso contrário, o cliente fará uma pesquisa DNS específica do site novamente com o novo nome de site ideal. O controlador de domínio usa algumas das informações do serviço de diretório para identificar sites e sub-redes.
Depois que o cliente localizar um controlador de domínio, a entrada do controlador de domínio será armazenada em cache. Se o controlador de domínio não estiver no site ideal, o cliente liberará o cache após 15 minutos e descartará a entrada de cache. Em seguida, ele tenta encontrar um controlador de domínio ideal no mesmo site que o cliente.
Depois que o cliente estabelecer um caminho de comunicação para o controlador de domínio, ele poderá estabelecer as credenciais de logon e autenticação. E, se necessário para computadores baseados no Windows, ele pode configurar um canal seguro. Em seguida, o cliente está pronto para executar consultas normais e pesquisar informações no diretório.
O cliente estabelece uma conexão LDAP com um controlador de domínio para fazer logon. O processo de logon usa o Gerenciador de Contas de Segurança. O caminho de comunicação usa a interface LDAP e o cliente é autenticado por um controlador de domínio. Portanto, a conta do cliente é verificada e passada pelo Gerenciador de Contas de Segurança para o agente de serviço de diretório e, em seguida, para a camada de banco de dados e, finalmente, para o banco de dados no Mecanismo de Armazenamento Extensível (ESE).
Solução de problemas do processo de localizador de domínio
Para solucionar problemas do processo de localizador de domínio:
Verifique Visualizador de Eventos no cliente e no servidor. Os logs de eventos podem conter mensagens de erro indicando que há um problema. Para exibir Visualizador de Eventos, selecione Iniciar, aponte paraFerramentas Administrativas>de Programase selecione Visualizador de Eventos. Verifique o log do sistema no cliente e no servidor. Também marcar os logs do Serviço de Diretório no servidor e logs DNS no servidor DNS.
Verifique a configuração de IP usando o
ipconfig /all
comando em um prompt de comando.Use o utilitário Ping para verificar a conectividade de rede e a resolução de nomes. Ping o endereço IP e o nome do servidor. Você também pode querer pingar o nome do domínio.
Use a ferramenta Netdiag para determinar se os componentes de rede estão funcionando corretamente. Para enviar uma saída detalhada para um arquivo de texto, use o seguinte comando:
netdiag /v >test.txt
Examine o arquivo de log, procurando problemas e investigue todos os componentes implicados. Este arquivo também contém outros detalhes de configuração de rede.Para corrigir problemas menores, use a ferramenta Netdiag com a seguinte sintaxe:
netdiag /fix
.Use o
nltest /dsgetdc:domainname
comando para verificar se um controlador de domínio pode estar localizado para um domínio específico.Use a ferramenta para verificar se as
NSLookup
entradas DNS estão registradas corretamente no DNS. Verifique se os registros do host do servidor e os registros GUID SRV podem ser resolvidos.Por exemplo, para verificar o registro de registro, use os seguintes comandos:
nslookup servername. childofrootdomain. rootdomain.com
nslookup guid._msdcs. rootdomain.com
Se um desses comandos não tiver êxito, use um dos seguintes métodos para reregister registros com DNS:
- Para forçar o registro de registro do host, digite ipconfig /registerdns.
- Para forçar o registro do serviço do controlador de domínio, pare e inicie o serviço Netlogon.
Para detectar problemas do controlador de domínio, execute o utilitário DCdiag de um prompt de comando. O utilitário executa muitos testes para verificar se um controlador de domínio está sendo executado corretamente. Use este comando para enviar os resultados para um arquivo de texto:
dcdiag /v >dcdiag.txt
Use a ferramenta Ldp.exe para se conectar e associar ao controlador de domínio para verificar a conectividade LDAP apropriada.
Se você suspeitar que um controlador de domínio específico tem problemas, talvez seja útil ativar o log de depuração do Netlogon. Use o utilitário NLTest digitando este comando:
nltest /dbflag:0x2000ffff
. Em seguida, as informações são registradas na pasta Depuração no arquivo Netlogon.log.Se você ainda não isolou o problema, use o Monitor de Rede para monitorar o tráfego de rede entre o cliente e o controlador de domínio.
Referências
Para obter mais informações, confira o Kit de Recursos do Windows, Capítulo 10, "Diagnóstico do Active Directory, Solução de Problemas e Recuperação".
Comentários
https://aka.ms/ContentUserFeedback.
Brevemente: Ao longo de 2024, vamos descontinuar progressivamente o GitHub Issues como mecanismo de feedback para conteúdos e substituí-lo por um novo sistema de feedback. Para obter mais informações, veja:Submeter e ver comentários