Envie registros adicionais na resposta do DNS

3

É possível enviar um ou mais registros adicionais com uma resposta DNS?

Por exemplo, uma solicitação para o registro A de www.example.com resulta em uma resposta contendo o registro A de www.example.com, bem como o registro A de www2.example.com?

Isso é compatível com o padrão? Será que vai ajudar? ie. O cliente típico armazenará em cache o registro adicional para que, quando precisar em um futuro próximo, não resulte em outra viagem de ida e volta ao servidor DNS?

    
por Joel 10.03.2010 / 12:36

2 respostas

8

A resposta mais longa é sim, é tecnicamente possível, mas você não deveria.

Os servidores DNS colocam registros adicionais no que é chamado (sem surpresa) da seção "adicional" da resposta.

Estritamente falando, porém, de acordo com a RFC 1034 , a seção adicional "traz RRs que podem ser úteis em usando os RRs nas outras seções ". Por exemplo, se você solicitar os registros NS de um domínio, os registros A pertencentes a esses servidores de nome poderão ser fornecidos para o passeio.

No entanto, se você tentar fornecer dados não relacionados, seus clientes DNS e caches geralmente o descartarão. A RFC 2181 fornece uma tabela de prioridades mostrando como os clientes DNS "confiáveis" devem tratar diferentes tipos de dados. Especificamente, também diz:

Unauthenticated RRs received and cached from the least trustworthy of those groupings, that is data from the additional data section, and data from the authority section of a non-authoritative answer, should not be cached in such a way that they would ever be returned as answers to a received query. They may be returned as additional information where appropriate. Ignoring this would allow the trustworthiness of relatively untrustworthy data to be increased without cause or excuse.

Ou seja, os dados que você coloca na seção adicional nunca podem ser promovidos em respostas reais.

    
por 10.03.2010 / 13:30
2

A resposta curta é não.

Se você estiver preocupado com o tempo de resposta do DNS, deverá implantar um servidor DNS de cache mais próximo dos clientes ou melhorar a infraestrutura. Eu gostaria de um pouco mais de informação. Você administra DNS ou clientes ou ambos? Geralmente latência de DNS não é um problema, então eu me pergunto por que é para você?

ou talvez

Você pode definir um TTL mais longo, o que significa menos atualização dos registros. Se você controlar os clientes com os quais está preocupado, poderá executar um script que resolve e, assim, armazena o dns em cache ou pode implantar um arquivo hosts em todos os clientes (eu não recomendaria isso).

    
por 10.03.2010 / 12:54