テスト環境でのTLDについて考えてみた

id:hykt:20081129 に関連して、TLD:Top Level Domainの話。

あるサーバ…例えばWebサーバをテストで動かしたいんだけど、運用中のDNSに名前を登録できないという場合、それでもIPアドレスではなくFQDNでアクセスしたいというとき、みんなはどんなドメイン名を使っているんだろう。

例示用のTLDとしては、RFC2606に4つ定義されている。

.test
.example
.invalid
.localhost

また、例示用のドメインとして、下記のものも定義されている。

example.com
example.net
example.org
参考:Reserved Top Level DNS Names(RFC2606)

しかし、Mac OS Xを使っている人なら知っていると思うけど、Mac OS XではRendezvousの機能(マルチキャストDNS)で通常のDNSと区別するために.localという名前を使っている。

上記のページの注記のところには、.localドメインDNSドメイン名として使っている場合にはMac OS X 10.2では名前解決に失敗するかもしれないので、.home/.office/.lanなどのドメイン名を使用するよう説明している。

…いいんですか、それ。

.localドメインについて、もう少し調べてみたところ、こんなページも見つけた。

参考:例示/実験用として利用できるドメイン名 - @IT
上記のページの「予約されたトップレベル・ドメイン名(TLD)」の部分で、「マイクロソフト社の文書などでは「.local」というトップレベル・ドメイン名が使われていることがあるが、これはRFCで正式に認められたものではないようだ。」とある。
確かに、検索でもActive Directoryを説明しているページがヒットしていた。

それから、最近リリースされたUbuntu8.10のプロキシの設定([システム]→[設定]→[ネットワークのプロキシ])の[無視するホスト]には、"*.local"がデフォルトで入ってた。


…このドメイン名のホストは無視するってことだから、存在を認識してるよな。
まあ、意味も分かるし、気持ち的には使えるなら使いたいけど、RFCに定義されてないしなぁ。

ちなみに、昔これに関するニュースがあったのを思い出して引っ張り出してみた。

参考:JPNIC News & Views vol.97【臨時号】2003.7.31 - JPNIC

上記のページの「◆DNS関連WG」の部分で、「Root DNSサーバに.localという存在していないTLDの問い合わせが3000回/秒以上来て問題になっているので、あえてどこかに.local TLD DNSサーバを設置し、Root DNSサーバの負荷を軽減したいという提案が行われました。」とある。

…ということは、それなりの数の人が使っちゃってるってことだよね。
この話はもう5年前の話だけど、この後どうなったのか調べても見つからなかった。 この話の場合は、Root DNSサーバに問い合わせちゃってるけど、外部から参照できないDNSで使う分には、暗黙の了解でいいのかなぁ。
ただ、 .localも、RFC2606に定義されている.test/.example/.localhostも、TLDとしては見慣れないんだよなぁ。
こういうとき、みんなはどんなドメイン名を使っているんだろう。
やっぱ、example.com