1. KDDI/kddnet.ad.jp/penguin
/children |
登録しているドメイン一覧 http://nslist.net/penguin.kddnet.ad.jp/
1.1. JPからの委譲
$ dnsq a penguin.kddnet.ad.jp a.dns.jp
1 penguin.kddnet.ad.jp: 106 bytes, 1+0+2+2 records, response, noerror query: 1 penguin.kddnet.ad.jp authority: kddnet.ad.jp 86400 NS dolphin.kddnet.ad.jp authority: kddnet.ad.jp 86400 NS penguin.kddnet.ad.jp additional: penguin.kddnet.ad.jp 86400 A 210.132.91.129 additional: dolphin.kddnet.ad.jp 86400 A 210.132.91.130
1.2. ゾーンサーバの返答がおかしい
$ dnsq a penguin.kddnet.ad.jp 210.132.91.129
1 penguin.kddnet.ad.jp: 182 bytes, 1+1+3+3 records, response, authoritative, weird ra, noerror query: 1 penguin.kddnet.ad.jp answer: penguin.kddnet.ad.jp 300 A 210.132.91.129 authority: kddnet.ad.jp 300 NS temae5.int-gw.kddi.ne.jp authority: kddnet.ad.jp 300 NS tegami1.int-gw.kddi.ne.jp authority: kddnet.ad.jp 300 NS tegami2.int-gw.kddi.ne.jp additional: temae5.int-gw.kddi.ne.jp 300 A 106.187.5.93 additional: tegami1.int-gw.kddi.ne.jp 300 A 210.132.91.136 additional: tegami2.int-gw.kddi.ne.jp 300 A 210.132.91.138
- Aレコードが得られるのだが、このAレコードを受け入れていいのだろうか。
ここのadditional は捨てるのがまともなキャッシュサーバだ。(そうでないと、簡単に毒が入ってしまう。)
なぜ kddnet.ad.jp NS penguin.kddnet.ad.jp がないのだろう。
-- ToshinoriMaeno 2015-12-31 12:26:19
1.3. SOA を確認
$ dnsq soa kddnet.ad.jp 210.132.91.129
6 kddnet.ad.jp: 200 bytes, 1+1+3+3 records, response, authoritative, weird ra, noerror query: 6 kddnet.ad.jp answer: kddnet.ad.jp 300 SOA tegami1.int-gw.kddi.ne.jp admin.int-gw.kddi.ne.jp 2015111801 600 180 3600000 300 authority: kddnet.ad.jp 300 NS temae5.int-gw.kddi.ne.jp authority: kddnet.ad.jp 300 NS tegami2.int-gw.kddi.ne.jp authority: kddnet.ad.jp 300 NS tegami1.int-gw.kddi.ne.jp additional: temae5.int-gw.kddi.ne.jp 300 A 106.187.5.93 additional: tegami1.int-gw.kddi.ne.jp 300 A 210.132.91.136 additional: tegami2.int-gw.kddi.ne.jp 300 A 210.132.91.138
SOAレコードもあるし、NSレコードもあるから、形式的にはゾーンサーバとしての返事だ。
- Aレコードを答えても問題はなさそう。
いや、待って。 ここのNSレコードは違うかもしれない。(再委譲?) -- ToshinoriMaeno 2015-12-31 12:26:19
念のため、NSレコードも問い合わせておこう。
$ dnsq ns kddnet.ad.jp 210.132.91.129
2 kddnet.ad.jp: 158 bytes, 1+3+0+3 records, response, authoritative, weird ra, noerror query: 2 kddnet.ad.jp answer: kddnet.ad.jp 300 NS temae5.int-gw.kddi.ne.jp answer: kddnet.ad.jp 300 NS tegami1.int-gw.kddi.ne.jp answer: kddnet.ad.jp 300 NS tegami2.int-gw.kddi.ne.jp additional: temae5.int-gw.kddi.ne.jp 300 A 106.187.5.93 additional: tegami1.int-gw.kddi.ne.jp 300 A 210.132.91.136 additional: tegami2.int-gw.kddi.ne.jp 300 A 210.132.91.138
AnswerとしてNSを答えてくる。(委譲返答ではない。特に呼び名はない) その値は外部ドメインの名前であるが。
- このNSは委譲返答より優先される(RFC2181)ので、委譲情報(glue)は見えなくなるはずだ。
そして、この返答にあるadditional Aレコードは捨てるのが正しい。
つまり、用心深いキャッシュサーバは委譲返答をもらったときにはゾーンサーバにNSを確認にいくため、
- その状態から進まなくなるのではないか。(現実にはunboundはそうはなっていない。なぜか)
-- ToshinoriMaeno 2015-12-31 12:33:57
delegation を追いかけているうちに戻ってしまうことがあるのは想定ずみだろうから、
- なんらかの対策をしている可能性がある。そういえば、BINDの不良にそういうのがあった。(それも2015年)
-- ToshinoriMaeno 2015-12-31 12:36:03
この立場からすると、問題があるのは、int-gw.kddi.ne.jpゾーンなのか。