A ferramenta host não simplesmente resolve nomes (como em, usando o resolvedor de nome do sistema), mas na verdade consulta servidores dns (como em, enviando pacotes para udp / 53 e possivelmente tcp / 53): não sabe nem usa o arquivo local hosts
.
Se você quiser testar o resolvedor do sistema operacional (como em gethostbyname () e funções libc semelhantes), você pode tentar executar ping no nome adicionado a /etc/hosts
e ele honrará o que você colocou nesse arquivo.
Além disso, como você já descobriu, a pesquisa de DNS no Mac OSX não usa /etc/resolv.conf
e a maneira correta de configurar quais servidores DNS são consultados é na interface de rede e / ou na ferramenta de linha de comando networksetup
. Eu sinceramente não sei se você pode configurar a ordem em que as fontes são tentadas, mas o comportamento padrão é tentar /etc/hosts
primeiro e servidores dns depois disso.