Servidor DNS: O que é DNS? (Parte 1/6)

A Cloudflare, provedor de segurança para a web que oferece uma rede de distribuição de conteúdo rápida, global e gratuita além de serviços de proteção DNS, DDoS e aceleração de sites, lançou no dia 1º de abril – e não é mentira – seu próprio serviço público e gratuito de DNS, o DNS 1.1.1.1, com a garantia de alta velocidade e privacidade. Aproveitando essa novidade, vamos iniciar uma minissérie com seis partes sobre DNS e sobre o DNS 1.1.1.1.

A Cloudflare conta com uma Cobertura global através de uma poderosa Rede Anycast, conforme print abaixo, conta com 8 Data Centers somente na América Latina. Destes, 2 estão no Brasil e localizados em São Paulo e Rio de Janeiro, trabalhando em redundância, o que mantém a disponibilidade mesmo em caso de falhas de componentes ou sobrecargas.

rede

Rede Global Cloudflare

Mas o que é DNS?

O Sistema de Nomes de Domínio ou Domain Name System (DNS), pode ser caracterizado como um sistema de gerenciamento de nomes para qualquer máquina conectada à Internet ou à uma rede privada, que “traduz” endereços IP em nomes, ou seja, para melhor compreensão, nas palavras do Prof. José Gonçalves do Departamento de Informática da Universidade Federal do Espírito Santo (UFES):

O DNS é um “sistema de nomes” cujo objetivo primário é mapear, em escala global, nomes de domínios de rede e nomes de máquinas em endereços IP, processo conhecido por “resolução de nomes”. O DNS possui também a funcionalidade reversa, traduzindo endereços IP em nomes.

hierarquia

Para exemplificar e ficar mais fácil o entendimento, pode-se citar que se não existisse o serviço DNS a navegação na Internet se daria apenas por endereços IPs de sites e não por nomes, tornando praticamente inviável a navegabilidade da forma que temos hoje, onde digitamos um endereço como www.google.com e o sistema DNS interpreta e traduz em um endereço IP do servidor/serviço correspondente e assim viabiliza o acesso ao site sem que você tenha ciência sobre tal processo.

dns001

Breve Histórico do DNS

Antes do advento DNS o mapeamento de nomes e seus respectivos endereços IP era realizado em uma tabela estática como um arquivo de texto único em um ambiente centralizado e era distribuída para todos os computadores da famosa Arpanet, os primordios da Internet. Os nomes não possuíam uma estrutura hierarquizada, ou seja, para se nomear um novo computador da rede era necessário verificar manualmente se já não havia o nome desejado relacionado a um IP existente na rede, gerando uma constante desatualização da tabela, já que era comum a entrada de novos computadores na rede. Neste universo obscuro surgiu o DNS para resolver estas questões introduzindo dois novos conceitos: o Sistema Hierárquivo para Nomes de hosts e a Distribuição da responsabilidade pela resolução de nomes.

O DNS foi especificado formalmente por Paul Mockapetris, cientista da computação e pioneiro da Internet estadunidense, em parceria com Jon Postel nas RFCs 882 e 883 (1983), alterado pelas RFCs 1034 e 1035 (1987) e estendido nas RFCs 1101 e 1183 (1990). Em 1985, Kevin Dunlap, em Berkeley, produziu o BIND – Berkeley Internet Name System, uma implementação de sucesso do DNS. O BIND é hoje parte da maioria das implementações Unix.

Definições do DNS

O DNS definiu um espaço de nomes hierárquico para hosts, uma tabela de hosts implementada como um banco de dados distribuído, rotinas de biblioteca para fazer consultas (queries) a este banco de dados e um protocolo para trocar informações de nomes. De acordo ainda com o Prof. José Gonçalves:

O espaço de nomes do DNS é, na verdade, uma árvore de nomes de domínios (domain names), com autoridade ascendente, cuja raiz está no Departamento de Defesa dos EUA (DoD – Department of Defense) e é chamada de “.” (ponto). 

mapa 1

O domínio de qualquer nó da árvore é a lista dos labels (espaços para texto), começando por aquele nó, até a raiz, usando um ponto (“.”) como separador. Cada domínio representa uma parte distinta do espaço de nomes e é mantido por uma (única) entidade administrativa. Ex: amazon.com – petrobras.com.br – columbia.edu. Debaixo da raiz estão os domínios denominados de “top-level” ou “root-level”, que são domínios relativamente fixos. Por razões históricas, existem dois tipos de top-level domain names. Nos EUA, os domínios top-level possuem usualmente 3 letras (EDU, NET, COM, etc). Para domínios fora dos EUA, o código ISO de duas letras para países é usado.” Exemplos da árvore de nomes de domínio: 

mapa 2

As partes de uma árvore de domínios podem ser gerenciadas por organizações diferentes de forma hierárquica, ou seja, no Brasil a responsabilidade pelos domínios brasileiros (.br) é do serviço Registro.BR, que por sua vez é mantido pelo Comitê Gestor da Internet no Brasil (CGI). 

dominio

Bom, fechando estas informações introdutórias, já podemos seguir para a segunda parte da minissérie de artigos sobre o DNS e o DNS público 1.1.1.1. Aguarde!

Caso tenha qualquer dúvida ou queira complementar o assunto, por favor, deixe seu comentário abaixo.

Renan Saisse

Mais artigos deste autor »

Cientista de Dados especialista em relacionamento digital na Oi S.A com mais de 10 anos de experiência em TI e Telecom, Pesquisador na Comunidade Blockchain Brasil, Membro do Grupo de Estudos em Aplicações Blockchain de Interesse Público do Instituto de Tecnologia e Sociedade do Rio de Janeiro (ITS Rio), Articulista em sites especializados de TI, tendo atuado anteriormente como Analista de Sistemas, Auditor de Tecnologias/Operações e Gerente de Projetos de Tecnologia nas áreas de Faturamento, Co-Faturamento, AntiFraude, Revenue Assurance e Roaming Internacional.

Graduado em Análise e Desenvolvimento de Sistemas, Pós-Graduado em Prevenção e Investigação de Crimes Digitais e em Perícia Forense Aplicada à Informática. Atualmente Acadêmico do curso de Bacharel em Direito na UFRJ.

Possui cursos de extensão em Ciência Política (USP/Veduca), Direito Digital (EMERJ), Linguagem de Programação Python (Harvard/EDX) e Ethical Hacking. Certificado em ITIL V3, Cobit V4.1. Endereço eletrônico: [email protected]


Deixe seu comentário

Seu endereço de e-mail não será publicado. Campos com * são obrigatórios!