github.com不能访问原因不是因为DNS,而是因为故意间歇性抽风,可改用镜像站

2023.9

想下一个libheif开源库,VCPKG安装,VCPKG是要从github下载文件:

https://github.com/strukturag/libde265/archive/8aed7472df0af25b811828fa14f2f169dc34d35a.tar.gz

发现,下载失败。

EDGE下载这个链接,不行,网页无法打开!

EDGE访问github.com,不行,网页无法打开!

分析发现,github的DNS正常,不是DNS的原因。

用curl -v连接分析,发现github.com 的https TLS V1.3握手正常,然后数据传送就中断了。

错误是:OpenSSL SSL_read: SSL_ERROR_SYSCALL, errno 10054

是github被墙?或专门针对中国用户封锁了?或github拒绝了传送数据?

"科学爬梯上网"太麻烦了,咱还不会。

百度一下errno 10054,有人说git命令行程序增大缓存大小,有人说"没有一个能解决你的问题,那么可以考虑使用GitHub提供的客户端工具------GitHub Desktop"。

看来要用软件desktop版来试下。

网页desktop.github.com 正常访问和下载!! 难道github.com是故意的,强行让你用desktop版?

下载desktop版,运行,居然要注册用户(我还没有注册用户,以前都是白嫖),注册是跳出EDGE访问github.com,不行,网页打不开。

于是软件选跳过,然后随便填用户名、邮箱,就可以用了!

选Clone...\clone进行下载这个文件,然后要输入用户名和密码!

没办法了,于是随便选Clone...\Github.com标签,点sign in。

跳出EDGE访问github.com进行sign in,居然网页可以打开了!注册用户,居然可以了!

注册成功,EDGE里邮箱也验证完了,然后浏览器edge要授权desktop版,提示You are being redirected to the authorized application. 然后就卡了。

重新打开desktop版,选Clone...\Github.com标签,sign in,会跳出EDGE访问github.com进行sign in,结果不行了,无法打开网页。

重新打开desktop版,选Clone...\clone这个文件,要输入用户名和密码,输入后,不行,说无法授权之类的。点上面一个链接,跳出EDGE出现github.com的"https://github.com/desktop/desktop/tree/development/docs/integrations"

重新打开desktop版,菜单在FILE\OPTIONS\ACCOUNTS里,有个sign in,点它,EDGE跳了一下,居然可以了,desktop版sign in成功!!

再选Clone...\clone这个文件,还是要输入用户名和密码!

算了,从EDGE试下,这时居然github.com首页可以访问了!! 用EDGE下载这个文件,居然可以了! 而且速度飞快! 莫名其妙啊!

github就跟抽风了一样,可能是国内就这样,可能"科学上网"的就没问题。

然后,再VCPKG试,不行,VCPKG仍是无法下载这个链接文件。看来是github没有被墙,是加入了验证机制,访客不能浏览、也不能随便下载了?

于是只能自己手动edge下载文件,再放到VCPKG目录了。

然后,再EDGE访问时,又抽风了,"无法访问此页面",desktop版也出错,看来最终原因是:github时好时坏、间歇性抽风!

然后,过一会又好了。感觉是给一个IP的时间有限,所以要抢着某个时间间隙去下载,只能多尝试了。

额。

网上大多人说DNS解析问题,改hosts。 但其实不是,不是DNS原因!

后来看了油猴脚本网站(https://greasyfork.org/zh-CN/scripts/412245-github-增强-高速下载)介绍,才知道是原来是间歇性墙了。

无法访问 Github ?

该脚本只能提高 Github 文件下载速度,但是大家可能发现了自从 2021 年 3 月初某会开始,很多地区已经间歇性无法访问 Github 了。这种情况无论是改 DNS 还是改 Hosts 都没用,因为是蔷对 Github 域名 SNI 干扰/封锁,任意 IP 指向 Github 去访问时,该 IP 的 443 端口就会超时 3 分钟!因为是随机干扰的,所以有时候会碰到 "短暂" 可用的 IP(模拟丢包、伪装为网站自身网络问题)。

有兴趣可以看看这篇详细讲解分析的文章: https://www.v2ex.com/t/758568

因此目前只有三种方法可以访问 Github 了:

梯子

镜像站( https://kgithub.com / https://hub.fgit.gq / https://hub.fgit.ml / 访问 Github 自动重定向至镜像站的方法)

肉身出国

本地代理直连加速,绕过 SNI 干扰( https://github.com/docmirror/dev-sidecar / https://gitee.com/docmirror/dev-sidecar

所以,没办法了,属于国家管控,可能是为了避免国内的代码外漏,故意抽风的。

因为咱只是下载一下,所以用第三方镜像站kgithub.com就行!

相关推荐
无限进步_13 小时前
【C++】大数相加算法详解:从字符串加法到内存布局的思考
开发语言·c++·windows·git·算法·github·visual studio
烟锁池塘柳017 小时前
GitHub 强制回退版本并覆盖远程仓库
git·github
Maggie_ssss_supp20 小时前
Linux-MySQL主从复制
github
cg50171 天前
Continue插件实现本地部署一个“cursor”或“github copilot”
github·copilot·curcor
妙娲种子1 天前
gittee连接github镜像
gitee·github
无限进步_1 天前
C语言实现贪吃蛇游戏完整教程【最终版】
c语言·开发语言·c++·git·游戏·github·visual studio
CoderJia程序员甲1 天前
GitHub 热榜项目 - 日榜(2026-01-21)
ai·开源·大模型·github·ai教程
亮子AI1 天前
【Github】如何取消 issue 自动加入 project 的功能?
github·issue
徐小夕@趣谈前端1 天前
【推荐】jitword协同文档新增AI公文助手,一键生成红头文件
vue.js·人工智能·开源·编辑器·github
Allen_LVyingbo1 天前
用Python实现辅助病案首页主诊断编码:从数据清洗到模型上线(上)
开发语言·python·github·知识图谱·健康医疗