Basierend auf meinen eigenen Erfahrungen und dem, was ich beim Googeln erlebt habe, sind hier einige Dinge, die ich ausprobieren sollte:
1. Haben Sie überprüft, ob es richtig funktioniert?
Änderungen an Hosts sollten sofort wirksam werden, aber Windows speichert die Daten für die Namensauflösung im Cache, sodass möglicherweise für einige Zeit die alten Datensätze verwendet werden. Öffnen Sie eine Befehlszeile (Windows + R cmd
,, Enter) und geben Sie Folgendes ein:
ipconfig /flushdns
Alte Daten löschen. Um zu überprüfen, ob es funktioniert, verwenden Sie (vorausgesetzt, Sie haben einen IPv4-Eintrag in Ihren Hosts für www.example.com oder einen IPv6-Eintrag in Ihren Hosts für ipv6.example.com):
ping www.example.com -n 1
ping -6 ipv6.example.com -n 1
Und sehen Sie, ob es die richtige IP verwendet. Wenn ja, ist Ihre Hosts-Datei in Ordnung und das Problem liegt an einer anderen Stelle.
Sie können den NetBios-Cache auch mit zurücksetzen (Öffnen Sie die Konsole als Administrator, sonst schlägt dies fehl):
nbtstat -R
Sie können die aktuellen Daten im DNS-Cache überprüfen mit:
ipconfig /displaydns | more
2. Grundlagen
- Ist Ihre Hosts-Datei korrekt benannt? Es sollte sein
hosts
und nicht host
, etc.
- Ist die Erweiterung korrekt? Es sollte keine Erweiterung haben (
hosts
nicht hosts.txt
) - Seien Sie vorsichtig, wenn Sie Windows so konfiguriert haben, dass bekannte Erweiterungen ausgeblendet werden. Überprüfen Sie die Eigenschaften, um sicherzugehen: Der richtige Host-Dateityp wird nur als "Datei" angezeigt.
- Haben Sie die korrekte Syntax befolgt ? Haben Sie Zeilen versehentlich ein Hash (
#
) vorangestellt, das auf Kommentare hinweist?
- Haben Sie sich um alle Varianten gekümmert (
www.example.com
und am example.com
sichersten beides)?
3. Leerzeichen
Das Format für jede Zeile ist IP address
dann eine horizontale Registerkarte (Escape-Code \t
, ASCII HT
, Hex 0x09
) oder ein einzelnes Leerzeichen (Hex 0x20
), dann der Hostname, dh. www.example.com
, dann schließlich ein Wagenrücklauf gefolgt von einem Zeilenvorschub (Escape-Codes \r\n
, ASCII CRLF
, Hex 0x0d 0x0a
).
Beispieleinträge unter Verwendung von Unicode-Steuerbildern zur Angabe von Steuerzeichen. (Kopieren Sie diese nicht und fügen Sie sie in Ihre Hosts-Datei ein!)
192.0.2.1␉www.example.com␍␊
2001:db8:8:4::2␉ipv6.example.com␍␊
Die einzelnen Bytes können in Notepad ++ mit dem Hex-Editor-Plugin angezeigt werden . In Notepad ++ werden auch Sonderzeichen angezeigt (Ansicht -> Symbol anzeigen), sodass Sie die Anzahl und Art der Leerzeichen auf einfache Weise überprüfen können.
Wenn Sie Host-Einträge von einer beliebigen Stelle kopiert und eingefügt haben, werden möglicherweise mehrere Leerzeichen angezeigt. Theoretisch unterstützt Hosts mehrere Leerzeichen, die die beiden Spalten trennen, aber es ist eine andere Sache, wenn nichts anderes funktioniert.
Stellen Sie sicher, dass in allen Zeilen Ihrer Hosts-Datei entweder Tabulatoren oder Leerzeichen verwendet werden, nicht beides.
Beenden Sie zum Schluss die Datei mit einer Leerzeile.
4. Registrierungsschlüssel
Es gibt einen Registrierungsschlüssel, der den Speicherort der Hosts-Datei angibt. Angeblich unterstützt Windows das Ablegen der Hosts-Datei an anderen Speicherorten nicht, Sie sollten dies jedoch überprüfen. Der Schlüssel ist:
\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\DataBasePath
Der Eintrag sollte sein:
%SystemRoot%\System32\drivers\etc
5. Berechtigungen
Manchmal gibt es Probleme mit Berechtigungen für die Datei, den Dateiattributen und ähnlichen Dingen. So erstellen Sie die Datei mit Standardberechtigungen neu:
- Erstellen Sie eine neue Textdatei auf Ihrem Desktop.
- Kopieren Sie den Inhalt Ihrer aktuellen Hosts-Datei und fügen Sie ihn in diese Datei im Editor ein.
- Speichern Sie die neue Textdatei und benennen Sie sie in um
hosts
.
- Kopieren Sie die Datei in Ihr
%SystemRoot%\System32\drivers\etc
Verzeichnis (verschieben Sie sie nicht ) und überschreiben Sie die alte Datei.
Letzter Punkt ist wichtig: Kopieren funktioniert, Verschieben nicht.
Das lokale Users
Konto muss die Hosts-Datei lesen können . So stellen Sie sicher (in Windows 7):
- Navigieren Sie
%SystemRoot%\System32\drivers\etc
im Windows Explorer zu.
- Wenn Sie die
hosts
Datei nicht sehen können , stellen Sie sicher , dass Sie versteckte und Systemdateien sehen können .
- Klicken Sie mit der rechten Maustaste auf die
hosts
Datei und wählen Sie sie Properties
aus dem Kontextmenü aus.
hosts Properties
Klicken Sie im Fenster auf die Security
Registerkarte.
- Untersuchen Sie die Liste der Namen im
Group or user names:
Feld. Wenn %COMPUTERNAME%\Users
vorhanden, klicken Sie darauf, um die Berechtigungen anzuzeigen.
- Wenn
Users
nicht vorhanden ist oder vorhanden ist, aber keine Read
Berechtigung hat, klicken Sie auf Edit...
.
- Ist dies
Users
nicht der Fall, klicken Sie auf Add...
, geben Sie ein Users
, klicken Sie auf Check Names
und klicken Sie auf OK, oder drücken Sie die Eingabetaste.
- Wählen Sie
Users
und vergewissern Sie Read & execute
sich, dass in der Allow
Spalte markiert ist . OK klicken. Wenn eine Windows Security
Warnmeldung angezeigt wird, fahren Sie Yes
fort.
- Klicken Sie auf OK, um das
hosts Properties
Fenster zu schließen .
- Gehen Sie zu Abschnitt 1 dieser Antwort und befolgen Sie die Anweisungen, um zu überprüfen, ob es jetzt funktioniert.
6. Kodierung
Die Hosts-Datei sollte in ANSI oder UTF-8 ohne Stückliste codiert sein. Sie können dies mit Datei -> Speichern unter tun.
7. Proxies
Wenn Sie einen Proxy konfiguriert haben, umgeht dieser möglicherweise die Hosts-Datei. Die Lösung besteht darin, den Proxy nicht zu verwenden oder ihn so zu konfigurieren, dass dies nicht möglich ist.
Um dies zu überprüfen, gehen Sie zu Ihrem Internet Explorer -> Internetoptionen -> Verbindungen -> LAN-Einstellungen. Wenn alles leer ist und "Einstellungen automatisch erkennen" aktiviert ist, verwenden Sie keinen Proxy.
Wenn Sie sich auf einen Proxy verlassen, um auf das Web zuzugreifen, und ihn daher nicht deaktivieren möchten, können Sie Ausnahmen hinzufügen, indem Sie zu Internet Explorer -> Internetoptionen -> Verbindungen -> LAN-Einstellungen -> Proxyserver / Erweitert gehen. Fügen Sie dann Ihre Ausnahmen zum Textfeld Ausnahmen hinzu. Z.Blocalhost;127.0.0.1;*.dev
8. DNS-Adresse
(Dies kann auch Proxy-Probleme lösen.)
Wechseln Sie zu den Eigenschaften Ihrer Netzwerkverbindungen und dann zu den TCP / IP-Einstellungen, und ändern Sie den ersten DNS-Server in 127.0.0.1
(localhost). Die zweite sollte wahrscheinlich Ihre tatsächliche DNS-IP sein.
Dies ist nicht erforderlich, damit die hosts-Datei funktioniert. In Ihrem Fall kann es jedoch hilfreich sein, wenn etwas seltsam konfiguriert ist.
9. .Lokale Adressen
Wenn Sie einen .local-Domaineintrag in Form von myhost.local verwenden und dieser ignoriert wird, versuchen Sie Folgendes
x.x.x.x myhost.local www.myhost.local
auch wenn die www.myhost.local nicht existiert. Windows hängt seine Arbeitsgruppe oder Localdomain nicht an.