DNS/ドメイン販売業者/value-domain/設定の制約について、ここに記述してください。

1. 何でもできてしまうのもどうなのか

まず、value-domainのネームサーバでyatz82.qmail.jpのゾーンを登録してみる。

value-domainのサイトでは

注意事項    
他人が所有しているドメインの設定を勝手に行う事は禁じられています。(運用は出来ません)
他社のサーバー上でのみ運用するドメインの設定は出来ません。
違反行為(上記二つ)があった場合、ドメイン運用後でもご利用を停止させていただきます。
サブドメインを付けて登録されると正常に反映されません。
ネームサーバー設定数に制限はありません。

と記載されているもののあっさり入る。


 伝家の宝刀で、トラブル時にのみ発動ということですね。qmail.jpが登録できるのは問題だ。
  他人の登録したドメインをいじるのは禁止ではなく、できなくしてあるのでしょうね。

-- ToshinoriMaeno 2011-07-08 08:30:53


次に、ゾーン情報としてyatz82.qmail.jpにcnameでghs.google.comをくっつけてみる。こうなる。

C:\dns\bin>dig +norec @ns1.value-domain.com yatz82.qmail.jp any

; <<>> DiG 9.8.0-P1 <<>> +norec @ns1.value-domain.com yatz82.qmail.jp any
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 3355
;; flags: qr aa; QUERY: 1, ANSWER: 4, AUTHORITY: 0, ADDITIONAL: 2

;; QUESTION SECTION:
;yatz82.qmail.jp.               IN      ANY

;; ANSWER SECTION:
yatz82.qmail.jp.        1200    IN      CNAME   ghs.google.com.
yatz82.qmail.jp.        2560    IN      SOA     ns1.value-domain.com. hostmaster
.yatz82.qmail.jp. 1310087432 16384 2048 1048576 2560
yatz82.qmail.jp.        1200    IN      NS      ns1.value-domain.com.
yatz82.qmail.jp.        1200    IN      NS      ns2.value-domain.com.

;; ADDITIONAL SECTION:
ns1.value-domain.com.   1200    IN      A       119.245.243.94
ns2.value-domain.com.   1200    IN      A       175.28.48.57

;; Query time: 15 msec
;; SERVER: 119.245.243.94#53(119.245.243.94)
;; WHEN: Fri Jul 08 10:18:56 2011
;; MSG SIZE  rcvd: 189

え~ちなみにこれは以前のtogetter.comに近い感じですね :-)

それはさておき、引き続いてその親であるqmail.jpゾーンも登録してみる。

なんと入る。しかもこんなレコードも入れられてしまう。

C:\dns\bin>dig +norec @ns1.value-domain.com qmail.jp any

; <<>> DiG 9.8.0-P1 <<>> +norec @ns1.value-domain.com qmail.jp any
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 28187
;; flags: qr aa; QUERY: 1, ANSWER: 6, AUTHORITY: 0, ADDITIONAL: 3

;; QUESTION SECTION:
;qmail.jp.                      IN      ANY

;; ANSWER SECTION:
qmail.jp.               1200    IN      CNAME   ghs.google.com.
qmail.jp.               1200    IN      MX      10 qmail.jp.
qmail.jp.               2560    IN      SOA     ns1.value-domain.com. hostmaster
.qmail.jp. 1310087432 16384 2048 1048576 2560
qmail.jp.               1200    IN      NS      ns1.value-domain.com.
qmail.jp.               1200    IN      NS      ns2.value-domain.com.
qmail.jp.               1200    IN      NS      ipv6.qmail.jp.

;; ADDITIONAL SECTION:
ns1.value-domain.com.   1200    IN      A       119.245.243.94
ns2.value-domain.com.   1200    IN      A       175.28.48.57
ipv6.qmail.jp.          1200    IN      AAAA    2404:6800:8002::79

;; Query time: 31 msec
;; SERVER: 119.245.243.94#53(119.245.243.94)
;; WHEN: Fri Jul 08 10:16:37 2011
;; MSG SIZE  rcvd: 245

で、qmail.jpゾーンにyatz82.qmail.jpのAレコードを追加してみるとこうなる。

C:\dns\bin>dig +norec @ns1.value-domain.com yatz82.qmail.jp

; <<>> DiG 9.8.0-P1 <<>> +norec @ns1.value-domain.com yatz82.qmail.jp
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 19525
;; flags: qr aa; QUERY: 1, ANSWER: 2, AUTHORITY: 2, ADDITIONAL: 2

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

;; ANSWER SECTION:
yatz82.qmail.jp.        1200    IN      CNAME   ghs.google.com.
yatz82.qmail.jp.        1200    IN      A       202.41.218.243

;; AUTHORITY SECTION:
yatz82.qmail.jp.        1200    IN      NS      ns1.value-domain.com.
yatz82.qmail.jp.        1200    IN      NS      ns2.value-domain.com.

;; ADDITIONAL SECTION:
ns1.value-domain.com.   1200    IN      A       119.245.243.94
ns2.value-domain.com.   1200    IN      A       175.28.48.57

;; Query time: 15 msec
;; SERVER: 119.245.243.94#53(119.245.243.94)
;; WHEN: Fri Jul 08 10:32:53 2011
;; MSG SIZE  rcvd: 158

さらに悪乗りしてyatz82.qmail.jpゾーンにyatz82.qmail.jpの2つ目のCNAME、qmail.jpゾーンにyatz82.qmail.jpのCNAMEをそれぞれ追加。結果は想像どおり。もうなにがなんだか。 :-)

え~~っと・・・、たとえば100kmで高速走っているときに間違った操作とはいえ簡単にバックギアに入ってしまうような車は、少なからずメーカーの責任問われると思うんですけどね。自分で作った車でそれをするならともかく。

--yatz82


2. キャッシュで引くとどうなるか

サブドメインyatz82.qmail.jpを委譲していただいたので、キャッシュサーバから引いてみる。

C:\dns\bin>dig yatz82.qmail.jp any

; <<>> DiG 9.8.0-P1 <<>> yatz82.qmail.jp any
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 36168
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;yatz82.qmail.jp.               IN      ANY

;; ANSWER SECTION:
yatz82.qmail.jp.        1200    IN      A       202.41.218.243

;; Query time: 31 msec
;; SERVER: xxx.xxx.xxx.xxx#53(xxx.xxx.xxx.xxx)
;; WHEN: Fri Jul 08 16:11:53 2011
;; MSG SIZE  rcvd: 49

このキャッシュは親ゾーンのAしか拾ってないな。この後でサブドメイン側にもAを入れたら、それも一緒に応えるようになった。CNAMEは無視しているようだ。

Google DNSではどうか。

C:\dns\bin>dig @8.8.8.8 yatz82.qmail.jp

; <<>> DiG 9.8.0-P1 <<>> @8.8.8.8 yatz82.qmail.jp
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 26029
;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 0

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

;; ANSWER SECTION:
yatz82.qmail.jp.        1200    IN      CNAME   ghs.google.com.
ghs.google.com.         86399   IN      CNAME   ghs.l.google.com.
ghs.l.google.com.       299     IN      A       72.14.203.121

;; Query time: 234 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Fri Jul 08 16:12:42 2011
;; MSG SIZE  rcvd: 97

ちなみにns1.value-domain.comが返す順番は

・サブドメイン側のCNAME(2つあったら管理画面上で上のほうが上)
・親ドメイン側のCNAME
・サブドメイン側のA
・親ドメイン側のA

の順番になるので、CNAMEの順番を変えたら返答も変わった。一つ目のCNAMEしか見てない?

それとも権威サーバが返す一番最初のレコードしか見てなくて、それがたまたまCNAMEだったからなのか。

--yatz82

3. Aレコード

value-domainのネームサーバからいったんqmail.jpドメインを削除し、 yatz82.qmail.jpにおかしな設定をしてみた。 BINDの書きかたで言うと、

    IN    CNAME    moin.qmail.jp.
    IN    A        218.44.237.137

もちろん良くない設定だ。 こんなゾーン情報を入れるのは利用者の問題が大きいと思う。付加分散やバックアップでやろうとしたなら、まったく考え違いだ。

こんな設定をしてしまった場合にどう応えるかはキャッシュサーバの実装によるようで、Google DNSやOpenDNSなど、いくつかのキャッシュサーバを試してみたところ、概ねCNAMEを優先し、Aは無視するかanyで引かないと応えないようになっていた。

とはいえ、value-domainの管理画面でもレコードチェックはもう少ししたほうがよいのでは、と思う面もある。たとえば、

C:\dns\bin>dig +norec @ns1.value-domain.com www.yatz82.qmail.jp

; <<>> DiG 9.8.0-P1 <<>> +norec @ns1.value-domain.com www.yatz82.qmail.jp
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 9910
;; flags: qr aa; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 2

;; QUESTION SECTION:
;www.yatz82.qmail.jp.           IN      A

;; ANSWER SECTION:
www.yatz82.qmail.jp.    1200    IN      A       192.168.1.1

;; AUTHORITY SECTION:
yatz82.qmail.jp.        1200    IN      NS      ns1.value-domain.com.
yatz82.qmail.jp.        1200    IN      NS      ns2.value-domain.com.

;; ADDITIONAL SECTION:
ns1.value-domain.com.   1200    IN      A       119.245.243.94
ns2.value-domain.com.   1200    IN      A       175.28.48.57

;; Query time: 31 msec
;; SERVER: 119.245.243.94#53(119.245.243.94)
;; WHEN: Thu Jul 14 09:24:13 2011
;; MSG SIZE  rcvd: 137

せめてこれは入らないようにするべきじゃないだろうか。

また、

C:\dns\bin>dig +norec @ns1.value-domain.com www2.yatz82.qmail.jp

; <<>> DiG 9.8.0-P1 <<>> +norec @ns1.value-domain.com www2.yatz82.qmail.jp
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 57796
;; flags: qr aa; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 2

;; QUESTION SECTION:
;www2.yatz82.qmail.jp.          IN      A

;; ANSWER SECTION:
www2.yatz82.qmail.jp.   1200    IN      A       4.21.32.43

;; AUTHORITY SECTION:
yatz82.qmail.jp.        1200    IN      NS      ns1.value-domain.com.
yatz82.qmail.jp.        1200    IN      NS      ns2.value-domain.com.

;; ADDITIONAL SECTION:
ns1.value-domain.com.   1200    IN      A       119.245.243.94
ns2.value-domain.com.   1200    IN      A       175.28.48.57

;; Query time: 15 msec
;; SERVER: 119.245.243.94#53(119.245.243.94)
;; WHEN: Thu Jul 14 09:27:35 2011
;; MSG SIZE  rcvd: 138

一見何の変哲もないように見えるが、これは実は

www2    IN    A    260.277.288.299

だ。どうしてこれが通るのか。入力間違いを注意喚起するぐらいはしてもいいのではないか。

※なお、全くチェックしてないわけではないようで、IPアドレスにアルファベットや記号を入れようとすると、ちゃんと(?)エラー画面がでて設定できない。だからこそ余計にそう思う。

--yatz82