1. y.qmail.jp

delegationで外部名に委譲して、そのAレコードをadditionalに付けておくという毒が入る。

kresd/z.qmail.jp : additional なしの委譲

2. delegated zones

&y.qmail.jp:14.192.44.29:qmaily.e-ontap.com:300
&z.qmail.jp::qmailz.e-ontap.com:300

3. 対策

/2 fetch_glue に条件を一つ追加したが、不十分なようだ。(推測・恐れが当たっているのか)

/3 glue 判定が間違っていることの確認用 debug 出力追加。XX stash_glue

/4 glue は stash しない(cacheしない)ことにした。 cut 情報には追加しているはず。

/5 cznicからの新版がでたので、試す。動作はよさそうだ。

4. 記録

&y.qmail.jp:14.192.44.29:qmaily.e-ontap.com:300
&z.qmail.jp::qmailz.e-ontap.com:300

$ kdig y.qmail.jp @127.0.0.3

;; ->>HEADER<<- opcode: QUERY; status: NOERROR; id: 22974
;; Flags: qr rd ra; QUERY: 1; ANSWER: 1; AUTHORITY: 0; ADDITIONAL: 0

;; QUESTION SECTION:
;; y.qmail.jp.                  IN      A

;; ANSWER SECTION:
y.qmail.jp.             300     IN      A       14.192.44.29

;; Received 44 B
;; Time 2016-04-12 15:24:57 JST
;; From 127.0.0.3@53(UDP) in 35.3 ms

> [plan] plan 'y.qmail.jp.' type 'A'
[resl]   => using root hints
[resl]   => querying: '202.12.27.33' score: 10 zone cut: '.' m12n: 'Jp.' type: 'NS'
[resl]      optional: '199.7.83.42' score: 10 zone cut: '.' m12n: 'Jp.' type: 'NS'
[resl]      optional: '193.0.14.129' score: 10 zone cut: '.' m12n: 'Jp.' type: 'NS'
[resl]      optional: '192.58.128.30' score: 10 zone cut: '.' m12n: 'Jp.' type: 'NS'
[iter]   cut added, fetch glue
[iter]   cut added, fetch glue
[iter]   cut added, fetch glue
[iter]   cut added, fetch glue
[iter]   cut added, fetch glue
[iter]   cut added, fetch glue
[iter]   cut added, fetch glue
[iter]   <= referral response, follow
[resl]   <= server: '202.12.27.33' rtt: 6 ms
[resl]   => querying: '203.119.40.1' score: 10 zone cut: 'jp.' m12n: 'QMaiL.jp.' type: 'NS'
[resl]      optional: '150.100.6.8' score: 10 zone cut: 'jp.' m12n: 'QMaiL.jp.' type: 'NS'
[resl]      optional: '192.50.43.53' score: 10 zone cut: 'jp.' m12n: 'QMaiL.jp.' type: 'NS'
[resl]      optional: '210.138.175.244' score: 10 zone cut: 'jp.' m12n: 'QMaiL.jp.' type: 'NS'
[iter]   cut added, fetch glue
[iter]   <= referral response, follow
[resl]   <= server: '203.119.40.1' rtt: 5 ms
[resl]   => querying: '14.192.44.5' score: 10 zone cut: 'qmail.jp.' m12n: 'y.QmAIl.JP.' type: 'A'
[iter]   cut added, fetch glue
[iter]   <= referral response, follow
[resl]   <= server: '14.192.44.5' rtt: 11 ms
[resl]   => querying: '14.192.44.29' score: 10 zone cut: 'y.qmail.jp.' m12n: 'y.QmaIl.jP.' type: 'A'
[iter]   <= rcode: NOERROR
[resl]   <= server: '14.192.44.29' rtt: 11 ms
[resl] finished: 4, queries: 1, mempool: 32800 B