/etc/hosts funktioniert nicht unter macOS 10.13

/etc/hosts funktioniert nicht unter macOS 10.13

Ich habe versucht, /etc/hostseinige Websites mit der Datei auf den lokalen Host umzuleiten. Dazu habe ich sie im Terminal geöffnet, sudo nano /etc/hostsdann habe ich die Datei geändert und gespeichert. Als letzten Schritt habe ich den DNS-Cache mit geleert sudo killall -HUP mDNSResponder.

So sieht meine Hosts-Datei aus:

$ 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

Das funktioniert einfach nicht. Ich habe versucht, neu zu starten, aber ohne Erfolg. Ich habe auch viel recherchiert, aber im Internet keine funktionierenden Antworten gefunden. Verwendet das Betriebssystem diese Datei noch oder wird das nie wirklich funktionieren?

Ich verwende macOS 10.13.

Antwort1

Ich hatte die Hosts und IP-Adressen durch Tabulatoren getrennt, die Umstellung auf nur ein Leerzeichen dazwischen hat bei mir funktioniert:

127.0.0.1 www3.mytestsite.com

Antwort2

OSXDailyhat einen anderen Befehlssatz für High Sierra – vielleicht einen Versuch wert …

sudo killall -HUP mDNSResponder; sleep 2; echo macOS DNS Cache Reset | say

oder wenn es klebrig ist...

sudo killall -HUP mDNSResponder && echo macOS DNS Cache Reset

Antwort3

Funktioniert bei mir auf einem 10.13.3-System.

% 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

Allerdings! Einige Anwendungen (z. B. Google Chrome) führen möglicherweise eigene Abfragen an ihre eigenen DNS-Server durch (z. B. an 8.8.8.8), oder Anwendungen können die /etc/hostsDatei problemlos ignorieren, wenn sie nur DNS-Anfragen stellen und nicht den System-Resolver durchlaufen.

% host example.com
example.com has address 93.184.216.34
example.com has IPv6 address 2606:2800:220:1:248:1893:25c8:1946

verwandte Informationen