Sto eseguendo Ubuntu 10.04.2 LTS Desktop. Essendo uno sviluppatore web, naturalmente ho creato un "me.com" nel mio /etc/hostsfile. Sfortunatamente, la mia risoluzione del nome sta andando al DNS prima di controllare prima la voce dei miei host locali e non riesco a capire perché.
Il risultato finale è che se il mio /etc/resolv.conf contiene nameserver 127.0.0.1prima lì, allora ricevo una risposta nel mio browser web da me.com (locale) in meno di un secondo. Ma se non ho quella voce, la mia risposta a volte impiega fino a 5 secondi se il mio ISP è un po 'lento.
Il problema era così problematico che in realtà ho dovuto presentare una domanda qui (e qualcuno l'ha risolto) per come inserire automaticamente quella voce /etc/resolv.conf. Ma uno degli utenti (@shellholic) qui ha fortemente raccomandato (e commentato avanti e indietro con me su di esso) che avrei dovuto presentare questa domanda.
Sai perché la risoluzione dei nomi della mia workstation deve colpire il server DNS prima di colpire la /etc/hostsvoce del mio file? Per ora, sto usando il trucco resolv.conf .
cat /etc/nsswitch.confe cat /etc/host.conf? Inoltre: come lo stai testando (tramite ping, browser, sniffer di pacchetti ecc.)?
time getent hosts me.com; hostname --fqdn; grep 'me.com' /etc/hosts; grep hosts /etc/nsswitch.conf; netstat -uln | grep ':53'; cat /etc/host.conf; wc -l /etc/hosts. Non esitate a offuscare la razionalità.
/etc/nsswitch.conf. Le voci sul mio sistema sono un po 'non ovvie, ma puoi testare le ricerche solofilescome opzione e vedere se ciò ha fatto la differenza.