hosts
文件(域名解析文件)是将主机名映射到IP
地址的一个纯文本文件,原始名称是HOSTS.TXT
(IP
,Internet Protocol
,Internet
协议)
作为一个纯文本文件,您可以选择用系统自带的记事本或者是写字板来打开该文件。hosts
是一个没有扩展名的系统文件,其基本作用就是将一些常用的网址域名与其对应的IP
地址建立一个关联“ 数据库 ”。当用户在浏览器中输入一个需要登录的网址时,系统会首先自动从hosts
文件中寻找对应的IP
地址,一旦找到,系统就会立即打开对应网页,如果没有找到,则系统会将网址提交DNS
域名解析服务器进行IP
地址的解析。
文件位置:
如果您使用windows
系统的话,通常位置是这个:
Windows XP/2000/Vista/7/8/8.1/10: C:\windows\system32\drivers\etc\
其他的操作系统下的位置:
Linux
及其他类Unix
操作系统:/etc
Android
:/system/etc/
IPhone OS
:/etc/
ails/82846903
对于经常访问的网站,咱们可以通过在hosts
文件中配置域名和IP
的映射关系,提高域名的解析速度。由于有了映射关系,当咱们输入域名后,计算机就能够快速解析出IP
地址,而不用请求网络上的DNS
服务器。
通常情况下,1个IP
映射1个域名,也可以1个IP
对应多个域名。
在用法当中,先填IP再填域名 比如说:127.0.0.1 http://www.baidu.com
域名如何得到呢?通常情况下,我们在浏览一个网页的时候,浏览器的地址栏里会显示他的域名。(注意,在hosts
文件中填写域名时,域名中的协议http/https
是不需要写上去的)
同样的,我们可以采用以下两种简单的方法来获取IP
- 采用
ping
命令的方式来获得IP
注:如果您家的电脑无法ping
通网站,可以跳到方法2 我们就可以通过ping
命令得到该域名的IP
地址: 打开cmd
后,我们可以得到一个DOS
命令窗口,我们上面输入:ping baidu.com -n 1
然后回车
在很多单位中,都会有自己局域网,而且还会有不同的服务器提供给公司的成员使用。但由于局域网中一般很少架设DNS
服务器,因此在访问这些服务器时,就需要输入难记的IP
地址,这对大家来说相当麻烦。因此,咱们可以分别给这些服务器取个容易记住的名字,然后在hosts
文件中建立IP
映射,这样在以后访问的时候,只要输入这个服务器的名字就OK!
现在有很多网站,在不经过咱们同意的时候,就将各种各样的插件安装到咱们的计算机中,其中不乏病毒和木马。对于这些网站,咱们就可以利用hosts
文件把这些网站的域名映射到一个错误的IP
或本地计算机的IP
地址上,这样就可以达到禁止访问的目的!
原理是,通过将域名和一个不能浏览该网页的IP
地址进行映射,当用户访问该网站时,出现域名解析错误的情况,使得用户无法访问该网页,这个方法可以用于屏蔽网页广告投放(但当今的广告一般由专业的广告投放公司如doubleclick
进行投放的,所以修改hosts
文件不能替代专业的去广告软件,但可以起到辅助作用)
要想使得域名解析错误,通常将域名和127.0.0.1
或者是0.0.0.0
这两个IP地址进行映射.(127.0.0.1
是回送地址,指本地机,别名是lolocalhost
,0.0.0.0
是一个不可路由的元地址)
举个例子,如果在hsots
文件上写127.0.0.1 www.baidu.com
,那就会无法访问http://www.baidu.com
如果想体验下手工屏蔽广告的话,可以使用到wireshark
等捉包软件进行捉包来得到广告商的域名。然后再通过修改hosts
文件来进行屏蔽。
在这里,我收集了一些广告商的域名,只要将域名和127.0.0.1
或0.0.0.0
进行映射即可
以下是我找到的一些投放广告商的域名:
http://stats.g.doubleclick.net
http://bx.optimix.asia
http://bx01.optimix.asia
http://cm.g.doubleclick.net
http://cms.tanx.com
当然,因为是映射同一个IP
,所以也可以写成
0.0.0.0 stats.g.doubleclick.net bx.optimix.asia …
(注意不同域名之间要用空格隔开,IP
地址和域名之间也有空格)
注意:
在hosts文件中,“#
”后面的任何代码都不会生效,一般使用“#
”进行注释
如果是站长、网站管理员,经常会将hosts
修改用于网站线下调试,在发布或使用一些功能前,在本地或局域网,对网站进行线下测试,无问题时再上线。
比如在给网站启用WAF
进行安全防护时(如部署ShareWAF
时),经常就需要这样测试,线下测试无问题,再应用到公网环境。
由于hosts
文件属性系统文件,因此需要管理员权限才能对其进行修改。
第一种方法:先将权限修改成管理员权限,然后在对其进行修改。
第二种方法:先将hosts
文件复制到桌面,这时就不需要管理员权限了,因此可以对其进行修改了,等修改之后,在将其拖回原目录,替换就可以啦!
在iOS
系统中中,hosts
文件的位置为:~/private/etc
在Windows
系统中,hosts
文件的位置为:C:\Windows\System32\drivers\etc
Hosts
是一个没有扩展名的系统文件,可以用记事本等工具打开,其作用就是将一些常用的网址域名与其对应的IP
地址建立一个关联“数据库”,当用户在浏览器中输入一个需要登录的网址时,系统会首先自动从Hosts
文件中寻找对应的IP
地址,一旦找到,系统会立即打开对应网页,如果没有找到,则系统再会将网址提交DNS
域名解析服务器进行IP
地址的解析。
简单来说,hosts
是一个浏览网页控制文件,可以从源头上控制DSN
指向,在浏览网页中起着举足轻重的作用。如果专业角度无法理解Hosts
是什么,那么通过下面的Hosts
文件作用,相信大家会有深刻认识。
-
屏蔽网站 在系统盘
C:\WINDOWS\system32\drivers\etc
这个文件下,找到Hosts
文件,然后用记事本打开,在里面加上需要屏蔽的网站即可。 需要注意的是这个文件可能是系统隐藏的,要进入修改,要先取消“隐藏受保护的操作系统文件”。 -
解决某些网站打不开 某些网站由于
CDN
加速故障缘故,部分加速节点出现问题,那么我们只要将真实可用的服务器IP
地址和网址填写在Hosts
文件中,然后就可以直接指向域名访问节点,这样可以绕过有问题的加速节点,从而可以解决某些网站打不开的问题。 此外,大家熟悉的谷歌打不开,也是由于很多谷歌IP
节点被国内屏蔽导致,如果可以找到其他的可用IP
地址,写入Hosts
文件,就可以实现正常访问谷歌了,这也谷歌打不开的一种解决办法。 -
一键登录局域网指定服务器 比如在公司局域网中组建了个CS对战服务器,不过一般局域网中没有架设
DNS
服务器,所以每次只能输入IP
地址进行登录。在这种情况下,我们可以通过修改Hosts
文件来达到一键登录局域网CS服务器的目的。 同样是打开电脑中的Hosts
文件,同样在新开启的空白行中输入111.76.75.175 jb51.net
,这里假定111.76.75.175
是CS服务器在局域网中的IP
地址,这样以后只要输入jb51.net
就可以直接登录局域网CS服务器了,无需输入IP
地址了。 -
过滤广告
hosts
文件可以将已知的广告服务器重定向到无广告的机器,同时也可以通过不下载网络广告,从而减少带宽。使用hosts
文件还可减少对DNS
服务器的访问来加快访问速度并减少带宽消耗。hosts
文件的另一个重要用途就是用于拦截一些恶意网站的请求,从而防止访问欺诈网站或感染一些病毒或恶意软件 。但同时,这个文件也可能被病毒或恶意软件所利用来阻止用户更新杀毒软件或访问特定网站,因此在电脑使用中也需要防止hosts
文件被篡改。
总的来说,在计算机中,Hosts
文件主要用来解析IP
地址对应的主机名,一般来说电脑上网会先去hosts
文件中查找IP
地址与主机名对应的解析,如果没有才去DNS
查找,因此可以通过修改DNS
指向IP
地址,就可以加快网页打开速度。