Esse comportamento é por design.
O IPv6 está sendo preferido - portanto, o status do recurso em AAAA
terms é determinado primeiro. Uma resposta NXDOMAIN
volta - então o cliente calcula que precisa anexar o caminho search
.
Observe que a observação ndots
que você fez está correta, mas não toda a história. Se o número ndots
for maior que o nome consultado (se fosse um nome de rótulo único, nesse caso), a única diferença no comportamento da consulta é que a consulta com o sufixo anexado ocorrerá antes o nome bruto é tentado. Como você está acima do limite ndots
, o nome é tentado primeiro, conforme fornecido. Veja mais abaixo na página man:
The default for n is 1, meaning that if there are any dots in a name, the name will be tried first as an absolute name before any search list elements are appended to it.
Essa consulta falhou, portanto, a lista de pesquisa deve ser usada. Observe a diferença no comportamento da consulta com wget http://site1/
.
O que você está vendo é o comportamento pretendido - o que eu acho que você precisa corrigir é a confluência de fatores que está causando essa pesquisa lenta.
- Corrija seu servidor DNS ou corrija o envio de dados de origem. Um recursor deve armazenar em cache facilmente o
NXDOMAIN
das raízes quando tentar procurar um TLD inexistente. Desde que o IPv6 é corrigido, você pode ter um servidor DNS no caminho que está falhando miseravelmente no cache quandoAAAA
de pesquisas estão envolvidas. Tente alterar seu resolvedor para8.8.8.8
para verificar. - Pare de adicionar um caminho de pesquisa para uma zona DNS que aparentemente você não pode fazer pesquisas. Se o seu servidor DNS fosse autoritativo para essa zona (que é o que seria necessário para que a configuração
search
fosse de alguma utilidade, já que não é um nome válido na hierarquia pública), ele responderia imediatamente. Você provavelmente não precisa da configuraçãosearch
- mas defina-a como algo que será resolvido, para que não tente adivinhá-la a partir do nome do host da máquina.search com
deve fazer bem.