如何解释DIG中的“附加部分”?

Hal*_*luk 11 domain-name-system

我正在尝试了解如何解释我的 dig 查询中的“附加部分”。

这是我的特定查询的附加部分:

;; ADDITIONAL SECTION:
janus.radore.com.   831 IN  A   109.235.251.213
mimas.rh.com.tr.    458 IN  A   77.75.34.2
titan.radore.com.   586 IN  A   95.211.70.4
Run Code Online (Sandbox Code Playgroud)

这些数字是什么意思?什么是831?

以下是 google.com 挖掘中的同一部分:

;; ADDITIONAL SECTION:
ns1.google.com.     74569   IN  A   216.239.32.10
ns2.google.com.     45794   IN  A   216.239.34.10
ns3.google.com.     74569   IN  A   216.239.36.10
ns4.google.com.     45794   IN  A   216.239.38.10
Run Code Online (Sandbox Code Playgroud)

我的最终目标是找到我的域使用的名称服务器的性能。但我仍然想学习如何解释“附加部分”。

谢谢,哈鲁克

poo*_*lie 14

“附加部分”是指:与您的问题相关但实际上并非其答案的其他信息。例如:

;; QUESTION SECTION:
;google.com.            IN  A
Run Code Online (Sandbox Code Playgroud)

我们要求提供Agoogle.com的地址 ( )。

;; ANSWER SECTION:
google.com.     165 IN  A   66.102.11.104
Run Code Online (Sandbox Code Playgroud)

这是它的 IP 地址。

;; AUTHORITY SECTION:
google.com.     21770   IN  NS  ns4.google.com.
google.com.     21770   IN  NS  ns3.google.com.
google.com.     21770   IN  NS  ns2.google.com.
google.com.     21770   IN  NS  ns1.google.com.
Run Code Online (Sandbox Code Playgroud)

这些是该问题的权威。

;; ADDITIONAL SECTION:
ns1.google.com.     19431   IN  A   216.239.32.10
ns2.google.com.     19542   IN  A   216.239.34.10
ns3.google.com.     19368   IN  A   216.239.36.10
ns4.google.com.     19543   IN  A   216.239.38.10
Run Code Online (Sandbox Code Playgroud)

这些是名称服务器的地址。

附加部分信息实际上存在于 DNS 应答数据包中,作为避免附加往返的一种方式。

您在每一行中看到的数字是可以缓存记录的秒数。

  • 我想补充一点,如今实际*信任*回复数据包附加部分中的数据(从而减少往返)的标准非常有选择性。[RFC-2181 §5.4.1](http://tools.ietf.org/html/rfc2181#section-5.4.1) 包含我所知道的措辞最清晰的摘要。 (2认同)

Cor*_* S. 5

我(还)没有官方答案,但连续多次运行 dig 显示该数字递减 - 大约每秒一次。

对我来说,这表明这是列出的特定条目的剩余 TTL。因此,在您的示例中,ns4.google.com 在再次检查更新之前还剩 45794 秒。

编辑:我实际上刚刚发现了这个,这证实了我最初的发现:

http://www.madboa.com/geek/dig/#ttl

  • 官方答案是肯定的,这是从递归服务器中获取缓存记录的 TTL。如果您查询权威服务器,则不应返回 TTL。 (3认同)
  • @Chris,TTL *将*包含在服务器权威的记录中,只是不会倒计时。例如,如果您向 google 的 DNS 服务器之一查询 google 的 NS 记录 (`dig -t ns google.com @ns1.google.com`),它们将始终返回 TTL 345600(4 天,以秒为单位)。 (2认同)
  • @克里斯·尔,不。首先,响应中的*所有*资源记录都包含 TTL,无论它们位于哪个部分(权限、答案或附加部分)。其次,是否有附加部分与服务器是否权威无关(并且只是让事情变得复杂的是,单个 DNS 响应可以包含权威数据和缓存数据的混合)。尝试我之前给出的“dig”示例,您将获得带有附加部分的完全权威的响应(并且答案和附加部分都将具有 TTL)。 (2认同)