BIND 9.9 是否显示错误的附加部分数量



我使用 BIND 9.9.4 并看到以下问题。

dig 命令向我们显示附加部分中有 2 条记录:

ADDITIONAL: 2

但它在响应中只向我们显示了 1 条记录:

;; ADDITIONAL SECTION:
 dns1.example.net.  3600    IN  A   127.0.0.1

例:从这个链接: https://kb.isc.org/article/AA-00711/0/In-line-Signing-With-NSEC3-in-BIND-9.9-A-Walk-through.html#informer

root:/etc/namedb/keys# dig @127.0.0.1 foo.example.net any
  ; <<>> DiG 9.9.1-P1 <<>> @127.0.0.1 foo.example.net any
  ; (1 server found)
  ;; global options: +cmd
  ;; Got answer:
  ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 20991
  ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2
  ;; OPT PSEUDOSECTION:
  ; EDNS: version: 0, flags:; udp: 4096
  ;; QUESTION SECTION:
  ;foo.example.net.     IN  ANY
  ;; ANSWER SECTION:
  foo.example.net.  3600    IN  A   192.168.10.10
  ;; AUTHORITY SECTION:
  example.net.      86400   IN  NS  dns1.example.net.
  ;; ADDITIONAL SECTION:
  dns1.example.net. 3600    IN  A   127.0.0.1
  ;; Query time: 0 msec
  ;; SERVER: 127.0.0.1#53(127.0.0.1)
  ;; WHEN: Mon Jun 11 16:34:26 2012
  ;; MSG SIZE  rcvd: 95

从技术上讲,这不是一个错误,而是令人困惑的演示。在 9.9 中,dig 默认开始打开 EDNS(0(,因此响应在附加部分中返回 OPT 记录。 OPT 没有定义的文本输出格式,因此不会打印为记录;您判断它存在的唯一方法是在顶部附近寻找它显示"OPT PSEUDOSECTION"的位置。但它附加部分中的额外记录,因此您看到的计数是正确的。

如果在 9.8 中使用"dig +edns=0"或在 9.9 中使用"dig +noedns",则计数将匹配。

最新更新