Estou executando o Ubuntu 10.04.2 LTS Desktop. Sendo um desenvolvedor web, naturalmente criei um "me.com" no meu /etc/hosts
arquivo. Infelizmente, minha resolução de nome está saindo para o DNS antes de verificar primeiro a entrada dos hosts locais e não consigo descobrir o porquê.
O resultado final é que, se o meu /etc/resolv.conf contiver nameserver 127.0.0.1
primeiro, recebo uma resposta no meu navegador da web me.com (local) em menos de um segundo. Mas se eu não tiver essa entrada, minha resposta levará algumas vezes até 5 segundos se meu ISP estiver um pouco lento.
O problema era tão problemático que eu realmente tive que fazer uma pergunta aqui (e alguém a resolveu) sobre como inserir automaticamente essa entrada /etc/resolv.conf
. Mas um dos usuários (@shellholic) aqui altamente recomendado (e comentou comigo sobre isso) que eu deveria registrar esta pergunta.
Você sabe por que a resolução de nomes da minha estação de trabalho precisa atingir o servidor DNS primeiro antes de acessar minha /etc/hosts
entrada de arquivo? Por enquanto, estou usando o truque resolv.conf .
cat /etc/nsswitch.conf
e cat /etc/host.conf
? Além disso: como você está testando isso (através de ping, navegador, farejamento de pacotes etc.)?
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
. Não hesite em ofuscar a racionalidade.
/etc/nsswitch.conf
. As entradas no meu sistema são um pouco óbvias, mas você pode testar as pesquisas apenasfiles
como uma opção e ver se isso fez alguma diferença.