MACアドレス
MAC Address ・ まっくあどれす
ネットワーク機器に割り当てられた物理識別子。同一ネットワーク内配送の宛先。
概要
MACアドレス(Media Access Control address)は、ネットワーク機器のインターフェース1つ1つに割り当てられた48ビットの識別子です。aa:bb:cc:dd:ee:ff のようにコロン区切りの16進数12桁で表記され、パソコンの有線LANポート、Wi-Fiチップ、スマートフォン、ルータのポートなど、ネットワークにつながる口ごとに1つずつ持っています。
「物理アドレス」とも呼ばれる通り、伝統的には製造時にハードウェアへ書き込まれる、世界で一意な番号として設計されました。IPアドレスがネットワーク管理者の采配で付け替えられる「論理的な住所」であるのに対し、MACアドレスは機器そのものに紐づく「個体の名前」に近い存在です。EthernetやWi-Fiが同一ネットワーク内でフレーム(データの運搬単位)を届けるとき、宛先の指定に使われるのはIPアドレスではなくこのMACアドレスです。
Wi-Fiの接続トラブルでルータの管理画面を眺めるとき、MACアドレスフィルタリングを設定するとき、あるいはDHCPで特定の機器に固定IPアドレスを払い出すとき — ネットワークの現場作業では頻繁に顔を出す語彙です。
なぜ生まれたか
MACアドレスの起源は1970年代のEthernetにあります。初期のEthernetは1本の同軸ケーブルを全機器で共有する構造で、誰かが送信した信号は全員に届いてしまいます。そのため「このフレームは誰宛か」を各機器が判別できるよう、フレームに宛先の識別子を書き込む必要がありました。これがMACアドレスの出発点です。
このとき設計者たちは、識別子の管理を現場に委ねない道を選びました。アドレスの前半をIEEE(電気電子学会)がメーカーごとに割り当て、後半をメーカーが製品ごとに採番する二段構えにしたのです。これにより、機器は工場出荷の時点で世界一意のアドレスを持ち、ネットワークにつないだ瞬間から設定なしで他の機器と区別できます。「つなげば動く」というLANの手軽さは、この事前割り当ての仕組みに支えられています。なお、当時まだTCP/IPは普及しておらず、MACアドレスはIPアドレスより先に存在していました。後から来たIPの世界との橋渡しには、ARPという別のプロトコルが用意されることになります。
詳細
構造 — OUIとシリアル番号
48ビットのMACアドレスは前半24ビットと後半24ビットに分かれます。前半はOUI(Organizationally Unique Identifier)と呼ばれ、IEEEがメーカーに割り当てるベンダー識別子です。後半はそのメーカーが製品ごとに一意になるよう採番します。このためMACアドレスの前半を調べると製造元が分かり、ネットワーク調査で「この見知らぬ機器はどこのメーカーか」を推定する手がかりになります。
このほか、先頭バイトの特定ビットには意味が持たされています。1つは「全員宛(ブロードキャスト ff:ff:ff:ff:ff:ff)やグループ宛(マルチキャスト)か、個別宛か」を示すビット、もう1つは「工場出荷のグローバルアドレスか、ソフトウェアが設定したローカルアドレスか」を示すビットです。後者は後述するランダム化で重要になります。
L2の配送 — スイッチはMACアドレスで運ぶ
MACアドレスの主戦場は、OSI参照モデルでいうレイヤ2(データリンク層)、つまり同一ネットワーク内の配送です。現代のLANの主役であるスイッチ(スイッチングハブ)は、流れてきたフレームの送信元MACアドレスを見て「このポートの先にこのMACアドレスの機器がいる」という対応表(MACアドレステーブル)を自動学習します。以降、宛先MACアドレスが分かっているフレームは該当ポートだけに転送され、無関係な機器には流れません。初期Ethernetの「全員に届いてしまう」構造を、MACアドレスの学習によって「宛先にだけ届く」構造へ進化させたわけです。
IPアドレスとの役割分担
「住所が2種類あるのはなぜか」は初学者が必ず抱く疑問です。整理すると、IPアドレスは世界中を横断する経路選択(ルーティング)のための階層的な住所で、「どのネットワークの、どのホストか」を表します。一方MACアドレスには地理的・組織的な階層がなく、隣接する機器の間でフレームを受け渡す一区間ごとの宛先にしか使えません。郵便にたとえるなら、IPアドレスは封筒に書かれた最終的な届け先住所、MACアドレスは配送の各区間で荷物を手渡す「次の担当者の名前」です。パケットがルータを越えるたびに宛先・送信元のMACアドレスは区間ごとに書き換わりますが、IPアドレスは端から端まで変わりません。この2層の分業を実際につなぐのが、IPアドレスからMACアドレスを解決するARPです。
また、DHCPがIPアドレスを配るときに相手を識別する手がかりもMACアドレスです。ルータの設定画面で「このMACアドレスにはいつもこのIPアドレスを割り当てる」という予約設定ができるのはこのためです。
MACアドレスランダム化 — 一意性が招いたプライバシー問題
「世界一意で変わらない識別子」という設計は、スマートフォンの時代に思わぬ副作用を生みました。Wi-Fi機器は接続先を探すために自分のMACアドレスを含む信号を発しており、これを店舗や街頭で収集すれば、個人の行動を端末単位で追跡できてしまうのです。この対策として、現代のiOS・Androidは接続のたび・ネットワークごとにランダムなMACアドレスを名乗る「MACアドレスランダム化」を標準で有効にしています。前述の「ローカルアドレス」ビットを立てたランダム値を使う仕組みです。
これは利用者のプライバシーを守る一方、「MACアドレスで機器を識別する」前提の運用を壊します。MACアドレスフィルタリングやDHCPの固定割り当てが「同じ端末なのに毎回別人に見える」ため効かなくなる、というのは現場の定番トラブルです。そもそもMACアドレスフィルタリングは、MACアドレスがソフトウェアで自由に詐称できる(そのことはランダム化自体が証明しています)以上、セキュリティ対策としては気休めに過ぎません。「物理アドレス」という名前に反して、今日のMACアドレスは必ずしも物理的でも不変でもない — この変化ごと押さえておくと、実務での混乱を避けられます。
