Vraag hosts-bestand genegeerd, hoe problemen oplossen?


Het bestand hosts op Windows-computers wordt gebruikt om bepaalde tekenreeksen aan specifieke IP-adressen te binden om andere methoden voor naamomzetting op te heffen.

Vaak beslist men om het hosts-bestand te veranderen en ontdekt dat de wijzigingen weigeren van kracht te worden, of dat zelfs oude ingangen van het hosts-bestand daarna worden genegeerd. Een aantal 'gotcha'-fouten kunnen dit veroorzaken en het kan frustrerend zijn om erachter te komen welke.

Wat is een uitgebreid probleemoplossend protocol dat kan worden gevolgd wanneer het wordt geconfronteerd met het probleem dat Windows een hosts-bestand negeert?


Deze vraag heeft duplicaten over SO, zoals HOSTS-bestand wordt genegeerd 

Deze hebben echter de neiging om met een specifiek geval om te gaan, en eens welke fout het OP heeft gemaakt, is ontdekt, is de discussie voorbij. Als je toevallig niet dezelfde fout hebt gemaakt, is zo'n discussie niet erg nuttig. Dus ik dacht dat het nuttiger zou zijn om een ​​algemeen protocol te hebben voor het oplossen van alle problemen met betrekking tot hosts die zouden kunnen worden behandeld allemaal gevallen.


121
2017-11-26 16:28


oorsprong


Als iemand elders gepost heeft, gebruik dan ook niet "nslookup" om dit te testen, omdat die opdracht het hosts-bestand negeert. Gebruik liever "ping". - LatinSuD


antwoorden:


Op basis van mijn eigen ervaring en wat ik heb aangetroffen tijdens Googlen, zijn hier enkele dingen om te proberen:

1. Heb je gecontroleerd of het correct werkt?

Wijzigingen in hosts moeten onmiddellijk worden doorgevoerd, maar Windows cached naamomzettingsdata zodat de oude records enige tijd kunnen worden gebruikt. Open een opdrachtregel (Windows + R, cmd, Enter) en typ:

ipconfig /flushdns

Om de oude gegevens te verwijderen. Als u wilt controleren of het werkt, gebruikt u (ervan uitgaande dat u een ipv4-vermelding heeft in uw hosts voor www.example.com of een ipv6-vermelding in uw hosts voor ipv6.example.com):

ping www.example.com -n 1
ping -6 ipv6.example.com -n 1

En kijk of het de juiste IP gebruikt. Zo ja, uw hosts-bestand is in orde en het probleem zit ergens anders.

U kunt ook de NetBios-cache opnieuw instellen (open de console als een beheerder of deze mislukt):

nbtstat -R

U kunt de huidige gegevens in de DNS-cache controleren met:

ipconfig /displaydns | more

2. Basisprincipes

  • Is het bestand van uw hostnaam juist benoemd? Het zou moeten zijn hosts en niet host, enz.
  • Is de extensie correct? Het zou geen extensie moeten hebben (hosts niet hosts.txt) - wees voorzichtig als u Windows hebt geconfigureerd om bekende extensies te verbergen, controleer de eigenschappen om zeker te zijn: het type van het juiste hosts-bestand zal verschijnen als alleen "Bestand".
  • Heb je de juiste syntaxis? Heb je per ongeluk lijnen voorafgegaan met een hash (#) die op opmerkingen wijst?
  • Heb je voor alle varianten gezorgd (www.example.com en example.com - het veiligst om gewoon beide toe te voegen)?

3. Whitespace

Het formaat voor elke regel is IP address, dan een horizontaal tabblad (escape-code \t, ASCII HT, hex 0x09) of een enkele spatie (hex 0x20), dan de hostnaam, dwz. www.example.com, dan eindelijk een carriage return gevolgd door een line feed, (escape codes \r\n, ASCII CRLF, hex 0x0d 0x0a).

Voorbeelditems met Unicode-besturingsafbeeldingen om besturingstekens aan te geven. (Kopieer en plak deze niet in uw hosts-bestand!)

192.0.2.1␉www.example.com␍␊
2001:db8:8:4::2␉ipv6.example.com␍␊

De individuele bytes kunnen worden bekeken notepad ++ met de hex editor plug-in. Notepad ++ toont ook speciale tekens (Beeld -> Symbool tonen), zodat u eenvoudig het aantal en soort witruimtetekens kunt controleren.

Als je hostitems van ergens hebt gekopieerd en geplakt, kun je eindigen met meerdere spaties. In theorie ondersteunt hosts meerdere ruimtes die de twee kolommen scheiden, maar het is iets anders om te proberen als niets anders werkt.

Zorg er voor de zekerheid voor dat alle regels in uw hosts-bestand of tabs of spaties gebruiken, niet beide.

Beëindig tenslotte het bestand met een lege regel.

4. Registratiesleutel

Er is een registersleutel die de locatie van het hosts-bestand aangeeft. Naar verluidt ondersteunt Windows het hosts-bestand niet op andere locaties, maar u wilt misschien controleren. De sleutel is:

\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\DataBasePath

De invoer moet zijn:

%SystemRoot%\System32\drivers\etc

5. Rechten

Soms zijn er problemen met rechten op het bestand, de bestandskenmerken en vergelijkbare dingen. Het bestand opnieuw maken met standaardmachtigingen:

  1. Maak een nieuw tekstbestand op uw bureaublad.
  2. Kopieer en plak de inhoud van uw huidige hosts-bestand in dit bestand in Kladblok.
  3. Sla het nieuwe tekstbestand op en hernoem het naar hosts.
  4. Kopiëren (Beweeg niet) het bestand naar uw %SystemRoot%\System32\drivers\etc map en overschrijf het oude bestand.

Het laatste punt is belangrijk: kopiëren werkt, verplaatsen niet.

De lokale Users account moet het hosts-bestand kunnen lezen. Om zeker te zijn (in Windows 7):

  1. Navigeren naar %SystemRoot%\System32\drivers\etc in Windows Verkenner.
  2. Als je de. Niet kunt zien hosts het dossier, zorg ervoor dat je verborgen en systeembestanden kunt zien.
  3. Klik met de rechtermuisknop op de hosts bestand en selecteer Properties vanuit het contextmenu.
  4. In de hosts Properties venster, klik op de Security tab.
  5. Bestudeer de lijst met namen in de Group or user names: doos. Als %COMPUTERNAME%\Users is aanwezig, klik erop om de rechten te bekijken.
  6. Als Users is niet aanwezig, of is aanwezig maar heeft niet Read toestemming, klik Edit....
  7. Als Users is niet aanwezig, klik Add..., type Users, Klik Check Namesen klik op OK of druk op Enter.
  8. kiezen Usersen zorgen voor Read & execute is ingecheckt in de Allow kolom. Klik OK. Als een Windows Security waarschuwingsvenster verschijnt, kies Yes doorgaan.
  9. Klik op OK om het te sluiten hosts Properties venster.
  10. Ga naar deel 1 van dit antwoord en volg de aanwijzingen om te controleren of het nu werkt.

6. Codering

Het hosts-bestand zou moeten zijn gecodeerd in ANSI of UTF-8 zonder stuklijst. U kunt dit doen met Bestand -> Opslaan als.

7. Volmachten

Als u een proxy hebt geconfigureerd, kan deze het hosts-bestand omzeilen. De oplossing is om de proxy niet te gebruiken, of deze te configureren om dit niet te doen.

Ga naar uw Internet Explorer -> Internetopties -> Verbindingen -> LAN-instellingen om dit te controleren. Als alles leeg is en "Instellingen automatisch detecteren" is ingeschakeld, gebruikt u geen proxy.

Als u op een proxy vertrouwt om toegang te krijgen tot internet en deze daarom niet wilt uitschakelen, kunt u uitzonderingen toevoegen door naar Internet Explorer -> Internetopties -> Verbindingen -> LAN-instellingen -> Proxyserver / Geavanceerd te gaan. Voeg vervolgens uw uitzonderingen toe aan het tekstvak Uitzonderingen. Bijv. localhost;127.0.0.1;*.dev

8. DNS-adres

(Dit kan ook proxy-problemen oplossen.)

Ga naar de eigenschappen van uw netwerkverbindingen, vervolgens TCP / IP-instellingen en wijzig de eerste DNS-server in 127.0.0.1 (Localhost). De tweede moet waarschijnlijk het IP-adres van uw daadwerkelijke DNS zijn.

Dit is niet nodig om het hosts-bestand te laten werken, maar het kan in uw geval helpen als iets vreemd is geconfigureerd.

9. .locale adressen

Als u een .local-domeininvoer gebruikt in de vorm van myhost.local en het wordt genegeerd, probeert u dan het volgende

x.x.x.x myhost.local www.myhost.local

zelfs als de www.myhost.local niet bestaat. Windows voegt op de een of andere manier zijn werkgroep of localdomein niet toe.


184
2017-11-26 16:28



DANKT U ZOVEEL SUPERBEST! Ik huil bijna, dus velen van ons gaan uit hun dak voor een RUIMTE aan het begin van een lege ingang tussen 2 lijnen. Dank u Dank u Dank u Dank u wel !!!!!
Een andere gotcha is dat 64 bit-versies van Windows de System32-map omleiden voor 32-bit-toepassingen (zoals Notepad ++), dus wanneer u het bestand opslaat, verschijnt in de map SystemWOW64 in plaats van System32. De beste oplossing is gewoon de Windows-versie van Notepad gebruiken, die 64-bit is. De tweede beste is om verbinding te maken met de administratieve share (\\ uw machinetaam \ c $ \ Windows \ System32 \ drivers \ etc) om het bestand te openen als u een 32-bits editor gebruikt. - Tim Lewis
Goede post, maar met een paar fouten. 1) "Instellingen automatisch detecteren" in IE kan u leiden naar (zelfs onbewust) een proxy gebruiken, als uw netwerk inderdaad proxy-autoconfiguratie biedt. 2) Het wijzigen van uw DNS-servers in de netwerkinstellingen heeft niets te maken met hoe / wanneer / als de hosts bestand wordt gebruikt en het wijzigen naar 127.0.0.1 is in feite een fout, tenzij u daadwerkelijk een DNS-server op uw computer uitvoert. - Massimo
# 5 (het maken van een nieuw bestand en het kopiëren ervan) heeft de truc voor mij gedaan. Win7 kan grappig zijn met permissies. - chris
Ik heb het bestand van hosts onder Cygwin bewerkt met behulp van vim, ik denk dat dit ervoor zorgde dat het probleem voor mijn hosts-bestand niet meer werkte. Ik moest een nieuw bestand maken en de inhoud van het vorige hosts-bestand kopiëren en daarmee is het opgelost. - forloop


Zorg ervoor dat je eerst het ip-adres hebt geplaatst en vervolgens het "domein" als volgt:

127.0.0.1   bo.dev
127.0.0.1   www.bo.dev

13
2018-06-04 12:20



Ik geef de voorkeur aan een enkele regel: 127.0.0.1 bo.dev www.bo.dev ftp.bo.dev - Xhynk
Pas op, het windows hosts bestand staat slechts NEGEN of MINDER inzendingen per regel toe! Dit bit me en duurde een tijdje om erachter te komen. - andrew
Gebruik de .dev TLD lokaal denken dat je geen botsingen krijgt. Het is een geldig generiek globaal TLD van Google en u zult veel problemen ondervinden bij het gebruik ervan. Zien ma.ttias.be/chrome-force-dev-domains-https-via-preloaded-hsts - Patrick Mevzek


Voeg alsjeblieft controlebestandrechten toe. Ik vond dat ook al beschikte ik over lokale beheerdersrechten op de computer en dus aan hosts. Pas toen ik lokale gebruikers aan de hosts-bestandsrechten toevoegde met Read en Read & Execute en vervolgens een ipconfig / flushdns Dat de gastheren actief werden.


10
2017-10-09 23:29



Dat was het! Ik ben voor dit probleem verbijsterd jaar. ik voegde toe (machine)\USERS met Lezen en Lezen en uitvoeren permissies en daarna ipconfig /flushdns het werkte. Heel erg bedankt. Ik ben erg blij dat ik eindelijk mijn hosts-bestand terug heb. - Clement Cherlin


In mijn gevallen heb ik geprobeerd een door Windows 7 gemaakt bestand te maken: C: \ Windows \ System32 \ drivers \ etc \ hosts.ics.

Hosts.ics:

# This file has been automatically generated for use by Microsoft Internet
# Connection Sharing. It contains the mappings of IP addresses to host names
# for the home network. Please do not make changes to the HOSTS.ICS file.
# Any changes may result in a loss of connectivity between machines on the
# local network.

Als gevolg hiervan negeert Windows instellingen in C: \ Windows \ System32 \ drivers \ etc \ hosts en gebruikt het van hosts.ics.


4
2017-09-24 20:56



Van support.microsoft.com/en-us/kb/309642/en-us, wat oud is, dus misschien niet langer correct: "Het bestand Hosts.ics wordt door ICS gebruikt om informatie over dynamisch geconfigureerde clients op te slaan.Vermijd wijzigingen in dit bestand om te voorkomen dat connectiviteit of gegevens verloren gaan.Het Hosts-bestand (zonder bestandsnaamextensie) is het bestand waaraan u toevoegt informatie over statisch geconfigureerde clients. " Dus ik zou niet verwachten dat Windows de Hosts bestand alleen omdat Hosts.ics is aanwezig. Iets anders kan ervoor zorgen dat Windows uw Hosts-bestanden negeert, zoals misschien een verkeerde (maar verborgen) extensie. - Arjan
Ik zie deze informatie. Maar ik weet het niet, waarom ik hosts kon laten werken, alleen bewerkte ik hosts.ics. Voordat ik hosts.ics kon bewerken, probeerde ik alle methoden van dit onderwerp, maar hosts werken niet. - Unick


Ik ondervond hetzelfde probleem, gastbestanden die werden genegeerd. Ik heb alles geprobeerd in deze en vele andere discussies zonder geluk. Ik dacht dat ik zou posten wat voor mij werkte in het geval dat iemand anders dit tegenkwam.

  1. Open Windows Verkenner als beheerder
  2. VERWIJDER het hosts-bestand
  3. Open Kladblok als beheerder en maak een nieuw hosts-bestand aan
  4. Begin helemaal opnieuw en voeg items toe.
  5. Zorg ervoor dat het hosts-bestand geen extensie .txt heeft

Opmerking: eenvoudig het hosts-bestand openen en de inhoud verwijderen, controleren of het 0 kb was en opnieuw toevoegen, werkte niet. Ik vermoed een toestemmingenkwestie op het dossier.


2
2018-02-18 00:05





Heb uren, waarschijnlijk dagen op deze doorgebracht.

IBM Trusteer Eindpunt Rapportbeveiliging kan dit probleem veroorzaken.

Ik had mijnsite.com toegevoegd aan de lijst met vertrouwde websites.

Ik denk dat het als onderdeel van zijn beveiliging voorkomt dat malware of virussen je naar alternatieve sites leiden.

Nam mijn site van de lijst met vertrouwde sites en het controleert niet meer en "corrigeert" mijn hosts bestandsomleiding.

Hoop dat iemand iemand helpt zijn probleem op te lossen.


1
2018-02-16 21:00





Een probleem dat in de bovenstaande discussie is gemist, is niet-gekwalificeerde namen (namen die geen punt bevatten) in het bestand hosts. Uw netwerkinstellingen kunnen op dat moment beginnen en automatisch uw eigen domein toevoegen aan het einde van een ongeschikt domein. Bijgevolg kan de naam mogelijk niet worden opgelost, of nog erger, tot een geheel andere machine.


1
2018-05-06 07:20