MAC下访问github速度慢或者无法访问的解决办法
国内用户访问 github 经常会遇到速度很慢或者打不开的情况,前不久分享了 windows 系统下解决的一些方法。
有同学问 mac 系统下如何解决。
方法是类似的,在这里跟大家分享下,主要还是解决网站地址被污染的问题。
速度慢的原因有很多,但最直接和最主要的原因是 GitHub 的分发加速网络的域名遭到 DNS 污染。
由于 GitHub 的加速分发 CDN 域名 http://assets-cdn.github.com 遭到 DNS 污染,导致无法连接使用 GitHub的加速分发服务器,才使得中国大陆访问速度很慢。
解决方法一般是通过通过修改 Hosts ,GitHub 的 CDN 域名被污染问题也不例外。将域名解析直接指向 IP 地址来绕过 DNS 的解析,以此解决污染问题。
查询网站IP
打开 www.ipaddress.com
查询下面几个网站的 IP 。
- https://github.com/
- https://assets-cdn.github.com/
- http://global.ssl.fastly.net/
- http://github.global.ssl.fastly.net
- http://codeload.github.com
当前,github.com
网站的查询信息如下:
将这几个网站进行查询,假如查询结果如下:
140.82.114.3 github.com
185.199.108.153 assets-cdn.github.com
185.199.109.153 assets-cdn.github.com
185.199.110.153 assets-cdn.github.com
185.199.111.153 assets-cdn.github.com
199.232.68.249 global.ssl.fastly.net
199.232.69.194 github.global.ssl.fastly.net
140.82.114.10 codeload.github.com
将上面查询到的信息保存到一个本地文本文件中,方便后面复制使用。
修改Hosts文件信息
打开终端,编辑hosts文件
sudo vim /etc/hosts
输入电脑密码后,进入到编辑界面,将光标移动到需要添加内容的地方,然后按 i
键(英文输入法状态下)进入到 INSERT
编辑状态,如下图左下角所示
复制之前查询到的地址文件信息,粘贴到终端中。
按 :wq
保存并退出编辑界面。
刷新 dns
在终端输入命令,刷新dns,命令如下:
dscacheutil -flushcache
检测访问速度
在终端输入 ping 命令,可以查看当前访问 github 网站的速度情况
可以看到,当前的地址是可以访问 github 的,不过速度并不算快,总比半天打不开要好些。
如果过了一段时间,又遇到无法访问 github.com
的情况,则可能是 github 的 IP 地址发生了变化。可以先 PING 下访问情况,如果是不能访问,则是 显示的状态与下面类似。
PING github.com (192.30.253.112): 56 data bytes
Request timeout for icmp_seq 0
Request timeout for icmp_seq 1
Request timeout for icmp_seq 2
Request timeout for icmp_seq 3
这个时候,需要重复前面的步骤,去把新的地址找出来,并在 hosts 文件进行修改,并删除失效的地址。
小结
以上就是 Mac 下解决 github 访问慢的一些措施。虽然访问速度不能让其飞起来,但总算是能够顺利的访问了。
不知道大家有没有更好的解决方法,欢迎交流~