我尝试使用 Google Public DNS 来解析 DNS 记录,我尝试了 36032b.cc。下面是结果,但有人可以向我解释一下结果吗?我在互联网上找不到有关这些结果的任何指南。状态:0 是什么意思?什么是 TC、RD、RA、AD。为什么我有多个答案?
{
"Status": 0,
"TC": false,
"RD": true,
"RA": true,
"AD": false,
"CD": false,
"Question": [
{
"name": "36032b.cc.",
"type": 1
}
],
"Answer": [
{
"name": "36032b.cc.",
"type": 5,
"TTL": 299,
"data": "982020.ssl-cdnweb.net."
},
{
"name": "982020.ssl-cdnweb.net.",
"type": 1,
"TTL": 299,
"data": "18.140.5.212"
},
{
"name": "982020.ssl-cdnweb.net.",
"type": 1,
"TTL": 299,
"data": "139.99.120.10"
}
],
"Additional": [],
"Comment": "Response from 159.138.76.159."
}
答案1
这里面临的问题是 JSON 数据的组合,在某些情况下仅显示标识符的原始值,而不是与这些值相对应的更人性化和搜索友好的名称,但也要理解一般的 DNS。
有关原始值(例如“状态 0”等)的参考,我建议咨询DNS 参数的 IANA 注册。
如果你看看DNS RCODE部分中,你可以看到“状态 0”NOERROR
在资源记录 (RR) 类型部分中你可以看到“类型 5”是CNAME
,“类型 1”是A
,并且在DNS 标头标志部分中您可以看到标志TC
(截断),RD
(所需递归),RA
(可用递归),AD
(真实数据)。
关于为什么答案中有多个记录:
在您的36032b.cc A
查询中,您查找的名称(36032b.cc
)原来是一个别名(有一条CNAME
记录),而规范名称(982020.ssl-cdnweb.net
)有两条A
记录。因此答案中有三条记录。
为了快速获得更易读、更易于搜索的结果,您可以使用例如dig
漂亮地打印完整响应(包括已知状态代码和类型等名称):
; <<>> DiG 9.11.28-RedHat-9.11.28-1.fc33 <<>> 36032b.cc
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 6182
;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;36032b.cc. IN A
;; ANSWER SECTION:
36032b.cc. 299 IN CNAME 982020.ssl-cdnweb.net.
982020.ssl-cdnweb.net. 300 IN A 139.99.120.10
982020.ssl-cdnweb.net. 300 IN A 18.140.5.212
;; Query time: 1202 msec
;; SERVER: 139.162.131.5#53(139.162.131.5)
;; WHEN: Sun Mar 28 14:00:11 UTC 2021
;; MSG SIZE rcvd: 105