Featured image of post MACアドレスとは?48ビットの構造とOUIの仕組みをやさしく解説

MACアドレスとは?48ビットの構造とOUIの仕組みをやさしく解説

MACアドレスは、ネットワーク機器に出荷時から割り当てられた48ビットの識別番号です。前半24ビットが製造元を示す OUI 、後半24ビットが製造元が割り振る個体番号という構造になっており、この2段階の管理によって世界中で重複しない番号が実現されています。この記事では、48ビットの内訳から重複しない仕組み、そして近年のプライバシー保護機能までを解説します。


はじめに

入門編「スイッチングハブ」で、MACアドレスは「機器に出荷時から割り当てられた固有の識別番号」であり、「世界中で重複しないよう設計されている」と学びました。しかし、なぜ重複しないのか、どういう構造になっているのかまでは触れませんでした。

今回はMACアドレスの内部構造を詳しく見ていきます。


MACアドレスとは何か ― おさらい

MACアドレスとは、ネットワークに接続する機器に割り当てられた識別番号です。パソコン・スマートフォン・プリンター・ゲーム機など、ネットワークにつながるすべての機器が持っています。表記は AA:BB:CC:DD:EE:FF のような形です。

MACアドレスの3つの特徴

①出荷時に割り当てられる

MACアドレスは製造の段階でネットワーク機器の回路(NIC)に書き込まれます。利用者が設定するものではなく、購入した時点ですでに決まっています。

②原則として変わらない

一度割り当てられたMACアドレスは、機器を買い替えない限り変わりません。自宅で使っても職場で使っても、カフェのWi-Fiにつないでも同じ番号のままです。この点が、接続するネットワークによって変わるIPアドレスとの大きな違いです。

③世界中で重複しない

同じ型番の製品が何百万台と製造されても、1台ごとに異なる番号が割り当てられます。なぜ重複しないのかは、この後の構造の説明で明らかになります。

何のために使われるのか

MACアドレスは、入門編「スイッチングハブ」で学んだように、同じネットワーク内でデータを正しい機器へ届けるために使われます。

スイッチングハブは「どのポートにどのMACアドレスの機器がつながっているか」を記録しており、データが届いたときに宛先MACアドレスを見て、該当するポートにだけ転送します。MACアドレスがなければ、スイッチはどこへデータを送ればよいか判断できません。

用語/英単語 意味 イメージ・補足
MAC / Media Access Control media=媒体 / access=接続 / control=制御; 通信媒体へのアクセスを制御する仕組み ケーブルや電波といった「通信の道」を、どの機器が使うかを管理する役割

MACアドレスの構造 ― 48ビットの内訳

MACアドレスは48ビットで構成され、前半24ビットと後半24ビットで役割が分かれています。まず、この48ビットがどう表記されるかを確認しておきましょう。

48ビットは8ビットずつ6つに区切り、16進数で表記します。16進数とは、0〜9の数字とA〜Fの文字を組み合わせて数を表す方法で、8ビットは16進数2桁で表現できます。そのため AABB のような2文字の組が6つ並ぶ形になります。

区切り文字はコロン(:)が一般的ですが、ハイフン(AA-BB-CC-DD-EE-FF)やピリオド(AABB.CCDD.EEFF)で表記されることもあります。どれも同じ意味です。

前半24ビット:OUI(製造元の識別子)

MACアドレスの前半24ビット(最初の3組)は OUI(Organizationally Unique Identifier) と呼ばれ、機器の製造元を示します。

用語/英単語 意味 イメージ・補足
OUI / Organizationally Unique Identifier organizationally=組織ごとに / unique=固有の / identifier=識別子; 製造元を一意に識別する番号 車のナンバープレートの地域名のようなもの。どこの組織のものかがわかる

OUIは IEEE(米国電気電子学会) という国際的な標準化団体が管理しており、各メーカーが申請して取得します。たとえばAppleやIntel、Ciscoといった企業は、それぞれ複数のOUIを保有しています。

MACアドレスの前半3組を調べれば、その機器の製造元がわかります。IEEEはOUIの一覧を公開しており、「このMACアドレスはどのメーカーの機器か」を検索できるサービスも存在します。

後半24ビット:製造元が割り振る個体番号

後半24ビット(後ろの3組)は、製造元が自社の製品に順番に割り振る番号です。同じメーカーの製品でも1台ごとに異なる番号が付けられます。

24ビットで表現できる数は2の24乗、およそ1677万通りです。1つのOUIあたり約1677万台の機器に番号を割り振れる計算になります。それ以上の台数を製造する企業は、追加でOUIを取得します。

MACアドレスの48ビットの構造。前半24ビットが製造元を示すOUI、後半24ビットが製造元が割り振る個体番号

図:MACアドレスの48ビットの構造

特別な意味を持つMACアドレス

FF:FF:FF:FF:FF:FF というMACアドレスは、特定の機器を指すものではありません。48ビットすべてが1になっているこの値は ブロードキャストアドレス と呼ばれ、「同じネットワーク内のすべての機器」を意味します。

スイッチはこのアドレス宛てのデータを受け取ると、届いたポート以外のすべてのポートへ転送します。「相手のMACアドレスがわからないので、全員に聞いてみる」という場面で使われます。

用語/英単語 意味 イメージ・補足
ブロードキャストアドレス / Broadcast Address broadcast=広く投げる; 同じネットワーク内の全機器を宛先とする特別なMACアドレス 学校の全校放送のように、その場にいる全員に届く

なぜMACアドレスは重複しないのか

MACアドレスが世界中で重複しない理由は、2段階の管理にあります。

まずIEEEが各メーカーに異なるOUIを割り当てるため、メーカー同士で前半24ビットが重複しません。次に各メーカーが自社の製品に対して重複しない個体番号を割り振るため、同じメーカーの製品同士でも後半24ビットが重複しません。

この仕組みは「国が都道府県に番号を割り当て、各都道府県が住民に番号を割り振る」という形に似ています。管理する主体を階層に分けることで、全体を把握する組織がなくても重複を防げます。

IEEEが各メーカーにOUIを割り当て、各メーカーが個体番号を割り振る2段階の管理の図

図:2段階の管理で重複を防ぐ仕組み

ただし、絶対に重複しないわけではありません。メーカーの管理ミスによる重複や、ソフトウェアでMACアドレスを書き換える「MACアドレススプーフィング」という手法も存在します。同じネットワーク内に同じMACアドレスの機器が2台あると、スイッチが正しく転送先を判断できず通信が不安定になります。


ランダムMACアドレス ― 追跡を防ぐ仕組み

MACアドレスは原則として変わらないと説明しましたが、近年のスマートフォンやパソコンには例外があります。Wi-Fiに接続する際、実際のMACアドレスの代わりにランダムな値を使う機能が搭載されているのです。

この機能は プライバシー保護 を目的としています。スマートフォンはWi-Fiがオンになっていると、周囲のアクセスポイントを探すための信号を常時発信しており、そこにMACアドレスが含まれています。つまり、Wi-Fiに接続していなくても、店の前を通っただけでMACアドレスが記録される可能性があります。

これを利用しているのが、商業施設向けのWi-Fi解析サービスです。複数の施設にセンサーを設置してデータを一元管理する事業者や、全店舗のWi-Fiを管理するチェーン店であれば、「同じ端末がA店とB店を訪れた」という形で拠点をまたいだ行動履歴を把握できてしまいます。

そこでiOS 14以降のiPhoneやAndroid 10以降の端末では、接続するWi-Fiネットワークごとに異なるランダムなMACアドレスを使う設定が標準で有効になっています。A店とB店では別々のMACアドレスが使われるため、同じ端末だと突き合わせることができなくなります。

MACアドレスが固定だと追跡できるが、ランダムだと別端末に見えるため追跡できない図

図:ランダムMACアドレスで追跡を防ぐ仕組み

用語/英単語 意味 イメージ・補足
ランダムMACアドレス / MAC Address Randomization randomization=無作為化; Wi-Fi接続時に実際のMACアドレスを隠し、ランダムな値を使う機能 場所ごとに違う名前を名乗るようなもの。複数の場所の記録を結びつけられなくなる

なお、この機能によって企業のネットワークで問題が起きる場合もあります。MACアドレスで接続を許可する仕組みを使っている環境では、ランダム化を無効にする必要があります。


MACアドレスを確認する方法

自分の機器のMACアドレスは、設定画面から確認できます。

機器 確認場所
Windows 設定 → ネットワークとインターネット → プロパティ → 物理アドレス(MAC)
macOS システム設定 → ネットワーク → 詳細 → ハードウェア
iPhone 設定 → 一般 → 情報 → Wi-Fiアドレス
Android 設定 → デバイス情報 → Wi-Fi MACアドレス

補足:1台の機器が複数のMACアドレスを持つことがある

設定画面を見ると、MACアドレスが複数表示される場合があります。これは、1台の機器が複数のMACアドレスを持つことがあるためです。

たとえば現在のパソコンやスマートフォンは、有線LAN用とWi-Fi用のNICを両方搭載しているのが一般的です。この2つは別々の部品なので、それぞれに異なるMACアドレスが割り当てられています。有線とWi-Fiを切り替えると、通信に使われるMACアドレスも変わります。


まとめ

MACアドレスは48ビットで構成され、前半24ビットがIEEEの管理する製造元識別子(OUI)、後半24ビットが製造元が割り振る個体番号です。この2段階の管理によって、世界中で重複しない番号が実現されています。FF:FF:FF:FF:FF:FF は特定の機器ではなく「全機器」を意味するブロードキャストアドレスです。また近年は、プライバシー保護のためWi-Fi接続時にランダムなMACアドレスを使う機能も標準的になっています。

用語表

用語 意味
MACアドレス ネットワーク機器に割り当てられた48ビットの識別番号。16進数2桁を6組で表記する
OUI(Organizationally Unique Identifier) MACアドレスの前半24ビット。IEEEが管理する製造元の識別子
IEEE 米国電気電子学会。OUIの割り当てやネットワーク規格の標準化を行う国際団体
ブロードキャストアドレス FF:FF:FF:FF:FF:FF という特別な値。同じネットワーク内の全機器を宛先とする
MACアドレススプーフィング ソフトウェアによってMACアドレスを別の値に書き換える手法
ランダムMACアドレス プライバシー保護のため、Wi-Fi接続時にランダムな値を使う機能