Uma das partes fundamentais da infraestrutura mundial da internet é o DNS. Essa sigla significa Domain Name System (algo como sistema de nome de domínio), e se refere a um sistema responsável por facilitar em muito a forma como usamos a internet.
IPs e nomes
Todos os aparelhos conectados à internet, desde o maior servidor até o menor smartphone, possuem um número que serve como seu endereço na internet. Esse número se chama IP, de Internet Protocol (ou protocolo de internet).
Os sites que acessamos na internet também possuem IPs. É por meio desses IPs, aliás, que conseguimos acessá-los. O do Facebook.com.br, por exemplo, é 173.252.88.66; o do Google.com.br, por sua vez, é 74.125.129.94, e o do Olhar Digital é 200.147.3.199. Se tiver curiosidade, você consegue descobrir o IP de outras páginas por meio desse site.
Os IPs listados acima estão ainda no formado IPv4. Atualmente, a internet está em um processo de transição do IPv4 para o IPv6. Os endereços de IPv6 têm o formato de quatro grupos de oito caracteres, e os caracteres pode ser números de 0 a 9 ou letras de A até F.
Mas se você está lendo isso, você sabe que não é necessário saber o IP de um site para acessá-lo. Para isso, basta saber o nome dele (como www.facebook.com.br ou www.google.com.br).
Isso é possível por conta do DNS. O DNS traduz os nomes de sites em IPs, para que nós possamos navegar pelos nossos sites favoritos sem precisar decorar um monte de longas séries de números e letras. É possível pensar no DNS como uma espécie de lista telefônica que liga cada site a seu IP.
Descobrindo os IPs
Apesar dessa analogia, o DNS não é meramente um arquivo que você pode deixar salvo em seu computador. Isso não apenas pelo fato de que seria um arquivo consideravelmente grande, mas também porque a internet muda muito, e muito rapidamente, portanto seria necessário atualizá-lo constantemente.
Para descobrir o IP de um site a partir do nome dele (e, com isso, conectar o usuário ao site) são necessárias uma série de medidas, tomadas em conjunto pelo seu navegador e o seu sistema operacional, com o auxílio de uma série de servidores pelo caminho.
Vamos supor, por exemplo, que você deseja acessar o Youtube. Então, você digita na sua barra de endereços: www.youtube.com. Quando você faz isso, a primeira coisa que o seu navegador faz é perguntar ao seu sistema operacional se ele já conhece o IP relacionado àquele nome. Para isso, eles verificam se essa informação já está na memória (ou no cache) do seu computador (como o Youtube é um site bem popular, provavelmente ele já estará lá).
Se o seu sistema operacional não conhece o IP relacionado àquele nome, ele pergunta a um servidor de nomes de domínio, ou Domain Name Servers (também conhecido como servidores DNS). Os provedores de acesso à internet e fabricantes de computadores em geral já configuram as máquinas com um servidor DNS, então seu computador já saberá a quem perguntar.
É possível que o servidor DNS possua esse endereço já no cache dele (e, de novo, no caso do Youtube, isso é bem provável). Se ele não souber, no entanto, ele saberá encontrar o servidor de nomes de raíz (ou Root Names Server).
Esse servidor é responsável pela localização dos servidores de domínios de alto nível, tais como .com ou .org, chamados servidores de TLD (de Top-Level Domain, ou domínio de alto nível)
O servidor de nomes de raiz direcionará o seu servidor DNS ao servidor de nomes de alto nível .com (já que o endereço termina em .com). E então, o servidor TLD responsáveis pelos endereços .com o direcionará ao servidor de nomes com autoridade (ou ANS, de authoritative name server) responsável pelo endereço youtube.com.
O ANS dirá então ao servidor DNS o IP que corresponde ao nome www.youtube.com (no caso, é 216.58.192.46). O servidor DNS devolve essa informação para o seu sistema operacional, que a devolve ao seu navegador, que então consegue te conectar ao Youtube. Por mais enrolado que esse processo pareça, ele geralmente acontece em menos de um segundo.
Velocidade
Como deve ter ficado claro, o servidor DNS tem um belo de um trabalho para conseguir traduzir os nomes que o navegador manda para ele em IPs por meio dos quais seja possível acessar os site. Por esse motivo, a velocidade de sua navegação pode variar bastante dependendo de qual servidor DNS a sua rede doméstica está configurada para usar.
Imagine, por exemplo, se ela estiver usando um servidor DNS hospedado na Alemanha. Toda vez que o seu navegador solicitar um IP que não esteja na memória do seu computador, a solicitação precisará viajar até o outro lado do mundo e voltar antes de que você possa se conectar!
Felizmente, existe um programa simples chamado Namebench que ajuda a encontrar o servidor DNS mais rápido para a sua rede. Nós já falamos sobre ele, mas vale a pena falar novamente. Ele está disponível para Windows, Mac e Linux.
O que o Namebench faz é, basicamente, testar uma série de servidores DNS diferentes para ver qual deles responde mais rápido. Nós já fizemos também um vídeo explicando como usar o programa.
Caso o servidor DNS apontado como o mais rápido pelo Namebench não seja o que você está utilizando atualmente, pode ser que as alterações necessárias precisem ser feitas em seu roteador, e não em seu computador. Nesse caso, o procedimento varia de acordo com cada modelo, mas pesquisar no Google o nome do modelo deve trazer alguma indicação de como alterá-lo.