全8745文字
PR

謎1 MACアドレスとは?

 MACアドレスは、イーサネットや無線LANで通信の宛先を指定するためのアドレスだ。パソコンやスマートフォンだけでなく、ルーターやLANスイッチなどのネットワーク機器にもMACアドレスが割り当てられている。LAN内で通信する際は、MACアドレスを手掛かりにデータを届ける。

 ネットワークのアドレスというと、IPアドレスが有名だ。MACアドレスとIPアドレスのどちらも、「ネットワークにおける住所」という共通の役割を担う(図1)。IPアドレスはインターネットという広大なネットワークにおける住所であり、MACアドレスは比較的狭いネットワークにおける住所である。より正確に言えば、伝送メディア(LANケーブルや無線など)で直接つながる範囲で使われる。従ってMACアドレスは、NIC単位で割り当てられる。

図1●MACアドレスとIPアドレス
図1●MACアドレスとIPアドレス
どちらもネットワークにおける端末の「住所」を表現する。MACアドレスはLAN内で使われ、IPアドレスは複数のLANをつないだインターネットで使われる。
[画像のクリックで拡大表示]

謎2 LANスイッチはMACアドレスをどのように使っているの?

 LANスイッチは「MACアドレステーブル」を使って宛先となる機器を管理する。このテーブルには、LANスイッチのポート(LANポート)と、その先につながるパソコンなどの端末のMACアドレスの対応が登録されている。

 新規にLANスイッチを設置し、パソコンを接続したとしよう。この時点ではテーブルには何も登録されていない。まずパソコンがデータ(フレーム)を送信する(図2(1))。パソコンからフレームを受信したスイッチは、受信したLANポートと送信元MACアドレスをセットにしてテーブルに記録する(同(2))。

図2●LANスイッチにおけるフレーム転送の動作
図2●LANスイッチにおけるフレーム転送の動作
LANスイッチはMACアドレスとLANポートの対応表(MACアドレステーブル)を持っている。宛先の記録がテーブルにあれば、その記録に従ってデータを該当のポートから送信する。そうでない場合はすべてのポートから送信する。
[画像のクリックで拡大表示]

 そしてLANスイッチはフレームを送信しようとするが、宛先MACアドレスに対応する端末がつながったLANポートが分からない。そこで全ポートからフレームを送信する(同(3))。この動作を「フラッディング」と呼ぶ。これによりLANスイッチに接続した全端末にフレームが届くが、対応するMACアドレスを持つ端末だけが受信して処理を始める。それ以外の端末は自身に無関係なので届いたフレームを廃棄する。

 MACアドレステーブルに記録されているMACアドレス宛てのフレームが届いた場合は、LANスイッチはテーブルを参照してそのMACアドレスに対応したLANポートだけからフレームを送信する。

 ただし、LANスイッチは定期的にMACアドレステーブルの内容を消去する。パソコンをつなぎ替えた場合、MACアドレステーブルの内容が古いままだと、誤ったLANポートからフレームを送信してしまう可能性があるためだ。