为什么每次 DNS 查询的结果都不一样

2021-05-28 15:02:35 +08:00
 bear2000

小白提问,当使用 dig 命令查询已被 GFW 墙了的域名时,每次解析出来的 IP 都不一样。我将 DNS server 设置为 8.8.8.8 后,依然是如此。如果查询没有被墙的域名,那么每次的结果都是一样的。

我知道肯定是 GFW 做了某些手脚,但是不知道具体原理,有没有明白的 v 友说一说细节,想知道。

1269 次点击
所在节点    DNS
15 条回复
Puteulanus
2021-05-28 15:14:53 +08:00
可以开 wireshark 看一下,有可能会有两个 DNS 回复,先回来的是抢答的投毒回复
caola
2021-05-28 15:21:24 +08:00
多数是被抢答了
knightdf
2021-05-28 15:21:44 +08:00
还有可能是 DNS 轮询
henices
2021-05-28 15:23:31 +08:00
国内最大的分布式 入侵检测系统
tankren
2021-05-28 15:26:50 +08:00
ping 一下 8.8.8.8 看看是不是真的
bear2000
2021-05-28 15:34:33 +08:00
@tankren “是不是真的”指什么东西?我能够 ping 通 8.8.8.8
ho121
2021-05-28 15:45:24 +08:00
利用 DNS 轮询做负载均衡
AllenHua
2021-05-28 15:59:55 +08:00
https://www.senrokumon.com/gfw-dns-hijacking/

dns 抢答 /劫持 dns 走 udp 协议,普通的 dns query 又是明文且不加密的,这样就很容易被蔷或者 isp 做手脚
zongren
2021-05-28 16:01:51 +08:00
本身就有多个 ip 啊
Greenm
2021-05-28 16:13:13 +08:00
冷知识,你随便指定一个国外的 IP 去查询被墙的域名,不管它开没开 53 端口,甚至存不存在,也会有返回结果哦。

如:


$ dig google.com @111.111.11.1

; <<>> DiG 9.10.6 <<>> google.com @111.111.11.1
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 36728
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;google.com. IN A

;; ANSWER SECTION:
google.com. 60 IN A 46.82.174.69

;; Query time: 21 msec
;; SERVER: 111.111.11.1#53(111.111.11.1)
;; WHEN: Fri May 28 16:11:23 CST 2021
;; MSG SIZE rcvd: 54
bear2000
2021-05-28 16:20:57 +08:00
@Greenm 我刚刚试了一下,确实是这样,这是为什么呢......dig 命令中的指定 server 没有任何作用吗?
bear2000
2021-05-28 16:23:16 +08:00
@zongren 你的意思是有几十个 ip ?我查了几十次,每次结果都不一样,这不太可能吧
bear2000
2021-05-28 16:25:01 +08:00
@AllenHua 原来是抢答造成的,懂了
Greatshu
2021-05-28 16:31:37 +08:00
普通 dns 请求是明文而且没有签名的,伪造不要太简单,大学时计算机网络有一个作业就是用 winpcap 实现 DNS 劫持
LGA1150
2021-05-29 02:14:41 +08:00
@Greenm 可以利用这个实现反射攻击

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/779829

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX