test.comやaaa.comをテストデータに使うのはやめましょうという話

ドメイン

2018/02/13追記:「サンプル用のドメインを使おう」の説明に “.example” と “.test” の使い分けについて追記しました。

Web システム開発時のテストデータを作成する時、また各種ドキュメントを書いている時など、サンプルの URL を使う場面は多いと思いますが、その時に適当なドメイン名を使うのはやめましょう、という話です。

知っている方には当たり前レベルの話ですが、意外と IT 企業のシステム開発現場等でも普通に見かけることがまだまだありますので・・・。

よく見かける例

例えば、こんなドメインの URL で開発中システムのテストデータを作っていたり、仕様書に説明が書かれていたりする場面をよく見かけませんか?

  • test.com
  • aaa.com
  • abc.com
  • sample.com
  • dummy.com
  • hoge.com

でも、これらのドメインって存在していて実際に利用されているものなんですよね。

問題点

ところで、こういうドメインを安易に使った場合にどんな問題があるでしょうか?

例えば次のようなリスクが考えられるでしょう。

リンク先がどんなサイトか保証されない

その先がどんなサイトか分からないのは一番の問題かと思います。

システムのテスト中に、適当なドメインのリンク先を開いたらけしからんサイトが開いてしまった、悪意のあるスクリプトが埋め込まれているページだった、とか会社でそんなことになったら目も当てられませんよね・・・。

たとえ今日は大丈夫だったとしても、明日もそのリンク先が同じ内容である保障はどこにもありませんので。

メール誤配信の危険がある

また、「aaa@test.com」「test@aaa.com」とか、メールアドレスのサンプルとしても見かけるケースが結構あります。

もし開発中にメール配信機能のテストをしていたりして、プライバシーに関する情報や非公開データをうっかり送信してしまったら・・・とか考えると怖いですよね。

こちらもリンク先の話と同様に、もし今日はアカウントが存在していなくても明日には存在するアカウントになっているかもしれません。決して油断してはいけません。

信頼性の低下

例えば、外部の開発パートナーやクライアントにこういうドメインを使っていることを知られた場合、相手によっては「こんなことも知らないのか」と IT リテラシー、技術力を疑われる可能性もあると思います。

私も以前一緒のチームで働いていてすごく仕事ができる人が、仕様書の文章にこういうドメインを使っているのを見て、ちょっと残念な感じだったことがありました。たったこんなことで、他人からの印象を落としてしまったらもったいないですよね・・・。

サンプル用のドメインを使おう

では、実際にはどういうドメインを使えば良いのでしょうか?

実はこのような場面でサンプルとして利用できる、以下のようなドメインがあらかじめ用意されています。

  • example.com
  • example.net
  • example.org
  • *.test

これらのドメインは、RFC2606 で正式に例示用として定義されている適切なドメインなんです。

参考 RFC 2606 – Reserved Top Level DNS Names
参考 example.com – Wikipedia

RFC2606 のページには次のような説明がありますので、特に .test ドメインはテスト用として、example ドメインはドキュメントや例示用として使い分けるようにするとベターかと思います。

“.test” is recommended for use in testing of current or new DNS
related code.

“.example” is recommended for use in documentation or as examples.

また、日本向けであれば.JPドメインでも下記のものが例示用として定義されています。こちらも安心して使うことができるドメインです。

次の文字列のJPドメイン名は、例示としてご利用いただけます。
“EXAMPLE”を用いたもの
例: EXAMPLE.JP
EXAMPLE.CO.JP
EXAMPLE.NE.JP
“EXAMPLE”の後に1桁の数字(””0″”から””9″”)がつく文字列を用いたもの
例: EXAMPLE1.JP
EXAMPLE2.CO.JP
EXAMPLE3.NE.JP
次の日本語ドメイン名
ドメイン名例.JP (日本語JPドメイン名)
XN–ECKWD4C7CU47R2WF.JP (「ドメイン名例.JP」のpunycode表記)

参考 JPドメイン名の活用について | よくある質問 | JPRS

サンプル用のIPアドレスもある

ちなみに今まではサンプル用のドメインについて説明してきましたが、実はドメイン同様に IP アドレスにもサンプル用として決められたものが存在します。

IPv4のアドレス

まず IPv4 についてですが、RFC5737 にて以下のネットワークアドレスに属する IP アドレスがサンプル用として使えると決められています。

  • 192.0.2.0/24
  • 198.51.100.0/24
  • 203.0.113.0/24

参考 RFC 5737 – IPv4 Address Blocks Reserved for Documentation

IPv6のアドレス

IPv6 の方は、RFC3849 で次のネットワークに属する IP アドレスがサンプル用となっています。

  • 2001:DB8::/32

参考 RFC 3849 – IPv6 Address Prefix Reserved for Documentation

ドメインと同じく、これらの IP アドレスについてもぜひ頭に入れておきたいところですね!

終わりに

aaa とか test とか書くのは早いし頭を使わなくて良いので楽だったりするかもしれませんが、一旦 example ドメインを覚えてしまえば、逆にこれが使われてないと何だか落ち着かない感覚にすらなってきます。

自分が気付かないうちに不要なリスクを抱えたり後で恥ずかしい思いをせずに済むように、ぜひこれらのドメインを活用することをオススメします!

PHPが好きなWeb系エンジニアです。フリーランスでWebサイト制作やWordPressのカスタマイズ、システム開発等を雑多にこなしています。バンカラ応援好きの振り飛車党。
高校野球 / 将棋 / WordPress / ブログ / 食べること / 二児の父親

>>もっと詳しいプロフィールはこちら