DNS
siglaSignifica: Domain Name System
O sistema de nomes distribuído e hierárquico que associa nomes como example.com a endereços e a outros dados tipados.
As aplicações chegam a ele pelo stub resolver do sistema operacional, que entrega as consultas a um recursive resolver; esse servidor responde do cache ou pergunta aos servidores autoritativos. Quando um nome resolve errado ou não resolve, a primeira pergunta útil é qual dessas camadas está segurando a resposta.
As RFCs 1034 e 1035 (novembro de 1987) descrevem três partes: um espaço de nomes em árvore com resource records ligados aos nomes, servidores de nomes que guardam os dados e resolvers que os extraem para os clientes. A autoridade se divide em zonas, cada uma atendida por servidores de nomes redundantes, e todo registro leva um tipo e uma classe, de modo que um nome pode guardar endereços, dados de e-mail e mais. Os objetivos de projeto pediam um banco de dados distribuído com cache local, já que uma cópia única e consistente do todo só ficaria mais cara.
Uma mensagem é um header seguido das seções question, answer, authority e additional. Os servidores escutam na porta 53, em UDP e TCP; uma resposta UDP fica limitada a 512 bytes e, quando maior, vem truncada com o bit TC ligado, o sinal para repetir em TCP, enquanto o EDNS permite que cliente e servidor combinem tamanhos maiores. Cada registro traz um TTL, o máximo de segundos que um cache pode guardá-lo, e a cópia em cache faz contagem regressiva.
A maioria das falhas é questão de camada. Um servidor autoritativo liga o bit AA nas respostas e a resposta vinda do cache de um resolver não liga, então perguntar com o dig à autoridade e ao resolver mostra se o erro está na zona ou num cache velho. Os resolvers também são onde mora a política: a RFC 9499 descreve policy-implementing resolvers, que alteram respostas, por exemplo para bloquear sites de malware, às vezes sem avisar o usuário.
Também conhecido como: dns, domain name system, name resolution
Fontes
- RFC 1034, Domain Names: Concepts and Facilities, November 1987: sections 2.2, 2.4, 3.6, 4.1 and 5.3.1 (read 2026-10-18)
- RFC 1035, Domain Names: Implementation and Specification, November 1987: sections 3.2.1, 4.1, 4.1.1, 4.2.1 and 4.2.2 (read 2026-10-18)
- RFC 9499, DNS Terminology, March 2024: section 5 (EDNS) and section 6 (Stub resolver, Recursive mode, Policy-implementing resolver) (read 2026-10-19)