背景
最近查找资料需要链接到github网站,结果连续好几天打不开。之所以刚开始没管,是因为github偶尔可以打开,偶尔打不开,能不能打开似乎全靠运气。普遍的解决办法是挂梯子,但是免费的很少,体验也差,付费的也很不划算。因此,下定决心查找资料看能不能解决这个问题。
原因
访问github时是直接访问域名github.com,中间有个域名通过DNS解析的过程,将域名解析为对应的ip地址,其实主要时间都是花在了DNS解析上,导致了github有时候能打开,有时候打不开,有时候访问很慢。
解决办法
分两个系统解决,已经亲测有效
1、Windows7系统:
1)、首先获取github官网的IP地址:
方法是打开cmd,输入命令ping github.com
,输出如下结果:
2)、配置host文件:
方法是打开电脑C:\Windows\System32\drivers\etc下的hosts文件编辑(需要管理员权限,右键,管理员权限打开),新增如下一行配置:
20.205.243.166 github.com
3)、刷新DNS缓存
方法是打开cmd,输入如下指令刷新DNS缓存
ipconfig /flushdns
最后再去访问github官网,如果打开,问题解决。如果还打不开,则再次配置:
先到https://www.ipaddress.com/ip-lookup网站分别输入github.com和github.global.ssl.fastly.net查询ip值,如下:
然后按照上面方法,分别修改host文件,刷新DNS缓存,再次访问github就可以了。
2、Ubuntu18系统:
解决思路跟windows下类似,只是操作方式有变化。
1)、查询IP地址:
打开终端,通过ping的方式分别查询github.com 和 github.global.ssl.fastly.net的IP地址
2)、编辑hosts文件:
终端输入: sudo gedit /etc/hosts
打开hosts文件,并将ip地址添加到hosts文件:
3)、更新hosts文件:
终端输入 /etc/init.d/networking restart
即可。
此时github.com就可以打开了。
如果大家还有什么问题,可以评论区留言,一起讨论。
参考:
1、https://www.panziye.com/teach/4503.html
2、https://zhuanlan.zhihu.com/p/409238093?utm_id=0&wd=&eqid=d78894160001f6370000000264891fde