.se と DNSSECと IPv6
まず普通に NS を問い合わせる
ここで DNSSEC オプション(DO)を有効にして a.ns.se に IPv6 で再度問い合わせてみる。
あ、分かった。buffer サイズだ。+vc 付ければ [gj].ns.se も IPv6 での問い合わせに AAAA を含めて返答する。(また、IPv4 での問い合わせでも +bufsize=1280 を付けると AAAA が含まれなくなる)
とすると、次の疑問は +bufsize を指定しない場合に、なぜ IPv4 では bufsize が 4096 になり、IPv6 では 1280 になっちゃうのか。(a.ns.se が反応ないのはいまだに謎だが) (追記:正確には g.ns.se の方は常に 1280 だが、j.ns.se の方はなんどもクエリを送っていると、4096 になったり 1280 なったりと一定しない。なんとなくソフトウェアの問題な気がしてきた。)
tcpdump を見てる限り dig は IPv4/IPv6 ともに OPT UDPsize=4096 をつけて出してるな。
■ 更新
「Re: .se と DNSSECと IPv6」で a.ns.se が反応しない理由を推測してみた。
> dig @a.ns.se se. nsとくに問題なし。次に IPv6 transport で同じ a.ns.se (2a01:3f0:0:301::53) に問い合わせる
; <<>> DiG 9.6.0-APPLE-P2 <<>> @a.ns.se se. ns
; (2 servers found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 58415
;; flags: qr aa rd; QUERY: 1, ANSWER: 10, AUTHORITY: 0, ADDITIONAL: 13
;; WARNING: recursion requested but not available
;; QUESTION SECTION:
;se. IN NS
;; ANSWER SECTION:
se. 172800 IN NS g.ns.se.
se. 172800 IN NS j.ns.se.
se. 172800 IN NS f.ns.se.
se. 172800 IN NS e.ns.se.
se. 172800 IN NS h.ns.se.
se. 172800 IN NS d.ns.se.
se. 172800 IN NS b.ns.se.
se. 172800 IN NS c.ns.se.
se. 172800 IN NS a.ns.se.
se. 172800 IN NS i.ns.se.
;; ADDITIONAL SECTION:
a.ns.se. 172800 IN A 192.36.144.107
a.ns.se. 172800 IN AAAA 2a01:3f0:0:301::53
b.ns.se. 172800 IN A 192.36.133.107
c.ns.se. 172800 IN A 192.36.135.107
d.ns.se. 172800 IN A 81.228.8.16
e.ns.se. 172800 IN A 81.228.10.57
f.ns.se. 172800 IN A 192.71.53.53
g.ns.se. 172800 IN A 130.239.5.114
g.ns.se. 172800 IN AAAA 2001:6b0:e:3::1
h.ns.se. 172800 IN A 199.7.49.30
i.ns.se. 172800 IN A 194.146.106.22
j.ns.se. 172800 IN A 199.254.63.1
j.ns.se. 172800 IN AAAA 2001:500:2c::1
;; Query time: 347 msec
;; SERVER: 2a01:3f0:0:301::53#53(2a01:3f0:0:301::53)
;; WHEN: Thu Apr 15 10:49:27 2010
;; MSG SIZE rcvd: 427
>
> dig @2a01:3f0:0:301::53 se. nsこちらも特におかしなことはない。
; <<>> DiG 9.6.0-APPLE-P2 <<>> @2a01:3f0:0:301::53 se. ns
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 22540
;; flags: qr aa rd; QUERY: 1, ANSWER: 10, AUTHORITY: 0, ADDITIONAL: 13
;; WARNING: recursion requested but not available
;; QUESTION SECTION:
;se. IN NS
;; ANSWER SECTION:
se. 172800 IN NS a.ns.se.
se. 172800 IN NS f.ns.se.
se. 172800 IN NS g.ns.se.
se. 172800 IN NS j.ns.se.
se. 172800 IN NS e.ns.se.
se. 172800 IN NS i.ns.se.
se. 172800 IN NS h.ns.se.
se. 172800 IN NS d.ns.se.
se. 172800 IN NS c.ns.se.
se. 172800 IN NS b.ns.se.
;; ADDITIONAL SECTION:
a.ns.se. 172800 IN A 192.36.144.107
a.ns.se. 172800 IN AAAA 2a01:3f0:0:301::53
b.ns.se. 172800 IN A 192.36.133.107
c.ns.se. 172800 IN A 192.36.135.107
d.ns.se. 172800 IN A 81.228.8.16
e.ns.se. 172800 IN A 81.228.10.57
f.ns.se. 172800 IN A 192.71.53.53
g.ns.se. 172800 IN A 130.239.5.114
g.ns.se. 172800 IN AAAA 2001:6b0:e:3::1
h.ns.se. 172800 IN A 199.7.49.30
i.ns.se. 172800 IN A 194.146.106.22
j.ns.se. 172800 IN A 199.254.63.1
j.ns.se. 172800 IN AAAA 2001:500:2c::1
;; Query time: 372 msec
;; SERVER: 2a01:3f0:0:301::53#53(2a01:3f0:0:301::53)
;; WHEN: Thu Apr 15 10:51:07 2010
;; MSG SIZE rcvd: 427
>
ここで DNSSEC オプション(DO)を有効にして a.ns.se に IPv6 で再度問い合わせてみる。
> dig @2a01:3f0:0:301::53 se. ns +dnssecなぜか反応がなくなる。今度は IPv4 で同じくDO付きで問い合わせる。
; <<>> DiG 9.6.0-APPLE-P2 <<>> @2a01:3f0:0:301::53 se. ns +dnssec
; (1 server found)
;; global options: +cmd
;; connection timed out; no servers could be reached
>
> dig @192.36.144.107 se. ns +dnssec問題なく返答が来る。なんだろう?次に g.ns.se に IPv6 で DO 付きで問い合わせてみる。
; <<>> DiG 9.6.0-APPLE-P2 <<>> @192.36.144.107 se. ns +dnssec
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER&<<- opcode: QUERY, status: NOERROR, id: 61553
;; flags: qr aa rd; QUERY: 1, ANSWER: 11, AUTHORITY: 0, ADDITIONAL: 27
;; WARNING: recursion requested but not available
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags: do; udp: 4096
;; QUESTION SECTION:
;se. IN NS
;; ANSWER SECTION:
se. 172800 IN NS j.ns.se.
se. 172800 IN NS g.ns.se.
se. 172800 IN NS c.ns.se.
se. 172800 IN NS i.ns.se.
se. 172800 IN NS h.ns.se.
se. 172800 IN NS e.ns.se.
se. 172800 IN NS d.ns.se.
se. 172800 IN NS a.ns.se.
se. 172800 IN NS f.ns.se.
se. 172800 IN NS b.ns.se.
;; ADDITIONAL SECTION:
a.ns.se. 172800 IN A 192.36.144.107
a.ns.se. 172800 IN AAAA 2a01:3f0:0:301::53
b.ns.se. 172800 IN A 192.36.133.107
c.ns.se. 172800 IN A 192.36.135.107
d.ns.se. 172800 IN A 81.228.8.16
e.ns.se. 172800 IN A 81.228.10.57
f.ns.se. 172800 IN A 192.71.53.53
g.ns.se. 172800 IN A 130.239.5.114
g.ns.se. 172800 IN AAAA 2001:6b0:e:3::1
h.ns.se. 172800 IN A 199.7.49.30
i.ns.se. 172800 IN A 194.146.106.22
j.ns.se. 172800 IN A 199.254.63.1
j.ns.se. 172800 IN AAAA 2001:500:2c::1
e.ns.se. 172800 IN A 81.228.10.57
f.ns.se. 172800 IN A 192.71.53.53
g.ns.se. 172800 IN A 130.239.5.114
g.ns.se. 172800 IN AAAA 2001:6b0:e:3::1
h.ns.se. 172800 IN A 199.7.49.30
i.ns.se. 172800 IN A 194.146.106.22
j.ns.se. 172800 IN A 199.254.63.1
j.ns.se. 172800 IN AAAA 2001:500:2c::1
a.ns.se. 172800 IN RRSIG A 5 3 172800 20100422023507 20100415121820 13443 se. ZbUGPkBrLJWd+C6L6zECtQz2EBmAniVFtNP4OSZ/8IIiCCgPzYRZlU8s 3Mjj0Dl22fi2dvot9dV6RADzK039ipwW/5BStrZkokLAhxNrkXTfSKQv teS+adSH4tOhIm0VdDihOVaqhUBzaBWRXZoMl9rVIHIVOJfMGhdbYHnK YdY=
a.ns.se. 172800 IN RRSIG AAAA 5 3 172800 20100421204756 20100415121820 13443 se. afobt3PYDWggCpVs3uXS8tFn0qc3d4jHrzBnRklXOiTcPkWXqUSe5Ysh ZH1+BIjvxHMU0Owuq8AdZ8qZ3bz4IzuIzW9OAZo2m20hRVHoYsX7UHnL HY525XL5hLINS7DIr7WAwz40UYxE8pKgV2CXMb3fIn4bNM54Fpbv5TZQ VaA=
b.ns.se. 172800 IN RRSIG A 5 3 172800 20100421113303 20100415121820 13443 se. anbd9uSh6nWjxaIATOkBWqj5vHRbf4lt8SdEBlPw5VSdDNLuWj2ZiAup WSSKtQpcyw6t+Msfcl8UuL+Z0jylf4cSNsiu6STtBTTUIPDG5BO9rV85 ZA8yxAor7oYhZHENc26bNJ3+tqD+uDTBJHpRrwUtMqS5MOPjmJLOnSys +h8=
c.ns.se. 172800 IN RRSIG A 5 3 172800 20100421011110 20100415121820 13443 se. fWaZwxfJ5OW7a/UE9M+rml0E15H9xnWCMktwPOarh3nIhb0KezR3IhsE uSHdVuLkR6TEsbhq7XmM3AjVKLm8Iq49ZcIYBL2k9BBSGr9JWLmjaKGl DKa5elaG2oA9fJH8z54nz/0ZOv1wz2YXY+knwwOW4ji8tcB3D/5hzF5G pbg=
d.ns.se. 172800 IN RRSIG A 5 3 172800 20100421210134 20100415121820 13443 se. hHXKNk2A7wqSQO25nKZfuZieCRNgow7ptolvw4wpelBVaqSgNleTDZsW w9cdfJQcqB2EvC3ffJb40U3PfKKuz8TVNkfmEb3/1C3kbXsk7OLwSCjm kEsOzKHmumVxEzYmBQlcj0XyhF2kgsha3Es1ZYM9UMwHXdz6APYi3By4 +4E=
e.ns.se. 172800 IN RRSIG A 5 3 172800 20100421033358 20100415121820 13443 se. dlFgSbdqwcPNVuyTurZC/GoBTM1O0PbJx7LQGj6VSksP84oxAyRxLULG wPHOJxhVwknadSJVN8xX4U4q21QW6T++0UeBktUvD1YNCc3ZF080OAkv BqLK4Sd0cRT0eaXEJd8NtMajagkGNu8KSCIysZcHE45FjD6y7p+lbmfi TlA=
f.ns.se. 172800 IN RRSIG A 5 3 172800 20100420175844 20100415121820 13443 se. Pk67cRoUTBRHY9z5jWGf9+qQPg08SS3DPQLSzqF6OjGJ3c+WVExib9AC 5l7a40EUGeZEO17nzvt9l74MvE30nnPEMxR3nuDEmfX16aVRC6tj4zj5 r7gWeYz+4tCPVE/76xKf6aH54mkugjebMGV+08pd7RRDnkScqB3PSJG5 gnQ=
g.ns.se. 172800 IN RRSIG A 5 3 172800 20100420154333 20100415121820 13443 se. Ib9fZlCf0b7uBwIJtvgKTFWMS/FL+4icHB8XoP9f0AlV96Hj8V/xqdR4 igNLIBivmY1F9Kp2xnXcpSCJXljrOV3DZrMgLyWmDCz3oRyLmIb48KEV uZSPt8rvKdtt3RQVop1+66V3Mi+sIx+hi7quVwGr1dgkJlTGoiMn4uXH GcE=
g.ns.se. 172800 IN RRSIG AAAA 5 3 172800 20100422093307 20100415121820 13443 se. JIjf3rfS1wi/FjG3026avUmYu0Niif6ls5qyIQ3tOSIPG9upAx9j5jQ4 wwk5L+WUGi3MahyL0e44NM+LfqL1V8jzpiXCqlfapYB6/oUudQiu/y+O zst1R6e+OLWlZR7Np6vP8LERlR54WYAoIx3EuKxoIM6x/LITGjXKLb49 /7k=
h.ns.se. 172800 IN RRSIG A 5 3 172800 20100422104818 20100415121820 13443 se. P+EIFPRHapeMDIUnU2uHIDoP/LQ+yzm6XZ3A0cjxpfcmAEZnXtoMR1xf UQ+XDtCkJlf+bxcPWAcRTvWnD+Q8K6OVYntn7OD43oM8GBodHu6/zKWT qYtMG2SfSEDGGvMmJmAOLIyV5Ejjpax7PiD8VyDl41rCmTEAYOqJcX2q o5Q=
i.ns.se. 172800 IN RRSIG A 5 3 172800 20100422081510 20100415121820 13443 se. YQ+A4FdlqgQBV+nTrJX+78b4LbclFhIMtzsFyg9pC45Obpk5cR2OYY+3 MuvuOjVneLAhSjUfQfg6c67mcn3O11xNA6L13CLkNzNefA9yqkWM7rzC 2bl+lVyvJV4+g1zfesT5I3wFnJc+FKNqQIb4tgl3cItUITd3ZkbEkwTx R/Y=
j.ns.se. 172800 IN RRSIG A 5 3 172800 20100421013004 20100415121820 13443 se. K7hbqNkfX0x5EeGWJgCjUnGv+8fXVDA6y5efWYh6+BmXwdUhkCzKN4UX a1veQ+n19kNBLwluqAu0RvKh55wmMQrWfR3wjMx1AXjIxc+jz79Ud3qR ddWaX1GjK9wUpBdKr0ZzheOdARi/22EmyxI5rEX20lw8lu/S/cwJk4kH 25s=
j.ns.se. 172800 IN RRSIG AAAA 5 3 172800 20100421053133 20100415121820 13443 se. UNmJvC5tpfhbZGuGmQNpHY/lM/yYKUB8NVHbxcKxstXBhuFJ0s6ZGTNc xudT0VSdmG54YEvQtQeRqT5g6mXMOgRyn2l9yHom/ljPszwo9DLuVI8V 6vbyMKWQhdXgNM4OLzsAJVWxVgsIJDas6508WdZ3uQ7MhbqtIFNddKLC wN0=
;; Query time: 161 msec
;; SERVER: 192.36.144.107#53(192.36.144.107)
;; WHEN: Thu Apr 15 10:53:20 2010
;; MSG SIZE rcvd: 2706
>
> dig @2001:6b0:e:3::1 se. ns +dnssec返答あり。でも、なぜか AAAA の additional record が無い。同じく g.ns.se (192.36.144.107)に IPv4 で問い合わせると、DO bit が立ってても AAAA レコード入りで返答がある。j.ns.se も g.ns.se と同じ挙動。これはどう解釈すべきなんだろう?
; <<>> DiG 9.6.0-APPLE-P2 <<>> @2001:6b0:e:3::1 se. ns +dnssec
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 47290
;; flags: qr aa rd; QUERY: 1, ANSWER: 11, AUTHORITY: 0, ADDITIONAL: 13
;; WARNING: recursion requested but not available
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 1280
;; QUESTION SECTION:
;se. IN NS
;; ANSWER SECTION:
se. 172800 IN NS a.ns.se.
se. 172800 IN NS b.ns.se.
se. 172800 IN NS c.ns.se.
se. 172800 IN NS d.ns.se.
se. 172800 IN NS e.ns.se.
se. 172800 IN NS f.ns.se.
se. 172800 IN NS g.ns.se.
se. 172800 IN NS h.ns.se.
se. 172800 IN NS i.ns.se.
se. 172800 IN NS j.ns.se.
se. 172800 IN RRSIG NS 5 1 172800 20100420180651 20100415121820 13443 se. Tw/HLuk0wR6Bk7TKDIYh2JvGbKZO1CcNsSKdakGS5KYTfzTIBGMcJq06 c+ZT6o+zXnVxuGnx7kXrUy/kDaxphDuFPOmzKrTm6AWFn99kaxPnYp8h Ht+aeApeMIbDwvWYDNZDd9GUtHF/fmDt/rlXJzA8YLuE8+0ypdo7gW1i mw4=
;; ADDITIONAL SECTION:
a.ns.se. 172800 IN A 192.36.144.107
a.ns.se. 172800 IN RRSIG A 5 3 172800 20100422023507 20100415121820 13443 se. ZbUGPkBrLJWd+C6L6zECtQz2EBmAniVFtNP4OSZ/8IIiCCgPzYRZlU8s 3Mjj0Dl22fi2dvot9dV6RADzK039ipwW/5BStrZkokLAhxNrkXTfSKQv teS+adSH4tOhIm0VdDihOVaqhUBzaBWRXZoMl9rVIHIVOJfMGhdbYHnK YdY=
b.ns.se. 172800 IN A 192.36.133.107
b.ns.se. 172800 IN RRSIG A 5 3 172800 20100421113303 20100415121820 13443 se. anbd9uSh6nWjxaIATOkBWqj5vHRbf4lt8SdEBlPw5VSdDNLuWj2ZiAup WSSKtQpcyw6t+Msfcl8UuL+Z0jylf4cSNsiu6STtBTTUIPDG5BO9rV85 ZA8yxAor7oYhZHENc26bNJ3+tqD+uDTBJHpRrwUtMqS5MOPjmJLOnSys +h8=
c.ns.se. 172800 IN A 192.36.135.107
c.ns.se. 172800 IN RRSIG A 5 3 172800 20100421011110 20100415121820 13443 se. fWaZwxfJ5OW7a/UE9M+rml0E15H9xnWCMktwPOarh3nIhb0KezR3IhsE uSHdVuLkR6TEsbhq7XmM3AjVKLm8Iq49ZcIYBL2k9BBSGr9JWLmjaKGl DKa5elaG2oA9fJH8z54nz/0ZOv1wz2YXY+knwwOW4ji8tcB3D/5hzF5G pbg=
d.ns.se. 172800 IN A 81.228.8.16
d.ns.se. 172800 IN RRSIG A 5 3 172800 20100421210134 20100415121820 13443 se. hHXKNk2A7wqSQO25nKZfuZieCRNgow7ptolvw4wpelBVaqSgNleTDZsW w9cdfJQcqB2EvC3ffJb40U3PfKKuz8TVNkfmEb3/1C3kbXsk7OLwSCjm kEsOzKHmumVxEzYmBQlcj0XyhF2kgsha3Es1ZYM9UMwHXdz6APYi3By4 +4E=
e.ns.se. 172800 IN A 81.228.10.57
e.ns.se. 172800 IN RRSIG A 5 3 172800 20100421033358 20100415121820 13443 se. dlFgSbdqwcPNVuyTurZC/GoBTM1O0PbJx7LQGj6VSksP84oxAyRxLULG wPHOJxhVwknadSJVN8xX4U4q21QW6T++0UeBktUvD1YNCc3ZF080OAkv BqLK4Sd0cRT0eaXEJd8NtMajagkGNu8KSCIysZcHE45FjD6y7p+lbmfi TlA=
f.ns.se. 172800 IN A 192.71.53.53
g.ns.se. 172800 IN A 130.239.5.114
;; Query time: 1144 msec
;; SERVER: 2001:6b0:e:3::1#53(2001:6b0:e:3::1)
;; WHEN: Thu Apr 15 10:56:08 2010
;; MSG SIZE rcvd: 1280
>
| DNSSEC | Transport | Status |
|---|---|---|
| なし | IPv4 | 問題なし |
| IPv6 | 問題なし | |
| あり | IPv4 | 問題なし |
| IPv6 | a.ns.se は反応無し。[gj].ns.se は AAAA を返さず |
あ、分かった。buffer サイズだ。+vc 付ければ [gj].ns.se も IPv6 での問い合わせに AAAA を含めて返答する。(また、IPv4 での問い合わせでも +bufsize=1280 を付けると AAAA が含まれなくなる)
とすると、次の疑問は +bufsize を指定しない場合に、なぜ IPv4 では bufsize が 4096 になり、IPv6 では 1280 になっちゃうのか。(a.ns.se が反応ないのはいまだに謎だが) (追記:正確には g.ns.se の方は常に 1280 だが、j.ns.se の方はなんどもクエリを送っていると、4096 になったり 1280 なったりと一定しない。なんとなくソフトウェアの問題な気がしてきた。)
tcpdump を見てる限り dig は IPv4/IPv6 ともに OPT UDPsize=4096 をつけて出してるな。
■ 更新
「Re: .se と DNSSECと IPv6」で a.ns.se が反応しない理由を推測してみた。