O linux aceita uma resposta de DNS que vem após o tempo limite configurado se estiver no meio da próxima tentativa?

1

/etc/resolv.conf está configurado com:

options timeout:1 attempts:5 rotate
nameserver A
nameserver B

Ambos os servidores de nomes configurados têm um atraso de 3 segundos. A seguinte troca de mensagens ocorre:

  • 00:00 - consulta # 1 enviada para A
  • 00:01 - consulta # 2 enviada para B
  • 00:02 - consulta # 3 enviada para A
  • 00:03 - consulta # 4 enviada para B
  • 00:03 - responder a # 1 recebido de A

O resolvedor Linux aceitará a resposta à consulta # 1, pois ainda está resolvendo o endereço ou todas as respostas do tempo limite inicial de 1 segundo são descartadas?

Infelizmente, o man resolf.conf realmente não esclarece isso.

    
por NetworkMeister 16.01.2018 / 14:20

2 respostas

0

Eu testei o comportamento no meu laboratório. O resolvedor Linux, de fato, terá uma resposta bem-sucedida, se ocorrer enquanto ainda estiver resolvendo o domínio, mesmo que a resposta venha com um atraso maior que 1 segundo. No meu laboratório, defini um atraso de 3 segundos no servidor DNS e, com {{options timeout: 1 tentativas: 5}} definido, o cliente ainda resolveu o domínio. A captura de pacotes provou que a resposta foi recebida depois que várias consultas para ambos os servidores DNS configurados já foram enviadas pelo cliente.

Alterar os valores padrão ou {{options timeout: 5 tentativas: 1}} para {{timeout das opções: 5 tentativas: 1}} diminui o atraso de failover do servidor DNS, enquanto ainda permite que os servidores DNS lentos forneçam a resposta no mesmo tempo.

    
por 16.01.2018 / 20:07
0

As consultas DNS também são baseadas em RTT (Round-trip time), assim como o ICMP. RTT de uma consulta DNS é a medida do atraso entre uma consulta DNS sendo emitida e a hora em que a resposta é recebida , o que significa que a resposta (no seu caso - resposta a # 1 recebida de A) deve chegar antes do tempo limite máximo configurado para que seja considerado válido. É bem idêntico ao funcionamento do ICMP.

Tecnicamente, RTT é o tempo que leva para um sinal ser enviado mais o tempo que leva para uma confirmação do sinal a ser recebido.

    
por 16.01.2018 / 14:48