Hosts 和 SwitchHosts

本文详细介绍了Hosts文件的作用及其在不同操作系统中的位置,包括加速域名解析、方便局域网用户、屏蔽网站等功能。同时,介绍了SwitchHosts工具,用于管理、切换多个Hosts方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

关注我的个人博客:pinbolei.cn,获取更多内容

1.什么是 Hosts 和 SwitchHosts

Hosts

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

注意:Hosts文件配置的映射是静态的,如果网络上的计算机更改了请及时更新IP地址,否则将不能访问。

Hosts的存储位置

hosts文件在不同操作系统(甚至不同Windows版本)的位置都不大一样:

1、Windows XP / 2000 / Vista / 7 / 8 / 8.1 / 10 : C:\windows\system32\drivers\etc\
(XP系统无法使用bat批处理命令直接替换hosts,需手动替换后重新插拔网线或重启方使hosts生效)
(可更改\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\DataBasePath项修改host位置)

2、Windows 95 / 98 / Me%WinDir%\(其实就是C:\WINDOWS)

3、Linux及其他类Unix操作系统: /etc/

4、Mac OS 9及更早的系统: System Folder: PreferencesSystem folder(文件格式可能与Windows和Linux所对应的文件不同)

5、Mac OS X: /private/etc(使用BSD风格的hosts文件)

6、OS/2及eComStation"bootdrive":\mptn\etc\

7、Android/system/etc/

8、Symbian第1/2版手机C:\system\data\

9、Symbian第3版手机C:\private\10000882\(能使用兼容AllFiles的文件浏览器访问。)

10、iPhone OS/etc/(需要越狱)

11、iPad OS/private/etc

12、webOS/etc

Hosts的具体作用

1、加快域名解析

对于要经常访问的网站,我们可以通过在Hosts中配置域名和IP的映射关系,提高域名解析速度。由于有了映射关系,当我们输入域名计算机就能很快解析出IP,而不用请求网络上的DNS服务器。

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、虚拟域名

很多时候,网站建设者需要把”软环境“搭建好,再进行上传调试。但类似于邮件服务,则需要使用域名来辅助调试,这时就可以将本地 IP
地址与一个”虚拟域名“做地址指向,就可以达到要求的效果,且无需花费。
如:127.0.0.1 网站域名之后在浏览器地址栏中输入对应的网站域名即可。

SwitchHosts

SwitchHosts 是一个管理、切换多个 hosts 方案的工具。它是一个免费开源软件。
SwitchHosts
下载地址:http://oldj.github.io/SwitchHosts/#cn

2.SwitchHosts的功能

1)语法高亮显示

语法高亮显示

2)允许选择多个方案

选择多个方案

3) 点击行号可快速切换注释

切换注释

### Mac系统中使用SwitchHostshosts文件为空的解决方案 对于Mac操作系统,在遇到`SwitchHosts`无法正常读取或显示`/etc/hosts`文件内容的情况,即该文件看似为空的问题,可以采取以下措施来尝试解决问题。 #### 修改文件权限 由于主机的安全设置,默认情况下可能阻止了应用程序直接访问或更改重要的系统文件。因此,可以通过调整文件权限的方式让`SwitchHosts`获得必要的访问权。具体做法是在终端执行命令: ```bash sudo chmod o+w /etc/hosts ``` 这条指令会赋予其他用户对该文件的写入权限[^1]。不过需要注意的是,改变系统关键文件的权限可能会带来一定的安全隐患,所以在完成所需的操作后建议恢复原始权限设置以保障系统的安全性。 #### 使用文本编辑器手动验证编辑 有时图形界面下的表现并不能完全反映实际情况。为了确认`hosts`文件的真实状态以及是否存在隐藏字符等问题,可以直接通过命令行中的文本编辑工具如`nano`或者`vim`打开查看并进行必要的修正工作。例如: ```bash sudo nano /etc/hosts ``` 这一步骤可以帮助排除因软件缓存或其他因素造成的视觉误导现象[^2]。 #### 清除SwitchHosts缓存数据 部分应用会在本地存储一些临时性的资料用于加速加载速度或是保持上次的状态记录。然而当这些缓存变得陈旧或者是损坏的时候,则可能导致程序行为异常。针对这种情况,可以在`SwitchHosts`的应用偏好设置里寻找清理缓存选项;如果没有提供这样的功能按钮的话,也可以考虑卸载重装此插件来达到相同的效果[^3]。 #### 检查是否有虚拟机干扰 如果正在运行任何类型的虚拟化平台(比如Parallels Desktop,Vmware Fusion等),那么它们有可能会影响到宿主机器上的网络配置文件。关闭不必要的虚拟环境或将之更新至最新版本或许能够改善这一状况[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值