俄罗斯想要脱离全球互联网?
无论从技术角度还是从政治角度来看,这个计划都很难实现,但克里姆林宫(俄罗斯联邦的象征、总统府所在地)立志自给自足。
作者 | Charlotte Jee
译者 | 弯月
责编 | 屠敏
出品 | CSDN(ID:CSDNNews)
以下为译文:
在接下来的两周内,俄罗斯计划尝试其他国家以前从未曾尝试过的事情。俄罗斯想试试看能否在保持国内互联网运行的同时与世界其他地方断开连接。这意味着俄罗斯必须在国内重新路由所有的数据,而不能依赖国外的服务器。
该测试是俄罗斯政府审查中的“主权互联网”法律提案中的重要组成部分。尽管目前这项提案滞留在了议会,但看起来似乎这项提案最终可能会通过俄罗斯政府的投票,并经由总统弗拉基米尔·普京签字成为法律。
在互联网上拉下铁幕看似是一个简单的想法,但是请不要被愚弄:在技术上这是一项极其困难的挑战,而且其成本也非常昂贵。俄罗斯金融监管局最初为该项目设定的预算为3800万美元,但这远远不够。据Bloomberg的报道,该项目的一个负责人表示最终的费用可能会高达3.04亿美元,但该领域的专家表示,即使3.04亿美元也不足以构建与运行该系统,更不用说维护费用了。
不仅如此,对俄罗斯公众来说该项目非常不受欢迎。本月早些时候,大约1万5千人走上莫斯科街头抗议该法案,这是近年来最大规模的示威活动之一。
脱离的方式
那么,俄罗斯怎样才能脱离全球互联网呢?互联网协会总裁兼首席执行官Andrew Sullivan说:“目前还不清楚这项‘脱离测试’会引起什么后果。”我们所知道的是,如果这项新法案通过,则会要求俄罗斯的互联网服务提供商(ISP)只能使用该国电信监管局(Roskomnadzor)批准的国内交换点。
互联网服务提供商通过这些交换点相互连接。他们的网络线路在这些交换点相遇,并交换流量。这些地点由互联网交换提供商(IXP)的组织监管。俄罗斯最大的互联网交换提供商位于莫斯科,不仅负责连接俄罗斯东部的城市,还负责连接邻国拉脱维亚的里加。
著名的MSK-IX(莫斯科互联网交换提供商)是世界上最大的交换点之一。它连接了500多个不同的ISP,在工作日的高峰时段可以处理超过140千兆位的吞吐量。俄罗斯还有其他六个互联网交换点,涵盖了该国11个时区的大部分地区。许多ISP也使用位于邻国或隶属他国公司的交换点。现在这些都将被禁用。一旦这个阶段完成,俄罗斯就会真正拥有一个物理的“开关”,随时可以启动或关闭该国互联网与外界的连接。
新的域名系统
除了重新路由ISP之外,俄罗斯还必须从全球域名系统(DNS)中退出,这样才能保证流量不会被导向任何不在俄罗斯境内的交换点。
DNS基本上相当于互联网的电话簿:当你在浏览器中输入“google.com”时,你的计算机通过DNS将此域名转换为IP地址,然后再通过IP地址找到互联网上的正确服务器并发送请求。如果一个服务器不响应请求,那么另一个服务器将介入。流量就像水一样,它可以寻找任何可以流过的间隙。
英国伦敦大学学院的计算机科学家Brad Karp说:“DNS的缔造者希望创建一个强健的系统,即使某些部分由于有意或无意的破坏而停止工作,该系统仍然能够正常工作。”互联网基础结构中与生俱来的这种适应能力会导致俄罗斯的计划更难实施。
DNS的实际机制由各个组织运营,但是基础层的大多数“根服务器”由美国的组织运营。俄罗斯认为这是一个战略弱点,所以希望创建自己的备用方案,以该国的根服务器为基础建立全新的网络。
软件公司ThousandEyes的互联网监控专家Ameet Naik说:“备用的DNS可以为大多数俄罗斯互联网用户建立一个备用的现实。凡是控制了这个电话薄的人都可以控制互联网。”因此,如果俄罗斯可以创建自己的DNS,那么至少可以在其境内控制互联网。
Sullivan说,这不是一件易事,需要配置数万个系统,而且还要识别公民上网时所有不同的接入点(他们的笔记本电脑、智能手机、iPad等),虽然并非不可能,但是难度非常高。有些使用了他国的服务器,例如Google的公共DNS(俄罗斯根本无法复制),因此当俄罗斯用户访问这些域名时都会失败。
如果俄罗斯能够在全国范围内成功地建立自己的DNS基础设施,并迫使国内的ISP使用,那么俄罗斯用户可能不会有所察觉,除非他们访问被封杀的网站。例如,用户在尝试连接facebook.com时,会被重定向到vk.com,这是一个俄罗斯的社交媒体服务,与Facebook有着惊人的相似之处。
虽然这项测试还没给出正式启动的日期,但等到所有准备工作就绪时,我们会得到通知。对于西方国家来说,重要的是不要低估俄罗斯实施该项计划的决心和能力。
适应能力和控制力
克里姆林宫表示,该项目的目的是保障俄罗斯的互联网独立,抵御来自国外的攻击。首先,通过该计划,俄罗斯能够抵御美国和欧盟目前的制裁,以及所有未来潜在的措施。其次,一旦遇到国家内部的互联网与世界其他地方发生物理阻断的情况,也可以保证国家内部互联网的使用。例如,2008年发生了三起海底光纤受到严重破坏(船舶的锚所致)的事件,致使中东、印度和新加坡的用户无法访问互联网。如果受影响的国家能够重新路由网络流量,则可以避免这种网络的中断。
许多专家认为,此举是俄罗斯试图控制公民之间信息流动的悠久传统的措施之一。俄罗斯已经通过立法,要求搜索引擎删除一些结果。2014年,它还要求社交网络将俄罗斯用户的数据存储在国内的服务器上。它还禁止了Telegram等加密消息传递应用。就在本周,俄罗斯政府签署了两项模棱两可的新法案,将“不尊重国家”或在网上传播“假新闻”定为犯罪行为。斯坦福大学的俄罗斯研究员Sergey Sanovich专门从事在线审查,他表示,重新路由俄罗斯网络流量的新计划“变本加厉”,“我不得不说此次加剧的计划非常危险。”
2019年3月10日,抗议者在莫斯科市中心举行了反对集会要求俄罗斯的互联网自由,高举的标语牌上说“普京,不!”
图片来源:Alexander Nemenov / AFP / Getty Images
此次计划升级已经经历了很长的一段路程。在查塔姆大厦工作的俄罗斯安全专家Keir Giles表示,互联网服务供应商与安全服务之间的对话已经持续了20多年。俄罗斯的安全官员一直将互联网视为一种威胁,而非机遇。Giles说:“俄罗斯一直希望先发制人,脱离全球互联网的基础设施,避免后患。”
俄罗斯在寻求灵感的同时应该向东看齐。中国在为其公民创造优越的在线体验方面取得了巨大的成功。然而,中国在互联网的初期阶段就决定对互联网的发展进行高度控制。当时俄罗斯还在为苏联的解体而焦头烂额,如今已经为时太晚了。中国在21世纪初就建立了本土ISP和DNS基础设施。如今再试图强制实行这种架构就非常困难了。Naik说:“中国很早就掌握了控制权,他们决定必须控制和掌管所有进出的流量。”
后果
相比之下,俄罗斯的企业和公民已与全球互联网密不可分,他们使用的外国服务(比如微软云工具等)更多。目前尚不清楚脱离全球互联网会产生什么影响,但如果切断通外国外的网络路由,那么俄罗斯公民就无法再访问这些服务了。虽然许多云服务在不同地区建立了“镜像”,但主流的云服务(微软、Google或亚马逊的Web Services)都没有在俄罗斯建立数据中心。Naik表示,俄罗斯想要脱离全球互联网,需要大量投资和时间。Sullivan表示,即将到来的这项测试可能就是为了解决这个问题。
另一个潜在的问题在于,许多俄罗斯的ISP会帮助其他公司或ISP通过互惠协议进行流量传输。Naik表示,如果俄罗斯的计划实施不当,那么就意味着“进出俄罗斯的大量网络流量都将落入黑洞。”
如果此次实验出现问题,造成俄罗斯大部分地区的互联网陷入瘫痪,那么可能会致使该国的经济付出沉重的代价(无论是有意还是无意,那些经历过互联网中断的国家都付出了惨重的代价)。Giles认为,这并不意味着克里姆林宫会因此而却步。
即便该计划成功实施,也不要指望俄罗斯人会心甘情愿地交出互联网的权利。例如,在土耳其的抗议活动中,有人分享了直接访问全球DNS的方法,从而挫败了该国政府对社交媒体网站的封杀。
最近发生的一起事件让俄罗斯坚定了推进该计划的决心:美国网络司令部入侵了俄罗斯互联网研究局,这是一家臭名昭著的俄罗斯“巨魔工厂”,据称其在2016年美国大选期间利用社交媒体挑拨离间。
莫斯科记者和政治专家Kirill Gusov说:“威胁是真实存在的。通过互联网访问反政府内容的人数在不断增长。”政府控制了媒体和电视,却仍然无法掌控互联网。“我料想俄罗斯联邦安全局肯定向普京汇报了此次袭击事件,并作了报道,这与他们抑制互联网自由的愿望相吻合,因为他们逐渐失去了对社会的控制。”
虽然现在还不清楚这项法律何时会成为现实,但俄罗斯政府并没有足够的灵活性或对公众压力做出反应。目前来看这项法案即使不会被取缔,也会被推迟。
链接:https://medium.com/mit-technology-review/russia-wants-to-cut-itself-off-from-the-global-internet-heres-what-that-really-means-c6f8851987ca
本文为 CSDN 翻译,如需转载,请注明来源出处。作者独立观点,不代表 CSDN 立场。
【End】
热 文 推 荐
☞ “软下来”的苹果和小米能否拯救智能手机的焦虑? | 畅言
☞ 从 Web1.0 到 3.0 你不知道的互联网的演进史!
☞ 程序媛报告:调查了 12,000 名女性开发者发现,女性比男性更懂 Java!
☞ 姚期智提出的"百万富翁"难题被破解? 多方安全计算MPC到底是个什么鬼?
☞ 全民 AI !教育部宣布 35 所高校新增 AI 本科专业
System.out.println("点个在看吧!");
console.log("点个在看吧!");
print("点个在看吧!");
printf("点个在看吧!\n");
cout << "点个在看吧!" << endl;
Console.WriteLine("点个在看吧!");
Response.Write("点个在看吧!");
alert("点个在看吧!")
echo "点个在看吧!"