IPアドレスの自動設定について

IPアドレスの自動設定について

IPv6アドレスのデバイスへの設定方法

デバイスにIPアドレスを設定するためにIPv6では手動設定、 DHCPv6(IPv4におけるDHCPの設定と仕組みは同じ)に加えてSLAAC(StateLess Address Auto Configuration)という自動機能を使うこともできます。

最初の二つはIPv4と似たものですので、 SLAACに限定して説明します。

【主な設定方法】

  • 手動設定
  • DHCPv6※IPv4におけるDHCPの設定と仕組みは同じ
  • SLAAC(StateLess Address Auto Configuration)

SLAACによるIPv6アドレスの割り当ての流れ

ではSLAACを介してどのようにIPv6アドレスが設定されるのでしょうか?ルータからコンピュータへIPv6が割り当てられるまでの流れについて説明します。

1. ホストがネットワークに接続する(ホスト)

接続すると自動的にリンクローカルアドレス(同一ネットワーク内でしか使用できないアドレス)が割り当てられます。

2. ホストは、ルータへマルチキャストアドレス(FF02::02)でルータ要請(RS)を送信(ホスト ⇒ ルータ)

IPv6アドレスの構成におけるプレフィックス(所属ネットワーク部分を表すアドレス)部分を決めるための要請処理です。

リンクローカルアドレスを送信元IPv6アドレスに送信します。

※ICMPv6のタイプ133で送信します。 ICMPv6については後ほど後述します。

3. ルータは前半64ビットにあたるプレフィクスやデフォルトゲートウェイの情報を伝えるためのルータ広告(RA)を返信します。(ルータ⇒ホスト)

※ICMPv6のタイプ134で送信します。

4. ホストは受信したRAからプレフィックスと、EUI-64で生成したインターフェースIDを組み合わせたグローバルユニキャストアドレスを自動設定します。(ホスト)

前半64ビットにあたるプレフィクスを受け取ったので、残りの後半64ビットのインタフェースIDを確定させるために、自身のMACアドレスを介してEUI-64でインターフェースIDを作成します。

MACアドレスは基本的には一意的なアドレスなので、MACアドレスを使うことで一意的なインターフェースIDが生成されます。

MACアドレスのインタフェースIDの変更方法

MACアドレスを使用してインタフェースIDを作成しますが、MACアドレスは48ビットなのに対してインタフェースIDは64ビットです。EUI-64(Extended Unique Identifier64)フォーマットを使用することで、 MACアドレスから64ビットのインタフェースIDが生成されます。

具体的には以下の流れで生成されます。

  1. MACアドレスを24ビット(3バイト)に分割します。
  2. その間に16ビットの「FFFE(16進数)」を挿入することで64ビットになります。
  3. 最後に先頭の7ビット目を反転します。(0なら1、1なら0に変換します。)
  4. 2進数から16進数に戻したらインターフェースIDが完成します。

ICMPv6について

ICMPv6(Internet Control Message Protocol for IPv6)は、IPv4における(エラーなど通信状況を確認する)ICMPと(IPアドレスとMACアドレスの解決する)ARPを組み合わせたようなプロトコルです。

加えて先ほどのプレフィックスを取得するためのRA(ルータ広告)やRS(ルータ要請)のようなものも含まれています。0~255までのタイプがありますが、ここでは代表的なものを以下に紹介します。


NEXT>> 宛先のMACアドレスを調べる(アドレス解決)