PowerEdge: Site inacessível em um ambiente Windows com nomes de domínio internos e externos idênticos
摘要: Este artigo apresenta informações sobre três problemas que podem surgir em um ambiente no qual os nomes de domínio do Active Directory e da Internet são idênticos.
症状
Em todos os exemplos abaixo, o domínio do AD e o domínio registrado se chamam domain.com, e há um site da empresa chamado www.domain.com. Os nomes de domínio idênticos criam um ambiente DNS dividido (ou split-brain). Nessa situação, os namespaces DNS internos e externos têm o mesmo nome, mas são separados.
Problema 1: Um site da empresa hospedado externamente está inacessível de dentro do escritório.
Esse é o problema mais comum em um ambiente DNS dividido. Clients que ingressaram no domínio não conseguem acessar o site da empresa, ou outro recurso conectado à Internet de propriedade da empresa, de dentro do escritório. As máquinas fora do escritório não têm problemas para acessar o site.
Problema 2. Um site público hospedado internamente está inacessível de dentro do escritório.
Essa é uma variação do problema 1 anterior. A diferença é que o site é hospedado internamente, seja atrás de um firewall na rede interna da empresa ou em uma DMZ. Ele deveria estar acessível a usuários internos e externos, mas os usuários internos não conseguem acessá-lo. Os usuários externos não relatam problemas.
Problema 3: O site carrega incompletamente ou não carrega depois da solução do problema 1 ou 2.
O site pode carregar incompletamente ou pode nem carregar para usuários internos. Partes do site podem não ser exibidas, e links do site podem não funcionar. Usuários externos podem acessar o site sem problemas.
原因
Problema 1. Um site da empresa hospedado externamente está inacessível de dentro do escritório.
É possível entender o motivo para isso acontecer examinando o que acontece quando um usuário interno tenta navegar no site da empresa:
- O computador do usuário consulta o servidor DNS do domínio, normalmente um controlador de domínio (DC), para obter o endereço IP de
www.domain.com. - O DC hospeda uma zona de pesquisa direta chamada
domain.com; portanto, ele procura nessa zona um registro de host chamadowww. - O DC não encontra um registro de host chamado
wwwe, como ele é a autoridade para a zonadomain.com, ele não encaminha a consulta. - O DC responde ao computador do usuário, dizendo que não conseguiu encontrar um endereço para
www.domain.com. - O navegador no computador do usuário mostra o erro "Page cannot be displayed" ou um erro semelhante.
O problema surge porque um servidor DNS que é autoridade não envia consultas de nomes em suas zonas para outros servidores DNS. Ele exibirá uma resposta "not found" se não houver nenhum registro correspondente a determinada consulta. Neste exemplo, há outros servidores DNS com o registro correto: os servidores DNS que hospedam a zona pública domain.com . Isso fica evidente pelo fato de que máquinas fora do escritório podem acessar o site. No entanto, as consultas de máquinas internas não são enviadas para esse servidor.
Problema 2: Um site público hospedado internamente fica inacessível de dentro do escritório.
O motivo para esse problema é semelhante ao do problema 1. Nesse caso, os usuários internos podem resolver corretamente o nome do site para seu endereço IP público. No entanto, eles ainda não conseguem acessar o site devido ao modo de configuração do firewall. Ele espera que os usuários da rede interna acessem o site usando o endereço privado em vez do endereço público.
Problema 3: O site carrega incompletamente ou não carrega depois da resolução do problema 1 ou 2.
Isso poderá acontecer se o código do site redirecionar navegadores de www.domain.com para domain.com. Os links internos também podem se referir ao site como domain.com em vez de www.domain.com. Os mesmos sintomas são vistos em máquinas internas, independentemente de o site estar hospedado interna ou externamente.
Nesse caso, o problema é um pouco mais complexo. Para que as máquinas resolvam domain.com como um endereço IP, deve haver um registro de host em branco na zona domain.com do DNS. O nome desse registro é exibido como (igual ao da pasta principal) no console DNS do Windows. No entanto, o AD usa registros de host em branco na zona domain.com para representar os DCs do domínio domain.com . Se houver registros de host em branco adicionais na zona domain.com , poderão acontecer atrasos ou problemas de autenticação.
Pelos motivos acima, não é possível resolver esse problema usando apenas o DNS. A criação de um registro de host em branco com o endereço IP do site resolve o problema de acesso ao site para usuários internos apenas de modo intermitente. Os registros de host em branco existentes que se referem a DCs interferem nisso, devido à funcionalidade de DNS de rodízio. Como esses registros são registrados automaticamente pelos DCs, se forem removidos da zona do DNS, eles reaparecerão regularmente.
解决方案
Problema 1. Um site da empresa hospedado externamente está inacessível de dentro do escritório.
A solução para esse problema é simples. Crie um registro de host (A) chamado www na zona domain.com do DC e dê a esse registro o endereço IP do site. Assim, as máquinas que consultam esse servidor DNS receberão a resposta correta e poderão navegar no site.
Problema 2: Um site público hospedado internamente está inacessível de dentro do escritório.
Também há uma solução simples para isso. Crie um registro de host chamado www na zona domain.com do DC, mas dê ao registro o endereço IP privado do site. As máquinas internas resolverão o nome do site como esse endereço privado, enquanto as máquinas externas continuarão resolvendo o nome como o endereço público do site.
Problema 3: O site carrega incompletamente ou não carrega depois da solução do problema 1 ou 2.
A maneira mais simples de resolver esse problema é modificar o código do site para remover o redirecionamento. Além disso, os links internos devem se referir ao site como www.domain.com em vez de domain.com. Se não for possível modificar o código, a única outra opção para resolver o problema será renomear o domínio do AD. Essa pode ser uma tarefa complexa, dependendo do tamanho e da complexidade do ambiente.
Nota: É preciso acessar o site usando o nome www.domain.com em todos esses exemplos. Acessar o site usando o nome domain.com não funcionará ou funcionará apenas de modo intermitente.
其他信息
As práticas recomendadas para o design de domínio do Active Directory (AD) desaconselham o uso de um nome de domínio registrado como nome de um domínio do AD. Há duas alternativas sugeridas para isso:
- Usar um sufixo DNS não público (
.localou.lan, por exemplo) no nome de domínio do AD. - Tornar o domínio do AD um subdomínio do domínio registrado (
corp.domain.com, por exemplo).
Isso só será possível se o domínio do AD ainda não tiver sido criado ou se uma operação de renomeação estiver em andamento.