"挖" 是什么意思?实际查询这些IP来自哪里?

Che*_*yDT 5 dns dig

出于好奇,dig .今天我进来了。令我惊讶的是,我得到了一个IP:

$ dig .

; <<>> DiG 9.10.3-P4-Ubuntu <<>> .
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 45964
;; flags: qr rd ra ad; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;.                              IN      A

;; ANSWER SECTION:
.                       291     IN      A       172.217.23.174

;; Query time: 150 msec
;; SERVER: 10.0.0.138#53(10.0.0.138)
;; WHEN: Fri Feb 22 18:03:53 STD 2019
;; MSG SIZE  rcvd: 33
Run Code Online (Sandbox Code Playgroud)

现在,这个IP似乎属于Google,http://172.217.23.174/实际上重定向到http://www.google.com/.

然而,反复尝试却给了我不同的 IP:(52.95.34.225亚马逊)、157.240.1.13(Facebook)、52.114.128.9(微软)、23.195.9.143(Akamai)等……(这实际上读起来就像互联网公司的名人录!)

除了他们所属的组织之外,谷歌搜索他们每个人都没有发现任何特别的信息。

那么,现在我更好奇:这些IP来自哪里?dig .实际上是什么的?它似乎在查询“DNS root”,据我了解,它不应该有随机的 A 记录......

use*_*686 2

是的,.指的是 DNS“根”。是的,.不应该有除 NS 和 SOA 之外的任何记录类型(如果使用 +dnssec 选项查询,则加上 DNSSEC 相关的 RRSIG/DNSKEY)。

因此,在这种情况下,您将查询发送到10.0.0.138(这是您 LAN 中的私有地址),并且它向您发送完全虚构的答复。您应该调查谁拥有 LAN 上的该主机,以及为什么首先将其配置为 DNS 服务器。

(有趣的是,它仍然包含ad(经过验证的数据)标志,这意味着它在响应之前已经对记录进行了 DNSSEC 验证,这只是更多的谎言,并提醒人们不要相信“广告”标志。)

  • 进一步的测试表明,这给出了_最后一次 DNS 查询的答案的副本_。不过,从安全角度来看,这并不有趣,因为我可以简单地从网络中嗅探查询数据包。 (2认同)