谷姐:我们都是谷歌迷
We are all Google fans

DNS清洗原理简单剖析-nnt

Rate this post

刚刷论坛看到一个帖子:https://hostloc.com/thread-1055204-1-5.html

看了半天也没见有人说清洗到底是咋搞的
正巧之前有了解过,就尝试来解答一下,纯手打

我们都知道,DNS的查询过程是个递归的流程
比如说,当你要访问www.example.com,需要先知道example.com的NS,而这又需要.com的NS
整个过程需要几方配合:LDNS、ADNS
LDNS通常是运营商部署的默认DNS

当你访问www.example.com时,会向LDNS查询www.example.com对应的IP地址,而LDNS又会像根DNS服务器查询.com对应的NS,再通过查询.com对应的NS服务器查询example.com的NS服务器,最后向example.com的NS查询www.example.com的IP地址。在这个过程中,由于GFW会抢答最后两步的结果。

而在 查询 example.com 的NS服务器 过程中,很神奇的是GFW直接返回的是一个A记录的DNS响应包,并不是NS记录的响应包,如此一来,LDNS便并不会将其缓存起来,如此,每一次发送请求,即使每次都被GFW拦截,LDNS还是回去查询 example.com 的NS服务器。与此同时,由于GFW的抢答方式的特点,虽然GFW通常离LDNS更近,处理逻辑也更简单,但有时抢答包可能会比 LDNS向.com的NS服务器响应的包慢,虽然概率很小很小(<1%),但是通过不断的发NS记录的查询包,仍然有概率能够触发,这样一来,我们通过设置较长的ttl,来让example.com正确的NS记录能够在LDNS中缓存一段时间。

解决了 example.com 的NS抢答问题,还需要解决www.example.com的抢答问题。首先需要搞清楚,墙部署的位置:出境流量处。因为我们需要向.com的NS服务器查询example.com的NS,而.com的NS服务器在国外,所以会过墙。但通过上一个法子,我们已经将example.com正确的NS记录缓存到LDNS中,如果example.com的NS 服务器在国内的话,那么此查询过程将不会过墙,LDNS向example.com查询其子域www的DNS包便不会被抢答。

总的来说,此种DNS清洗方法的难度特别巨大:由于全国各地的LDNS非常多,而且都是不公开的,且有时仅允许同一个运营商的某一篇地区使用,这使得如果你想让全国大部分LDNS均能缓存住你的NS记录,就只能搜集非常多的ip,不断地向LDNS进行NS查询来实现。且缓存是有时间限制的,过期了就会被删除,并不能一劳永逸,想要用多久就要洗多久...

以上就是我对DNS清洗原理的理解。如果不对之处,欢迎指正,以上内容均来源于互联网相关资料搜集整理,非常感谢前人的探索工作。

热议
2楼 lspro 20小时前

干活绑定

3楼 sdqu 20小时前

设置一个比较小的ttl,然后临时把ns搬回国,好象就能实现同样效果吧? 所以,这就是为什么国内禁止设立自己的dns的原因?

4楼 怪人 20小时前

还有清洗啊!我也有一个域

5楼 糟糕的鲍勃 20小时前

这么多我看不懂,有mjj能用一句简单的话解释清楚吗

6楼 nnt 19小时前

设置一个比较小的ttl,然后临时把ns搬回国,好象就能实现同样效果吧? 所以,这就是为什么国内禁止设立自己 ...

ttl大小跟 example.com的NS查询包被拦截没啥关系,毕竟LDNS需要过境去向.com的NS服务器查询,这样就一定会过墙的,而过墙的污染域名的DNS包直接会被GFW抢答,把ns搬回国只能保证 LDNS 仍然存有你正确的NS情况下,在不过墙的情况下能够成功查询 A、CNAME等其他记录

7楼 1121744186 19小时前

应该还有个省级墙,一般高墙黑名单后 会同步给这些地域墙,抢答dns 就是域名用国内dns 服务商,然后响应速度比墙快,每个地域都要部署,勤洗应该是 国内集群dns 和 支持 0 ttl 的 ,这也是为啥封自建那么严格,勤洗服务的一般都是有渠道

8楼 sdqu 19小时前

ttl大小跟 example.com的NS查询包被拦截没啥关系,毕竟LDNS需要过境去向.com的NS服务器查询,这样就一定 ...

嗯,我理解错了,是污染NS,我以为是污染A

9楼 winday 19小时前

Mark,技术贴

10楼 kmbeer 19小时前

太困了 明天再来看

12楼 树枝 19小时前

纯技术帖,得赞

13楼 全军冲鸡 19小时前

再通过查询.com对应的NS服务器查询example.com的NS服务器,最后向example.com的NS查询www.example.com的IP地址。在这个过程中,由于高墙会抢答最后两步的结果。

污染一:向.com对应的NS服务器查询example.com的NS服务器
污染二:向example.com的NS查询www.example.com的IP地址
污染一解决:通过设置较长的ttl,来让example.com正确的NS记录能够在LDNS中缓存一段时间。
(依赖于高墙的抢答特点:高墙直接返回的是一个A记录的DNS响应包,并不是NS记录的响应包,LDNS便并不会将其缓存起来)
污染二解决:搜集非常多的ip,不断地向LDNS进行NS查询来实现。
(前提:如果example.com的NS 服务器在国内的话,
并且,缓存是有时间限制的,过期了就会被删除,并不能一劳永逸,想要用多久就要洗多久... )
---
不确定以上总结的是不是楼主的意思
---
污染一的解决看起来像是高墙的缺陷,如果高墙抢答结果就是一个错误的NS服务器,LDNS接收并不再去请求正确的NS服务器,污染一解决办法是不是无效了;
污染二解决方法需要NS 服务器在国内,是否是说DNS清洗实际是用DNS污染同样的抢答手段,作为一个“错误的NS服务器”去返回正确的结果
---
---
作为mjj就想问:
我有一个被污染的域名,DNS清理具体步骤怎么做

@nnt

14楼 dole 18小时前

make

15楼 lsin 18小时前

有意思,mark一下

16楼 nnt 18小时前

污染一:向.com对应的NS服务器查询example.com的NS服务器
污染二:向example.com的NS查询www.example.com ...

污染二不需要大量的IP,污染一才需要,因为当LDNS缓存结果为国内的NS服务器时,查询A记录会直接去询问国内的NS,不需要过墙,所以墙也不会抢答。

17楼 nnt 18小时前

污染一:向.com对应的NS服务器查询example.com的NS服务器
污染二:向example.com的NS查询www.example.com ...

自建花销爆炸,作为mjj最具性价比的当然是直接买别人的DNS清洗服务啊

18楼 叼爆小朋友 13小时前

现在不怎么管用了,省骨干网上面也有墙,响应才到达省骨干网就被省骨干网墙抢答了。这就是为什么国内实名注册的域名用国内ns服务器域名都能被污染的原因。除非你能在省骨干网墙抢答之前就返回查询结果。而且国内注册的域名墙可以完全控制你域名的解析,从源头上增加无效的A记录,导致国内国外都被DNS污染。

19楼 youhei 12小时前

make

20楼 nnt 14分钟前

现在不怎么管用了,省骨干网上面也有墙,响应才到达省骨干网就被省骨干网墙抢答了。这就是为什么国内实名注 ...

确实如此,只能说:寄!

申明:本文内容由网友收集分享,仅供学习参考使用。如文中内容侵犯到您的利益,请在文章下方留言,本站会第一时间进行处理。

未经谷姐允许不得转载:谷姐靓号网 » DNS清洗原理简单剖析-nnt
分享到: 生成海报

热门文章

评论 抢沙发

评论前必须登录!

立即登录   注册

买Google Voice认准【谷姐靓号网】

Google Voice靓号列表Google Voice自助购买
切换注册

登录

忘记密码 ?

切换登录

注册

我们将发送一封验证邮件至你的邮箱, 请正确填写以完成账号注册和激活