要請ノードマルチキャストアドレス
IPv6の近隣探索で、近隣要請(NS)を送るときの宛先に使うマルチキャストアドレス。ff02::1:ff00:0/104に、目的のIPv6アドレスの下位24ビットを付けて作る。
イマシルちゃんの解説
IPv4のARPは、「この住所の人いますか〜!」ってブロードキャストで全員に聞いていたから、関係ない人まで毎回耳を傾けないといけなかったんだ。
IPv6では、住所の最後のほうが同じ人たちだけが入る「小さなグループ」を作って、そこにだけ聞くようにしたんだよ。
それが要請ノードマルチキャストアドレス!
ほとんどの機器は自分に関係ないから、聞き流さずに済むんだ。
より深い解説
定義
要請ノードマルチキャストアドレス(Solicited-Node multicast address)は、RFC 4291で定められたIPv6のマルチキャストアドレスである。各ノードは、自分が持つユニキャストアドレス(LLA、GUA)ごとに、対応する要請ノードマルチキャストアドレスのグループに自動的に参加する。
作り方
ff02::1:ff + ユニキャストアドレスの下位24ビット
例:2001:db8::a8bb:ccff:fe11:2233 の要請ノードマルチキャストアドレスは ff02::1:ff11:2233
使われる場面
| 場面 | 内容 |
|---|---|
| アドレス解決 | 相手のIPv6アドレスに対応するMACアドレスを知るため、NSをこのアドレス宛てに送る |
| 重複アドレス検出(DAD) | 使おうとしているアドレスが重複していないか、NSをこのアドレス宛てに送る |
ブロードキャストとの違い
| IPv4のARP | IPv6のNDP | |
|---|---|---|
| 問い合わせの宛先 | ブロードキャスト(全員) | 要請ノードマルチキャストアドレス |
| 受け取って処理する機器 | ネットワークの全員 | アドレスの下位24ビットが同じ機器だけ |
イーサネットでは、IPv6のマルチキャストアドレスは、33-33 に下位32ビットを付けたMACアドレス(例:33-33-ff-11-22-33)に対応する。NIC(ネットワークカード)は、参加していないマルチキャストのMACアドレス宛てのフレームを、ハードウェアの段階で捨てられるため、関係のない機器のCPUに負担をかけない。
主なIPv6のマルチキャストアドレス
| アドレス | 宛先 | 使う場面 |
|---|---|---|
| ff02::1 | 全ノード | RA(定期送信)、NA(重複がないことの通知など) |
| ff02::2 | 全ルータ | RS |
| ff02::1:ffXX:XXXX | 要請ノード | NS |
| ff02::5、ff02::6 | OSPFv3のルータ、DR | OSPFv3 |
| ff02::9 | RIPngのルータ | RIPng |
ff02:: で始まるアドレスは、スコープがリンクローカル(同じリンクの中だけ)で、ルータを越えない。