Primeiro, verifique se o nsswitch.conf está correto:
$ grep hosts /etc/nsswitch.conf
hosts: files dns
Certifique-se de que ele diz "arquivos dns", caso contrário, ele não procurará em seu arquivo de hosts antes de solicitar o DNS.
Se estiver correto no nsswitch, eu já vi que um personagem invisível de alguma forma entrou no meu arquivo de hosts, fazendo com que parecesse perfeitamente normal, mas o caracter invisível não funcionou.
Portanto, tente excluir a linha e, em seguida, crie-a novamente - à mão, não cole.
A próxima coisa que você pode tentar é testar o que ele procura fazendo o ping:
$ ping mysite.com
PING mysite.com (192.168.0.97) 56(84) bytes of data.
Se você vir o endereço IP correto, ele será resolvido corretamente e o navegador será o causador do problema. Não use host, dig ou nslookup, eles ignoram / etc / hosts! Use ping para ter o endereço IP resolvido como a maioria dos aplicativos o veria.