昨日全国出现大范围的域名解析问题,很多域名的ip被解析到了一个神秘的ip:65.49.2.178

通过媒体大肆炒作,一个根DNS解析问题俨然被发酵成了一个所谓的历史事件,甚至有媒体宣称2014-1-21必将载入史册等等。

作为媒体人来炒作这件事情,是嗅觉使然,但是作为技术人,我们相信民众们更多的不是看热闹,而是通过技术细节参与到人热闹当中。习科小编特此发文,给大家解开部分技术细节。


事情发生后,各大小媒体纷纷请来无数的“专家”解释和分析这件事情,根据小编统计,国内媒体所谓的专家大多一派胡言,在此,习科小编首先强调一点,请不要再侮辱“专家”这个词了,非要自称专家,请表明你是哪方面的专家。

 

1)神秘ip的归属

神秘ip就是这个DNS解析的指向:65.49.2.178,很多网友从同C段看出了端倪,那就是同一个段下的ip归属。

习科小编已经确认如下ip:

65.49.2.9

65.49.2.13

65.49.2.16

65.49.2.17

65.49.2.21

以上几个ip归属美国Ultrareach Corp公司

而65.49.2.28这个ip解析到了某个满世界丢中国人脸的报社的分站,还挂了一个加州飞天艺术学院的站点,

65.49.2.29这个域名是由Dreamhost的DNS解析的,是一个在线推广平台,

从65.49.2.101到114大致都是一些正常IDC机房的ip,不过从151开始就热闹了。

152和171挂的是著名推墙软件的主页,199也是一个类似的,157到159干脆是某逗比报社squid的页面,208和216是某个丢人站点的电视制作中心(爆破FTP可以拿webshell哦),247是个邮服,253是GoDaddy解析的一个叫做微博解密的站点,整个ip段是什么人买的,很多人大概也都能看出点端倪

神秘ip,65.49.2.178曾有人尝试做反向解析,但是结果是失败的,相信很多人通过路由追踪发现了这个节点:

dynamic-internet-technology-inc.10gigabitethernet1-1.core1.fmt2.he.net (64.62.153.62)

小编在这里就不说什么了,对神秘ip的种种迹象表明,很可能是某推墙公司在对GFW进行测试的时候,直接攻击了某些服务器,下面将慢慢分析。

说简单点,这个ip不过是某XX门的代理服务器,这里小编再贴一张图:

 

 

某些推墙公司和满世界丢人小报社曾信誓旦旦的称谁也闹不清中国有多少人翻墙上网,因为统计不过来。这里小编想说,好话都被你们挑着说完了,我们该说点什么呢?

 

2)科普一下

国内大部分报道都是说国际节点出了问题,例如小编引用腾讯的报道“原因或在于国际节点出现故障”。

为什么小编可以在没有明确证据的情况下猜测是一起攻击事件而不是政府事件呢?因为国际根DNS根本没有遭到攻击,腾讯的新闻在撒谎,其实验证这个问题很容易,但是大部分媒体人并没有负责任的对其验证,在技术上也闹不明白,只能“撒谎”。小编询问了在北美值班的同事,处于事故阶段时分别于纽约、LA,Vegas和Pittsburgh几个地区测试,DNS没有任何问题。

继续引用腾讯的报道“根服务器主要用来管理互联网的主目录,全世界只有13台。1个为主根服务器,放置在美国。其余12个均为辅根服务器,其中9个放置在美国,欧洲2个,位于英国和瑞典,亚洲1个,位于日本。所有根服务器均由美国政府授权的互联网域名与号码分配机构ICANN统一管理,负责全球互联网域名根服务器、域名体系和IP地址等的管理”。

但是腾讯没有报道的是,世界多地都有A到M这13台根DNS的镜像。

通过查阅,小编查到了下面的资料是关于DNS根服务器镜像的:

2003年十月就在北京安装了一个F-root服务器

October: F-Root installed in Beijing, People's Republic of China;

2006年,中国境内引进根域名服务器J-ROOT和顶级域名服务器B-gTLD顶级域名服务器镜像。

所谓的根DNS的镜像,其实就是ICANN的根域名服务器的节点,ICANN在78个城市有120多个节点,在北京设有三个节点,是下面3个:

F-ROOT(电信,交换中心)由互联网软件联盟(ISC=Internet Systems Consortium)和中国电信共同建立。

J-ROOT(网通) 由Verisign和网通共同设立。

I-ROOT(CNNIC)  由瑞典国家互联网交换中心(Autonomatic,后来叫Netnod公司)在CNNIC设立

 

这里用一张图表示可能会更清晰明朗一些

 

 

这次DNS解析错误事件只出现在中国大陆范围内,并且中国南方错误率低于北方,因此可见此次大规模网站故障的罪魁祸首是中国的根域名服务器镜像,和国际节点根本没关系

顺便说一句关于根DNS的镜像的,因为ICANN在中国有根域名服务器节点(镜像),所以根据“域名解析往返周期(或叫环程时间Round Trip Time)"的RTT算法,会保证经过一段DNS轮询时间“学习”后会选择响应最快的境内根域名服务器。通俗点讲,你要通过根DNS进行查询,可能不会通过真正的根DNS查询,而是去查询离你最近的镜像(小编如果理解的不对请指正)。

 

 

网上有新闻曾报道称《After DNS problem, Chinese root server is shut down》,维基百科中对此解释是“中国大陆有F、I这2个根域DNS镜像[9],但因为多次发生DNS污染而影响外国网络,威胁互联网安全和自由而被断开与国际互联网的连接”,但是英文原始新闻中提到的是“withdrawn route announcements’ made by the server”,小编猜测应该只是瑞典方面撤销路由吧,实际上北京还是存在一个I根DNS服务器的。 

通过路由追踪命令我们先来看一下F-ROOT的根服务器镜像:

tracert 192.5.5.241
1     4 ms    17 ms     4 ms  10.20.0.1
2     6 ms     4 ms     4 ms  10.20.0.1
3    23 ms     4 ms     5 ms  58.215.135.21
4    10 ms    11 ms    11 ms  61.177.102.13
5    31 ms    31 ms    32 ms  202.97.65.201
6     *        *        *     请求超时。
7    32 ms    32 ms    33 ms  18.254.120.106.static.bjtelecom.net [106.120.254.18]
8    42 ms    34 ms    32 ms  219.142.18.54
9    31 ms    32 ms    33 ms  218.241.102.101
10    30 ms    39 ms    33 ms  218.241.107.90
11    30 ms    72 ms    32 ms  f.root-servers.net[192.5.5.241]
跟踪完成。

看起来最近218.241.107.90这个ip是CNNIC的IP,如果有电信的朋友,可以用电信的ip进行追踪一下看看F-ROOT服务器的情况。总之,小编确信一件事就是F-ROOT并没有被撤销,在北京仍然有镜像节点。

tracert 192.58.128.30
1     5 ms     3 ms     3 ms  10.20.0.1
2     4 ms     4 ms     3 ms  10.20.0.1
3    24 ms     5 ms     9 ms  58.215.156.185
4     7 ms     5 ms     6 ms  58.215.156.185
5    10 ms     9 ms     7 ms  202.97.39.113
6     8 ms    11 ms    11 ms  202.97.48.30
7    27 ms    26 ms    26 ms  219.158.32.93
8    33 ms    32 ms    31 ms  219.158.13.21
9    30 ms    40 ms    30 ms  123.126.0.66
10     *       30 ms     *     61.51.112.42
11   138 ms   134 ms   136 ms  61.148.156.202
12    37 ms    33 ms    33 ms  bt-235-194.bta.net.cn[202.106.235.194]
13    25 ms    36 ms    32 ms  j.root-servers.net[192.58.128.30]
跟踪完成

同样的,通过追踪发现J-ROOT在北京也有镜像。

但是通过多地的路由追踪发现,没有任何迹象表明I-ROOT还在中国大陆有镜像,也就是说,前面提到的节点撤销,很可能是I-ROOT的镜像被撤掉了。

tracert 199.7.83.42
Tracing route to l.root-servers.net [199.7.83.42]over a maximum of 30 hops:
1    13 ms     3 ms     2 ms  htuidc.bgp [42.51.7.65]
2     3 ms     3 ms     2 ms  htuidc.bgp.ip [103.22.188.65]
3     3 ms     3 ms     2 ms  route53.htu.cc [103.22.188.53]
4     2 ms     9 ms     2 ms  hn.kd.ny.adsl [182.118.124.17]
5     2 ms     1 ms     2 ms  hn.kd.ny.adsl [125.45.253.25]
6    62 ms    63 ms    63 ms  pc233.zz.ha.cn [61.168.194.233]
7    22 ms    19 ms    19 ms  219.158.98.217
8    18 ms    15 ms    15 ms  202.96.12.190
9     *        *        *     Request timed out.
10    18 ms    33 ms    19 ms  202.106.37.154
11    16 ms    35 ms    16 ms  61.49.41.74
12    16 ms    15 ms    16 ms  l.root-servers.net [199.7.83.42]
Trace complete.
看了这个路由追踪,发现还是有点意思的,J-ROOT服务器在中国也设有镜像,离的最近的是北京联通的IP。


这就是说,13台根DNS服务器在中国大陆共有F-ROOT、J-ROOT、L-ROOT三个镜像。

另外提一句,网上有说中国有5个根DNS的镜像,分别是F、I、J和L,而F应该是两个,CNNIC一个,电信的应该还有一个。另外13个gtld-servers在中国目前似乎只有b.gtld-server.net (192.33.14.30)有镜像,下面是在北京的b.gtld-servers.net的路由追踪。

tracert 192.33.14.30
1     8 ms     5 ms     7 ms  10.20.0.1
2     3 ms     3 ms     5 ms  10.20.0.1
3     7 ms     7 ms     6 ms  61.177.102.105
4     5 ms     4 ms     6 ms  61.177.102.105
5     8 ms     7 ms     7 ms  202.97.39.233
6    15 ms    11 ms    11 ms  202.97.48.42
7    94 ms    98 ms    96 ms  219.158.35.89
8   134 ms   134 ms   214 ms  219.158.5.217
9    70 ms    34 ms    32 ms  123.126.0.70
10     *       38 ms     *     124.65.56.18
11    37 ms    29 ms    30 ms  61.148.6.42
12    40 ms    37 ms    36 ms  bt-235-194.bta.net.cn [202.106.235.194]
13    36 ms    51 ms    45 ms  b.gtld-servers.net [192.33.14.30]
跟踪完成。

这里最近的IP 202.106.235.194 是联通的。

 

3)哪里出了问题

科普差不多到此结束了,那么,怎么确定问题出在哪呢?其实用nslookup就可以

 

 

命令按上面演示的

nslookup
set q=PTR
server 选择一个根DNS
baidu.com
DNS根服务器地址填F、I、J、L中的某一个即可(小编还无法证明I是否在中国大陆)


如果几个ROOT的镜像都没问题,那就把server后面挨个改成b.gtld-servers.net的internet address例如192.33.14.30,然后继续查询域名。

ROOT Server返回域名应该去哪个gTLD找,gTLD提供一个最近的服务器告诉你哪个域名解析服务器(name server)上记录了你的域名对应的IP,gTLD的服务器上亦登记了域名解析服务器(name server)的域名和真实IP。这其中哪个服务器返回的解析有问题,就说明查到哪个服务器出问题了。

据小编了解,有问题的服务器是:L-ROOT

问题没有出在gTLD上面,并不意味着gTLD没有问题,而是修改假的namesever貌似有点复杂,实际测试中L-ROOT出现的是不返回gLTD,因此问题可能出现在L-ROOT。

 

4)谁在搞鬼

这个DNS的大规模解析错误问题,现在下定论未免为时过早,到底是被攻击了,还是错误操作行为,或者是GFW的运行故障?

不过可以确认一点是,已经有Helen宣称对此事负责了。

 

 

大概意思是,世界上只有一个黑客,那些自称黑客的人都是狗屎,你们的黑客技术就像小屁孩,但是我们拥有全世界最牛逼的黑客,我敢打赌,你听到我们的名字会害怕到发抖,我们是凯文,罗伯特。。。等等,我们宣称对今天入侵中国网络负责!

The one who hacked Chinese Network today.

如果小编没有理解错,这应该就是对今天DNS大规模解析错误事件负责的意思吧?

首先小编声明,这封Email绝对不是伪造,而且小编表示收到这样的Email也很吃惊,莫非是对<红会被黑揭秘>事件的挑衅吗?小编一开始以为黑客自称凯文,但是两篇通读才意识到,第二封Email应该是接第一封Email,我们听到凯文和xxxx的名字会害怕到发抖,大概是这个意思吧。

小编借此只想说:

Why not tell us your name or Email, just a moment, Chinese hacker will know your latitude and longitude without government power.

Of course we know who has the most advanced technology all over the world, not only the email from you but also some China Threat Theory that tell us your greatest fear is chinese development, like network security technology.

At the end, you are the one who hacked Chinese Network, we are the one who hacked the MIL network, we will tell you Kevin Mitnick is the Real Dross.

习科黑板报将于2014年2月22日公布为美国海军潜艇和航空航天研究所做科学研究的65个美国大学实验室、北约成员、韩国大学、日本研究所以及跨国公司等名单。呵呵呵呵呵呵

 

注:本文多处借鉴及引用Zola Zhou的文章,原文地址 http://www.zhoushuguang.com/2014/01/nslookup.html