ユニキャスト・ブロードキャスト・マルチキャストの違い
ユニキャストは
ユニキャスト・ブロードキャスト・マルチキャストの違いは宛先の数
ユニキャストは1台だけ、ブロードキャストはネットワークの全員、マルチキャストは参加したグループに送る通信です。どれになるかは、パケットの宛先アドレスで決まります。
ARPやDHCPも、この3つを使い分けて動いています。以下の説明では、自分のPCを 192.168.10.25/24 とし、同じLANに別のPCやルータがあるものとします。
| 種類 | 届く | IPv4の |
|---|---|---|
| ユニキャスト | 1台 | 192.168.10.30 |
| ブロードキャスト | ネットワークの全員 | 192.168.10.255 255.255.255.255 |
| マルチキャスト | グループに参加した機器 | 224.0.0.251 233.252.0.1 |
ふだんのWebやメールの通信は、ほとんどがユニキャストです。ブロードキャストとマルチキャストは、相手のアドレスがまだ分からないときや、同じデータを複数の相手に送るときに使います。
宛先アドレスでの表し方:IPアドレスとMACアドレス
3つの種類は、宛先のIPアドレスで見分けられます。LANの中では、宛先のMACアドレスにも同じ区別が現れます。スイッチやPCのネットワークカードは、このMACアドレスを見て動きます。
ユニキャスト:相手1台のアドレス
ユニキャストでは、宛先IPアドレスに相手1台のアドレスを書きます。同じLANの相手なら、宛先MACはその相手のMACアドレスです。別のネットワークの相手なら、宛先MACはゲートウェイのルータのMACアドレスになります。この使い分けは、MACアドレスとIPアドレスの記事で説明しています。
ブロードキャストアドレス:ホスト部がすべて1
ブロードキャストアドレスは、ホスト部のビットをすべて1にしたアドレスです。192.168.10.0/24 なら、最後の8ビットがすべて1の 192.168.10.255 になります。この値はネットワークごとに決まり、機器には割り当てません。求め方はサブネットマスクの記事で説明しています。
もう1つ、255.255.255.255 という宛先もあります。これは自分のネットワーク全体を指すブロードキャストで、限定ブロードキャストと呼びます。自分のネットワークがまだ分からない段階でも使えます。
192.168.10.255 のようにネットワークを指定する宛先は、ダイレクトブロードキャスト(directed broadcast)と呼びます。2種類のブロードキャストの決まりは、RFC 919とRFC 922に書かれています。どちらも、宛先MACは FF:FF:FF:FF:FF:FF です。
マルチキャストアドレス:224.0.0.0〜239.255.255.255
IPv4のマルチキャストには、224.0.0.0〜239.255.255.255 の範囲を使います。古い分け方でいうクラスDにあたり、用途ごとの範囲がRFC 5771に示されています。マルチキャストアドレスは、1台の機器ではなくグループを指します。機器がグループに参加すると、そのアドレス宛てのパケットを受け取るようになります。
宛先MACは、宛先IPアドレスから計算で作ります。01:00:5E で始まる値の下位23ビットに、宛先IPアドレスの下位23ビットを入れます。たとえば 224.0.0.251 宛てなら、宛先MACは 01:00:5E:00:00:FB です。この対応は、RFC 1112の6.4節で定められています。
| 種類 | 宛先MACアドレス |
|---|---|
| ユニキャスト | 相手1台のMACアドレス |
| ブロードキャスト | FF:FF:FF:FF:FF:FF |
| IPv4マルチキャスト | 01:00:5E で始まるアドレス |
届く範囲:誰が受け取り、どこまで届くか
スイッチは、ブロードキャストのフレームを受信したポート以外の全ポートへ送ります。マルチキャストのフレームも、特別な機能がなければ全ポートへ送ります。
ブロードキャストのフレームは、受け取った全員が処理します。マルチキャストのフレームを受け取った機器は、参加したグループ宛てかどうかを確認し、参加していないグループ宛てなら捨てます。
ブロードキャストはルータを越えない
ブロードキャストが届くのは、ルータで区切られた同じネットワークの中だけです。RFC 1812の決まりで、ルータは 255.255.255.255 宛てのパケットを転送しません。192.168.10.255 のようなネットワークごとのブロードキャストも、RFC 2644により既定では転送しません。
ブロードキャストが届く範囲を、ブロードキャストドメインと呼びます。この範囲をルータで分ける仕組みは、ハブ・スイッチ・ルータの記事で説明しています。1台のスイッチの中で分ける方法は、VLANの記事で説明しています。
衝突ドメインと並べた比較は衝突ドメインとブロードキャストドメインの違いの記事にあります。
マルチキャストは参加者のいる先へ届く
マルチキャストは、ルータがマルチキャストの経路制御をしていれば、ルータを越えて届きます。PCがIGMPという仕組みでルータに参加を知らせ、ルータは参加者のいるネットワークにだけパケットを送ります。
ただし、224.0.0.0〜224.0.0.255 は例外です。この範囲は同じLANの中だけで使うと決まっていて、ルータは転送しません。また、IGMPのやり取りを読み取って参加者のポートにだけ送るスイッチもあります。この機能をIGMPスヌーピングと呼びます。
次の図で宛先IPアドレスを選ぶと、その宛先の種類と、どこまで届くかが表示されます。
自分のPCは 192.168.10.25/24 です。同じLANに、PC-Bの .30、プリンタの .40、ルータの .1 があります。
- 種類
- ユニキャスト
- 宛先MAC
- PC-BのMACアドレス
- 受け取る機器
- PC-Bだけ
- ルータの先へ
- 届きません。同じLANの中で終わります。
- 種類
- ユニキャスト(別のネットワーク宛て)
- 宛先MAC
- ルータのMACアドレス
- 受け取る機器
- ルータだけ
- ルータの先へ
- 届きます。ルータが受け取り、Webサーバへ向けて転送します。
- 種類
- ブロードキャスト(このネットワークのブロードキャストアドレス)
- 宛先MAC
- FF:FF:FF:FF:FF:FF
- 受け取る機器
- PC-B・プリンタ・ルータの全員
- ルータの先へ
- 届きません。ルータは、このブロードキャストを先へ転送しません。
- 種類
- ブロードキャスト(限定ブロードキャスト)
- 宛先MAC
- FF:FF:FF:FF:FF:FF
- 受け取る機器
- PC-B・プリンタ・ルータの全員
- ルータの先へ
- 届きません。ルータはこの宛先を転送してはいけないと決まっています。
- 種類
- マルチキャスト(mDNSのグループ)
- 宛先MAC
- 01:00:5E:00:00:FB
- 受け取る機器
- グループに参加しているPC-Bとプリンタ
- ルータの先へ
- 届きません。224.0.0.0〜224.0.0.255 は、同じLANの中だけで使う範囲です。
- 種類
- マルチキャスト(動画配信などのグループ)
- 宛先MAC
- 01:00:5E:7C:00:01
- 受け取る機器
- グループに参加している機器
- ルータの先へ
- 設定によります。ルータがマルチキャストの経路制御をしていれば、参加者のいる先へ届きます。
使われる場面:ARP・DHCP・ルーティングプロトコル・動画配信
どの送り方を使うかは、相手が決まっているかどうかで変わります。相手が1台に決まっていれば、ユニキャストで送ります。相手のアドレスがまだ分からなければ、ブロードキャストで全員に問い合わせます。同じデータを決まったグループに配るなら、マルチキャストを使います。
| 場面 | 送り方 | 宛先の |
|---|---|---|
| Webページを見る・メールを送る | ユニキャスト | 203.0.113.50 |
| ARPでMACアドレスを問い合わせる | ブロードキャスト | FF:FF:FF:FF:FF:FF |
| DHCPでアドレスを要求する | ブロードキャスト | 255.255.255.255 |
| OSPFのルータ同士で経路を交換する | マルチキャスト | 224.0.0.5 |
| RIPv2で経路を知らせる | マルチキャスト | 224.0.0.9 |
| LANの中でプリンタなどを探す | マルチキャスト | 224.0.0.251 |
| 動画を多くの視聴者へ同時に配る | マルチキャスト | 233.252.0.1 |
ARPは、相手のMACアドレスを知るために全員へ問い合わせます。答えるのは該当する1台だけで、その応答はユニキャストです。DHCPでは、まだIPアドレスを持たない端末が 255.255.255.255 宛てに要求を送ります。それぞれの流れは、ARPの記事とDHCPの記事で説明しています。
OSPFやRIPv2は、経路を交換する相手のルータだけが受け取るよう、マルチキャストで送ります。OSPFは 224.0.0.5 を、RIPv2は 224.0.0.9 を使います。参加していないPCは、届いても処理せずに捨てます。経路の交換については、ルーティングの記事で説明しています。
動画を多くの視聴者に配るときも、マルチキャストが向いています。ユニキャストで送ると、送り手は視聴者の数だけ同じデータを送ることになります。マルチキャストなら、送り手は1回送るだけで、途中のルータが参加者のいる方向へデータを複製して届けます。
エニーキャストとIPv6の宛先の種類
エニーキャストは、同じアドレスを持つ複数の機器のうち、1台だけに届ける送り方です。届くのは、経路制御の上で最も近い1台です。同じアドレスを世界の何か所にも置いて、利用者を近い場所へ振り分けます。RFC 4786は、DNSのルートサーバを代表的な使い方として挙げています。
IPv6では、エニーキャストがアドレスの種類として正式に定義されています。一方、IPv6にはブロードキャストアドレスがありません。RFC 4291は、ブロードキャストの役割をマルチキャストが受け持つと定めています。全員に送りたいときは、全ノード宛てのマルチキャストアドレス ff02::1 を使います。
IPv6では、ARPの代わりにNDPがMACアドレスを調べます。NDPは、ブロードキャストではなくマルチキャストで問い合わせます。IPv6のアドレスの読み方は、IPv6の記事にまとめています。
練習問題(全5問)
正解:192.168.10.255
/24 では、
正解:マルチキャストを
ブロードキャストは
正解:IPv4の
01:00:5E で
正解:ルータは
255.255.255.255 は
正解:IPv6には
RFC 4291は、
選んでから「採点する」を押すと、解説つきで答え合わせができます。
関連記事
おすすめの本 PR
ネットワークを初めて学ぶ人向けの入門書です。
![『[改訂新版]3分間ネットワーク基礎講座』の表紙](https://m.media-amazon.com/images/P/4774143731.09.MZZZZZZZ.jpg)
