我正在尝试使用 Ubuntu 18.04LTS 中的 bash 命令 dig 从名为知乎,它给出了不一致的结果。
我使用的命令是:
dig @8.8.8.8 SOA +short -t txt zhihu.com
这个结果对我来说看起来不错:
root@mx:/var/www/html/server# dig @8.8.8.8 SOA +short -t txt zhihu.com
;; Warning, extra type option
"m5g7qjk31l5d1hkq6m3zvcf6lg2f0h16"
"google-site-verification=q42VyLbU7bjRv5xb2279AX9jJ3Vuxp-e4XG_f1EQRGk"
"v=spf1 include:_spf.google.com include:cust-spf.edmsphere.com -all"
然而,下一秒我执行它时,我得到:
root@mx:/var/www/html/server# dig @8.8.8.8 SOA +short -t txt zhihu.com
;; Warning, extra type option
e4094fc1d98c915a.ksyunad.com.
结果e4094fc1d98c915a.ksyunad.com
是 CNAME 记录值知乎在 DNS 中。
这里发生了什么?
答案1
首先,您要求提供SOA
和TXT
记录。TXT
查询已发送,并发出警告。
主要问题是域zhihu.com
配置错误:
- 由于它是一个委托域,因此需要
SOA
并NS
记录, - 记录的存在
CNAME
与几乎所有其他记录都不兼容(DNSSEC除外)
因此,您的行为不一致:每个 DNS 解析器都可以根据需要解决该不兼容性。8.8.8.8
是一个任播地址:每次您连接到可能不同的服务器时。