【腾讯犀牛鸟开源人才培养计划】解决 Github 国内访问问题

3,895 阅读2分钟

为什么访问不了以及访问速度会很慢?

GitHub 在中国大陆访问速度慢的问题原因有很多,但最直接和最主要的原因是 GitHub 的分发加速网络的域名遭到 DNS 污染。 由于 GitHub 的加速分发 CDN 域名 assets-cdn.github.com 遭到DNS污染,导致无法连接使用GitHub的加速分发服务器,才使得中国大陆访问速度很慢。

如何解决DNS污染?

一般的 DNS 问题都可以通过修改 Hosts 文件来解决,GitHub 的 CDN 域名被污染问题也不例外,同样可以通过修改 Hosts 文件解决。 将域名解析直接指向 IP 地址来绕过 DNS 的解析,以此解决污染问题。 因此主要解决思路是修改 Host 文件。

如何修改 Host 文件

方法来源于 github.com/521xueweiha…

复制下面的内容

# GitHub520 Host Start
185.199.108.154               github.githubassets.com
140.82.112.22                 central.github.com
185.199.108.133               desktop.githubusercontent.com
185.199.108.153               assets-cdn.github.com
185.199.108.133               camo.githubusercontent.com
185.199.108.133               github.map.fastly.net
199.232.69.194                github.global.ssl.fastly.net
140.82.113.3                  gist.github.com
185.199.108.153               github.io
140.82.112.4                  github.com
140.82.112.5                  api.github.com
185.199.108.133               raw.githubusercontent.com
185.199.108.133               user-images.githubusercontent.com
185.199.108.133               favicons.githubusercontent.com
185.199.108.133               avatars5.githubusercontent.com
185.199.108.133               avatars4.githubusercontent.com
185.199.108.133               avatars3.githubusercontent.com
185.199.108.133               avatars2.githubusercontent.com
185.199.108.133               avatars1.githubusercontent.com
185.199.108.133               avatars0.githubusercontent.com
185.199.108.133               avatars.githubusercontent.com
140.82.113.9                  codeload.github.com
52.217.9.156                  github-cloud.s3.amazonaws.com
52.217.37.76                  github-com.s3.amazonaws.com
52.216.142.132                github-production-release-asset-2e65be.s3.amazonaws.com
52.217.85.124                 github-production-user-asset-6210df.s3.amazonaws.com
52.216.25.84                  github-production-repository-file-5c1aeb.s3.amazonaws.com
185.199.108.153               githubstatus.com
64.71.168.201                 github.community
185.199.108.133               media.githubusercontent.com

不同系统更换教程

Windows

Windows的 Hosts 文件位于C:\Windows\System32\drivers\etc,修改前建议备份一份 Hosts 文件

  1. 以管理员权限编辑 Hosts 文件,将上面的信息添加到 Hosts 文件中,保存

  2. 更新DNS缓存

    # 打开 CMD 或 PowerShell (以管理员权限)运行如下命令
    ipconfig /flushdns
    

Tips: 上述方法无效可以尝试重启机器。

Linux

Linux 的 Hosts 文件位于/etc/hosts,修改前建议备份一份 Hosts 文件

cp hosts host_old
  1. 以管理员权限编辑 Hosts文件(以Vi 为例,可使用其他编辑器)

    sudo vi /etc/hosts
    
  2. i进入编辑模式,将上面的信息添加到 Hosts 文件中

  3. Esc键退出编辑模式,输入:wq!强制保存退出。

  4. 更新DNS缓存

    sudo nscd restart
    

    如报错则须安装nscd

    sudo apt install nscd
    

Tips: 上述方法无效可以尝试重启机器。

MacOS

MacOS 的 Hosts 文件位于/etc/hosts,修改前建议备份一份 Hosts 文件

cp hosts host_old
  1. 编辑Hosts文件(以Vi 为例,可使用其他编辑器)

    sudo vi /etc/hosts
    
  2. i进入编辑模式,将上面的信息添加到 Hosts 文件中

  3. Esc键退出编辑模式,输入:wq!强制保存退出。

  4. 更新DNS缓存

    sudo killall -HUP mDNSResponder
    

Tips: 上述方法无效可以尝试重启机器。

方法来源于 github.com/521xueweiha…

“2021腾讯犀牛鸟开源人才培养计划”火热报名中,欢迎热爱开源的你和我一起报名,学习成长。 官网&报名入口

opensource.tencentcom/summer-of-c…