DNS fazendo solicitações iterativas

1

Gostaria de perguntar se é possível configurar um cliente no Windows ou no Linux para fazer consultas iterativas em vez de recursivas.

Eu só encontrei artigos sobre como desativar o recursivo no servidor DNS.

Obrigado

    
por user3249 28.11.2013 / 11:12

2 respostas

3

Eu não tenho ideia do que uma consulta DNS iterativa pode ser.

Uma consulta enviada para um servidor DNS pode definir o sinalizador "recursion requested". Em Humanspeak, é como dizer "qual é o endereço da coisa, e se você não sabe, por favor procure por mim". O servidor pode negar isso, e apenas retornar o equivalente a "Eu não sei, e não perguntei", ou pode responder com "Eu perguntei ao redor, e é [isto]" ou "Eu perguntei ao redor, e fui disse que é [isso] ", ou" Eu sei disso, é [isso], e eu sou realmente uma autoridade para esse endereço. "

Uma consulta não recursiva é apenas "qual é o endereço de [coisa], mas se você não sabe, apenas diga". O servidor já pode saber a resposta de uma consulta recursiva anterior e retorná-la, ou não, mas de qualquer forma ela não consultará nada.

Supondo que um servidor, vamos chamá-lo de S, honre a solicitação de recursão, ele pegará o nome - digamos, "www.example.com" - e começará com o componente mais à direita para o qual ele tem informações.

Isso pode não ser nada, nesse caso, S envia a consulta para os servidores raiz, uma lista da qual ela foi armazenada em cache ou foi fornecida como uma lista codificada ou pré-configurada. Um dos servidores raiz receberá a solicitação para "www.example.com, solicitação de recursão"; servidores raiz não recursão, mas eles retornarão a próxima melhor coisa que eles sabem: os servidores de nomes para ".com" junto com seus endereços.
Tente executar dig www.google.com @c.root-servers.net

S, em seguida, pergunta a um desses para "www.example.com, recursão solicitada". Eles também não vão recorrer, mas retornam a próxima melhor coisa: os servidores de nomes para "example.com", juntamente com seus endereços (mais uma vez pulando onde eles pegam isso - procure por "registros de cola"). Tente executar dig www.google.com @k.gtld-servers.net

S, em seguida, pergunta a um desses para "www.example.com, recursão solicitada". Eles não precisam recorrer, porque eles sabem a resposta, então eles mandam de volta junto com a bandeira "resposta autoritária". Tente executar dig www.google.com @ns3.google.com (observe o sinalizador "aa"; aqui está uma lista de sinalizadores de resposta ).

S enviará a resposta final de volta ao cliente, sem o sinalizador "aa", porque S não é autoritativo, ou seja, teve que perguntar.

Em alguns aspectos, uma consulta "recursiva" é tratada "iterativamente" por S. Se o cliente quisesse fazer isso diretamente, precisaria ter uma lista pré-configurada de servidores-raiz (que poderia ser atualizada perguntando a eles) e deve armazenar em cache os resultados para que outros programas locais sejam reutilizados. O que basicamente significa que você estaria executando um servidor de nomes recursivo, somente em cache (porque não é autoritativo para nada) no host local.

Então ... você pode esclarecer sua pergunta? O que você acha que quer fazer?

    
por 28.11.2013 / 12:32
1

Quando você envia uma solicitação de DNS para um servidor, pode sintonizar o modo iterativo. Nesta solicitação, ele ignorará a configuração do servidor DNS.

Exemplo, você pode tentar com dig ou nslookup

dig +norecurse netpas.co

Se o servidor DNS armazenou o registro em cache, você obterá o registro A. Ou a sugestão de qual servidor DNS você precisa tentar em seguida.

    
por 11.10.2016 / 20:08

Tags