PD虚拟机    VPS    微软    Win10    苹果    Office2016

什么是 hosts?快速一键切换 hosts 的免费开源工具 SwitchHosts 推荐!

 网络软件    , ,    2018-04-02
什么是 hosts?快速一键切换 hosts 的免费开源工具 SwitchHosts 推荐!

我们常常在网上听到看到很多人说修改 hosts。那么 hosts 到底是什么东西?怎样修改 hosts?hosts 的路径在哪?改 hosts 又有什么作用?

这是一篇关于 hosts 的简单小科普,可以让小白们了解它。如果你是老手,这里也给你推荐了一款非常实用的,可以快速修改和切换 Hosts 方案的免费开源跨平台工具——SwitchHosts!。你会发现,借助 SwitchHosts 快速切换 hosts、管理比起每次要手动修改简直方便太多了……

hosts 是什么?

一般来说,当用户在电脑浏览器里输入网址(域名)后,系统需要通过查询网络上的 DNS 服务器,才能将域名 (比如 iPlaySoft.com) 解析成对应的 IP 地址,浏览器通过 IP 地址才能找到该网站所在的服务器并进行访问。

Hosts 文件

而操作系统的 hosts 文件则是有着“类似本地 DNS 服务器”的作用,而且比网络上的 DNS 具有更高的优先级。如果你在 hosts 里面配置了某个域名和IP的对应关系 (比如 127.0.0.1 iplaysoft.com),那么当你在「本机」访问 iplaysoft.com 时,系统首先会从 hosts 里面解析出 127.0.0.1 这个 IP,而不会再去查询网络上的 DNS 服务器。

注意:hosts 文件仅对本机生效,对其他电脑和网站本身不造成任何影响。

修改 hosts 有什么作用?

根据上述这样的特点,hosts 文件可以应用在很多场景,比如下面一些例子:

  • 强制指定域名的 IP,加快域名解析 (省略了联网查询 DNS 的步骤),也能绕过 DNS 污染与劫持。
  • 局域网某些 IP 的机器配置一个“网址别名”,方便自己记忆和访问。比如配置一个 nas.com 访问局域网里的 NAS;gongsi 访问公司网站等等。
  • 将域名指向到不可访问的IP地址,达到屏蔽不健康网站、屏蔽垃圾广告网址的效果;同理也能禁止系统、软件、网站访问某些指定的网址;
  • 开发或测试应用时,利用 hosts 将域名临时指向到测试服务器IP,可以方便自己测试,同时又不影响他人和线上的应用。

其实 hosts 还有很多不同的用途,但比较常见的主要是用来屏蔽指定网址,以及程序员在开发、测试阶段用于配置服务器IP。

怎样修改 hosts?

不同的操作系统修改 hosts 文件的方法不一样,它所在的路径也不一样。常见操作系统的 hosts 文件的位置路径为:

  • Windows 系统 Hosts 文件路径:C:\Windows\System32\drivers\etc\hosts
  • Mac 系统 hosts 文件路径:/etc/hosts
  • Linux 系统的 hosts 文件一般也是在:/etc/hosts
  • Android 系统的 hosts 文件路径:/system/etc/hosts (需要Root权限修改)

由于 hosts 属于系统文件,因此需要管理员权限才能对内容进行修改。一般使用任意文本编辑器都能打开它进行修改内容,一行一个IP地址和域名的对应关系,格式是「IP地址+空格+域名」,这里的“域名”不一定要求xx.com,也可以是一个单词比如系统预设的“localhost”或者自定义一个“nas”也行。你可以根据自己的需要增加或修改 hosts 的内容。hosts 文件内容的例子如下:

127.0.0.1 example.com
14.215.177.38 www.baidu.com
192.168.1.100 nas
# 井号开头的则是注释

你可以根据自己的需求进行修改,偶尔只改一两次的同学,手动修改即可。但对于经常需要修改 hosts 的朋友 (比如开发者),每次都要手动不停地来回修改,实在是很累,而且也很容易出错。那么你就要一键快速切换 hosts 的工具了!

怎样快速修改、应用/切换 Hosts?

Hosts 相关的小工具着实不少,大家需求最多的肯定是 hosts 切换工具了。SwitchHosts! 是一款可以方便你管理和一键切换多个 hosts 方案的免费开源工具,跨平台支持 Windows、macOSLinux 系统。

SwitchHostsSwitchHosts Mac 版截图

SwitchHosts 除了可以帮助你快速切换不同的 hosts 设置、编辑 hosts 文件外,它还有着一些很不错的特性,比如:

  • 免费、开源、支持三大操作系统
  • 系统托盘快速「一键切换」不同的 hosts 方案
  • 支持 hosts 文件语法高亮,可以方便用户更直观地阅读和修改 Hosts 内容;
  • 编辑 hosts 时,可以点击行号可以对行进行快速注释或取消注释
  • 支持远程 hosts,直接从指定网址读取 hosts 内容,方便多台机器同步 hosts 设置,这是一个很赞的特性!
  • 支持 hosts 配置的导入、导出备份
  • macOS 系统下可以支持 Alfred workflow 快速切换

基本上,有了 SwitchHosts,你就可以对 hosts 为所欲为了,轻松一键切换毫无鸭梨。而且,远程 hsots 方案也可以非常方便经常换电脑使用的人,配置一次到处使用!这一点也是它的亮点。

switchhosts

不过值得注意的是,由于 SwitchHosts 修改 hosts 文件是属于修改系统文件的行为,某些安全软件可能会提示“有风险”,有问题的话试试将 SwitchHosts 加入排除列表或者信任列表里即可。

修改 hosts 后不生效怎么解决?

无论是手工修改 hosts 还是使用软件来修改,很多人都会遇到修改 hosts 后不生效的情况。其实,这一般是由于 DNS 缓存的原因导致的。

因为系统为了加快用户打开网站的速度,在首次访问网站成功之后,会把 DNS 解析的结果暂时性地保存在本地缓存 (称为 DNS 缓存) 里一小段时间,如果浏览器在“这段时间里”再次打开同一个网址,则会自动从 DNS 缓存里取出结果,而不会请求远程的 DNS 服务器,也不会查询 hosts 文件,从而节省时间提高打开速度。因此用户会遇到有时修改了 hosts 文件但并不生效的情况,一般这时候我们想办法清空 (刷新) 一下系统的 DNS 缓存即可。

怎样清空 DNS 缓存?

  • 在 Windows 下命令行执行:ipconfig /flushdns
  • 在 macOS 下执行命令:sudo killall -HUP mDNSResponder
  • 如果你使用 Chrome 浏览器,那么可以访问:chrome://net-internals/#dns,然后点击「Clear host cache」按钮来清空浏览器里的 DNS 缓存。

如果这样还不生效,那么只能再试试重启电脑了,一般都OK了。要这样还是不行,可能就是你的 hosts 写错了。

总结:

说了那么多,其实 hosts 并不神秘,简单理解它就是个电脑本机的「IP地址<=>域名」的对应表,系统或任何软件都会优先先检查 hosts 里面有没对应的配置,之后才会去查询网上的 DNS 服务器。因此你可以利用 hosts 做很多有趣、有用的事情。而借助 SwitchHosts! 工具,你可以方便地备份hosts,也能快速切换不同的 hosts 配置,甚至使用远程的 hosts 文件等,甚是方便!

另外,如果你对 DNS 有兴趣,不妨看看以前小小科普过的「DNS 是什么?」的文章,里面也是有快速切换 DNS 服务器的小工具 DNSJumper 推荐哦。

相关文件下载地址

官方网站:访问
软件性质:免费开源
解压密码:www.iplaysoft.com

下载 SwitchHosts (Win)  |  Mac  |  Linux   |  更多网络相关  |  更多辅助工具

  • 哈哈餐馆

    以前改 hosts 为了上 google 为了 chrome 同步,但是现在在 ip 全面被圭寸的情况下,修改 hosts 没太多用途了

    2018-04-3 09:36:53
    • 老马

      现在某些网站还是可以hosts,土番外的世界不只是google

      2018-04-3 10:48:16
    • Fong

      比如维基

      2018-04-3 15:07:16
    • 哈哈餐馆

      维基中文最近一年似乎没问题啊,单位电脑也没改一直能用。坐标北京,线路联通

      2018-04-4 08:05:37
  • 插队哥

    怎样清空 DNS 缓存?这软件这么好没有自带这个功能吗哈哈

    2018-04-3 09:54:15
    • oldj

      需要的话,可以把清空 DNS 缓存的命令放在 [设置] -> [自定义命令] 里,每次 hosts 更新后会自动执行。

      2018-04-3 10:21:32
    • foley

      实测 switchhosts 在 win10 和 Mac 下切换配置都是立即生效,无需手工清空缓存。站长写出清空缓存的方法,仅仅是针对特殊情况的用户提出解决办法罢了。

      2018-04-3 10:32:59
  • tomtrije

    是啊,自带清缓存生效很有必要啊,每次改肯定为了生效啊。

    2018-04-3 10:11:33
  • SamLei

    真的很少见有网站能像异次元这样耐心写点小知识科普让我等小白学习了,都浮躁得很,必须给小X加鸡腿!

    2018-04-3 10:34:53
    • 哈哈餐馆

      是啊好多停更的独立博客,记得之前也有过异次元和 iPcfun 长期不更的,当时满担心的。

      2018-04-4 08:11:41
  • TS

    忽然发现以前存了一个同名的软件,版本号是0.2.2.1801,点开主页后发现跟小X推荐的这个居然是同一个站点,哈哈,两年时间版本号飚到3.3啦

    2018-04-3 16:07:48
  • TS

    再分享一个类似软件:Hozz,详见:http://blog.zhangruipeng.me/Hozz/

    2018-04-3 16:15:47
  • TS

    再分享一个类似的软件,叫Hozz,个人感觉启动比较快,界面也美观

    2018-04-3 16:21:07
  • 殷一民

    可是现在已经没有可以能番习土啬的Host文件了,要这软件有何用?

    2018-04-3 22:43:14
    • 哈哈餐馆

      屏蔽破解软件联网?

      2018-04-4 08:07:13
  • wangmin

    远程 hsots 方案,hosts写错了吧

    2018-04-4 15:55:03
  • OMGYY

    那么问题来了,提供hosts的地方现在还有么?

    2018-04-5 07:24:00
  • 大家好

    租了vps,就没必要折腾hosts了,再怎么改都番习不了。何必。

    2018-04-6 17:13:42
  • 夏小淚

    大家可有番羽 土啬的 V/P/N 推荐????

    2018-04-8 02:33:33
  • Fantasy

    为啥评论都是番羽土啬,SwitchHosts难道不是程序员必备么

    2018-04-13 12:34:25
  • 三教大联盟

    switchhosts什么下载到手机上面

    2018-04-21 09:15:26
  • Ginson

    科学上网主要用S·S,对 web 开发程序员来说改 hotst 一般是为了测试。这种情况下推荐 multiple-host,可以开启一个代理浏览器,控制浏览器内的 hosts,这样就可以做到同时看线上和测试环境。

    2018-05-14 13:49:05





评论内容 (*必填):
Ctrl + Enter 快速提交   

赞赏异次元


请通过支付宝、微信 APP 扫一扫,海外读者可「使用 PayPal 赞赏

“ 感谢您对异次元网站的支持! ”