Você sabe o que é DNS? – Parte 1 – Conceito

Fala galera! Começo hoje uma série de três artigos em conjunto com o pessoal do grupo MTI (Mixed Technology Influencers) onde o tema principal são artigos, vídeos e tutoriais “Nível 100”. O tema desta série, é de extrema importância e básico para quem quer aprender sobre redes e infraestrutura. Pretendo explicar de uma forma simples e objetiva as três principais formas de entender essa tecnologia: conceito, aplicação e prática. Borá lá?

História

Tudo começou lá em 1983 na Universidade da Califórnia quando Paul Mockapetris criou um sistema que automatizasse o processo de comunicação entres os computadores da época, o DNS, que significa Domain Name System, ou em português, Sistema de Resolução de Nomes. Antes disso o processo era realizado através de um arquivo chamado de HOSTS.TXT onde era mapeado o nome para o endereço numérico do computador – Ainda utilizamos o arquivo HOSTS nos dias atuais. 🙂

No mesmo ano, foi publicada a primeira RFC informando os conceitos, especificações e aplicação do DNS – Você pode acessar as respectivas RFCs, clicando nos links abaixo.

RFC 882 –  https://tools.ietf.org/html/rfc882
RFC 883 – https://tools.ietf.org/html/rfc883

No ano seguinte, foi realizado a primeira implementação de servidor de DNS utilizando a plataforma Unix, chamado de Berkeley Internet Name Domain, o BIND, conhecido pela maioria dos adoradores de LINUX e alguns anos depois foi introduzido no Windows NT.

img-dns (2)

Figura 01: Estrutura do DNS.

 

Em 1987, foi publicada duas novas versões das RFCs daquelas de 1983, as respectivas RFCs 1034 e 1035 com diversas melhorias no já protocolo DNS. Há diversas outras RFCs criadas posteriores a estas que padronizam outras vertentes do DNS.

RFC 1034 – https://tools.ietf.org/html/rfc1034
RFC 1035 – https://tools.ietf.org/html/rfc1035

Conceito

O DNS nada mais é um sistema que resolve endereços IP para nomes ou vice-versa. Já pensou quando você quer ler as notícias do dia no G1 e ter que decorar o endereço IP?! Apenas um, tudo bem! Agora imagina todos os sites que você acessa rsrs. Este é o principal objetivo da utilização do DNS, facilitar o acesso a endereços na rede, de forma que seja mais fácil para o usuário final.

 

img-dns (2)

Figura 02: Níveis da estrutura DNS.

 

Você sabia?!

O DNS é um protocolo e está na sétima camada do modelo ISO/OSI, na quarta camada no modelo TCP/IP e por padrão trabalha na porta 53.

Simplesmente, você digita o endereço no seu navegador, exemplo www.g1.com.br e o servidor DNS que tanto faz ser Windows ou Linux responderá com o endereço IP, que no caso do G1 é 186.192.90.5. O mesmo acontece quando temos um computador ingressado ao domínio, ele faz a consulta no servidor procurando por qual endereço IP correspondente aquele computador. Agora que sabemos o básico, vamos nos aprofundar mais no assunto.

 

img-dns (1)

Figura 03: Funcionamento simples do DNS.

 

Encontrando seu endereço IP

No Windows, basta acessar o Prompt de Comando, ou em Executar e digitar CMD. Já no prompt de comando, digite o comando IPCONFIG.

No Linux, caso utilize uma interface gráfica, abra o terminal e digite o comando IFCONFIG.

Tipos de Registros

Existem vários tipos de registros, cada um tem sua respectiva função. Vamos conhecê-los.

A – Endereços IP versão 4 (ex. 192.168.0.1).

AAAA – Endereços IP versão 6 (ex. 2001:0DB8:AD1F:25E2:CADE:CAFE:F0CA:84C1).

NS – Servidores de nome, muito utilizados em ambiente em domínio.

CNAME – Define um apelido (alias) para o hostname (A), é muito utilizado para redirecionamento.

PTR – Responde ao DNS reverso, que é no caso o endereço IP para o nome do host.

MX – Aponta para servidores de e-mail. Pode ser utilizado mais de um.

Eles são de fundamental importância para o bom funcionamento, eles mal configurados podem trazer vários problemas para sua rede. Então use com consciência!

Servidores-raiz

O primeiro de tudo é saber que existem servidores-raízes, aqueles que são de extrema importância para todo o funcionamento do DNS. A sua função é responder diretamente às requisições de registros da zona raiz e responder a outras requisições retornando uma lista dos servidores de nome designados para o domínio de topo apropriado. Os servidores raiz são cruciais na internet, por ser o primeiro passo a traduzir nomes para endereços IP. Existem 13 servidores-raiz no mundo, a maioria está localizada nos Estados Unidos, Europa e Ásia, que são na maioria operadas por agências governamentais.

O arquivo da zona raiz é muito pequeno, em torno de 100 KB, cuja publicação é o propósito primário dos servidores raiz de nomes, servidores estes que constituem a espinha dorsal da Internet.

Os 13 Servidores Raízes do mundo

  • Verisign
  • USC-ISI
  • Cogent Communications
  • University of Maryland
  • NASA
  • Internet Systems Consortium
  • Defense Information Systems Agency
  • U.S. Army Research Lab
  • Netnod
  • Verisign
  • RIPE NCC
  • ICANN
  • WIDE Project

Alguns recursos do DNS

Nesta sessão vou citar três recursos do DNS, existem outros, mas vou citar os três que na minha opinião são os principais.

Cache

O cache DNS funciona para facilitar as consultas por endereços já pesquisados anteriormente. Existem vários tipos de cache, os principais são os que ficam no cliente e os que ficam nos servidores. Por exemplo, você acessa o G1 na sua estação de trabalho e automaticamente sua máquina armazena o endereço do host com o IP associado e até que esse tempo (conhecido como TTL) não expire ou você faça uma limpeza no cache, ele consultará esse host localmente.

         Tempo de vida (TTL) é um mecanismo que limita a vida útil dos dados em um computador ou rede. TTL pode ser implementado como um contador ou timestamp ligado a ou incorporado nos dados. Uma vez que a contagem de eventos prescrita ou período de tempo decorrido, os dados são descartados. Em redes de computadores, TTL impede que um pacote de dados de circular indefinidamente. Em aplicações de computação, TTL é usado para melhorar o desempenho de cache ou para melhorar a privacidade.

DNS Reverso

Normalmente o DNS atua resolvendo o nome do domínio de um host qualquer para seu endereço IP correspondente. O DNS Reverso resolve o endereço IP, buscando o nome de domínio associado ao host.

 

resolution.gif

Figura 04: Funcionamento do DNS reverso.

 

Por exemplo, vamos usar o IP de uns dos DNS do Google para fazer uma consulta reversa no IP 8.8.4.4. O registro PTR correspondente a consulta reversa deverá retornar o endereço de host: google-public-dns-b.google.com.

 

img-dns-03

Figura 05: Consulta DNS reverso.

 

Bom, aprendemos bastante por hoje! No próximo artigo iremos verificar algumas aplicações do DNS. Antes, de terminar, não deixe de acompanhar nosso grupo no Facebook, clique aqui! Deixe também seus comentários com dúvidas, elogios ou sugestões. Até a próxima semana! 🙂

Sobre o Autor

Analista de infraestrutura em tecnologias Microsoft na Unimed Catanduva. Sou MCP (Microsoft Certified Professional). Formado em tecnologia em Análise e Desenvolvimento de Sistemas no Instituto Federal de São Paulo. Amplo conhecimento em tecnologias de virtualização — Hyper-V e VMware — e sistemas de gerenciamento de backup. Apaixonado por heavy metal, principalmente Iron Maiden! \o/

  • Diego Gouveia

    Muito bom! Parabéns.

    • Rodrigo Felipe Betussi

      Obrigado pelo feedback Diego! 🙂