Host文件修改后无效的解决办法

什么是hosts文件?

简单的说,hosts文件是用于本地dns服务(相关主题:什么是DNS缓存,如何清除DNS缓存?)的,采用ip 域名的格式写在一个文本文件当中,Hosts是一个没有扩展名的系统文件,可以用记事本等工具打开,其作用就是将一些常用的网址域名与其对应的IP地址建立一个关联“数据库”,当用户在浏览器中输入一个需要登录的网址时,系统会首先自动从Hosts文件中寻找对应的IP地址,一旦找到,系统会立即打开对应网页,如果没有找到,则系统再会将网址提交DNS域名解析服务器进行IP地址的解析。

Windows系统上一般存放在系统盘的system32目录下,具体位置即

C:windows\system32\drivers\etc

本地主机一般都被定义为 127.0.0.1或 locahost。根据微软的相关文档,hosts文件必须是ascii编码方式, 如果你存为unicode格式将不会被正确读取。还有就是,一些网络反黑文件,就是通过修改hosts文件来实现对恶意网址的屏蔽甚至转向的。

hosts文件修改无效原因分析

修改hosts将域名指向新的ip是总是无法生效, 试过很多办法,问题却依然存在, 于是上微软的网站寻找答案, 最终发现时一个DNS Client 服务的问题, DNS CLient服务是缓存dns用的, 所以说修改了hosts的文件是不能马上生效的, 需要一段时间的延时, 通常可以用ipconfig /flushdns来刷新dns缓存。方法很简单:打开运行,输入:

ipconfig /flushdns 

一般来说,通过以上方式刷新dns缓存后,你新修改的host文件就能马上生效了。或者重启Windows服务:DNS Client也可以的。

posted @ 2014-12-08 18:33  码农神说  阅读(2260)  评论(0编辑  收藏  举报