Coursera资源访问异常解决方案

Coursera资源访问异常解决方案

前言

Coursera是一个大型国外慕课网站,其中大量课程支持免费学习的功能,比较贴合钱学森学院外文慕课学习的规定,是一个比较适合完成钱院「国外慕课学习」项目的一个网站(其它常见的还有edxUdacity学堂在线等)。当然,也是一个适合想提升能力的同学学习的网站。

国内可以打开Coursera网站,并注册登陆和加入课程,但是会发现视频等资源访问不了。简单来说,这是因为为其提供网络代理服务的网站在国内无法访问。如下图视频打不开:

image-20200228233801526

遇到这种问题,在国内主要有两种解决方案:

  • 买VPN或者租用服务器,具体操作请自行查找。这种方法可以完美解决类似的访问问题。优点:简便;缺点:付费。
  • 使用本篇所述方法。优点:免费;缺点:不够完美,还是有些资源无法加载,但基本不影响学习。

以下有「问题原因」和「解决方法」两个板块。如果不想了解问题出现的原因,可以直接跳过「问题原因」直接看「解决方法」进行操作操作,也可以解决大部分的问题。但如果又发生了类似的问题,建议仔细阅读「问题原因」部分。

问题原因

众所周知,为了防止境外的不法分子的网站对国内网络生态产生不良影响,很多境外网站都访问不了。其中,Coursera中的某些代理网站就不能访问,导致Coursera上某些资源不能访问。这里原因是 DNS污染 。要理解这一点,首先要大概知道以下内容。

电脑通过IP地址访问网站,而IP地址比较难记,于是给这个IP地址一个名字,这个名字被称为 域名 。通过DNS可以将域名和IP地址建立一一映射。我们常输入的网站名,比如「www.xjtu.edu.cn」是域名,而其IP地址是「202.117.1.13」。如果我们在浏览器中输入域名,则电脑第一步要进行的工作,就是依据DNS协议,对域名进行解析,得到正确的IP地址,才能正常访问网站。

通俗地讲,DNS污染就是干扰电脑依据DNS进行域名解析的进程,让电脑无法获得正确的IP地址,从而达到让电脑无法正常访问网站的目的。如下图:

image-20200228233248980

我们刚才无法打开的网站的原因就是这样。对于这种问题,可以事先告诉电脑这个网站对应域名的IP地址,从而跳过域名解析的步骤,直接访问正确的网站。解决这个问题的办法有以下几步:

1.得到无法访问的链接

如果发现浏览器卡在一个页面,则可以通过按F12(谷歌浏览器)打开开发者模式,并点击弹出页面的最上方的「Console」,其中出错的指令以红色字体显示。找到含有「cloudfront」的域名,并将其在「/」前的部分复制。如下图所示:

image-20200228234041220

2.获得域名对应的IP地址

打开站长工具网站,点击左上角「域名/IP类」选项。

image-20200228234256167

切换到IP查询模式,将刚刚复制的域名粘贴到这里,再点击搜索,会得到域名对应的IP地址。如果搜到了多个IP地址,则要选取其中所有的。

image-20200228234241306

3.将对应关系输入到电脑

在Win10电脑中,按照路径C:\Windows\System32\drivers\etc,用记事本打开「hosts」文件(切忌添加后缀名或更改文件名),按照文件自身说明的格式将刚刚搜索到域名和IP的对应关系输入到文件中并保存即可。然后再打开「cmd」(命令提示符),输入「ipconfig/flushdns」,按回车,更新DNS即可。

注:下一章将给出常见代理网站的域名和IP的对应。

以上是解决DNS污染的办法,可以解决Coursera某些资源不能访问的问题。但需要一个一个不能访问的链接找,建议先将下一部分提供的部分DNS对应输入,然后遇到其它资源访问问题再采用此种方法。如果遇到该方法解决不了的情况,可能就是别的原因了。当然,最稳妥的办法还是租用一个代理服务器。

解决方法

Win10:按照路径C:\Windows\System32\drivers\etc。

image-20200228234354126

用记事本打开「hosts」文件,将下列内容复制到里面(不要删文件原有的东西)(-持续更新中-):

52.84.246.90     d3c33hcgiwev3.cloudfront.net
52.84.246.252    d3c33hcgiwev3.cloudfront.net
52.84.246.144    d3c33hcgiwev3.cloudfront.net
52.84.246.72     d3c33hcgiwev3.cloudfront.net
52.84.246.106    d3c33hcgiwev3.cloudfront.net
52.84.246.135    d3c33hcgiwev3.cloudfront.net
52.84.246.114    d3c33hcgiwev3.cloudfront.net
52.84.246.90     d3c33hcgiwev3.cloudfront.net
52.84.246.227    d3c33hcgiwev3.cloudfront.net
69.63.176.59     d3c33hcgiwev3.cloudfront.net
46.82.174.68     d3c33hcgiwev3.cloudfront.net
69.63.180.173    d3c33hcgiwev3.cloudfront.net
13.35.67.111     d3njjcbhbojbot.cloudfront.net
99.84.142.89     d3njjcbhbojbot.cloudfront.net
99.84.142.74     d3njjcbhbojbot.cloudfront.net
99.84.142.123    d3njjcbhbojbot.cloudfront.net
99.84.142.46     d3njjcbhbojbot.cloudfront.net
13.249.171.117   d3njjcbhbojbot.cloudfront.net
13.249.171.68    d3njjcbhbojbot.cloudfront.net
13.249.171.60    d3njjcbhbojbot.cloudfront.net
13.249.171.50    d3njjcbhbojbot.cloudfront.net
52.4.1.216       www.coursera.org
52.6.210.116     www.coursera.org
107.23.9.24      www.coursera.org
99.84.133.53     www.coursera.org
99.84.133.49     www.coursera.org
99.84.133.3      www.coursera.org
99.84.133.96     www.coursera.org
35.241.23.116    ut.ra.linksynergy.com
34.98.67.3       tags.rd.linksynergy.com

注意要保留此格式,如下图(其中#后内容表示注释):

image-20200228233353015

然后保存并关闭文件,并打开「cmd」(命令提示符),输入「ipconfig/flushdns」更新DNS即可,如下图:

image-20200228233542737

刷新或重新打开网站,可以看到大部分的资源恢复了正常的访问。

其它常见问题

Q:有没有其它的外文慕课学习网站?

A:有的。常见外国的慕课网站还有edxUdacity等;而国内的网站有清华大学的学堂在线。其中edx和Coursera类似,大部分课程可以免费学习;而Udacity是主要面向职业的平台,大部分课程需要付费。又由于Coursera,edx和Udacity,都是外国网站,如果有些资源访问不了,也可以参考本教程的解决办法。学堂在线是国内网站,也提供免费学习的功能,且没有资源访问不了的问题;但是外文慕课数量比较少,选择余地比较小。

Q:我该如何利用Coursera完成「国外慕课学习」任务?

A:首先,需要在Coursera上注册一个账号(其中用户名为「班级+姓名」或「学号+姓名」),然后搜索感兴趣的课程,并先预览课程内容。如果觉得课程内容初步满意,可以加入课程的免费学习模式,跟着课堂进度学习。然后,等到学院关于慕课学习的审核批准后,就坚持学到底争取拿到「合格」或「优秀」证书( 不需要花钱认证学习 )。最后,课程考核结束后,将 (1)证明课程通过的网页(2)慕课学习的账户密码(以便于老师复查) 等有效资料以班级为单位汇总,并发送给罗老师。详见相关文件。其它慕课平台类似。

更多

  1. https://www.jianshu.com/p/2114fe0d6961
  2. http://www.pc0359.cn/article/qita/75701.html
  3. https://blog.csdn.net/qq_39521554/article/details/79039548

参与讨论