GitHub加速访问技巧
本文最后更新于 2022年8月8日 晚上
修改本地Hosts
DNS&Hosts
谈修改 Hosts
这个话题前,首先你要知道:网址域名实际对应的是一个或者多个服务器IP地址,比如
baidu.com 现在对应的服务器IP是
220.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 | |
现在再在浏览器中访问,应该就没问题了
然而实测发现效果还不如不加
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
FasterHosts的 Hosts 资源就是来自
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
访问的工具,支持WIN/Mac/Linux三端,还能在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++)
同样,也是一款通过反代加速游戏的软件,还顺便支持了
Pixiv、Discord、Twitch
等网站的反代,当然也包括GitHub:http://steampp.net/
目前已上架微软商店:https://www.microsoft.com/store/productId/9MTCFHS560NG
使用方法也很简单,选中GitHub后点击一键加速即可

写了这么多,其实不止是为了帮助大家到Github下载好软件,更多还是为了帮助大家上
Github 好好学习
毕竟
Github上的清华大学、北京大学、浙江大学等课程共享项目,都是不可多得的好资源....

