*

例示専用のIPアドレスとドメインを使いこなす

公開日: : 最終更新日:2014/06/14 ネットワーク, 技術

前回の記事ではネットワークに関する記事を投稿させていただいたが、今回も引き続きネットワーク関連のネタを記事にしたいと思う。

ブログの記事やネットワーク関連のドキュメントを書いているとIPアドレスやドメインを記載する場面に遭遇する。適当なIPやドメインを記載してしまうと、(プライベートIPならまだしも)実際に利用されているIPやドメインと衝突してしまう可能性が高い。

こんな場面に備えて、例示を目的としたIPアドレスやドメインがRFCによって定められているのだ。 ドメインについては割と有名だが、IPについては知らない方が多いように見受けられたので、今回の記事ではこの例示用のIPアドレスについて(ついでにドメインも)記載していく。

例示用IPアドレス

IPv4での例示用IP

IPv4での例示を目的としたIPアドレスは2014/6/10時点でRFC5737 [IPv4 Address Blocks Reserved for Documentation]に記載されており、以下のネットワーク属するIPを例示することができる。以下のIPは例示専用のため衝突の心配が無い。

192.0.2.0/24
198.51.100.0/24
203.0.113.0/24

ご覧の通り、プライベートIPアドレスではなく、専用のネットワークが設けられていることが分かる。 また、特殊な用途のIPアドレス範囲を記載したRFC6890のPage.9、11にも例示用として上記IPについて述べられている。なお、例示用IPを探すとRFC3330RFC5735が見つかる場合があるが、これらのRFCはRFC6890によってobsolateされているため、最新版であるRFC6890を参照しよう。

IPv6での例示用IP

一方、IPv6での例示用IPアドレスは、RFC3849 [IPv6 Address Prefix Reserved for Documentation]に記載されている。IPv6については以下のネットワークに属するIPを例示可能だ。

2001:db8::/32

こちらのIPもIPv4と同様にRFC6890のPage.17に例示用IPアドレスとして言及されている。

例示用ドメイン

次に例示用のドメインを見ていこう。こちらはご存じの方が多いのではないだろうか。 例示用のドメインはRFC2606 [Reserved Top Level DNS Names]に記載されいている。

例示可能なトップレベルドメイン

以下のTLDは例示用として利用可能だ。実際に例示する場合は、TLDに続くSLDを自由に設定したうえで利用しよう。

.test
.example
.invalid
.localhost

ただし、上記ドメインのうち例示として利用するのは通常「.example」のみである。RFCにも記載されているが、「.test」は主にテスト用途ドメイン、「.invalid」は無効であることを明示するためのドメイン、「.localhost」は伝統的に予約されているドメインとなっており、例示用途とはなっていない。

例示可能なセカンドレベルドメイン

RFCでは、以下のSLDを例示可能としている。

example.com
example.net
example.org

ここでは、例示用のSLDについてもう少し突っ込んで考えてみる。

例示用セカンドレベルドメインを持つホストはインターネット上に存在するか?

実は存在する。上記のSLDはICANNによって取得済である。
例示用のSLDは開放済のTLD(「.com」「.net」「.org」)にぶら下がる訳だから、ICANNが先立って予約してしまっているということだ。
という事で以下のURLにアクセスすると、ICANNによって用意された例示用のドメインである事を示すページが表示される。

http://example.com
http://example.net
http://example.org

例示用セカンドレベルドメインのトップレベルドメインは何故「.com」「.net」「.org」なのか?

詳細な経緯は不明だが、おそらく歴史的に最も古くから存在し、かつ最も利用されているドメインであることが挙げられるだろう。また、「.com」「.net」「.org」はかつてIANAではなくNetwork Solution社によって管理されていたTLDである。この点も関係しているかもしれない。

 

簡単ではあるが例示用のIPとドメインを列挙させていただいた。IPやドメインを例示する機会があれば是非利用していただきたい。知っている人が見ると「おっ、こいつ分かってるな!」となること請け合いだ!

関連記事

文字コードの考え方から理解するUnicodeとUTF-8の違い

UnicodeとUTF-8の違いを理解していない方が結構居るようなので、文字コードの考え方を元に解説

記事を読む

Ctrl+Cとkill -SIGINTの違いからLinuxプロセスグループを理解する

しばらくLinuxネタが続く・・。 近いうちに最近出たJava8ネタを書いてみようと思います。が、

記事を読む

ipsetを使ってスマートにiptablesを設定する

ギークな知人から「vpsでiptables設定していたらルール設定数の上限に引っかかって思い通りの設

記事を読む

sshd再起動時にssh接続が継続する動作について

Linux/Unixサーバにsshしている際、sshdを再起動したとする。 sshdは一度終了する

記事を読む

Linuxプロセス起動時の環境変数ダンプの取得

UnixやLinux上で不具合の調査等々を行う際、特定のプロセス起動時の環境変数を知りたい場合がある

記事を読む

Java8のHotSpotVMからPermanent領域が消えた理由とその影響

今回も前回の記事につづき、Java8による変更点で未だあまり紹介されていないポイントを記事にしようと

記事を読む

「Systemd」を理解する ーシステム起動編ー

2014年6月10日、とうとうRHEL7が正式リリースを迎えた。RHEL7での変更点については、この

記事を読む

Java8のインタフェース実装から多重継承とMixinを考える

2014年3月18日、ついにJava8が正式にリリースを迎えた。 折角なので、今後、Java8の新

記事を読む

「Systemd」を理解する ーシステム管理編ー

前回の記事「Systemd」を理解するーシステム起動編ーでは、Systemdの概念とSystemdに

記事を読む

Comment

  1. pg より:

    Nice post. I learn something totally new and challenging on sites I stumbleupon everyday.It’s always exciting to read through articles from other authors and use a little something from other websites. ホーム > 技術 > ネットワーク >

epima.at にコメントする コメントをキャンセル

メールアドレスが公開されることはありません。

「Systemd」を理解する ーシステム管理編ー

前回の記事「Systemd」を理解するーシステム起動編ーでは、Syst

「Systemd」を理解する ーシステム起動編ー

2014年6月10日、とうとうRHEL7が正式リリースを迎えた。RHE

例示専用のIPアドレスとドメインを使いこなす

前回の記事ではネットワークに関する記事を投稿させていただいたが、今回も

ipsetを使ってスマートにiptablesを設定する

ギークな知人から「vpsでiptables設定していたらルール設定数の

Java8のHotSpotVMからPermanent領域が消えた理由とその影響

今回も前回の記事につづき、Java8による変更点で未だあまり紹介されて

→もっと見る

PAGE TOP ↑