ブロードキャストアドレス
ブロードキャストアドレス(英語: broadcast address)は、マルチアクセス通信ネットワークに接続された全てのデバイスがデータグラムを受信するためのネットワークのアドレスである。通常、ブロードキャストアドレスに送信されるメッセージは、特定のホストではなく、ネットワークに接続された全てのホストによって受信される(ブロードキャスト)。
IPv4
[編集]Internet Protocolバージョン4(IPv4)のネットワークでは、IPアドレスのホスト部のビットを全て 1
としたものをブロードキャストアドレスとする[1]。これは、ブロードキャストをサポートするネットワークの標準ブロードキャストアドレスとして RFC 919 に規定されている。全ビットが 1
のアドレスを使用する方法は、1982年に R. Gurwitz と R. Hinden によって最初に提案された[2]。後に、サブネットと Classless Inter-Domain Routing (CIDR) の導入により変更され、各サブネットのホスト部のビットを全て 1
にしたものが、そのサブネットのブロードキャストアドレスとなった[3]。
IPv4ホストのブロードキャストアドレスは、サブネットマスクのビット補数とホストのIPアドレスとの間でビット単位のOR演算を実行することで取得できる。言い換えると、ホストのIPアドレスについて、サブネットマスクで 0
になっているビット位置のビットを 1
にするとブロードキャストアドレスになる。
- 例
- プライベートIPアドレス空間
172.16.0.0/12
(サブネットマスクは255.240.0.0
)を使用してIPv4サブネット全体にパケットをブロードキャストする場合、ブロードキャストアドレスは172.16.0.0 | 0.15.255.255 = 172.31.255.255
となる。
ブロードキャストパケットの振る舞い
[編集]あるパケットを特定のネットワークでブロードキャストする際、その宛先として該当するネットワークのブロードキャストアドレスを指定する。 ブロードキャストアドレス宛に送られたパケットは、ネットワーク内の全てのホストが自分宛てのものと認識する。
また、中継するスイッチなどのOSI参照モデル第2層以下の機器は、このパケットを受信すると、コピーして全てのポートから転送する。一方、通常のルータは自分のインタフェースに届いたブロードキャストパケットは転送しない。このため、ブロードキャストのフローはルータによって止められることになる。
ブロードキャストアドレスの例
[編集]- ネットワークアドレス
192.168.32.0/24
(2進数表記: 11000000.10101000.00100000.00000000)のネットワークにおけるブロードキャストアドレスは、192.168.32.255
(2進数表記: 11000000.10101000.00100000.11111111)となる。 - ネットワークアドレス
160.189.80.0/20
(2進数表記: 10100000.10111101.01010000.00000000)のネットワークにおけるブロードキャストアドレスは、160.189.95.255
(2進数表記: 10100000.10111101.01011111.11111111)となる。
リミテッドブロードキャストアドレス
[編集]IPブロードキャストアドレス 255.255.255.255
には特別な定義が存在する。これは0.0.0.0のブロードキャストアドレスであり、インターネットプロトコル標準では、このネットワーク、すなわちローカルネットワークを表す。これをリミテッドブロードキャストアドレス (limited broadcast address) という。
自ノードや自ノードの所属しているネットワークの IP アドレスが不明な場合に、ローカルブロードキャストを行うために使用される。255.255.255.255
に IPパケットを送信した場合、自ノードと同一のネットワークに接続している全てのノードにブロードキャストされる。ルーターが 255.255.255.255
に送信されたパケットを受信した場合、他のネットワークに転送してはならない。
BOOTPクライアントやDHCPクライアントは、制限ブロードキャストアドレスを使用して、サーバーに要求を送信する。
IPv6
[編集]次世代のInternet ProtocolであるIPv6では、ブロードキャストが実装されていないため、ブロードキャストアドレスも定義されていない。その代わりに、全ホストマルチキャストグループあてのマルチキャストアドレス指定を使用する。ただし、全ホストアドレスを使用するためのIPv6プロトコルは定義されていないので、特定のリンクローカルマルチキャストアドレス(オールノードマルチキャストアドレス)を使用する。これは、使用されている特定のマルチキャストプロトコルをリッスンしていないネットワークホストが、ブロードキャストのように妨げられたり中断されたりしないため、効率が良くなる。
イーサネット
[編集]ブロードキャストは、イーサネットネットワークの基礎となるデータリンク層でも利用できる。MACアドレス FF:FF:FF:FF:FF:FF
にアドレス指定されたフレームは、特定のLANセグメント上の全てのコンピュータに到達する。通常、IPブロードキャストパッケージを含むイーサネットフレームがこのアドレスに送信される。
イーサネットブロードキャストは、IPアドレスをMACアドレスに変換するための Address Resolution Protocol (ARP) や Neighbor Discovery Protocol (NDP) で使用される。
IPX
[編集]ノベル (企業)のIPXプロトコルでもブロードキャストが使用できる。ネットワークアドレスを FFFFFFFF
として指定すると、利用可能なすべてのネットワークにパケットが送信される。宛先ノードのアドレスが FFFFFFFFFFFF
に指定されている場合、そのパケットはネットワーク内の全てのホストによって受信される。
AppleTalk
[編集]AppleTalkプロトコルでもブロードキャストが使用できる。ノードIDを 255
に指定すると、利用可能なすべてのネットワークにパケットが送信される。
関連項目
[編集]出典
[編集]- ^ Jeffrey Mogul (October 1984). Broadcasting Internet Datagrams (英語). doi:10.17487/RFC0919. RFC 919。
- ^ Robert Gurwitz; Robert Hinden (September 1982). IP - Local Area Network Addressing Issues (英語). IEN 212。
- ^ Jeffrey Mogul (October 1984). Broadcasting Internet Datagrams In the Presence of Subnets (英語). doi:10.17487/RFC0922. RFC 922。
参考文献
[編集]- 久米原栄『要点解説IPルーティング入門』(初版第1刷)ソフトバンククリエイティブ、2007年3月1日、13–14頁。ISBN 978-4-7973-3743-3。