Neste artigo, discutiremos a importância de um Provedor ter um DNS próprio e os benefícios que isso pode trazer para a segurança, confiabilidade e escalabilidade dos serviços online de uma empresa.

O que é DNS?

DNS é uma sigla para Domain Name System, ou seja, um sistema de nome de domínios, esse sistema é distribuído e hierárquico, no decorrer desse artigo vamos entender melhor para que usamos e como ele funciona.

Sempre que você ouvir falar em nomes, domínios, zonas, são os servidores DNS que vão tratar a respeito. Quando você digita seu site no navegador, o caminho para chegar até o site não é feito com o nome e sim com um endereço de IP, seja v4 ou v6, e quem conhece todos esses nomes e faz essa tradução de nome para endereço IP é o servidor DNS.

Certo, o servidor DNS faz a tradução de um nome em um IP para podermos navegar, mas como isso funciona?

No Brasil temos milhares de domínios registrados, sites que você pode acessar, imagina precisar decorar o endereço IP de cada um deles…
Quando eu quisesse acessar o UOL, precisaria utilizar o endereço: 200.147.35.149
Quando quiser acessar o Google: 172.217.162.195
O Facebook: 31.13.85.8
Seria bem difícil, não é? O DNS facilita isso para gente, funcionando como uma lista telefônica.
Em uma lista telefônica procuramos pelo nome de uma pessoa e conseguimos o telefone dela, ou até mesmo o endereço.
O DNS é uma lista que contém todos os nomes dos sites e procurando pelo nome que queremos acessar podemos encontrar o endereço IP do site, assim conseguindo navegar pela internet até o site.

Sempre que você acessar um site no seu computador, ele vai fazer uma consulta para descobrir qual o endereço IP do site e você vai poder navegar, ela é feita por meio de uma requisição que é enviada para o seu servidor DNS recursivo e ele faz a consulta. Vamos agora entender o que é esse servidor recursivo, o papel dele e como funciona…

DNS Recursivo

Para tudo funcionar da maneira que expliquei, existem alguns tipos de servidores DNS a serem configurados, o recursivo é um deles.

Como comentei, quando digitamos o nome do site no navegador, é feita uma consulta pelo servidor recursivo configurado na sua máquina e então o servidor responde um endereço IP para você acessar o site. Mas como ele faz isso? Aí que vem o sistema hierárquico e distribuído…

Existem na internet alguns servidores que chamamos de servidores raiz , eles são responsáveis por conhecer os servidores DNS responsáveis pelos TLDs (top-level domains), os primeiros domínios que aparecem em um site que queremos acessar.

Existe mais de um tipo de TLDs, como os ccTLDs (country code top-level domains) e gTLDs (generic top-level domains).

Os ccTLDs são domínios de topo geralmente usados para identificação dos países, como o “.br” para o Brasil. Já os gTLDs são os domínios de topo genérico, como o próprio nome diz, um exemplo é o “.com”, “.org” e “.info” também

Chamamos os servidores DNS responsáveis pelos domínios de topo, seja de código de pais ou genérico, de servidores autoritativos, são eles que os servidores raiz conhecem, mais para a frente vamos entender melhor sobre ele

Mas e o subdomínio do site que eu quero acessar, como o “facebook” de “facebook.com.br”? Ele tem o seu próprio servidor autoritativo, e os servidores autoritativos dos domínios anteriores que vão conhecer ele. O “.br” conhece o “.com”, que conhece o “facebook”.

Quando você faz a consulta no seu servidor recursivo, ele conhece toda a lista de servidores raiz que existem no mundo, são vários distribuídos, e então o recursivo pergunta para eles se conhecem o endereço do nome que queremos acessar, os servidores raiz informam o caminho para ele chegar no servidor autoritativo do TLD, nele descobrimos os servidores autoritativos dos domínios subsequentes, até que o servidor recursivo descobre qual o servidor autoritativo do subdomínio que quero acessar, e nele eu encontro o endereço IP do nome.

Então quando vou acessar um site, são feitos os seguintes passos:

1 – Cliente faz a consulta no seu servidor DNS recursivo para descobrir o IP de um site que quer acessar;
2 – Recursivo pergunta ao servidor raiz quem tem autoridade sobre o nome que o cliente quer acessar e ele informa qual o servidor DNS autoritativo do TLD;
3 – O servidor recursivo pergunta para o servidor autoritativo do TLD qual o endereço IP do nome e ele nos responde com o servidor autoritativo do domínio subsequente;
4 – Novamente o servidor recursivo pergunta ao servidor autoritativo do domínio quando o endereço IP do nome que queremos acessar e ele nos responde com o servidor autoritativo do subdomínio.
5 – Finalmente o servidor recursivo pergunta ao servidor autoritativo do subdomínio qual o endereço IP do nome e é respondido com o IP do site que queremos acessar.
6 – Com o endereço IP fornecido pelo servidor autoritativo, o recursivo responde o cliente.

DNS Autoritativo

Na explicação a respeito do recursivo, falamos de servidor autoritativo, mas o que é um servidor DNS autoritativo?

Quando falamos de servidor autoritativo, estamos falando do servidor onde ficam os nomes registrados com seus endereços IP, são os servidores que tem autoridade sobre os domínios, ou as vezes também chamados de zonas.

Por exemplo, nós da Made4IT temos o domínio “made4it.com.br” e esse domínio é gerenciado em um servidor autoritativo. Então quando alguém precisa encontrar o endereço IP do nosso site, o servidor recursivo do qual foi consultado vai fazer todo o caminho até chegar em nosso servidor autoritativo para receber a resposta de qual é o endereço IP. O endereço IP que vai ser passado para o recursivo vai de acordo com o “apontamento” que configuramos em nosso serviço de DNS dentro do servidor autoritativo. O apontamento, como o nome sugere, serve para dizer em qual IP precisamos chegar para acessar aquele nome.

Mas a função dos apontamentos não para por aí, também existem outros tipos. O apontamento que diz o IPv4 de um nome é do tipo A, o que diz o IPv6 de um nome é do tipo AAAA, também podemos apontar um nome para outro nome que seria o tipo CNAME, entre outros diversos tipos cada um para sua devida funcionalidade.

Na internet existem serviços onde podemos registrar nosso próprio domínio, como “made4dns.com.br”, como comentei anteriormente quando temos um domínio precisamos de um servidor autoritativo para gerenciar ele.

Existe a opção de utilizar um servidor autoritativo próprio, ou também podemos gerenciar o domínio por um servidor autoritativo que fica na internet, geralmente disponibilizado onde alugamos o domínio ou existem serviços especificamente para isso que podem ser contratados.
Um servidor autoritativo pode também funcionar com domínios reversos, e nesse caso também pode ser chamado de servidor reverso. Vamos entender melhor sobre isso próximo tópico.

DNS Reverso

Um servidor reverso não é nada mais que um servidor DNS autoritativo. Ele pode ter somente domínios reversos configurados, ou domínios “normais” juntos, os dois funcionam sem problemas, então não precisamos de dois servidores diferentes.

Mas o que são esses domínios reversos? Utilizamos eles para definir o nome de um endereço IP.
Isso mesmo, o nome do endereço IP. Quando digitamos um site no navegador, nós fazemos a consulta com um nome para descobrir qual endereço IP dele. Agora quando falamos de DNS reverso, nós consultamos um endereço IP para saber qual o nome dele, por isso o nome de “reverso”.

Os domínios reversos são utilizados para facilitar os diagnósticos de problemas, já que são consultados em testes como quando utilizamos o “traceroute” ou algum outro programa do tipo. Também servem para validações em serviços de e-mail, trazendo uma segurança maior para quando existe um servidor de e-mail proprietário do domínio.

A importância de um provedor ter um DNS próprio

Sempre vemos recomendações a respeito de um provedor de internet ter o seu próprio servidor DNS para que seus clientes finais consigam navegar na internet de uma maneira melhor, no caso falamos do recursivo já que ele que usamos para navegar, mas por que isso?

Um provedor sempre busca fornecer a internet com melhor qualidade para seus clientes, e um fator muito importante para conseguirmos navegar na internet é possuirmos um servidor DNS recursivo configurado, o porquê disso e como ele funciona já entendemos, mas como ter um servidor dentro da sua rede vai melhorar ainda mais a navegação de seus clientes?

Quando fazemos uma requisição para um servidor recursivo, precisamos chegar até esse servidor para poder conseguir fazer ela, e utilizando servidores externos como o famoso “8.8.8.8” (Servidor DNS Recursivo do Google), precisamos sair para a internet e percorrer todo um caminho até o servidor do Google onde roda ele roda o seu servidor recursivo, e então esse servidor faz a consulta para descobrir o IP do site que precisamos acessar, depois essa resposta volta todo o caminho que fizemos e só ai que conseguimos acessar o site. Mas imagina todo o caminho que fazemos na internet até chegar no servidor do Google e depois ter que voltar tudo…

Com um servidor dentro da infraestrutura do próprio provedor encurtamos o nosso caminho tornando nossa navegação mais rápida, pois vamos ter uma resposta mais rápida.
Além disso, quando temos um servidor próprio acabamos não dependendo do nosso upstream para utilizar o DNS, pois não precisamos sair pela internet para fazer a nossa requisição, então caso de problema nos links, não vai impactar no DNS.

Isso acontece porque quando o servidor recursivo faz a consulta para poder responder qual o IP de um site queremos acessar, ele pode tanto precisar ir atrás dessa resposta quanto ter ela já armazenada, o que chamamos de cache, ou seja, quando consultamos pela primeira vez um site ele faz todo o percurso entre os servidores raiz e os servidores autoritativos dos TLDs, mas pela segunda vez ele já conhece o IP do site porque já teve que procurar, então quando essa resposta está em cache um dos passos é pulado e a nossa pergunta é respondida mais rápida ainda.

Com um servidor recursivo próprio e o cache bem configurado, conseguimos responder aos clientes o IP de um site que quer acessar de maneira mais rápida e eficiente, melhorando assim sua navegação.

Com esse artigo aprendemos o que é o DNS, quais os tipos que existem e o porquê de ter um servidor em sua infraestrutura. Caso ainda tenha dúvidas a respeito, ou se precisar de algum suporte com o seu servidor DNS, ou quiser subir o seu próprio DNS, a Made4it se encontra a disposição para te atender.

Escrito por: