O que é DNS e como funciona?

Novas tecnologias e ferramentas, trazem facilidades que tornam a sua presença na Internet, seja através de um blog, uma aplicação para smartphone ou uma simples conta de e-mail, algo simples e sem que se exija muito ou quase nenhum conhecimento técnico. Mas alguma coisa ainda é fundamental e um bom exemplo disso, são os DNSs e por isso que a medida em que continuar lendo, você vai encontrar tudo o que precisa saber sobre DNS.

Por que DNS é importante?

Quando você hospeda um site, aplicações, contas de e-mail ou qualquer coisa na Internet, você tem que atribuir DNSs ao domínio do site, à aplicação e às contas de e-mail. Isso porque são os DNSs que vão dizer onde um site está hospedado, a aplicação está sendo executada ou as mensagens de e-mail são armazenadas.

Possivelmente você não precise ser convencido da importância dos DNSs, mas não saiba exatamente o que significa e como funcionam os DNSs, então vamos a isso.

O que é DNS?

DNS, é a sigla para Domain Name System, ou em bom português, Sistema de Nomes de Domínio. Sob o ponto de vista mais simples possível, é um sistema que tem por objetivo gerenciar a localização de um domínio na Internet. Mas por que é necessário fazer o “gerenciamento da localização” de um domínio?

Quando você abre o seu navegador (Google Chrome, Firefox, Safari, Edge, etc) e digita um domínio qualquer (ex: google.com), como o seu computador “sabe” onde encontrar o conteúdo do site cujo endereço digitou? A resposta é simples e se imaginou que é DNS, está certo.

Sendo assim, o DNS é o sistema responsável por informar onde os serviços associados a um domínio (site, e-mail, FTP, banco de dados, etc) estão alocados na Internet.

Mas antes de ficar fácil, a coisa complica. Isso porque o sistema que envolve os DNSs, atua em várias etapas desde que você digitou algumacoisa.com.br e aguardou o resultado ser exibido na sua tela. Vamos listar estas etapas que ocorrem na sequência em que são executadas:

Etapas do DNS

Como funciona o DNS

Em termos de uma situação real, quando você digitou algumacoisa.com.br, o seu navegador “perguntou” ao servidor de nomes recursivo local se ele tem os registros DNS desse domínio. Este servidor de nomes geralmente é seu provedor de acesso à Internet (Claro, Vivo, Oi, Embratel, Net, Virtua, etc) e, se for um site popular como o google.com, o IP correspondente está em cache. Nesse caso, todas as demais etapas do processo são ignoradas.

No entanto, esses registros são armazenados apenas por um curto período de tempo. Sempre que você cria um registro, você tem a opção de definir um TTL (Time To Live). Os TTLs informam aos servidores de nomes de resolução quanto tempo eles podem armazenar as informações de registro. É o tempo de vida da informação. Os TTLs podem variar de 30 segundos a uma semana. O mais comum é algo entre 3600 e 14400 segundos, ou seja, entre 1 e 4 horas.

E se o registro que estamos procurando não estiver armazenado em cache? Se isso acontece, o servidor de nomes de resolução solicitará aos servidores de nomes raiz o TLD desse domínio, que por sua vez indicará o provedor com autoridade para hospedar os registros. No caso de um domínio brasileiro (.BR), o TLD responsável, é do registro.br, que vai indicar o IP correspondente aos DNSs de onde o domínio está hospedado.

Ou seja, neste ponto entra em ação o sistema de DNSs da empresa em que o domínio está hospedado (DNS autoritativo), o qual por sua vez retorna o IP associado ao www.algumacoisa.com.br e consequentemente o site é acessado pelo navegador no respectivo IP.

O que são zonas de DNS?

Se não bastasse tudo o que você já viu sobre DNSs, ainda há uma parte do sistema que cabe à empresa em que seu domínio está hospedado.

Sendo assim, quando o TLD responde qual os DNSs vinculados um domínio expecífico (ex: ns1.hostmidia.com.br e ns2.hostmidia.com.br) o visitante faz uma consulta através do seu ISP aos servidores de nomes do hosting, que no nosso exemplo, é a HostMídia.

No serviço de DNSs do hosting, pode constar um IP para o site, um segundo IP para o serviço de e-mail, um outro para banco de dados e assim sucessivamente para cada serviço ou subdomínio relacionado ao domínio. Este conjunto de registros vinculados ao domínio, chama-se zonas de DNS.

O que é propagação de DNS?

Quando você atribui DNSs a um domínio, na empresa em que você registrou e administra o domínio, os DNSs atribuídos estão sujeitos à publicação e propagação. A publicação é o processo em que os novos DNSs constam vinculados ao domínio no TLD e pode ser imediata no caso de domínios internacionais (.com, .net ou .org) ou levar até 30 minutos para domínios nacionais (.br).

Já a propagação pode levar algumas poucas ou várias horas. Em média e por padrão, a maior parte das vezes em cerca de 24 horas a propagação já transcorreu. Mas afinal o que é propagação? Por que demora para propagarem os DNSs?

Lembra quando mencionamos o cache dos provedores de acesso (ISP – Internet Service Provider) para sites mais populares e o TTL (Time To Live)? Pois isso é a justificativa do tempo necessário e explica o que é propagação.

O que faz com que seu navegador obtenha o conteúdo de um site qualquer, é a informação que seu ISP tem armazenada (em cache) de onde um domínio está hospedado, ou em outras palavras, o seu IP. Quando os DNSs são alterados, por um tempo que será no mínimo igual ao TTL, o IP anterior é que será acessado. Uma vez que o tempo do TTL transcorra, o ISP irá verificar se os dados que ele tem em cache do domínio foram alterados.

O tempo para que o novo IP conste nos registros do ISP usado por cada visitante do site, as vezes é superior ao TTL, por uma série de razões, que pode ser por exemplo, infraestrutura do sistema de DNS. Quando todos visitantes, independente do provedor de acesso que usam, já acessam no novo IP, é o que se determina como tempo de propagação dos DNSs.

DNSs públicos (Google, OpenDNS e CloudFlare)

Serviços de DNSs públicos ou DNSs resolveres, são serviços que resolvem os DNSs dos domínios que acessamos da mesma forma que o sistema de DNS do nosso provedor de acesso, mas que podem ser usados em substituição à estes, por serem públicos.

E por que devo usar um DNS resolver diferente do que é fornecido pelo meu ISP? Porque estes DNSs públicos oferecem vantagens em relação ao fornecido pelo seu ISP:

  • Tempo de atualização geralmente inferior ao TTL;

  • Maior percentual de resolução do que do seu ISP;

  • Velocidade de resposta maior do que o sistema fornecido pelo seu ISP;

  • Maior segurança;

Além dos 3 citados, há outros serviços semelhantes, porém estes são os mais populares, mais usados e com resultados muito bons. Os DNSs deles são:

  • Google – 8.8.8.8 e 8.8.4.4

  • OpenDNS - 208.67.222.222 e 208.67.220.220

  • CloudFlare - 1.1.1.1 e 1.0.0.1

Conclusão

Os DNSs são parte fundamental na localização de tudo que está associado a um domínio. Saber utilizar e configurar apropriadamente os DNSs, garante saber exatamente como funciona e como se gerencia os recursos de um domínio.