寇博是一家国内流量排名前十的网站运维负责人,他和他的团24小时队维护着这家日浏览量过亿的网站。十几封报警邮件,意味着全国十几省的用户都出现无法访问该网站的状况。
“核心机房又出问题了?”寇博小声默念着,赶忙从一个会议中退席,小跑着上楼,回到运维部的工作大厅。他桌面上的座机正刺耳地响着。“我是客服部的XX,有浙江的用户反映咱们首页上不去了……”“知道了。”
寇博立即挂断了电话,朝着正在值班的同事大喊“怎么回事了?”“北京上海机房和CDN(网络加速)反馈都正常,PING了下域名,IP地址的指向不对,可能是DNS的问题。”值班同事回答他。
“别查了,不是咱们的事,国内所有.com域名的DNS都有问题。”正在刷微博的另一个同事告诉寇博,“你看DNSPod发微博了,说国内所有通用顶级域的根出现异常,正联系相关机构协调处理。”
DNSPod是国内第一大DNS解析服务提供商和域名托管商,管理着超过270万域名。寇博推了推眼镜,凑过去仔细盯着微博,一边说“别大意,再给机房打电话查一下。”
几乎与此同时,国内最大的数据中心之一的北京机房负责人刘硕也正高度紧张。当他接通新浪科技的电话时,他背后的座机铃声响成一片。“是的,我们已经监测到问题了,很多网站也向我们反馈了,我们马上开会研究应对。”他匆匆的挂断了电话。
“用户在微博上把我们骂死了。”寇博的同事告诉他。他笑着对新浪科技说,“我们无能为力,是全网出现的系统性问题,只能告诉用户直接用IP地址访问我们。”
这次故障是怎么回事?
“所有连接在互联网上的设备都必须有一个IP地址,就像每个房子都有地址一样,这样才能让别人找到。”寇博开始向新浪科技解释起来。“这个IP地址是一段数字,例如120.84.21.23,但是用户上网要记这段数字,太麻烦了,所以有了域名。”
域名就是IP地址的另一种体现方法,而DNS就是将域名翻译成IP地址的翻译器。比如,用户在浏览器中输入facebook.com,浏览器就会向用户最近的DNS服务器询问,“facebook.com对应的IP地址是什么?”
这个最近的DNS服务器一般是当地电信运营商的服务器。如果这个服务器不知道,他就会向上一级请求,一般是运营商的全国性DNS服务器。如果这个全国性DNS还不知道会向全球DNS服务器查询。
这一级一级的层级中,最高一级是全球的13台根服务器,名字分别为“A”至“M”,其中10台设置在美国,另外各有一台设置于英国、瑞典和日本。
为了防止上述服务器出现故障造成全球性访问异常,目前世界上很多国家都设有镜像。我们国家在全网的出口也设有顶级的域名服务器。“这次网络出现异常是这个服务器出现了解析错误。”寇博解释说。
为什么有的人正常,有的人异常?
这是因为为了加快用户访问速度,整个系统设有多级缓存,包括浏览器缓存、系统缓存、路由器缓存、DNS服务器缓存等等。
当用户访问一个网站时,其浏览器会自动记录域名对应的IP一段时间,这样用户在第二次进入该网站时,浏览器就不必向上一层级反复查询,直接就可以告知用户结果。同样的,用户的电脑、路由器和DNS服务器都会设置一定的缓存,当然缓存是有时间限制的,到期就要向上级服务器查询最新的记录。
当顶级根域名服务器出现故障时,用户的访问不会马上中断,因为各级缓存还在。当缓存时间到后,他们会向上一级重新查询,这时根服务器的错误反馈才会生效,导致用户访问异常。然而这个缓存时间,因设置不同,差异很大。有的缓存时间只有30秒,有的缓存时间长达12小时。
截至当日下午4点,全国根服务器的解析陆续恢复正常。同样的道理,出现异常的用户也不会马上恢复正常,因为错误的记录仍然在缓存中,最长可能需要等待24个小时,缓存到期后,正确的记录才会生效。
而对于一个大型网站来说,其内容一般不是全都放置在同一域名下。比如图片、数据库一般都采取不同的域名,当有的域名缓存正确,有的域名缓存错误时,就会出现页面加载出来,而图片出不来,或者图片出来,文字数据错乱的情况。
神秘IP地址引发黑客疑云
随着故障陆续恢复,数据中心的刘硕也松了一口气。他向新浪科技介绍说,这次事故的原因是根域名服务器被污染,域名解析请求都被指向“65.49.2.178”这个IP地址。
不过,据刘硕对多个域名的测试发现,Facebook、Twitter等国外域名解析正常,只是国内域名遭到污染。即便如此,受到影响的范围也是空前的,包括百度、新浪、腾讯在内的国内绝大多数网站出现访问异常,根域名服务器故障持续将近1小时。
据粗略估算,受到影响的国内用户超过2亿,平均受影响的时间约在3小时左右。截至21日晚间1点,全国仍有十余个地区受DNS估值影响,包括贵州电信、河南电信、香港新世界、江苏电信、北京电信通等。
国内漏洞报告平台“乌云”称,65.49.2.178这个IP位于国外,有证据表明该IP所处于的网络有过发送垃圾邮件及其他有政治目的的黑客活动,不排除此次攻击为黑客所为。
金山的一位安全专家称,经查询65.49.2.178的信息,发现该IP位于美国北卡罗莱纳州卡里镇Dynamic Internet Technology公司。“大量中国知名IT公司的域名被解析到美国某公司,从目前看该事件极可能是黑客攻击行为。”该专家说。
去年8月25日凌晨,中国.cn域名解析出现大规模解析故障。中国互联网络信息中心后来透露,当日零时许,国家域名解析节点受到拒绝服务攻击,经处置,至2时许服务器恢复正常,这是有史以来.cn域名遭受的最大规模拒绝服务攻击。
不过,刘硕和另一位网络安全专家都认为,这次DNS污染事件影响之广、范围之大在国内尚属首例,远远超出一般黑客的能力范围。“很可能与主干网络的设置调整有关。”上述网络安全专家说。