问题来源

github为什么访问速度慢,而且使用git clone 命令在本地克隆项目时速度也很慢呢?

首先,了解一下CDN(Content Distribute Network)的概念。CDN可以直译为内容分发网络,CDN解决问题是如何将数据快速可靠地从源服务器传递到用户。用户获取数据时,不需要直接从源服务器获取,通过CDN对数据的分发,用户可以从一个较优质地服务器获取数据,从而达到快速访问。

自然,我们可以想到,由于GitHub的加速分发CDN域名github.global.ssl.fastly.net遭到DNS污染,导致无法连接使用GitHub的加速分发服务器,才使得中国大陆访问速度很慢。

解决方案

如何解决问题呢?只要绕过DNS解析,在本地直接绑定host即可。将域名解析直接指向IP地址来绕过DNS的解析,以此解决污染问题。该方法也可加速其他由于CDN被屏蔽导致访问速度很慢的网站。

  • 打开IPAddress.com网站,查询下面三个网址对应地址

    • github.com
    • assets-cdn.github.com
    • github.global.ssl.fastly.net

  • windows下修改host文件,目录在C:\Windows\System32\drivers\etc\HOSTS

  • linux下修改host文件,目录在/etc/hosts

    添加如下内容(ip 域名)

    140.82.112.3 github.com
    185.199.108.153 assets-cdn.github.com
    199.232.69.194 github.global.ssl.fastly.net
  • 最后刷新DNS缓存

    windows: ipconfig /flushdns

    linux: sudo /etc/init.d/networking restart

参考资料

【1】CDN解释

【2】GitHub中国加速访问

Last modification:June 28th, 2020 at 12:19 pm
如果觉得我的文章对你有用,请随意赞赏