O que é DNS (Sistema de Nomes de Domínio) e como funciona?

Publicados: 2020-12-09

DNS-domain-name-system

Qual é a definição de DNS?

DNS, que significa Domain Name System, é usado como meio para traduzir nomes de domínio para seus respectivos endereços IP quando um cliente inicia uma consulta de solicitação. O DNS armazena o banco de dados de todos os nomes de domínio e seus endereços IP registrados na rede.

Pode ser pensado como um registro de presença para vários sites presentes na internet. No caso do DNS, mantém a base de dados de todos os nomes de domínio de sites e seus endereços IP (Internet Protocol) que estão operacionais em todo o mundo.

História do DNS

As origens do DNS remontam à época da ARPANET, quando havia apenas alguns computadores para obter uma entrada no banco de dados. Um arquivo HOSTS.TXT era mantido pelo Stanford Research Institute, que constituía os dados de todas as máquinas, e era copiado por todas as máquinas host para permanecer atualizado.

Jon Postel, do Information Sciences Institute, solicitou a Paul Mockapetris que projetasse a primeira implementação do DNS na Universidade da Califórnia, Irvine, em 1983. Então, em 1984, o BIND (Berkeley Internet Name Domain) foi criado por quatro estudantes, Douglas Terry, Mark Painter, David Riggle e Songnian Zhou, para máquinas Unix.

Após algumas revisões feitas em 1985 por Kevin Dunlap, ele foi posteriormente portado para máquinas Windows e ainda é o DNS mais usado no planeta.

Como funciona o DNS? – Um exemplo fácil de DNS

Para entender o funcionamento básico do DNS, deixe-me guiá-lo com um exemplo de hotel. Vamos supor que você precise visitar seu amigo em algum hotel. Agora, o que você vai fazer? Você chegará à recepção do hotel e pedirá à recepcionista o número do quarto do seu amigo.

Para isso, você precisará informar o nome do seu amigo à recepcionista, que verificará o mesmo no banco de dados dela e informará o número do quarto do seu amigo. Ela também ligará para seu amigo para confirmar se ele está disponível ou não.

Agora, tente relacionar o exemplo ao funcionamento do DNS. Nesse caso, você é o cliente enviando uma solicitação para um servidor DNS, a recepcionista, e o nome do seu amigo é o nome do domínio e o número do quarto dele é o endereço IP.

A recepcionista digitará o nome do seu amigo em seu computador contendo o banco de dados de todos os convidados, chamado de Domain Name Space. Se sua amiga estiver hospedada no hotel, ela lhe dirá o número do quarto, caso contrário, não.

Algo semelhante acontece no funcionamento do DNS: quando você digita o nome do site em seu navegador, o navegador envia uma solicitação ao servidor DNS. Se o nome de domínio do site estiver registrado no banco de dados com o DNS, ele responderá com o endereço IP do site que você está tentando acessar, algo como 117.234.214.14.

Entendendo o nome de domínio e o endereço IP

Agora, se você perguntar o que é domínio? É usado para identificar vários sites e serviços na internet. Pegue o nome de domínio, www.google.com. A convenção de nomenclatura se move da direita para a esquerda e vice-versa para endereços IP. No nome de domínio do Google, primeiro, o DNS verificará com , que significa domínio comercial, e é um domínio de nível superior.

Continuando, o Google é um subdomínio para com e, posteriormente, www é um subdomínio para o domínio do Google. O ponto (.) é usado para separar os domínios de seus subdomínios. O nome de domínio completo pode conter apenas 253 caracteres.

Agora, se alguém quiser saber o nome de domínio registrado em um endereço IP, ele solicitará o servidor DNS com o endereço IP do site. Digamos que o endereço IP enviado seja 31.13.79.246, o DNS verificará primeiro 31, depois 13, depois 79 e finalmente 246, concluindo que o endereço IP pertence a www.fb.com.

O DNS se assemelha à estrutura hierárquica de uma árvore, não à biológica. Existe uma árvore diferente nas estruturas de dados de computador, na qual o endereço 31 pertence à posição superior da árvore e é o domínio primário na hierarquia, os endereços 13, 79, 246 são subdomínios consecutivos.

O número 246 refere-se à máquina servidora que hospeda o site www.fb.com. Todas essas coisas de domínio e subdomínio não são tão complicadas quanto você pensa, mas levará algum tempo para entender corretamente se você for novo nesse conceito.

Leia também: O que é HTTP/2 e como funciona

Evolução do DNS

Antigamente, um arquivo mestre era mantido por um servidor principal que era atualizado manualmente com a entrada de cada novo site e, em seguida, outros servidores o copiavam. Mas, como a contagem de sites proliferou com o tempo, era difícil manter o banco de dados de nomes de domínio manualmente. Assim, sentiu-se a necessidade de um sistema automatizado e, em seguida, a capacidade de atualizar automaticamente o banco de dados em todo o mundo foi introduzida nas novas gerações de DNS.

Se você registrar o nome do seu site com um registrador de nomes de domínio, levará cerca de 24 horas para que seu site esteja presente nos bancos de dados DNS em todo o mundo.

Foram introduzidas as relações de servidor mestre-escravo em que um servidor mestre mantinha o banco de dados, e o servidor escravo só precisava copiar o banco de dados para se manter atualizado. Para facilitar as atualizações dinâmicas do banco de dados DNS, foram introduzidos os mecanismos NOTIFY e IXFR.

No NOTIFY, quando o servidor mestre atualiza o banco de dados, ele envia uma notificação aos servidores escravos sobre a atualização, que então copiam o banco de dados. IXFR (Incremental Zone Transfer) elimina a necessidade de copiar todo o banco de dados toda vez que uma única entrada é feita; permite que os servidores escravos adicionem apenas a entrada atualizada em seu banco de dados, reduzindo assim os esforços e tornando o processo de atualização dinâmica mais rápido.

Resolvendo o endereço IP

Refere-se ao processo de tradução de um nome de domínio para seu respectivo endereço IP. O resolvedor de DNS é o PC cliente, você nesse exemplo de hotel, que envia a consulta para o servidor DNS, a recepcionista. Existem dois métodos usados ​​para resolução:

Recursivo: Agora, continuando com o exemplo de DNS do hotel, suponha que o hotel tenha mais de uma filial na cidade e a recepcionista não conseguiu encontrar o número do quarto do seu amigo. Então ela vai verificar se o seu amigo está hospedado na outra agência entrando em contato com a recepcionista ali presente.

Portanto, se o servidor DNS não conseguir encontrar nenhum IP associado ao nome de domínio enviado na consulta, ele solicitará aos outros servidores conectados que resolvam o endereço IP do domínio solicitado. Ele reunirá as informações desses servidores e responderá a você com o endereço IP apropriado.

Iterativo: Suponha que você também queira saber em que andar fica o quarto do amigo, para isso, você perguntará novamente à recepcionista. Da mesma forma, se o resolvedor de DNS quiser mais informações sobre um domínio, ele iniciará uma nova consulta para o mesmo servidor DNS.

Cache DNS

O servidor DNS armazena temporariamente as consultas de solicitação na forma de Cache para reduzir o tempo de resposta se qualquer outro resolvedor de DNS solicitar a mesma consulta. O tempo durante o qual as informações do Cache permanecem válidas, chamado TTL (Time To Live), é definido pelo administrador para cada registro de consulta armazenado no cache.

Aplicativos DNS

A primeira e principal aplicação do DNS é o nslookup, no qual um servidor DNS responde com o endereço IP do nome de domínio solicitado na consulta. O DNS é usado por diferentes Mail Transfer Agents (MTA), como o Microsoft Exchange Server e o IBM Domino, para entregar os e-mails com mais eficiência.

O DNS também pode ajudar a identificar endereços IP na lista negra pela Internet e impedir que os usuários os acessem. Isso ajuda a proteger os usuários contra e-mails de spam e possíveis ataques de hackers.

Os dados de cada nome de domínio e seu endereço IP são mantidos em mais de um servidor DNS para recuperar facilmente os dados se ocorrer algum problema em um servidor.

Vulnerabilidades de DNS

Cache Poisoning: Também chamado de DNS Spoofing, é a técnica usada por pessoas malévolas. Eles alteram os dados no cache do resolvedor do servidor DNS, tornando o endereço IP incorreto para o resolvedor de DNS, talvez para desviar o usuário para a máquina de um hacker.

As respostas DNS não são criptografadas, permitindo assim a possibilidade de possíveis ataques. No entanto, as Extensões de Segurança do Sistema de Nomes de Domínio (DNSSEC) são usadas para renderizar respostas DNS assinadas criptograficamente .

Ataques de phishing podem ser planejados devido a uma semelhança visual de alguns caracteres na tela do usuário, como a letra l e 1 aparecem iguais em algumas telas, redirecionando os usuários para endereços IP diferentes exibindo a mesma aparência do site original .

Como encontro meu DNS?

É uma tarefa bastante fácil localizar o endereço do servidor DNS em sua máquina. Se você estiver executando um PC com Windows, vá para Configurações > Rede e Internet. Aqui, clique nas Propriedades da sua conexão e role para baixo para encontrar o servidor DNS.

Usar DNS personalizado

E se a recepcionista do hotel for muito lenta e muitas pessoas pedirem os números dos quartos ao mesmo tempo? Então ela não poderá fornecer o número correto do quarto rapidamente. Portanto, você pode pedir a outra pessoa no balcão da recepção para atender à sua preocupação. Da mesma forma, quando nos conectamos à Internet, geralmente usamos o Servidor DNS fornecido por nossos ISPs.

Mas e se o servidor DNS padrão não responder ou se não puder lidar com um grande número de consultas em um determinado momento? Tais instâncias apenas degradarão sua experiência de navegação. Mas não se preocupe, há outra saída. Você pode configurar seu sistema para usar um servidor DNS diferente para resolver endereços IP.

Leia também: 5 melhores servidores DNS - DNS público gratuito para conexões rápidas

Alguns servidores DNS populares:

DNS público do Google: O gigante das buscas configurou alguns servidores DNS sérios de alta qualidade capazes de lidar com milhões de solicitações a qualquer momento. E eles são totalmente gratuitos, assim como os outros serviços do Google. Você pode configurar sua máquina para usar os seguintes endereços DNS:

8.8.8.8 e 8.8.4.4

OpenDNS: Esta é uma empresa privada que fornece um servidor DNS seguro e confiável gratuitamente. Basta configurar os seguintes endereços em sua máquina:

208.67.222.222 e 208.67.220.220

Para aqueles leitores que não sabem como configurar o DNS em sua máquina, consulte o link abaixo:

Recomendado: Como obter uma velocidade de Internet mais rápida usando o DNS Hack

Encerramento

O DNS tem sido um tópico de extrema importância desde seu advento como uma forma sistemática de manter um banco de dados tão grande de milhões de sites e servidores em todo o mundo. Sem o DNS, ele teria instigado um monte de confusão de todos os nomes de domínio e endereços IP, e levaria muito tempo para localizar o google.com de uma coleção aleatória de todos os nomes de domínio.

O DNS simplificou o processo de resolução de IP e, sério, se o DNS não estivesse lá, eu sei que você teria queimado seus circuitos cerebrais para lembrar de todos esses endereços IP. E deixe-me perguntar, você se lembra do endereço IP do Facebook que mencionei acima. E não role para cima agora, mesmo que eu não me lembre disso, porque o DNS está lá para lembrá-lo para nós. Só precisamos expressar nossa gratidão pelo nobre trabalho que o DNS vem realizando nas últimas três décadas, e se tornou mais rápido, inteligente e confiável.

Assista a este vídeo sobre DNS:

Leia mais: Como funciona o ataque DDoS?

Então agora você tem uma ideia sobre o que é DNS e sua finalidade. Deixe seus pensamentos nos comentários e tente configurar o servidor DNS usando o link no artigo.

Se você gosta deste simples explicador, confira nossa seção Short Bytes. Pegamos tópicos de tecnologia complexos e os dividimos em artigos curtos e fáceis de entender.