Resolva nomes com DNS
Acompanhe a consulta de um nome até um endereço de rede.
- Descrever como um resolvedor percorre a hierarquia do DNS.
- Prever como o cache e os TTLs mudam o trabalho de uma consulta.
- Escolher o tipo certo de registro DNS para cada tarefa.
Você lembra de nomes, mas pacotes precisam de endereços. O Domain Name System liga os dois, e faz isso sem um banco de dados central. É um sistema mundial que responde a trilhões de perguntas por dia porque nenhum servidor precisa saber tudo.
Uma árvore de delegação
Nomes são lidos da direita para a esquerda. Cada nível delega ao nível de baixo, então os servidores raiz não sabem onde está www.learn.example. Eles só sabem quem administra example., e esse servidor só sabe quem administra learn.example.
O resolvedor faz a caminhada
Seu dispositivo não faz isso sozinho. Ele pergunta a um resolvedor recursivo, geralmente mantido pelo seu provedor ou por um serviço público como 1.1.1.1. O resolvedor pergunta à raiz, segue as indicações até o servidor autoritativo que tem a resposta e a devolve a você.
Depois, o resolvedor guarda em cache tudo o que aprendeu. Cada registro leva um TTL, o número de segundos em que pode ser reutilizado. As indicações também vão para o cache, e é por isso que consultar um segundo nome do mesmo domínio custa pouco.
Experimente
Até 15 XPExecute um resolvedor com cache
Experimente esta sequência e preveja o número de consultas a cada vez:
- Consulte
www.learn.examplecom o cache frio. - Consulte de novo.
- Consulte
docs.learn.example. A resposta não está no cache, mas algo útil está. - Espere 1 hora e repita a primeira consulta. Quais entradas sobreviveram?
O relógio só anda quando você espera, então dá para comparar os TTLs na tabela do cache.
Vazio. Toda consulta começa na raiz.
- Consultas enviadas até agora
- 0
Mais do que endereços
O DNS guarda vários tipos de registro. Estes são os que você mais verá:
Experimente
Até 15 XPRelacione a tarefa ao tipo de registro
Você está configurando um domínio. Escolha o tipo de registro para cada tarefa.
“Apontar learn.example para 203.0.113.8”
“Apontar learn.example para 2001:db8::8”
“Fazer de www.learn.example um apelido de learn.example”
“Informar qual servidor recebe e-mail de learn.example”
“Provar a um provedor de nuvem que o domínio é seu”
Para ver respostas reais, use dig no macOS e no Linux, ou nslookup no Windows. O número depois do nome é o TTL restante em segundos:
$ dig +noall +answer www.learn.example
www.learn.example. 300 IN A 203.0.113.8Você pode ver um cache funcionando. Faça a mesma pergunta a um resolvedor duas vezes, com 40 segundos de intervalo, e o TTL diminui, porque a segunda resposta veio da memória.
1$ dig +noall +answer www.learn.example
2www.learn.example. 300 IN A 203.0.113.8
3
4$ dig +noall +answer www.learn.example
5www.learn.example. 260 IN A 203.0.113.8Experimente
Até 15 XPLeia a saída do dig
O dig é a ferramenta para fazer perguntas diretamente ao DNS. Clique na linha que responde a cada pergunta.
Qual linha tem o endereço que você pediu?
Principais conclusões
O DNS é uma árvore delegada, e cada nível só sabe a quem perguntar em seguida.
Um resolvedor recursivo percorre a árvore e guarda em cache o que aprende.
Um TTL limita por quanto tempo uma resposta pode ser reutilizada, então é um equilíbrio entre velocidade e atualidade.
Quiz da aula
7 perguntas · aprovação com 5 acertos · até 50 XP
Ao passar, você conclui a aula e mantém sua sequência. As perguntas erradas voltarão em sessões de revisão.
Dúvidas sobre esta lição
Travou em algum ponto? Pergunte. Descobriu algo? Compartilhe. Explicar também é uma ótima forma de aprender.
Carregando publicações…