hosts
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中。
127.0.0.1 localhost
::1 localhost
但Hosts文件具有系统属性,系统默认是不显示此文件的,因此很多朋友虽然找到了相应的文件夹却看不到Hosts文件,显示
系统文件的方法是:
你也可以用windows自带的查找功能搜索找到
hosts文件。
以下为hosts文件在不同系统中所处的目录
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中是怎么工作的。
为了提高对经常访问的网络
域名的解析效率,可以通过利用Hosts文件中建立域名和IP的
映射关系来达到目的。根据Windows系统规定,在进行DNS请求以前,Windows系统会先检查自己的Hosts文件中是否有这个网络
域名映射关系。如果有,则调用这个IP地址映射,如果没有,再向已知的DNS服务器提出
域名解析。也就是说Hosts的请求级别比DNS高。
3具体作用
来看一下Hosts文件的工作方式以及它在具体使用中起哪些作用。
1、加快
域名解析
2、方便局域网用户
在很多单位的局域网中,会有服务器提供给用户使用。但由于局域网中一般很少架设DNS服务器,访问这些服务器时,要输入难记的IP地址。这对不少人来说相当麻烦。可以分别给这些服务器取个容易记住的名字,然后在Hosts中建立IP映射,这样以后访问的时候,只要输入这个服务器的名字就行了。
3、屏蔽网站(
域名重定向)
有很多网站不经过用户同意就将各种各样的
插件安装到你的计算机中,其中有些说不定就是木马或病毒。对于这些网站我们可以利用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的目的。
4、顺利连接系统
对于Lotus的服务器和一些
数据库服务器,在访问时如果直接输入IP地址那是不能访问的,只能输入服务器名才能访问。那么我们配置好Hosts文件,这样输入服务器名就能顺利连接了。
5、屏蔽不想访问的网站的例子
4屏蔽例子
例1.
在
hosts文件中加入如下内容就可以屏蔽文件中定义的对应的网址。
127.0.0.1 localhost
例2.
在
hosts文件中的前面加入如下内容就可以屏蔽文件中定义的对应的网址。
127.0.0.1 localhost
#(注释)
例3.
免疫一些病毒(实际上是屏蔽网站,禁止访问有毒网站从而达到免疫一些已知有毒网站上的病毒)。首先提示,千万别以身试毒打开下列网页……
#
机器狗木马病毒
最后要指出的是,Hosts文件配置的映射是静态的,如果网络上的计算机更改了请及时更新IP地址,否则将不能访问。
5特殊作用
屏蔽网页
插件
保存退出,当再次打开某站点强出插件页面时,系统会自动将其解析到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。首先将此文件备份;
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造成的,你可以使用以下方法解决:
5。Android中的Hosts
由于某些原因,可能需要修改 hosts 文件指定
域名到对应的 IP 地址。Android 是基于 Linux 的系统,与 Linux 类似,通过 hosts 文件来设置。
在 Android 下,/etc 是 link 到 /system/etc 的,我们需要修改 /system/etc/hosts 来实现。但是这个文件是只读,不能通过 shell 直接修改。可以通过连接到 PC 上使用 adb 来修改。步骤如下:
1、获得
root权限:adb root
2、设置/system为可读写:adb remount
3、将
hosts文件复制到PC:adb pull /system/etc/hosts
4、修改PC机上文件
5、将PC机上文件复制到手机:adb push /system/etc/hosts
如果要查看是否修改成功,可以在PC上执行adb shell,运行cat /system/etc/hosts;或者在手机上运行cat /system/etc/hosts。
6。WIN7或者VISTA
WIN7或者VISTA系统的需要提升用户对Hosts文件的操作权限,否则无效。
具体方法如下:
方法一:按着Shift键,然后Hosts文件上面右键,以
管理员方式运行即可。
方法二:鼠标右键点击Hosts文件,选择属性,然后点击“安全”选项卡,选中登录使用的
用户账户并点编辑”,在弹出的权限设置界面再次选中当前用户,然后勾选“完全控制”或“修改”都可以,最后点击应用生效即可。
8文件更新
2.利用smarthosts.exe程序,下载smarthosts.exe程序,下载后双击这个程序会生成3个文件 hosts、lists和srvlist注意使用这个经常会弹出错误,这个时候不要着急,过几分钟后可以重试。
-
参考资料
-
-
1. Hosts文件 .wikipedia [引用日期2012-11-25] .
-
2. 使用google服务hosts的终极修改方法详解 .星月博客 [引用日期2012-12-21] .
-