Hosts文件是一个用于储存计算机网络中各节点信息的计算机文件。这个文件负责将主机名映射到相应的IP地址。hosts文件通常用于补充或取代网络中DNS的功能。和DNS不同的是,计算机的用户可以直接对hosts文件进行控制。
Hosts文件的位置
hosts文件在不同操作系统(甚至不同Windows版本)的位置都有所区别:
操作系统 | 文件位置 |
Windows NT/2000/XP/Vista/7(即微软NT系列操作系统) | 默认位置为%SystemRoot%\system32\drivers\etc\,但也可以改变。动态目录由注册表键\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\DataBasePath决定。 |
Linux及其他类Unix操作系统 | /etc |
Mac OS 9及更早的系统 | System Folder: Preferences或System folder(文件格式可能与Windows和Linux所对应的文件不同) |
Mac OS X | /private/etc(使用BSD风格的hosts文件) |
iPhone OS | /etc |
hosts文件也可以用于其它情况,例如可以将已知的广告服务器重定向到无广告的机器(通常是本地的IP地址:127.0.0.1)上来过滤广告。同时也可以通过不下载网络广告,从而减少带宽。使用hosts文件还可以减少对DNS服务器的访问来加快访问速度并减少带宽消耗。
hosts文件的另一个重要用途就是用于拦截一些恶意网站的请求,从而防止访问欺诈网站或感染一些病毒或恶意软件。但同时,这个文件也可能被病毒或恶意软件所利用来阻止用户更新杀毒软件或访问特定网站。
另外也可以通过修改hosts文件来强制将网站指定到正确的IP上,从而访问那些因为某些原因不能访问的站点。
亲爱的GitHub,我们怎么访问不了你? GitHub访问不了,可以通过修改Host文件进行解析躲过DNS劫持。相信我们得有一个修改Host文件的工具才行。下面向你推荐几款Host文件修改工具:
1、Hosts File Manager for IIS 7,这是一个IIS 7插件,安装后可以在IIS面板上直接对Host文件进行维护,还可以通过IIS远程管理,下面是我的对GitHub的IP地址维护,可以通过http://ping.eu/ping/ 查出IP地址。
还有一个IIS 7/8模块 http://iishostsmgr.codeplex.com/
2、Host Profiles 这是一个跨平台的支持Windows和Unbutn Linux的Host管理工具,这个工具有个功能刷新DNS功能。
类似的软件还有一个 http://winhostsmanager.codeplex.com/
3、Hosts Switcher 我们经常需要修改Host文件,特别是测试的同学需要针对不同环境配置Host,比如 QA, production 和本机环境,那么这个工具特好用了。
通过这三个工具的组合,我们可以对Host文件的掌控得如鱼得水,可以应当各种情况了,正是工欲善其事,必先利其器。经过这么一整我又可以上GitHub了哦。