社区应用 最新帖子 精华区 社区服务 会员列表 统计排行
  • 1577阅读
  • 0回复

[分享]解决无法通过修改hosts屏蔽网站

楼层直达
级别: 光盘中级
发帖
4775
飞翔币
495
威望
708
飞扬币
2745
信誉值
5



1、hosts文件名正确,不带后缀,已去除只读属性,并有修改权限


2、书写格式正确(以屏蔽百度为例):127.0.0.1       www.baidu.com



3、在Internet选项中,没有勾选“为LAN使用代理服务器”


4、已清空DNS缓存:ipconfig /flushdns,并重启电脑


5、打开本地连接的Internet(TCP/IP)协议的属性页\高级\WINS\选中“启用 LMHOSTS 查询”,按下“导入 LMHOSTS”按钮,导入C:\WINDOWS\system32\drivers\etc下的hosts文件,并重启浏览器。
  要解决问题,让我们首先来了解一下host文件的作用。
  1.加快域名解析
  对于要经常访问的网站,我们可以通过在Hosts中配置域名和IP的映射关系,这样当我们输入域名计算机就能很快解析出IP,而不用请求网络上的DNS服务器。
  2.方便局域网用户
  在很多单位的局域网中,会有服务器提供给用户使用。但由于局域网中一般很少架设DNS服务器,访问这些服务要输入难记的IP地址,对不少人来说相当麻烦。现在可以分别给这些服务器取个容易记住的名字,然后在Hosts中建立IP映射,这样以后访问的时候我们输入这个服务器的名字就行了。
  3.屏蔽网站
  现在有很多网站不经过用户同意就将各种各样的插件安装到你的计算机中,有些说不定就是木马或病毒。对于这些网站我们可以利用Hosts把该网站的域名映射到错误的IP或自己计算机的IP,这样就不用访问了。比如不想访问http://www.baidu.com,那我们在Hosts写上以下内容:
  127.0.0.1       www.baidu.com
  这样计算机解析域名就解析到本机或错误的IP,达到了屏蔽的目的。
  4.顺利连接系统
  对于Lotus的服务器和一些数据库服务器,在访问时如果直接输入IP地址那是不能访问的,只能输入服务器名才能访问。那么我们配置好Hosts文件,这样输入服务器名就能顺利连接了。
  从上面可以看到Hosts文件与DNS是紧密相关的,那么涉及到DNS的服务有哪些呢?对了,就是DNS Client服务。从名字看它就是DNS的客户端,微软对DNS Client服务的说明是“为此计算机解析和缓冲域名系统 (DNS) 名称。如果此服务被停止,计算机将不能解析 DNS 名称并定位 Active Directory 域控制器。如果此服务被禁用,任何明确依赖它的服务将不能启动。”似乎禁用“DNS Client服务”客户端就不能解析域名了。事实是这样吗?
  客户端计算机在遇到一个域名需要解析时,计算机的查询顺序为:
  1、本机DNS缓存(DNS Client服务启用的话),如果缓存中没有则跳到3
  2、本机hosts文件(如果DNS Client服务关闭,从这个起步)
  3、首选 DNS 服务器
  4、备用 DNS 服务器
  可以看到,如果开启DNS Client服务确实可以一定程序上提高解析域名的速度,但也由此引发一些问题,它的缓存中保留了一些你曾经访问过的网站,从安全的角度看有泄漏的危险;当本机的DNS缓存中没有你所访问的网站IP时它会跳过hosts文件直接到首选 DNS 服务器中去寻求解析,从而使hosts文件屏蔽网站的功效失灵。
  看到这里大家都知道该怎么做了,停止DNS Client服务,将其启动方式设置为手动,并到Internet选项中删除所有脱机内容,重启浏览器,OK了。



  ………且慢,重启电脑,进到受限用户USERS组成员账户中,发现一切如故!连管理员都被屏蔽了,受限用户却能逍遥法外,实在令人气愤。复习一下前面的域名解析顺序:由于DNS Client服务被关闭了,第1项跳过;好,看第2项hosts文件,受限用户“看”不到这个文件?查看hosts文件所在的文件夹etc的权限,果然USERS组没有读取的权限!好办,进到管理员账号那里给加上,终于搞掂了。
 
祝福笨笨早日恢复健康!