Host

Hosts是一个没有扩展名的系统文件,能够用记事本等工具打开,其做用就是将一些经常使用的网址域名与其对应的IP地址创建一个关联“数据库”,当用户在浏览器中输入一个须要登陆的网址时,系统会首先自动从Hosts文件中寻找对应的IP地址,一旦找到,系统会当即打开对应网页,若是没有找到,则系统再会将网址提交DNS域名解析服务器进行IP地址的解析。
 

1存储位置

hosts文件在不一样操做系统(甚至不一样Windows版本)的位置都不大同样:
Windows NT/2000/XP/Vista/7/8(即微软NT系列操做系统):默认位置为%SystemRoot%\system32\drivers\etc\,但也能够改变。动态目录由注册表键\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\DataBasePath决定。其中,%Systemroot%指系统安装路径。例如,Windows XP/Windows 7/Windows 8 安装在C:\WINDOWS,那么Hosts文件就在C:\WINDOWS\system32\drivers\etc中。
在Windows中,默认的hosts文件一般是空白的或包含了注释语句并使用了一条默认规则[1]:
127.0.0.1 localhost
::1 localhost
但Hosts文件具备系统属性,系统默认是不显示此文件的,所以不少朋友虽然找到了相应的文件夹却看不到Hosts文件,显示系统文件的方法是:
打开个人电脑,依次点击【工具】-【文件夹选项】-【查看】,以后在【高级设置】中取消【勾选隐藏受保护的系统文件】,肯定后就完成了。这时电脑中的全部系统文件会显示出来,Hosts文件也不会例外。
你也能够用windows自带的查找功能搜索找到hosts文件。
该文件实际上是一个纯文本的文件,用普通的文本编辑软件如记事本等都能打开和编辑。
如下为hosts文件在不一样系统中所处的目录
 
Windows 95/98/Me:%WinDir%\
Linux及其余类Unix操做系统:/etc
Mac OS 9及更早的系统:System Folder: Preferences或System folder(文件格式可能与Windows和Linux所对应的文件不一样)
Mac OS X:/private/etc(使用BSD风格的hosts文件)
OS/2及eComStation:"bootdrive":\mptn\etc\
Android:/system/etc/hosts
Symbian第1/2版手机:C:\system\data\hosts
Symbian第3版手机:C:\private\10000882\hosts,只能使用兼容AllFiles的文件浏览器访问,大部分都不行。
iPhone OS:/etc
iPad OS:/private/etc
webOS:/etc
快捷查找方式
对于常用google服务的人来讲,能够须要常常打开hosts文件,可是这个hosts文件属于系统文件是被隐藏保护的,在windows xp和windows 7/8系统下其地址是:\Windows\System32\Drivers\Etc。这里告诉你们一个比较便捷的打开hosts文件的方法
新建一个txt文件,在你其中输入:
notepad "%SystemRoot%\system32\drivers\etc\hosts"
ipconfig /flushdns
exit 保存,将扩展名改为成.bat,以后双击这个bat文件就能够自动打开hosts文件进行修改了。
2工做方式
 
让咱们来看看Hosts在Windows中是怎么工做的。
咱们知道在网络上访问网站,要首先经过DNS服务器把要访问的网络域名解析成XXX.XXX.XXX.XXX的IP地址后,计算机才能对这个网络域名做访问。
要是对于每一个域名请求咱们都要等待域名服务器解析后返回IP信息,这样访问网络的效率就会下降,由于DNS作域名解析和返回IP都须要时间。
为了提升对常常访问的网络域名的解析效率,能够经过利用Hosts文件中创建域名和IP的映射关系来达到目的。根据Windows系统规定,在进行DNS请求之前,Windows系统会先检查本身的Hosts文件中是否有这个网络域名映射关系。若是有,则调用这个IP地址映射,若是没有,再向已知的DNS服务器提出域名解析。也就是说Hosts的请求级别比DNS高。
3具体做用
 
来看一下Hosts文件的工做方式以及它在具体使用中起哪些做用。
一、加快域名解析
对于要常常访问的网站,咱们能够经过在Hosts中配置域名和IP的映射关系,提升域名解析速度。因为有了映射关系,当咱们输入域名计算机就能很快解析出IP,而不用请求网络上的DNS服务器。
二、方便局域网用户
在不少单位的局域网中,会有服务器提供给用户使用。但因为局域网中通常不多架设DNS服务器,访问这些服务器时,要输入难记的IP地址。这对很多人来讲至关麻烦。能够分别给这些服务器取个容易记住的名字,而后在Hosts中创建IP映射,这样之后访问的时候,只要输入这个服务器的名字就好了。
三、屏蔽网站(域名重定向)
有不少网站不通过用户赞成就将各类各样的插件安装到你的计算机中,其中有些说不定就是木马或病毒。对于这些网站咱们能够利用Hosts把该网站的域名映射到错误的IP或本地计算机的IP,这样就不用访问了。在WINDOWS系统中,约定 127.0.0.1 为本地计算机的IP地址, 0.0.0.0是错误的IP地址。
若是,咱们在Hosts中,写入如下内容:
127.0.0.1 # 要屏蔽的网站 A
0.0.0.0 # 要屏蔽的网站 B
这样,计算机解析域名A和 B时,就解析到本机IP或错误的IP,达到了屏蔽网站A 和B的目的。
四、顺利链接系统
对于Lotus的服务器和一些数据库服务器,在访问时若是直接输入IP地址那是不能访问的,只能输入服务器名才能访问。那么咱们配置好Hosts文件,这样输入服务器名就能顺利链接了。
五、屏蔽不想访问的网站的例子
4屏蔽例子
 
例1.
在hosts文件中加入以下内容就能够屏蔽文件中定义的对应的网址。
127.0.0.1 localhost
例2.
在hosts文件中的前面加入以下内容就能够屏蔽文件中定义的对应的网址。
127.0.0.1 localhost
#(注释)
例3.
免疫一些病毒(其实是屏蔽网站,禁止访问有毒网站从而达到免疫一些已知有毒网站上的病毒)。首先提示,千万别以身试毒打开下列网页……
#机器狗木马病毒
#磁碟机dummycom病毒
最后要指出的是,Hosts文件配置的映射是静态的,若是网络上的计算机更改了请及时更新IP地址,不然将不能访问。
5特殊做用
 
屏蔽网页插件
常常浏览网页或许会在某个网站上常常碰见弹出来的插件安装提示,虽然IE级别都高了一个档次,当老是提示又不想安装怎么办?,好比要屏蔽XX插件 修改Hosts输入:
保存退出,当再次打开某站点强出插件页面时,系统会自动将其解析到127.0.0.1这样一个不可能存在的IP地址上,这样也就屏蔽了该网页插件。
你们是否经历过这样的怪事:在正常浏览网页或进行其余办公操做的过程当中,IE每隔一段时间就会自动弹出整屏的网页广告而且这些网页广告内容还会自动随机变换!不过网址的形式比较固定,其实这是一种相似“Win32.Troj.PopWeb”的系列木马病毒,你们也能够按照上面的方法将这些网址解析成127.0.0.1从而摆脱病毒的骚扰。
一键登陆局域网指定服务器
单位的“高工”在公司的局域网中建了个CS对战服务器,因而咱们这些一人吃饱全家皆饱的单身汉便又有了在下班时间消遣的好去处。不过有一点美中不足,局域网中没有再架设DNS服务器,因此咱们每次只能输入IP地址进行登陆,尽管只是数量不算多的一串数字,但毕竟数字枯燥啊!
在这种状况下,咱们能够经过修改Hosts文件来达到一键登陆局域网CS服务器的目的:打开Hosts文件,一样在新开启的空白行中输入“221.555.78.122 CSSer”(假定221.555.78.122是CS服务器在局域网中的IP地址),这样咱们之后只要输入“CSSer”就能够直接登陆局域网CS服务器了。
6病毒处理
 
首先必需要进入安全模式
下载一个360安全卫士或者金山卫士、瑞星卡卡、江民安全专家等软件,不要安装! 进入安全模式后,关闭进程EXPLORER.EXE,而后再添加进程EXPLORER.EXE(具体操做 文件-新建任务“运行”-浏览-C:\WINDOWS\explorer.exe)。而后安装运行,进行修复。
其次运行regedit删除以下项目,查找HKEY-LOCAL-MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
后面有多种可能性,发现有2种! 名称为R或者A
1.R=C:\Windows\System32\rundl132.exectfmon.dll s
2.A=C:\WINDOWS\system32\rundl132.exemsad.dll s
你若是发现了这2个其中一个,直接删除此项目。
而后找到 C:\Windows\System32\ctfmon.dll或者 C:\Windows\System32\msad.dll
删除该文件
修复HOSTS文件(其实安全模式下安装运行360安全卫士就已经能够修复了,这里说手动修复的方法)请按如下方式操做:
1。搜索系统中的hosts文件,也能够根据以下路径查找:
Windows 98系统,文件路径\Windows目录下;
Windows XP系统,文件路径\Windows\System32\Drivers\Etc目录下;
Windows 2000系统,文件路径:WINNT\System32\Drivers\Etc目录下;
Windows 7系统,文件路径\\Windows\System32\Drivers\etc目录下;
2。首先将此文件备份;
3。右键点击hosts文件,选择{打开方式},选择记事本;
4。删除记事本的内容,或干脆将hosts文件删除!(不影响系统的正常使用)
7文件修改
 
1。正确修改hosts文件:
通常打开hosts文件里面都会有个示例,按照其格式修改便可
好比如下内容:
即表明打开abc .cn这个网址将解析到127.0.0.1,ip地址与网址间至少有一空格,固然建议经过按[Tab]键来编辑,即美观又不容易编写失误;这也就是经过解析到本地回还地址屏蔽一些不友好的网站或ip了,固然在前面加一个#号便可暂时将这一行让它失效。
2。hosts文件的位置:
xp,2000,WIN7等系统在 C:\windows\system32\drivers\etc 文件夹中
Windows 9x/Me系统在C:\Windows文件夹,
3。hosts文件的系统属性:
hosts文件默认具备隐藏属性,系统默认设置状况下是看不到的,固然进到这个文件除了直接输入路经也是没法看到了。解决办法:打开个人电脑->点击工具->文件夹选项->查看->取消勾选隐藏受保护的系统文件->肯定便可。
修改后没法保存:
在Hosts文件上面点右键->属性->把只读属性去掉->肯定,便可保存。
在修改HOSTS文件时候,还经常遇到修改保存后无效的状况,这里要提醒你们注意的一点:不少人是写在最后行,写完最后一行后在没有回车的状况下,这一行是不生效的。必定要记得回车。
建议你们遵循这样的习惯:“ip地址+Tab+域名+换行” 添加记录。
4。Hosts在UAC安全策略没法打开或编辑:
遇到windows VISTA 或者 windows 7 操做系统没法打开和编辑的状况,提示:“不能建立文件” 或者 “文件操做失败”等提示,是由于安全机制UAC形成的,你可使用如下方法解决:
按着Shift键,而后Hosts文件上面右键, 以管理员方式运行便可。
5。Android中的Hosts
因为某些缘由,可能须要修改 hosts 文件指定域名到对应的 IP 地址。Android 是基于 Linux 的系统,与 Linux 相似,经过 hosts 文件来设置。
在 Android 下,/etc 是 link 到 /system/etc 的,咱们须要修改 /system/etc/hosts 来实现。可是这个文件是只读,不能经过 shell 直接修改。能够经过链接到 PC 上使用 adb 来修改。步骤以下:
一、得到root权限:adb root
二、设置/system为可读写:adb remount
三、将hosts文件复制到PC:adb pull /system/etc/hosts
四、修改PC机上文件
五、将PC机上文件复制到手机:adb push /system/etc/hosts
若是要查看是否修改为功,能够在PC上执行adb shell,运行cat /system/etc/hosts;或者在手机上运行cat /system/etc/hosts。
在Android系统中,hosts文件格式有一点与PC机Linux不一样:不能在一行中一个IP对应多个域名,好比:
6。WIN7或者VISTA
WIN7或者VISTA系统的须要提高用户对Hosts文件的操做权限,不然无效。
具体方法以下:
方法一:按着Shift键,而后Hosts文件上面右键,以管理员方式运行便可。
方法二:鼠标右键点击Hosts文件,选择属性,而后点击“安全”选项卡,选中登陆使用的用户帐户并点编辑”,在弹出的权限设置界面再次选中当前用户,而后勾选“彻底控制”或“修改”均可以,最后点击应用生效便可。
8文件更新
 
1.访问googlecode网站得到Google Hosts的最新文件[2],这里提供了最新的映射IP地址,将得到的hosts文件附加到本身电脑的hosts中就能够了;
2.利用smarthosts.exe程序,下载smarthosts.exe程序,下载后双击这个程序会生成3个文件 hosts、lists和srvlist注意使用这个常常会弹出错误,这个时候不要着急,过几分钟后能够重试。