全ゼロIPv6アドレス(未指定)を圧縮
全ゼロIPv6アドレス 0000:0000:0000:0000:0000:0000:0000:0000 を最短形式に圧縮します。未指定アドレスとその用途について学びます。
Special Addresses
詳細な説明
全ゼロアドレスの圧縮
展開形での全ゼロIPv6アドレスは:
0000:0000:0000:0000:0000:0000:0000:0000
圧縮すると、単に:
::
適用される圧縮ルール
- 先頭ゼロの削除: 各グループ
0000は0になります - 最長ゼロランの置換: 8つのグループすべてがゼロなので、アドレス全体が
::に置き換えられます
これはIPv6圧縮の最も極端な例で、39文字をわずか2文字に削減します。
未指定アドレス
全ゼロアドレス :: は未指定アドレス(RFC 4291で定義)と呼ばれます。IPv6では特定の意味を持ちます:
- アドレスの不在を示します
- ホストにまだアドレスが割り当てられていない場合のソースアドレスとして使用されます
- アドレスが取得される前のDHCPv6およびSLAAC(ステートレスアドレス自動設定)中に出現します
- インターフェースに割り当てたり、宛先アドレスとして使用してはなりません
ソケットプログラミング
ソケットプログラミングでは、:: にバインドすることは「利用可能なすべてのIPv6アドレスでリッスンする」ことを意味し、IPv4で 0.0.0.0 にバインドすることに似ています。
ユースケース
未指定アドレスは、サーバーソケットを利用可能なすべてのインターフェースにバインドする際のネットワークプログラミングで使用されます(例:Node.js、Python、GoのTCPリスナー)。DHCPv6クライアントメッセージやデフォルトルート先としてのルーティングテーブルにも表示されます。