ドキュメントで使用できる例示アドレス

マニュアルや手順書にIPアドレスやドメイン名を例として記載する場合、どんなアドレスやドメイン名を使っていますか?
適当に使われていなさそうなものを記載することは、あまり好ましくありません。現在使われていなくても、将来的に使われる場合もありますし、万一使われていた場合思わぬトラブルを引き起こす可能性がないとはいえません。
そのような状況で使用可能なアドレスが「例示アドレス」です。

例示アドレスとは?

例示アドレスとは、ドキュメントなどに例示してよいアドレスのことです。このアドレスは、RFCで定義されており、MACアドレス、IPアドレス、ドメイン名、AS番号などが存在します。このアドレスは、ドキュメントだけではなく、実験的な目的などでも使用されます。

今回は、一番頻繁に使われるMACアドレス、IPアドレス、ドメイン名について、ドキュメントで例示可能なものを紹介します。
出展元のRFC等もリンクを掲載しますので、興味がある方は原文をご覧ください。

ドキュメントで例示可能なMACアドレス

MACアドレスは、(重複とか変更が容易とかの問題はあるにせよ)原則としてハードウェアごとにユニークな番号が割り当てられています。実在するMACアドレスを例に使う場合は、プライバシー上好ましくありません。
MACアドレスは48ビット(6バイト)で構成され、16進数で12桁「XX-XX-XX-YY-YY-YY」のように表示されます。上位24ビット(XX-XX-XXの部分)がベンダーコードで各ベンダーに割り当てられた固有の番号です。

RFC7042-IANA Considerations and IETF Protocol and Documentation Usage for IEEE 802 Parameters

EUI-48

  • 00-00-5E-00-53-00 から 00-00-5E-00-53-FF (ユニキャスト)
  • 01-00-5E-90-10-00 から 01-00-5E-90-10-FF (マルチキャスト)

EUI-64

  • 00:00:5e:ef:10:00:00:00 から 00:00:5e:ef:10:00:00:ff (ユニキャスト)
  • 00:00:5e:fe:c0:00:02:00 から 00:00:5e:fe:c0:00:02:ff (ユニキャスト)
  • 00:00:5e:fe:c6:33:64:00 から 00:00:5e:fe:c6:33:64:ff (ユニキャスト)
  • 00:00:5e:fe:cb:00:71:00 から 00:00:5e:fe:cb:00:71:ff (ユニキャスト)
  • 00:00:5e:ff:fe:00:53:00 から 00:00:5e:ff:fe:00:53:ff (ユニキャスト)
  • 00:00:5e:fe:ea:c0:00:02 (ユニキャスト)
  • 00:00:5e:fe:ea:c6:33:64 (ユニキャスト)
  • 00:00:5e:fe:ea:cb:00:71 (ユニキャスト)
  • 01-00-5E-EF-10-00-00-00 to 01-00-5E-EF-10-00-00-FF (マルチキャスト)
  • 01-00-5E-FE-C0-00-02-00 から 01-00-5E-FE-C0-00-02-FF (マルチキャスト)
  • 01-00-5E-FE-C6-33-64-00 から 01-00-5E-FE-C6-33-64-FF (マルチキャスト)
  • 01-00-5E-FE-CB-00-71-00 から 01-00-5E-FE-CB-00-71-FF (マルチキャスト)
  • 01-00-5E-FE-EA-C0-00-02 (マルチキャスト)
  • 01-00-5E-FE-EA-C6-33-64 (マルチキャスト)
  • 01-00-5E-FE-EA-CB-00-71 (マルチキャスト)
  • 01-00-5E-FF-FE-90-10-00 to 01-00-5E-FF-FE-90-10-FF (マルチキャスト)

RFCにはそれぞれのアドレスに対しての由来が記載されていましたが、正直数が多すぎて覚えられません…。(覚える必要もないと思いますが。)

ドキュメントで例示可能なIPv4/IPv6アドレス

IPアドレスはプライベートアドレスが使用できるのであれば、そちらを使用します。しかし、NATなどの記載でグローバルアドレスの表記が必要となる場合は、サンプルアドレスを使用します。
IPアドレスは、だれでも簡単にアクセスできてしまうため、取り扱いには注意が必要です。

RFC5737-IPv4 Address Blocks Reserved for Documentation

RFC3849-IPv6 Address Prefix Reserved for Documentation

IPv4アドレス

  • 192.0.2.0/24 (TEST-NET-1)
  • 198.51.100.0/24 (TEST-NET-2)
  • 203.0.113.0/24 (TEST-NET-3)

IPv6アドレス

  • 2001:db8::/32

通常これらのアドレスに対しては、ルーティングは行われません。

ドキュメントで例示可能なドメイン名

ドメイン名もIPアドレス同様は、だれでも簡単にアクセスできてしまうため、取り扱いには注意が必要です。

RFC6761-Special-Use Domain Names

例示可能なドメイン名

  • example.com
  • example.net
  • example.org

JPRS-例示に使用可能なJPドメイン名

JPドメインで例示可能なドメイン名

  • "EXAMPLE"を用いたもの
    • EXAMPLE.JP
    • EXAMPLE.CO.JP
    • EXAMPLE.NE.JP
  • "EXAMPLE"の後に1桁の数字(""0""から""9"")がつく文字列を用いたもの
    • EXAMPLE1.JP
    • EXAMPLE2.CO.JP
  • ドメイン名例.JP (日本語JPドメイン名)
  • xn--eckwd4c7cu47r2wf.jp

RFC2606には、ドキュメント例示用以外で使用可能な「.text」「.invalid」「.localhost」のことについても用途別に記載があります。

エンジニアノートにおける各アドレス等の取り扱い

エンジニアノート(当ブログ)における各アドレス等の取り扱いは、特別な場合を除き、以下の方針に従います。

  • MACアドレスは、ベンダーコードが特定できないように一部を加工
  • IPアドレスは、プライベート、または例示アドレスを使用
  • ドメイン名は、例示アドレスを使用
  • その他、プライバシーに関わる表示は特定できないように一部を加工

あとがき

サンプルアドレスの存在を知っておけば、必要なときに「例示アドレス IPv4」のように検索するとインターネット上で情報はいくらでも出てきます。(私も実際「192.0.2.0/24」と「examle.com」以外は覚えていません...。)
なぜ自分や他人、架空のアドレスを使ってはいけないかを理解して、適切にサンプルアドレスを使用することが重要だと考えます。