奔跑中的奶酪

你应该掌握的高阶上网技巧 一 Hosts

导读

你应该掌握的高阶上网技巧 一 Hosts

老奶友应该还记得。

2014 年的时候,奶酪在博客里分享过一篇《你应该掌握的高阶上网技巧》的文章,里面讲到了 DNSHosts

可坏就坏在,当时奶酪是拿的 Google 做例子,后来文章“喜提”小黑屋。

也庆幸只是屏蔽了该文章,没有把奶酪的网站给整没了。

今天奶酪打算再聊聊这个 14 年的话题。

是不是奶酪又打算“作死”一回?放心,今天的主角是 GitHub,我们可以放心大胆地聊。

一、什么是 DNS?

1.1、域名系统

在互联网服务器中,网站都是以 IP 的形式存在的,比如在浏览器输里入 39.156.66.14 ,是可以直接打开百度的。

i63_DNS

但为了记忆方便,人们发明了“域名系统”(Domain Name System),也就是 DNS

当我们输入 baidu.com 时,浏览器会自动解析到百度的服务器上。

i63_DNS

简单地说,DNS 就是介于 IP 与域名之间的服务。

1.2、常用 DNS

默认情况下,DNS 是自动获取的。

但不同运营商的 DNS 功能、分布、解析速度不同,因此它们的 DNS 也各有特色,下面是一些常见的 DNS:

DNS 主要 备用
114 DNS 114.114.114.114 114.114.115.115
阿里 DNS 223.5.5.5 223.6.6.6
百度 DNS 180.76.76.76 --
腾讯 DNS 119.29.29.29 182.254.116.116
Google DNS 8.8.8.8 8.8.4.4
Cloudflare DNS 1.1.1.1 1.0.0.1
Open DNS 208.67.222.222 208.67.220.220
AdGuard DNS 94.140.14.14 94.140.15.15

值得一说的是。

AliDNS 可以对 GitHubStackoverflow 进行无污染解析,使用软件 DNS Jumper 还可以进行一键跳转设置。

i63_阿里DNS

二、什么是 Hosts?

但大多数情况下,我们其实并不需要修改 DNS,真正有“文章”可做的,是 Hosts

2.1、小型 DNS

Hosts 是什么呢?

Hosts 是一个没有扩展名的系统文件,可以用记事本等工具打开,它的作用,是在本地建立一个小型的 DNS

Hosts 与 DNS 的区别,就像是“个人通讯录”和“电话查询黄页”。

i63_DNS

2.2、Hosts 的作用

简单地说,Hosts 的作用,就是给网站手动指定一个 IP 地址,而且它的权重会优先于 DNS。

因此通过 Hosts,我们可以实现一些功能。

比如过滤广告、屏蔽网站、禁用软件更新等,通过指定 127.0.0.10.0.0.0 这个本地 IP,就可以屏蔽目标链接。

i63_Hosts作用

当然,Hosts 更多的用法,是用来加速或者解决某些打不开的网站。

2.3、手动修改 Hosts

那要如何具体修改 Hosts 呢?不同系统,Hosts 文件的位置也不一样,下面是具体路径:

  • Windows 系统:C:\Windows\System32\drivers\etc\hosts
  • Mac 系统:/etc/hosts
  • Linux 系统:/etc/hosts
  • Android 系统:/system/etc/hosts
  • iOS 系统:/etc/hosts

注意:如果遇到提示没有修改权限时,只需要按下图步骤所示,设置一下权限即可。

i63_Hosts权限

2.4、软件修改 Hosts

但手动修改还是太麻烦了,使用软件 SwitchHosts 更加方便,它不但支持分批管理,最重要的是它还支持订阅

支持 Windows、Mac、Linux 多个平台。

而且,只需要一次设置,就可以长久使用,如果失效了,那么重新打开软件,更新一下订阅规则就可以了。

地址:https://swh.app

i63_SwitchHosts

或者,你可以回复关键字 i63 一键下载。

三、Github Hosts

说了这么多,那到底怎么用 Hosts 上 GitHub 呢?有没有一键快速的方法?有!

3.1、Github520

GitHub520,正是这样一个用于加速 GitHub 访问的项目,一键启用的方法,是用软件 SwitchHosts 订阅即可。

地址:https://raw.hellogithub.com/hosts

i63_Github520

但 Github520 的 Hosts 无法加速下载 Github 上的文件,你可以使用下面的油猴脚本来加速下载。

地址:https://greasyfork.org/zh-CN/scripts/412245

C41_镜像下载

3.2、FetchGitHub

另一个项目是 FetchGithub

相比 Github520,FetchGithub 这个项目的速度更快,因为 IP 来自韩国日本,物理距离更近,当然访问也更快。

而且,FetchGithub 默认就可以加速下载 Github 上的文件,不需要其它辅助脚本了。

地址:https://hosts.gitcdn.top/hosts.txt

i63_FetchGithub

四、手动制作 Hosts

那 Github 之外的网站,也可以用 Hosts 来加速吗?理论上是可行的。

除了找现成的 Hosts 项目,比如 UsbEAm Hosts Editor,它可用于加速 Steam、暴雪、育碧等一众游戏平台。

更多的时候,我们需要自己手动制作 Hosts。

4.1、查找网站 IP

有网友反馈说奶酪的博客“用电脑访问打不开,但用手机流量却可以打开”,原因是服务器所地节点未能正确解析。

使用 Ping 工具,比如 https://ping.chinaz.com 查询一下网站 IP。

i63_手动制作Hosts

然后将获得的 IP,用 Hosts 给奶酪博客指定一下,即可正常访问。

i63_手动制作Hosts2

4.2、查找真实 IP

但一些网站在国内的 DNS 遭受污染,无法查询到正确 DNS 记录,所以我们要用“海外主机”来查找真实的 IP。

以插画网站 deviantart.com 为例。

在查找 IP 时,记得只勾选“其他”,这样就会使用海外主机来查找真实 IP。

i63_手动制作Hosts

查询结束后,选择延迟最小的 IP,然后加入到 Hosts 中去。

i63_手动制作Hosts4

4.3、查找子域名 IP

将网站首页 ip 加入到 Hosts 后。

打开 www.deviantart.com,这时还是只能显示 deviantart 的标题,网页也还是空白的。

原因是网站的链接中,还有很多子域名和第三方网站,我们需要将这些链接,也加入到 Hosts 中来。

i63_手动制作Hosts5

Firefox 查找方法:

F12 打开“开发者工具”,点击“网络”,再点击“状态”选项,前面的空白链接,就是我们要添加的子域名链接。

i63_手动制作Hosts6

Chrome 查找方法:

F12 打开“开发者工具”,点击“网络”,再点击“状态”选项,显示的“待处理”,就是我们要添加的子域名链接。

i63_手动制作Hosts6.1

使用同样的方法,将这个子域名 ip 也加入到 Hosts 中去。

i63_手动制作Hosts7

再次刷新打开 www.deviantart.com,这时就已经能看到图片了。

但网页仍然在不停地加载中,说明网站链接还有其他的子域名或第三方网站,使用同样方法,再次查找 IP

i63_手动制作Hosts8

最终,我们需要将网站所有的子域名和第三方网站,都加入到 Hosts 中去。

i63_手动制作Hosts9

4.4、检查是否生效

大部分情况下,修改 Hosts 是直接生效的。

如果没有生效,你可以用快捷键 Ctrl+Shift+R 来 强制刷新网页,又或者重启浏览器来检查是否生效。

i63_手动制作Hosts10

如果不行,那就要要考虑刷新 DNS 缓存。

Windows 在 CMD 输入: ipconfig /flushdns

Mac 在 终端 输入:sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder

i63_手动制作Hosts10

如果还是不行,具体表现为“可以 ping,但无法用浏览器打开”,那就是 SNI 阻断了。

这时你就要放弃 Hosts 的方法了。

结尾

你说你是一个上网冲浪高手。

但如果不知道 Hosts 的话,我是不认可的,而且它的花活可不只这一些,它的作用可大可小。

在发布本文时,奶酪也是战战兢兢的,搞不好再次“喜提”小黑屋。

XDM,把“保护”打开公屏上!!

最后

  1. 欢迎关注奶酪 公众号 获取奶酪所有的原创资源,回复文章编号,比如 i63 就可获取对应的资源。
  2. 欢迎订阅我的 “奶酪书签专业版”,15年沉淀,超过 5000 个分类井条有序的好用实用 html 网站书签。
  3. 本文由「奔跑中的奶酪」原创创作,欢迎订阅、留言和 打赏,也欢迎引用和转载,但要注明出处。
注:本文由 奔跑中的奶酪 作者:奔跑中的奶酪 发表,其版权均为作者所有,如需转载,请注明作者名字以及文章来源。
9
avatar

发表评论