Tentei usar /etc/hosts
o arquivo para redirecionar alguns sites para localhost. Para isso, abri-o no terminal, sudo nano /etc/hosts
modifiquei o arquivo e salvei-o. Como última etapa, limpei o cache DNS com sudo killall -HUP mDNSResponder
.
Esta é a aparência do meu arquivo hosts:
$ cat /etc/hosts
##
# Host Database
#
# localhost is used to configure the loopback interface
# when the system is booting. Do not change this entry.
##
127.0.0.1 somethig.com
127.0.0.1 localhost
255.255.255.255 broadcasthost
::1 localhost
Isso simplesmente não funciona. Tentei reiniciar, sem sorte. Também pesquisei bastante, mas não encontrei nenhuma resposta funcional na internet. O sistema operacional ainda usa esse arquivo ou isso nunca funcionará?
Estou usando o macOS 10.13.
Responder1
Eu tinha os hosts e endereços IP separados por guias, mudar para apenas um espaço entre eles funcionou para mim:
127.0.0.1 www3.mytestsite.com
Responder2
OSXDailytem um conjunto de comandos diferente para High Sierra - talvez valha a pena tentar ...
sudo killall -HUP mDNSResponder; sleep 2; echo macOS DNS Cache Reset | say
ou se estiver pegajoso...
sudo killall -HUP mDNSResponder && echo macOS DNS Cache Reset
Responder3
Funciona para mim em um sistema 10.13.3.
% grep example /etc/hosts
127.0.0.1 example.com
% perl -MSocket -e 'printf "%vx\n", inet_aton "example.com"'
7f.0.0.1
% dns-sd -G v4 example.com
DATE: ---Tue 06 Mar 2018---
10:49:47.455 ...STARTING...
Timestamp A/R Flags if Hostname Address
TTL
10:49:47.457 Add 2 -1 example.com. 127.0.0.1
1
No entanto! Alguns aplicativos (por exemplo, Google Chrome) podem fazer suas próprias consultas em seus próprios servidores DNS (por exemplo, para 8.8.8.8
) ou os aplicativos podem facilmente ignorar o /etc/hosts
arquivo se fizerem apenas solicitações de DNS e não passarem pelo resolvedor do sistema.
% host example.com
example.com has address 93.184.216.34
example.com has IPv6 address 2606:2800:220:1:248:1893:25c8:1946