nslookup, dig, firefox ignorando le voci del file / etc / hosts


10

C'è qualcosa di terribilmente sbagliato nella mia attuale installazione di Debian. La maggior parte dei programmi come firefox, nslookup, dig ecc. Ignorano le voci nel /etc/hostsfile, in realtà io uso questo file per bloccare gli annunci.

un esempio

una riga nel /etc/hostsfile

127.0.0.1 www.winaproduct.com

quando lo faccio dig +short www.winaproduct.comrestituisce il rispettivo indirizzo IP del server, no 127.0.0.1.

Aperto www.winaproduct.comsu Firefox, mostra il rispettivo sito Web, ma non è previsto.

Ma non c'è nessun problema con ping, busybox nslookup, busybox ping, resolveipetc.

Quindi qual'è il problema ? E come risolverlo? Penso che il problema sia con la libreria di risoluzione DNS.

Una temporanea correzione-up, messa a punto dnsmasqe il cambiamento nameserverdi 127.0.0.1a /etc/resolv.conf.

aggiornare

problema risolto magicamente dopo l'installazione libnss3, come dipendenza digoogle-chrome

assomiglia a /etc/nsswitch.conf predefinito hosts: files dns

come dire nslookup, digecc. prima chiedi il file / etc / hosts invece chiedendo direttamente al DNS?

ma perché busybox nslookup, wget, resolveipecc stanno lavorando in modo diverso rispetto nslookup, digecc?


come appare la hosts:voce /etc/nsswitch.conf?
Casey,

@ casey, /etc/nsswitch.conf sembrahosts: files dns
Arnab il

Aggiungi queste informazioni chiave all'interno del tuo quartier generale.
dan

Questo chiaramente non è un problema DNS. Si prega di guardare questa domanda molto simile: unix.stackexchange.com/q/158419/31707 .
dan

Risposte:


16

nslookup, dige hostsono strumenti per l'interrogazione di server dei nomi DNS.

Se la tua configurazione non è fornita da un server dei nomi (come le informazioni fornite in /etc/hosts) tali strumenti non li mostreranno, perché chiedono direttamente al server dei nomi.

Se vuoi verificare che la "solita" risoluzione funzioni (cioè nel modo specificato in /etc/nsswitch.conf) puoi usare getent:

getent hosts www.winaproduct.com

getent hosts www.winaproduct.comè perfettamente funzionante, ma nslookup, dig, hostecc, sono solo come esempio, voglio su firefox .
Arnab,

1
Se funziona con getent, dovrebbe funzionare anche con Firefox. (Entrambi usano lo stesso meccanismo di resoltution.) Se davvero non funziona, controlla la configurazione "insolita" in Firefox. Forse hai impostato una sorta di proxy o qualcosa del genere.
michas,

grazie per il commento, non utilizzo alcuna configurazione insolita di Firefox, no, non funziona con Firefox (38.0.1).
Arnab,

3
Sono molto sicuro che si tratti di un problema con il browser. Prova wgeto qualche altro browser come Chrome. Se getentdà il risultato atteso tutti dovrebbero.
michas,

1
@daniel Azuelos, non c'è niente di sbagliato nelle impostazioni di Firefox, che sta già utilizzando No Proxy. Quindi, come dire nslookup, digecc. /etc/hostsPrima chiedi il file invece chiedendo direttamente al DNS? Grazie per il tuo prezioso commento.
Arnab,

4

È possibile installare DNSmasq che leggerà le voci / etc / hosts e le importerà nella sua cache DNS. Quindi, tutti gli strumenti DNS e le applicazioni di query DNS come dig, host e nslookup riceveranno risposte che provengono dal file / etc / hosts.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.