Cabeçalho DNS
Quando um computador acessa um rede TCP/IP é configurado um ou mais servidores DNS, assim, quando um programa precisa resolver um nome, ele irá consultar o arquivo host da máquina (em Linux fica na pasta /etc/hosts e em Windows na pasta ?:/Windows/system32/drivers/etc/hosts) que fará uma verificação e caso não encontra o nome de domínio requisitado irá fazer uma requisição a um servidor DNS recursivo que irá consultar se o nome de domínio requisitado pertence a ele mesmo e vai consultar o seu cache, se encontrar já retorna a sua estação de trabalho com a resposta.
Formato da Mensagem DNS
Uma mensagem DNS é formada pelas 5 seções a seguir:
Cabeçalho: Contém campos que descrevem o tipo de mensagem e fornecem informações importantes sobre o assunto. Também contém campos que indicam o número de entradas em outras seções da mensagem.
Pergunta: Carrega um ou mais “perguntas”, ou seja, as consultas para informações que estão sendo enviadas para um servidor de nomes DNS.
Resposta: Carrega um ou mais registros de recursos que responder à pergunta (s) indicado na Pergunta seção acima.
Autoridade: Contém um ou mais registros de recursos que apontam para os servidores de nomes oficiais que podem ser usados para continuar o processo de resolução.
Adicionais: Transmite um ou mais registros de recursos que contêm informações adicionais relacionadas com a consulta que não é estritamente necessário para responder às consultas (perguntas) na mensagem.
O cabeçalho está sempre presente em todas as mensagens e é fixado em comprimento. Além, de conter informações de controle de DNS importantes, tem uma bandeira (QR) que indica se uma mensagem é uma consulta ou uma resposta. Ele também tem quatro campos de “contar“ que conta ao destinatário o número de entradas nas outras