Por que a resposta do DNS inclui a seção de perguntas?

1

Aqui está um exemplo de solicitação e resposta intermediárias de uma consulta ns ativada por recursão:

Comovocêpodever,arespostaincluiaseçãodeperguntas.Masporque?Édeixaroresolvedorcorresponderàrespostacomaconsultaquefez?MasoresolvedorpodeigualararespostausandoocampodeIDtambém,certo?Então,porqueincluiraseçãodeperguntasnaresposta?

Eaquiestáopedidofinalearespostadamesmaconsulta:

Desta vez, o nome de domínio solicitado é incluído na seção de perguntas da seção de respostas e respostas da resposta. Por isso, é duplicado em dobro. Qual é o propósito disso? Por que duplicar as informações?

A maneira que eu penso é, tanto na resposta intermediária quanto na resposta final, a seção de perguntas pode ser omitida, já que temos o campo ID. Além disso, há duplicação dupla na resposta final na seção de respostas.

Então, você poderia explicar por que foi necessário duplicar as informações?

    
por Utku 13.11.2015 / 20:37

1 resposta

3

O DNS opera tradicionalmente por meio de UDP, um protocolo sem conexão, portanto, uma resposta não pode indicar, por meio de informações de rede, a solicitação em resposta.

Fornecer a pergunta permite que um servidor executando uma consulta recursiva envie a resposta para o solicitante correto, passe o datagrama para os hosts sem modificá-lo e permite que firewalls avançados determinem que um determinado datagrama udp recebido em 53 é parte de um par pedido-resposta solicitado.

Como o UDP não pode transmitir essas informações, cabe ao aplicativo definir sua estrutura de dados para poder executar a tarefa.

Consulte a seção 4.1.1 da RFC 1035 para obter descrições de cada um dos elementos na estrutura da mensagem. Em particular, para ID:

ID
A 16 bit identifier assigned by the program that generates any kind of query. This identifier is copied the corresponding reply and can be used by the requester to match up replies to outstanding queries.

Assim, ID é como a caixa da estação de trabalho do usuário final pode informar qual aplicativo solicitou a pesquisa. Isso pode ser importante se vários aplicativos estiverem fazendo solicitações em uma janela estreita. Esta informação seria pertinente apenas para a máquina geradora da requisição, uma vez que atribui arbitrariamente a ID, e nenhuma outra aplicação, servidor ou sistema sabe o que é. Conseqüentemente, as colisões de ID são prováveis.

    
por 13.11.2015 / 20:40

Tags