GitHub加速访问技巧

本文最后更新于:2022年8月8日 晚上

修改本地Hosts

DNS&Hosts

谈修改 Hosts 这个话题前,首先你要知道:网址域名实际对应的是一个或者多个服务器IP地址,比如 baidu.com 现在对应的服务器IP220.181.38.148

如果把「域名」比作现实中一家「公司」,那「服务器IP」就是公司的「电话」

80后应该都知道原来有个叫黄页的东西,即公共电话簿

原来想联系一家公司,你会去翻黄页,查对应的电话

DNS就是互联网时代的黄页,帮你在访问域名的时候查到实际的IP地址

大概理解了DNS的作用,就再回过头来说下 Github 的问题,Github 在全球各地都有服务器,而在国内,DNS解析服务基本上都是把域名解析到了美国的服务器,所以访问起来会比较慢

这里提到的 Hosts 文件就相当于本地通讯录,你的通讯录里面记了公司的电话,自然就没必要去翻黄页了

UsbEAm Hosts Editor

由羽翼城大佬开发的知名项目UsbEAm Hosts Editor本来是用于改善 Steam暴雪育碧Microsoft Store 等游戏平台的访问与下载速度,但顺便也有支持 Github

软件可以直接到大佬博客上进行下载:https://www.dogfight360.com/blog/475/

打开软件,点击软件左下角,选择准备修改 Hosts 的网站

检测延迟 » 选择延迟最低的IP地址 » 应用选中

然后再去访问 Github.com 就会快很多啦

这里建议把这几个都进行一波修改,可以有效改善 Github 的访问速度

手动添加的方法

这里顺便教一下怎么通过手动修改 Hosts 来加速访问GitHub Pages(套娃了属于是)

方法其实很简单,先打开站长工具:http://tool.chinaz.com/dns/

Github Pages 的地址输进去,检测一下

你会得到域名对应的4个真实的IP地址

然后点击UsbEAm Hosts Editor里面的「编辑Hosts」

然后像下面这样把IP地址直接对应上域名后添加到Hosts文件中,并保存好

1
185.199.108.153 qwerx29.github.io

现在再在浏览器中访问,应该就没问题了

然而实测发现效果还不如不加

Github520+SwitchHosts/FasterHosts

Github520 的作者也长期在维护 Github 的优质IP地址,并且是动态更新的:https://github.com/521xueweihan/GitHub520

SwitchHosts

同时他推荐了搭配 SwitchHosts 这个工具来实现自动更新 Hosts中的IP地址

我们先到 SwitchHosts 官网下载这款管理工具:https://swh.app/zh/

下载安装好SwitchHosts之后,点击左上角的+号,按下图这样简单添加即可

标题随意取,URL地址填这个:https://raw.hellogithub.com/hosts

自动刷新最好建议选1小时

点击确认后,还要手动启用一下,接着稍等片刻本地 Hosts 即会更新

FasterHosts

而除了SwitchHosts,还有更简单的方法,在Chromium内核的浏览器上,你可以安装FasterHosts这款浏览器扩展来解决:https://github.com/gauseen/faster-hosts

FasterHostsHosts 资源就是来自 GitHub520,每 1 小时更新一次,所以你无需配置,一装好之后就可以用

不过缺点就是在非Edge Dev版浏览器上,每次启动浏览器都会弹出「关闭开发者模式下的扩展」这个弹窗

不过在最新版Edge浏览器上你可以手动选择2周后再提醒了

仔细想想每2周才需要点一次,其实还好(你还可以用火绒的弹窗拦截来自动屏蔽这个弹窗)

PS:以上3款工具都需要到Github上下载(套娃*2)

反向代理

而除了修改 Hosts,还有个加速 Github 访问的方法就是通过反向代理了

具体原理就比较复杂了,大致是通过本地反向代理来优选IP+解决SNI封锁从而实现加速访问

毕竟 GitHub 只是访问缓慢且间歇性访问异常,不是一直访问不了,反代做的一点点微小的工作只是让连接稍微稳定了亿点点而已

steamcommunity 302(WIN)

羽翼城大佬后来又开发的 steamcommunity 302 就是通过反代来加速访问 GitHub 等网站

软件可以到这里下载:https://www.dogfight360.com/blog/686/

在不遇到问题的情况下可谓想当无脑,一键化使用

要加速GitHub时,在设置中点上GitHub就可以了

比较棘手的是可能会出现80/443端口被占用的情况,这个需要关闭对应监听端口的进程/服务来解决,具体教程可见羽翼城大佬在下载页面做出的说明

FastGitHub(WIN/Mac/Linux)

steamcommunity 302 很不错但缺点是只有Windows

FastGitHub 则是另一款同样基于反代来加速 Gtihub 访问的工具,支持WINMacLinux三端,还能在docker上一键部署:https://github.com/dotnetcore/FastGithub

Windows端的话,下载后双击即可运行,软件没有程序界面,直接就是跑的命令行,所以开启之后不要关闭命令行窗口

最新版(2.1.4)已经有图形界面,运行fastgithub.UI.exe即可

FastGitHub 除了可以加速访问 Gtihub ,最大的优势是它顺便还能助你直连V2EX

顺便,关于通过反代加速访问 GitHub 的合法性,作者有做说明:

《国际联网暂行规定》第六条规定:“计算机信息网络直接进行国际联网,必须使用邮电部国家公用电信网提供的国际出入口信道。任何单位和个人不得自行建立或者使用其他信道进行国际联网。”

FastGitHub本地代理使用的都是“公用电信网提供的国际出入口信道”,从国外GitHub服务器到国内用户电脑上FastGitHub程序的流量,使用的是正常流量通道,其间未对流量进行任何额外加密(仅有网页原有的TLS加密,区别于Vρп的流量加密),而FastGitHub获取到网页数据之后发生的整个代理过程完全在国内,不再适用国际互联网相关之规定。

Dev-Sidecar(WIN/Mac/Linux)

Dev-Sidecar 这个项目命名取自service-mesh的service-sidecar,意为为开发者打辅助的边车工具,主要就是用于解决 GitHub 访问的问题:https://github.com/docmirror/dev-sidecar

下载后首次运行前会需要让你安装过一个证书,跟着教程安装即可

然后就没啥好说的了,一键开启即可使用,开启后你就能随意访问 GitHub

注意:由于electron无法监听Windows的关机事件,开着本软件情况下直接重启电脑,会导致无法上网,你可以手动启动它即可恢复网络,你也可以将其设置为开机自启

Watt Tootkit(原Steam++)

同样,也是一款通过反代加速游戏的软件,还顺便支持了 PixivDiscordTwitch 等网站的反代,当然也包括GitHub:http://steampp.net/

目前已上架微软商店:https://www.microsoft.com/store/productId/9MTCFHS560NG

使用方法也很简单,选中GitHub后点击一键加速即可


写了这么多,其实不止是为了帮助大家到Github下载好软件,更多还是为了帮助大家上 Github 好好学习

毕竟 Github上的清华大学、北京大学、浙江大学等课程共享项目,都是不可多得的好资源....


GitHub加速访问技巧
https://qwerx29.github.io/posts/bdbfbadc.html
作者
QWERx29
发布于
2022年5月12日
更新于
2022年8月8日
许可协议