Eu tenho o mesmo problema. Acabei de configurar um novo laptop mac e estava funcionando até eu migrar do meu antigo. Agora ping localhost não pode resolver. Deve ser alguma configuração Eu tenho mudanças em algum lugar, mas eu não sei onde ...
Eu descobri que "ping localhost". trabalho. Acrescentar um ponto final significa ignorar a pesquisa pelo nome "localhost" em outros domínios de pesquisa. Isso é legal, mas eu ainda não entendi porque a entrada / etc / hosts não está funcionando ...
editar: resolvido.
bash-3.2# dscl . read /Hosts/localhost
AppleMetaNodeLocation: /Local/Default
RecordName: localhost
RecordType: dsRecTypeStandard:Hosts
bash-3.2# ping localhost
ping: cannot resolve localhost: Unknown host
bash-3.2# dscl . append /Hosts/localhost IPAddress 127.0.0.1
bash-3.2# dscl . read /Hosts/localhost
AppleMetaNodeLocation: /Local/Default
IPAddress: 127.0.0.1
RecordName: localhost
RecordType: dsRecTypeStandard:Hosts
bash-3.2# ping localhost
PING localhost (127.0.0.1): 56 data bytes
64 bytes from 127.0.0.1: icmp_seq=0 ttl=64 time=0.083 ms
64 bytes from 127.0.0.1: icmp_seq=1 ttl=64 time=0.140 ms
voila!
De alguma forma, o registro dos serviços de diretório estava fora de sincronia com o arquivo / etc / hosts. E quando não há endereço IP na configuração dos serviços de diretório, tentar resolver o nome vai para mDNSResponder, que pergunta ao DNS.