Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I have a computer with Windows XP SP2 with a weird problem. The hosts file doesn't work. No matter what I do, adding or removing entries in the file doesn't make any difference, pinging the added names times out. I tried flushing the DNS cache (using ipconfig /flushdns) but that didn't work, I even tried to restart the DNS client service but that made no difference too.

Removing entries also has no effect, I ping the names and I get a reply.

Help!!!

Edit: Thanks for your answer guys, but the problem is more complicated than this. It seems I'll have to reinstall Windows.

share|improve this question
    
Can you post a sample of the entries in your hosts file? –  JFV Jul 5 '09 at 17:53
    
For all the problems is a good advice to use Filemon or any similar tool to check what file are the program checking... You will see that hosts.ics file opened by CMD process. –  Carlos Apr 19 '11 at 15:32
add comment

13 Answers

Last time that happened to me, I was letting notepad name the file hosts.txt.

It must be named hosts - no extension. Change notepad save as to ..

share|improve this answer
add comment

Suggestions:

1- Make it is named "hosts." with no extension. As another commenter noted, sometimes editors will try and impose their default extensions.

2- Make sure you are using the file in the correct location. On my XP box it is C:\WINDOWS\system32\drivers\etc

3- Make sure that the entries you are trying to make are properly formatted. In particular, do not prefix the line with a #; that indicates a comment/remark.

Are you sure about the re-install? I am all for it, I do it once or twice a year to clean the fluff, but what makes you think it will solve the issue with (basically) name resolution?

Good luck

share|improve this answer
add comment


please take this Link as a Reference how to handle and setup your hostfile.

http://www.mvps.org/winhelp2002/hostsfaq.htm

Furthermore, take a look into your Windows Event Log if any error is thrown.

Good Luck,
rAyt

share|improve this answer
add comment

Had the same issue, after a new XP baseline was installed on my computer at work. My previous hosts file was reinstalled in C:\WINDOWS\system32\drivers\etc and I was given write permission to it (so I could modify it if necessary) but I couldn't ping/RDP/ssh to any of the machines by hostname. Tried flushing DNS cache, rebooting, etc, to no avail. Solution was to save hosts to hosts.bak, recreate hosts with default permissions (from parent folder) and paste in the old data. I could then RDP/ping by hostname, and Windoze Admins then able to give me write permission, and it still worked.

share|improve this answer
add comment

Solved here...

I had the issue when I had IIS installed. There is a separate host file called:

hosts.ics

Append any changes in this file instead of hosts

share|improve this answer
add comment

If you entered the default IP for address, 127.0.0.1, you always get a reply for ping, because you are pinging yourself. Instead do a nslookup and see if proper IP is being returned. The idea of hosts is not to block traffic, but to redirect addresses.

share|improve this answer
3  
nslookup performs name resolution using DNS, the hosts file cannot be tested using nslookup. –  ThatGraemeGuy Jul 5 '09 at 18:46
add comment

The hosts file is for resolving the name to ip address. If your problem is a lack of reply (and the address is correct) then that is another problem.

Have you verified your network is working by pinging the ip addresses instead of the names?

Use the -a option on the ping command 'ping -a ipaddress' to help you figure out the name resolution.

If the name/address resolution is working, use the tracert command 'tracert myhost' to help you figure out where your packets are getting lost.

share|improve this answer
add comment

Make sure you don't have any trailing space after the hostname or it won't resolve either. If you have an entry like '10.10.10.10 yourhost ' and you try to 'ping yourhost' you'll get an unkown host.

BR, Mike

share|improve this answer
add comment

Delete the "etc" folder and replace it("etc") from another user, who hots enterties are working fine.

share|improve this answer
add comment

I had the same problem and I saw in the Event Log an error every time I tried running a ipconfig /flushdns that said 'There was an error while attempting to read the local hosts file.' What fixed the issue for me was to delete and recreate the host file. For some reason that worked just fine.

share|improve this answer
    
Thanks Brain, deleted everything in etc. put in a new hosts file and working fine now ... Had tried all the things mentioned before. –  user58129 Oct 24 '10 at 22:42
add comment

For people like me who, after installing windows, stop/disable every service which wont be used, check if service "TCP/IP NetBIOS Helper" is running. Without it, the hosts file wont be used at all.

share|improve this answer
add comment

If you have any IPv6 entries, make sure that any IPv4 entries precede them!

share|improve this answer
add comment

On Windows XP you can stop the service called DNS CLient, if the service is in running state windows ignores your host file.

share|improve this answer
    
No, no it doesn't. –  HopelessN00b Nov 19 '12 at 22:07
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.