FastGithub:github加速神器,解决github打不开、用户头像无法加载、releases无法上传下载、git-clone、git-pull、git-push失败等问题。

本文涉及的产品
云解析 DNS,旗舰版 1个月
全局流量管理 GTM,标准版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
简介: FastGithub:github加速神器,解决github打不开、用户头像无法加载、releases无法上传下载、git-clone、git-pull、git-push失败等问题。

FastGithub:github加速神器,解决github打不开、用户头像无法加载、releases无法上传下载、git-clone、git-pull、git-push失败等问题。

github加速神器,解决github打不开、用户头像无法加载、releases无法上传下载、git-clone、git-pull、git-push失败等问题。

之前尝试过手动修改host文件来解决网站的访问问题 以及更换网络但还是有时候无法如愿的访问GitHub

  • 相关说明:
    • fastgithub不具备“翻墙”功能,也没有相关的计划
    • fastgithub不支持Windows7等已被发行方停止支持的操作系统,并且也不会主动提供支持
    • fastgithub不能为您的游戏加速
    • fastgithub没有主动在github之外的任何渠道发布

1. 工作原理

从公共dns服务器拿到github的大量ip数据,检测哪些ip可用,哪些ip访问速度最佳,然后编写一个本地版的dns服务,当要解析github相关时,返回这个最佳ip。

  • 修改本机的 DNS 服务指向 FastGithub 自身

  • 解析匹配的域名为 FastGithub 自身的 IP

  • 请求安全 DNS 服务 (dnscrypt-proxy) 获取相应域名的 IP

  • 选择最优的 IP 进行 SSH 或 HTTPS 反向代理

2 部署方式

2.1 windows-x64桌面

win下使用最方便,解压后直接双击运行FastGithub.UI.exe即可,自带图形界面。

  • 双击运行FastGithub.UI.exe

解压下载的zip包, 将文件夹放到合适位置,找到FastGithub.UI.exe, 双击执行即可

2.2 windows-x64服务

1.在使用GitHub前需要打开并保证Fast GitHub在运行状态

2.在安装完成之后可以直接点开fastgithub的执行文件就可以运行程序,顺利连接到Github。

如果不能正常打开.exe的执行文件的话还是使用命令去启动

  • fastgithub.exe start // 以windows服务安装并启动
  • fastgithub.exe stop // 以windows服务卸载并删除

2.3 linux-x64终端

x64版是针对PC使用的,2.0.6版开始支持采用64位arm cpu的单片机,如树莓派,jetson nano等。解压缩后,进入目录运行已编译好的可执行文件fastgithub

  • sudo ./fastgithub
  • 设置系统自动代理为http://127.0.0.1:38457,或手动代理http/https为127.0.0.1:38457

2.4 linux-x64服务

  • sudo ./fastgithub start // 以systemd服务安装并启动
  • sudo ./fastgithub stop // 以systemd服务卸载并删除
  • 设置系统自动代理为http://127.0.0.1:38457,或手动代理http/https为127.0.0.1:38457

ubuntu系统只能识别crt格式的证书,而目前的代码里只有cer格式。其实他们都是纯文本格式,只是后缀的区别,可以直接重命名使用。

  • $ sudo cp cacert/fastgithub.cer /usr/local/share/ca-certificates/fastgithub.crt
  • $ sudo update-ca-certificates

2.5 macOS-x64

  • 双击运行fastgithub
  • 安装cacert/fastgithub.cer并设置信任
  • 设置系统自动代理为http://127.0.0.1:38457,或手动代理http/https为127.0.0.1:38457
  • 具体配置详情

2.6 docker-compose一键部署

  • 准备好docker 18.09, docker-compose.
  • 在源码目录下,有一个docker-compose.yaml 文件,专用于在实际项目中,临时使用github.com源码,而做的demo配置。
  • 根据自己的需要更新docker-compose.yaml中的sample和build镜像即可完成拉github.com源码加速,并基于源码做后续的操作。

3. 软件功能

  • 提供域名的纯净IP解析;
  • 提供IP测速并选择最快的IP;
  • 提供域名的tls连接自定义配置;
  • google的CDN资源替换,解决大量国外网站无法加载js和css的问题;

4 证书验证

4.1 git

git操作提示SSL certificate problem
需要关闭git的证书验证:git config --global http.sslverify false

4.2 firefox

firefox提示连接有潜在的安全问题
设置->隐私与安全->证书->查看证书->证书颁发机构,导入cacert/fastgithub.cer,勾选“信任由此证书颁发机构来标识网站”

5 安全性说明

FastGithub为每台不同的主机生成自颁发CA证书,保存在cacert文件夹下。客户端设备需要安装和无条件信任自颁发的CA证书,请不要将证书私钥泄露给他人,以免造成损失。

6 合法性说明

《国际联网暂行规定》第六条规定:“计算机信息网络直接进行国际联网,必须使用邮电部国家公用电信网提供的国际出入口信道。任何单位和个人不得自行建立或者使用其他信道进行国际联网。”
FastGithub本地代理使用的都是“公用电信网提供的国际出入口信道”,从国外Github服务器到国内用户电脑上FastGithub程序的流量,使用的是正常流量通道,其间未对流量进行任何额外加密(仅有网页原有的TLS加密,区别于VPN的流量加密),而FastGithub获取到网页数据之后发生的整个代理过程完全在国内,不再适用国际互联网相关之规定。

  • 参考链接

https://github.com/dotnetcore/FastGithub

安装GitHub上FastGithub的最新版本: https://github.com/dotnetcore/fastgithub/releases

  • 修复非windows平台启动后可能异常而停止的问题;
  • 修复windows平台拦截了非回环IP的Tcp80和443端口的问题;

更多优质内容请关注公号:汀丶人工智能;会提供一些相关的资源和优质文章,免费获取阅读。

相关文章
|
2月前
|
Web App开发 Linux 开发工具
告别卡顿,畅享GitHub:国内开发者必看的五大加速访问与下载技巧
【8月更文挑战第4天】告别卡顿,畅享GitHub:国内开发者必看的五大加速访问与下载技巧
告别卡顿,畅享GitHub:国内开发者必看的五大加速访问与下载技巧
|
12天前
|
Shell 网络安全 开发工具
fatal: unable to access 'https://github.com/wolfcw/libfaketime.git/': Encountered end of file
fatal: unable to access 'https://github.com/wolfcw/libfaketime.git/': Encountered end of file
|
2月前
|
安全 开发工具 git
coding上创建项目、创建代码仓库、将IDEA中的代码提交到coding上的代码仓库、Git的下载、IDEA上配置git
这篇文章是关于如何在IDEA中配置Git、在Coding.net上创建项目和代码仓库,并将IDEA中的代码提交到远程代码仓库的详细教程,涵盖了Git安装、IDEA配置、项目创建、代码提交等步骤。
coding上创建项目、创建代码仓库、将IDEA中的代码提交到coding上的代码仓库、Git的下载、IDEA上配置git
|
2月前
github下载的.ipynb文件报错unreadable Notebook NotJSONError
【8月更文挑战第2天】文章提供了解决GitHub下载的Jupyter Notebook文件打开时报错的方法,包括端口冲突和文件加载错误。
49 0
github下载的.ipynb文件报错unreadable Notebook NotJSONError
|
3月前
|
Shell 开发工具 git
Git的下载使用(获取源文件)
访Git官网下载区,选匹配OS版本,运行.exe开始安装。获取项目Git链接,文件夹内右键“Open Git Bash”,输入`git clone`加链接,执行下载即完成。
44 4
|
2月前
|
敏捷开发 测试技术 持续交付
阿里云云效产品使用合集之从GitHub下载代码失败是什么原因
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
3月前
|
存储 Linux 开发工具
入职必会-开发环境搭建15-Git下载和安装
Git 是一个分布式版本控制系统,广泛用于协作开发和版本管理。它由 Linus Torvalds 开发,最初是为了管理 Linux 内核开发而设计的。
|
2月前
|
开发工具 git
IDEA中怎么使用git下载项目到本地,通过URL克隆项目(giteegithub)
IDEA中怎么使用git下载项目到本地,通过URL克隆项目(giteegithub)
133 0
|
2月前
|
Java 网络安全 开发工具
新手入门Java。如何下载Eclipse、写出最基本的“Hello word”以及如何连接github并且上传项目。
新手入门Java。如何下载Eclipse、写出最基本的“Hello word”以及如何连接github并且上传项目。
42 0
告别龟速,从GitHub快速下载项目的技巧分享,简单又高效!
告别龟速,从GitHub快速下载项目的技巧分享,简单又高效!