Muitas vezes nos deparamos com problemas que ou não tem muita lógica(no Windows é comum isso ;-P) ou demoramos para achar a solução, e precisamos que a empresa funcione assim mesmo. Procuramos de um lado pra outro, reviramos logs, ou event viewers, e nada diz porque o problema ocorre.
Em uma empresa de um cliente onde a rede é controlada pelo Windows 2008: Domínio, DNS, DHCP, Certificados e etc. Começou a aparecer um problema meio que sem pé nem cabeça, mas que prejudica o funcionamento da rede:
1 2 3 4 5 6 7 8 |
- O DNS não resolve endereços! - Como assim? Não resolve nada? - Resolve os endereços do domínio local e da internet, mas não resolve alguns endereços da internet. - Quais? - Esse é o problema, não tem uma lógica. Um endereço ele resolve e outra hora não, ou não resolve e minutos depois passa a resolver. Não tem um padrão. |
Salvo as devidas proporções, esse foi o dialogo que tive com o Administrador Microsoft dessa empresa. E como os usuários viam muitas mensagens de : “Este endereço não pode ser resolvido” . Ele estava recebendo muitas reclamações sobre a internet e como o proxy é Linux(Squid) mas usa o DNS do Windows também estava com esse problema.
Como resolver se não se identifica a causa no sistema?
Simples use o Linux.
A “solução”, não foi definitiva pois ele ainda está procurando no sistema o que causa este erro, foi instalar no proxy o Bind, mas se eu apenas instalasse o Bind funcionaria perfeito pra internet mas não para os hosts e servidores locais do domínio (empresa.local no exemplo). O AD já tem o secundário dele, e não necessita de que o proxy seja mais um secundário. O que fazer?
Simples: Use a diretiva “forwarders” do Bind. A função dessa diretiva é redirecionar uma consulta para um servidor específico ANTES de pesquisar na estrutura da internet (Root Servers). Assim se o servidor consultado for o responsável por informações de um determinado domínio o Bind aceita as informações que ele passa, e se ele não tiver autoridade sobre o domínio consultado o Bind vai à internet.
Com isso se eu pesquiso ad.empresa.local o Bind vai primeiro ao servidor que está na “forwarders” e se ele responder que tem esse nome registrado o Bind pega essa resposta e repassa ao cliente. Porém se a pesquisa for um domínio como 82c.bd8.myftpupload.com o Bind vai primeiro ao servidor que está na “forwarders” e como nesse caso a resposta é negativa, o próprio Bind vai à internet e obtém o IP relacionado com esse nome e entrega para o cliente.
Assim mesmo que o DNS do Windows tenha problemas em resolver para fora, para dentro do domínio não apresenta problemas, os clientes não perdem as máquinas locais e sempre resolvem na internet.
Vamos parar de conversa e vamos aos fatos.
Instale o Bind:
root # apt-get install bind9
Entre no seu diretório de configuração:
root # cd /etc/bind
Edite o arquivo named.conf.options e acrescente as seguintes linhas dentro da seção options:
forwarders { 172.16.1.1; 172.16.1.2; };
Seu arquivo vai ficar mais ou menos assim:
1 2 3 4 5 6 |
options { directory "/var/cache/bind"; forwarders { 172.16.1.1; 172.16.1.2; }; auth-nxdomain no; # conform to RFC1035 listen-on-v6 { any; }; }; |
Pronto, agora é só reiniciar o Bind e deixar que ele faça seu trabalho como redirecionador de consultas e cache de nomes de internet.
Abraços e não se esqueçam de comentar, curtir nossa Página no Facebook e visitar nossos links de Livros em promoção com a nossa Parceira Brasport.