nslookup, dig, firefox ignorando entradas do arquivo / etc / hosts


10

Há algo terrivelmente errado na minha instalação atual do Debian. A maioria dos programas como o firefox, nslookup, dig etc. estão ignorando entradas no /etc/hostsarquivo, na verdade eu uso esse arquivo para bloquear anúncios.

um exemplo

uma linha no /etc/hostsarquivo

127.0.0.1 www.winaproduct.com

quando faço dig +short www.winaproduct.comisso retorna o respectivo endereço IP do servidor, não 127.0.0.1.

Aberto www.winaproduct.comno firefox, mostra o respectivo site, mas isso não é esperado.

Mas não há nenhum problema com ping, busybox nslookup, busybox ping, resolveipetc.

Então qual é o problema ? E como corrigi-lo? Acho que o problema está na biblioteca de resolução de DNS.

Uma correção temporária, configuração dnsmasqe alteração nameserverpara 127.0.0.1in /etc/resolv.conf.

atualizar

problema magicamente resolvido após a instalação libnss3, como uma dependência degoogle-chrome

O padrão /etc/nsswitch.conf parece hosts: files dns

como saber nslookup, digetc. pergunte primeiro ao arquivo / etc / hosts, em vez de perguntar diretamente ao DNS?

mas porque busybox nslookup, wget, resolveipetc. estão trabalhando de forma diferente nslookup, digetc.?


como é a hosts:entrada /etc/nsswitch.conf?
— casey

@ casey, /etc/nsswitch.conf é parecido comhosts: files dns
— Arnab

Adicione essas informações importantes ao seu OQ.
— dan

Claramente, este não é um problema de DNS. Por favor, observe esta pergunta muito semelhante: unix.stackexchange.com/q/158419/31707 .
— dan

Respostas:


16

nslookup, digE hostsão ferramentas para consultar servidores de nome DNS.

Se sua configuração não for fornecida por um servidor de nomes (como as informações fornecidas em /etc/hosts), essas ferramentas não as mostrarão, porque pedem diretamente ao servidor de nomes.

Se você deseja verificar se a resolução "usual" está funcionando (ou seja, da maneira especificada em /etc/nsswitch.conf), você pode usar getent:

getent hosts www.winaproduct.com

getent hosts www.winaproduct.comestá funcionando perfeitamente, mas nslookup, dig, hostetc, são apenas como exemplo, eu quero-o em firefox .
— Arnab

1
Se funciona com getent, também deve funcionar com o Firefox. (Ambos usam o mesmo mecanismo de resolução.) Se ele realmente não funcionar, verifique a configuração "incomum" no firefox. Talvez você defina algum tipo de proxy ou algo assim.
— Michas

obrigado pelo comentário, eu não uso nenhuma configuração incomum do firefox, não, ele não está funcionando com o firefox (38.0.1).
— Arnab

3
Tenho certeza de que há algum problema no navegador. Experimente wgetou outro navegador como o chrome. Se getentfornece o resultado esperado, todos eles devem.
— Michas

1
@daniel Azuelos, não há nada errado com as configurações do Firefox, ele já está usando No Proxy. Então, como saber nslookup, digetc. , pergunte /etc/hostsprimeiro ao arquivo, perguntando diretamente ao DNS? Obrigado pelo seu comentário valioso.
— Arnab

4

Você pode instalar o DNSmasq, que lerá suas entradas / etc / hosts e importará-as para o cache DNS. Então, todas as suas ferramentas de DNS e aplicativos de consulta de DNS, como dig, host e nslookup, receberão respostas originadas no arquivo / etc / hosts.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.