FastGithub:github加速神器,解决github

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端口的问题;

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

#github#
技术工具专栏 文章被收录于专栏

技术工具专栏

全部评论

相关推荐

三面技术主管面(技术终面)纯拷打,45min问了大大小小近30个问题1.自我介绍(你本科的排名,学的最好的一门课,学的最差的一门课,为什么不读研等等)2.既然是做无人机相关,有没有投递大疆,为什么不投递3.介绍一下你的项目和项目背景4.这个项目市面上已经有很多公司在做了,你们的优势是什么5.这个项目未来要实现什么样的应用场景6.你的项目中用到了哪些配合方法,优缺点,为什么选择这种方法7.你对项目中的精度是怎么认识的8.你的项目怎么控制震动9.直线转曲线的传动方法有?10.无人机用到了什么控制方案,为什么机载端要用树莓派不用Jetson Nano 11.为什么不选择机载电脑处理而要回传地面处理12.用过我们的什么打印机,遇到了什么问题13.你在项目中主要负责哪些方面,你从中收获到了什么14.用到的胶水是什么型号,你选择它的理由是什么,有没有根据胶水的性能参数选择15.你了解哪些生产方法,比如注塑,压铸,钣金等等,各自容易出现什么缺陷16.你用到的注塑件是否出现过缺陷,怎么解决17.注塑件容易受到哪些因素导致的损伤(紫外、高温、化学试剂等等)18.塑性成型工艺有哪些,分别介绍工艺特点19.询问简历第三个项目,用了什么视觉算法方案,现有的视觉识别方案非常多,你的创新点在哪20.为什么用双目相机,单目相机和双目相机的优缺点分别是什么21.双目相机的盲区问题怎么解决的22.你对3d打印技术的前景怎么看23.是什么让你选择投递拓竹24.反问25.培养方案26.一个项目的流程27.有没有做金属增材打印的项目#牛客创作赏金赛##机械制造笔面经#
点赞 评论 收藏
分享
南阳牧原 双非硕 1.3+入池2k左右 硕士
点赞 评论 收藏
分享
bg双非硕 半导体设备fpga 23k*15 硕士
点赞 评论 收藏
分享
点赞 3 评论
分享
牛客网
牛客企业服务