Como funciona o serviço DNS – Domain Name System


Como funciona o serviço DNS – Domain Name System

 


Olá Amigos

 

Vou falar um pouco sobre o verdadeiro calcanhar de Aquiles “DNS”

Gostaria de lembrar que os principais problemas que vejo nos fóruns técnicos sobre Microsoft Exchange, Lync e Office 365 estão relacionados a falta de planejamento e conhecimento sobre o DNS.

 

 

O DNS (Domain Name System – Sistema de Nomes de Domínios) é um sistema de gerenciamento de nomes hierárquico e distribuído operando segundo duas definições:

  1. Examinar e atualizar seu banco de dados.
  2. Resolver nomes de domínios em endereços de rede (IPs).

Antes da existência das cópias desses servidores, a navegação era consideravelmente mais lenta.

Até o ano de 2003 no Brasil, o internauta que precisasse acessar os servidores DNS raiz mais próximos levava aproximadamente mais de 100 milissegundos para obter a resposta. Após a implantação de um novo servidor no país, uma rede conectada ao PTT de Porto Alegre passou a realizar o mesmo procedimento em menos de 10 milissegundos.

Servidor raiz

O servidor raiz da internet possui uma tabela que indica qual DNS será responsável pela resolução dos domínios para cada extensão de domínio (Top Level Domain) diferente.



Ex: Tabela DNS para domínios Brasileiros

A tabela em si é muito pequena, possui apenas uma entrada para cada Top Level Domain existente. Os Top Level Domains são de dois tipos: gTLDs (Generic Top Level Domains – domínios genéricos usados no mundo todo) e ccTLDs (Country Code Top Level Domains – extensões de domínios administrados pelos países).

Por exemplo: todos os domínios terminados em .com serão respondidos pelos servidores da VeriSign; os domínios .br serão respondidos pelos servidores do Registro.br e assim sucessivamente. Cada gTLD ou ccTLD tem apenas uma entrada neste banco de dados.

Por segurança, o servidor raiz foi replicado em 13 servidores raízes diferentes espalhados pelo mundo e duas vezes ao dia seu conteúdo é automaticamente replicado.

Existem 13 servidores DNS raiz no mundo todo e sem eles a Internet não funcionaria. Destes, dez estão localizados nos Estados Unidos, um na Ásia e dois na Europa. Para Aumentar a base instalada destes servidores, foram criadas réplicas localizadas por todo o mundo, inclusive no Brasil desde 2003.

Para vocês terem ideia da importância dos servidores DNS Raiz, recentemente para melhorar significativamente o acesso à Internet no Brasil foi instalado uma cópia de um servidor raiz DNS, passando da velocidade de 100 milissegundos para apenas “10 milissegundos” quanto a consulta de endereços.

Este novo servidor DNS foi instalado no dia 13 de janeiro, no Ponto de Troca de Tráfego (PTT) de Porto Alegre. PPT é onde acontece a interconexão entre as redes, o que permite a navegação por sites comerciais, governamentais e de ensino e pesquisa.

Veja como funciona o DNS


O DNS (do inglês, Domain Name System) é definido principalmente nas RFCs 1034 (Conteitos e Recursos) e 1035 (Implementação e Especificação) e é a principal forma de revolver nomes hoje em dia, seja na Internet ou na rede interna de uma empresa. O DNS é um sistema de resolução de nomes hierárquico, pois divide o nome DNS em fragmentos conhecidos como espaços de nomes. Os espaços de nomes ajudam no desempenho e na organização da estrutura de nomes DNS conhecida também como árvore de nomes DNS. De forma análoga, imagine o espaço de nomes como o endereço de sua residência, por exemplo:

País: Brasil
Estado: São Paulo
Cidade: Osasco
Bairro: Jardim José
Rua: Mariana
Número: 500

Se uma pessoa que morasse nos Estados Unidos quisesse chegar ao endereço informado acima, bastaria ela seguir de forma hierárquica o endereço, começando do país até chegar ao número da residência. Se o sistema de endereçamento não fosse hierárquico seria muito difícil chegar a qualquer lugar. O DNS funciona de forma semelhante, mas ao invés de termos endereços físicos, temos os espaços de nomes DNS. O exemplo a seguir mostra a estrutura hierárquica do website jvazconsulting.wordpress.com:

Domínio Superior: .com
Subdomínio: .jvazconsulting.wordpress.com
Host do Web Site: jvazconsulting.com

A estrutura de domínio DNS também é representada conforme abaixo:


Quando um nome precisa ser resolvido para um endereço IP é seguida uma ordem hierárquica no espaço de nomes até chegar ao nome do host, isso também é conhecido como sistema distribuído de nomes.

Para obter um novo domínio, em geral, é necessário consultar no domínio superior se o nome está disponível. Por exemplo, quando o domínio fiap.com.br foi criado uma consulta foi feita no domínio com.br para verificar se o nome jvazconsulting já não estava sendo utilizado.

Principais componentes do DNS

Conforme definido pela RFC 1034, o DNS possui três componentes principais:

– Espaço de nomes e Registros de Recursos:

O espaço de nomes são as partes de um domínio inteiro, em outras palavras, eles são como os galhos da árvore de nomes DNS enquanto os registros de recurso são as folhas desses galhos. Os Registros de Recursos (também conhecidos como Resource Records ou RRs) são um conjunto de dados que retornam determinadas informações de acordo com o tipo de consulta. O conjunto de registros de recursos de um domínio que fica alocado um servidor DNS é conhecido como Zona DNS. As zonas DNS podem ser do tipo Primária, Secundária ou Stub. Uma zona primária (ou master) possui a base completa dos registros de recursos e aceita alterações. A zona secundária (ou slave) é uma cópia da zona primária e não permite alterações. A zona stub é uma zona de referência, assim, ela possui apenas os registros NS e A (explicados mais a frente) dos Servidores de Nomes do respectivo domínio (a zona stub também não permite alterações). Geralmente, as zonas DNS são armazenadas em um arquivo de texto simples, com exceção dos servidores DNS Windows que permitem, opcionalmente, armazenar os dados das zonas dentro da base do Active Directory (caso o serviço de DNS esteja instalado em um Controlador de Domínio). Os registros possuem as seguintes propriedades:
– Proprietário: Indica quem é o criador do registro.
– TTL: Informa por quanto tempo o registro será armazenado em Cache.
– Classe: Indica a classe de registro.
– Tipo: Indica o tipo de registro.
– Dados: Contém os dados do registro.

Já os principais registros de recursos são:

– SOA: Define propriedades, como: intervalo de atualização, TTL e expiração.
– NS: Indica o servidor de nome de determinado domínio.
– A e AAAA: Resolve nomes para endereços IP.
– CNAME: Resolve um apelido (ou alias) para um registro do tipo A ou AAAA.
– MX: Fornece informações de e-mail para o roteamento de mensagens.
– PTR: resolve um endereço IP para um registro de tipo A ou AAAA.
– SRV: Define a localização e prioridade de um serviço na rede.

– Servidores de Nomes:

Também conhecido como servidor DNS, é o serviço que armazena e gerencia as informações sobre a estrutura de nomes de um ou mais domínios. Um servidor DNS pode armazenar essas informações na memória (também conhecido como Cache) ou então ter as informações completas (através das zonas DNS). Além disso, um servidor de nomes pode não responder a consulta, mas pode saber informar quem pode responder.

– Resolvedores:

Conhecido também como Resolver ou Cliente DNS é o serviço que identifica que determinado aplicativo necessita resolver um nome e encaminha essa solicitação a um servidor DNS. Quando o servidor DNS responde a consulta, o Resolver armazena a resposta no Cache do cliente e encaminha a resposta para o aplicativo que solicitou a resolução do nome.

Processo de Resolução e Tipos de Respostas

O processo de resolução de nomes DNS é algo longo e complexo, pois inclui diversas variáveis que podem mudar de acordo com o cenário e a situação em que uma consulta ocorre. A seguir será descrito de modo geral como ocorre essa consulta:

01 – O Resolver identifica que um aplicativo necessita resolver um nome.
02 – O Resolver envia a consulta para o servidor DNS que foi configurado.
03 – O servidor DNS pode responder de quatro formas:
a) Autorizativa: Quando o domínio a ser consultado pertence a uma das zonas do servidor DNS.
b) Positiva: Quando o servidor responde a consulta, mas não de forma   autorizativa. Geralmente uma reposta positiva é feita utilizando o Cache local, iteração ou recursividade. Ambas as maneiras serão detalhadas na próxima seção.
c) Negativa: Uma resposta negativa pode indicar duas possibilidades:
– O domínio informado em uma consulta não existe.
– O servidor autorizativo não localizou o registro solicitado na consulta.
d) Referência: Uma resposta de referência ocorre quando o servidor de nome   não pode responder a consulta, mas pode indicar quem pode responder   baseado em informações que ele possui localmente.
04 – Quando o servidor DNS consegue a resposta para a consulta do cliente ele armazena essa resposta em seu Cache e devolve para o Resolver.
05 – O Resolver armazena a resposta no Cache do cliente e envia a resposta para a aplicação que solicitou a resolução do nome.

Formas de Resolução de Nomes

Quando um servidor DNS não consegue resolver um nome com base nas suas zonas DNS ele pode tentar resolver utilizando o Cache, recursão ou iteração.

– Cache:

O Cache DNS é utilizado para aprimorar as consultas que já foram efetuadas anteriormente dispensando o processo de recursão e iteração. Há uma pequena diferença entre o Cache do Resolver e do Cache do servidor DNS. Ambos são armazenados na Memória RAM da máquina, porém, o Cache do resolver armazena os registros que o DNS respondeu e o escopo de sua utilização limita-se a ele mesmo. Já o Cache do DNS armazena as consultas que ele obteve no processo de recursão ou iteração e é utilizado para todos os clientes DNS que repetirem essa consulta. O tempo que cada registro ficará armazenado no Cache é definido pelo campo TTL (Time-To-Live) configurado no próprio registro.

– Recursão:

Uma consulta recursiva é quando o servidor DNS tenta resolver a consulta totalmente em nome do cliente solicitante. O servidor DNS pode tentar resolver essa consulta utilizando o recurso de encaminhamento. Um encaminhamento pode ser do tipo geral, onde qualquer consulta que não puder ser resolvida será encaminhada a determinado servidor ou do tipo condicional, que encaminha determinados domínios para os servidores DNS que desejar (geralmente servidores DNS autorizativos para o domínio em questão).

– Iteração:

Uma consulta iterativa é quando o cliente espera a melhor resposta que puder receber do servidor DNS com base nas informações que ele possui localmente, e com essas informações, o próprio cliente refaz a consulta para os servidores DNS adicionais. Uma consulta iterativa ocorre quando:
– O cliente solicita a recursão, mas não está habilitado no servidor DNS.
– O cliente não solicita o uso de recursão ao consultar o servidor DNS.

O que geralmente ocorre é o cliente solicitar uma consulta recursiva para o seu servidor DNS primário e esse iniciar uma consulta iterativa com os servidores raiz da internet até que encontre uma resposta e devolva ao cliente solicitante.


 

Algumas fontes sobre informações DNS: DNS Physical Structure

Sobre Julio Vaz

I'm a results-driven IT professional on consulting for integration projects with extensive experience in the engineering, administration and support. Direct experience with customer relationships, complex problem troubleshooting, implementation, optimization, technology advisor and training deliveries. Always interested in professional growth as well as high-quality service delivery. Specialties: Office 365. Windows Intune. Windows Azure. Microsoft Windows Server and Active Directory Microsoft Exchange Server 2000/2003/2007/2010, 2013 Windows Virtualization: Hyper-V Windows server 2008, 2008 R2, 2012, 2012 R2. Microsoft Isa Server 2000, Isa Server 2004, Isa Server 2006. Microsoft Forefront TMG 2010. Microsoft Project Server 2007/2010, 2013 Microsoft SharePoint 2007/2010, 2013 Documentation of the computing environment and services. Elaboration of technical procedures. Elaboration of proposals and projects. Management and training of support staff. Implementation and maintenance of security and backup policies. Implementation, administration and migration from Microsoft . Windows NT, Windows 2000 Server, Windows Server 2003 R2, Windows Server 2008 R2, Windows Server 2012 R2 Implementation and migration from Microsoft Office Communications Server 2007 Implementation and migration from Microsoft Lync Server 2010, 2013. Implementation and migration from Microsoft Exchange Server 2000, 2003 and 2007, 2010, 2013. Implementation and migration from Microsoft Isa Server 2000, 2004 and 2006, Forefront TMG Implementation Microsoft System Center 2012 R2 - SCCM, SCOM, DPM. Migration of servers and domains
Esse post foi publicado em Não categorizado. Bookmark o link permanente.

2 respostas para Como funciona o serviço DNS – Domain Name System

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s