wget não consegue resolver o endereço do host 80% do tempo

6

Eu tenho um wget 'http://xxxx.net/somepage.asp?params@abc' em um arquivo bash.

Quando eu o executo, quatro de cinco vezes diz:

Resolving xxxx.net (xxxx.net)... failed: No address associated with hostname.
wget: unable to resolve host address 'xxxx.net'

Pensando que houve um problema com meu servidor DNS, adicionei um ping -c 2 xxxx.net antes do wget. O ping é 100% resolvido positivamente o tempo todo.

Qual poderia ser a causa? O wget tem seu próprio método de resolver nomes? Isso é em um Raspberry Pi.

    
por Old Geezer 18.11.2014 / 05:02

1 resposta

7

Tecnicamente, eles devem usar a mesma maneira de resolver endereços, mas ping provavelmente não tentará resolver endereços IPv6 (registros AAAA) e consultará diretamente registros A, pois é uma ferramenta somente IPv4 ( ping6 faz solicitações IPv6 ICMP).

Um problema de configuração que eu vi em alguns servidores DNS de balanceamento de carga apoiados por chamado é que quando há um registro em A a configuração de balanceamento de carga e nada para o mesmo nome em nomeado , uma solicitação para o registro AAAA retorna para nomeado que responde com um NXDomain erro (sem tal domínio), impedindo o resolvedor de tentar qualquer outro pedido. Uma correção é adicionar um A, TXT ou outro registro compatível para esse nome, então quando nomeado capturar uma solicitação AAAA, ele não retornará um endereço nem retornará NXDomain , para que o cliente vai continuar e procurar por um registro.

Se você não tem controle sobre o servidor DNS, usar a opção wget --inet4-only pode ajudar. Se isso resolver seu problema, você também deve informar ao proprietário do domínio sobre o problema do DNS.

    
por 18.11.2014 / 05:54