阿里云又又又又出事了! 今天一大早起来,就被阿里云域名被劫持的消息刷屏了,这到底是怎么一回事呢? 这次出事故的域名是这个:aliyuncs.com,主要负责的阿里云对象存储、CDN等方面的服务。 正常情况下,我们访问这个域名的时候,背后的DNS域名解析系统,会将它解析到一个阿里云官方的IP地址。 而这一次的事故就是:DNS域名解析系统给它解析到了另一个地址:sinkhole.shadowserver.org。 这又是个什么地址呢?我们可以问一下DeepSeek。 ![]() 根据DeepSeek的介绍,ShadowServer是一个非盈利的网络安全组织,而这里这个域名则用于接管恶意域名或恶意流量的连接请求,将其重定向到安全控制的服务器,从而阻止恶意活动。 简单来说,假如某个域名a.com是一个恶意域名,相关的网络机构和部门可以将a.com这个域名的解析给指向到这里的这个sinkhole.shadowserver.org,这样其他人再访问a.com的时候就不会中招了。 这个过程是如何办到的呢?这就需要来了解一下DNS这套域名解析系统的运转机制了。 ![]() 每一台电脑、手机或者其他需要连接互联网的设备,都会配一个DNS服务器地址,否则你是没法上网的。 以Windows电脑为例,可以通过ipconfig /all命令看到DNS服务器地址,这个是本地的DNS服务器。 当我们访问aliyuncs.com的时候,首先会访问到这个本地DNS服务器,然后剩下的由它来完成,这是一个递归解析的过程。 本地DNS服务器发现没有缓存,首先请求某个根服务器,根服务器会返回负责.com顶级域名服务器的地址。 然后请求某一个.com顶级域名服务器,它同样不会直接告诉你aliyuncs.com的IP地址。而是会返回一个权威域名服务器的地址。 本地DNS服务器还要再去这个权威域名服务器查一下,这个时候,权威域名服务器才会告诉你最终的答案。它的“权威性”体现在它对所管理的域名拥有最终解释权。 这个过程我们可以通过执行dig命令,然后通过抓包来感受一下。 ![]() 最上面第一个会话,先查询根服务器地址。返回的结果里面是13个根服务器的地址: ![]() 接着下面这一段会话,是分别解析了上面13个根服务器各自的IP地址。 ![]() 最后选择了i号根,也就是归属地为瑞典的192.36.148.17这个IP地址,向这个i号根域名服务器发起DNS请求。 ![]() i号根服务器同样返回了13个顶级域名服务器的地址。 ![]() 接下来这一段,又是分别在解析这13个顶级域名服务器的IP地址。 ![]() 最后选择的是归属地位于美国的192.42.93.30这个IP地址,然后向这个顶级域名服务器再次发起DNS请求。 ![]() 它返回的是权威域名服务器的地址,总共有3个:ns3.aliyun.com、ns4.aliyun.com、ns5.aliyun.com。 ![]() 接下来这三个会话,是分别查询这三个权威服务器的地址。 ![]() 最后的最后,选择了归属地在新加坡的IP地址为47.241.207.14的ns5.aliyun.com这台权威服务器发起最后的查询,最终获得了aliyuncs.com这个域名的IP地址:106.15.148.44。 ![]() 通过这个过程,大家应该发现了,这个权威域名服务器的重要性,它是直接负责最终解析的DNS服务器。 一个域名所属的权威服务器可以通过whois信息查询到: ![]() 根据一些whois查询平台的缓存数据显示,在阿里云发生事故的期间,aliyuncs.com这个域名的权威服务器一度被更改为了ShadowServer的地址,因此对最终解析造成了影响。 ![]() 所以问题最终就是:为什么顶级域名服务器返回的权威域名服务器会变了呢?是谁修改了它? 对于这个问题,有些网友猜测是有人利用阿里云服务器干一些坏事,被人抓住,给关小黑屋了。 ![]() 但另外有网友对此并不赞同,阿里云毕竟是非常知名的云计算厂商,随意关小黑屋不给官方通报,于情于理都很难说得过去。 负责.com顶级域名服务器的IP地址是192.42.93.30,它是美国的威瑞信公司旗下的服务器。 ![]() 我把这个问题抛给了ChatGPT,它给我的回答是这样的: ![]() 至于真相是什么,恐怕永远也不会公开。你们觉得可能是谁干的,阿里云该不该背这个锅,可以评论区发表你的看法。 |