本文来自依云's Blog,转载请注明。
部分国内网络访问 GitHub 会很慢,严重拖慢了学习和开发效率。除了使用代理绕路之外,有没有什么简便的办法呢?最近我写了个脚本,用来测试所有已经的 GitHub IP 并计时,然后就可以挑一个访问快的写在 hosts 文件里了。
获取脚本请访问 gh-check。脚本依赖 Python 3 近期版本及 aiohttp。
中国大陆目前自然解析 github.com,通常会得到位于新加坡的 IP。然而这几个 IP 的访问速度经常不怎么好。我之前是手动尝试使用西雅图或者阿什本的 IP,但是它们也并不总是很流畅。现在,终于可以让数据说话了:
IP 来源于四个 GitHub 区域域名的解析结果,以及另外两个我自己通过 DNS 发现的。
检查分为两种:HTTP 和 SSH。默认两者都测试,可如上图中那样通过参数指定只测试一种协议。HTTP 测试时,会验证服务器的 TLS 证书。
Aug 17, 2019 12:08:44 AM
还是代理省事儿,反正日常需要挂着。
Aug 17, 2019 12:13:13 AM
有时候代理也不稳定,也有时候不方便在目标机器上配置代理。
Aug 17, 2019 09:30:22 AM
```
提供一个docker版本的(Dockerfile)
Aug 23, 2019 07:04:29 PM
想起了以前还可以 Hosts 帆樯的时代。
突然有点怀旧的感觉。
Apr 13, 2020 08:04:41 PM
这是检验连接延迟吗?
但有时候延迟低的IP下载速度并不一定快。
就我自己的经验来说阿什本的IP下载速度快些
Apr 13, 2020 08:50:34 PM
对,检测下载首页的延迟,下大文件(比如 git clone)的情况不一定一样。反正我 git clone 不直连了……
Jul 20, 2020 11:26:54 PM
其实不用自己发现解析的 IP,Github API 有提供他们所使用的 IP:
https://api.github.com/meta
Jul 20, 2020 11:28:29 PM
哦,居然考古了,我的 RSS 显示我没读过这篇。
Jul 21, 2020 01:19:57 AM
这里给出的有些是网段呢。差不多就是我在解析的那些(除了 sin)。给的 /32 我都覆盖到了~
api 和 git 的倒是可以扩充一下,不过我不太需要。
Dec 06, 2022 10:29:40 PM
非常感谢,今晚代理 IP 全部被屏蔽了,通过这个脚本重新换了 IP 可以了