タイトル: MACアドレス
SEOタイトル: MAC アドレス完全ガイド (構造/確認/変更)
| この記事の要点 |
|
MAC アドレスとは
MAC (Media Access Control) アドレスは、Ethernet / Wi-Fi / Bluetooth など L2 ネットワークインターフェース (NIC) を一意に識別する 48 bit (6 byte) の番号です。IEEE が管理し、世界中で重複しないように発行されます。
| 項目 | 内容 |
|---|---|
| 長さ | 48 bit (6 byte) |
| 表記 | 00:1A:2B:3C:4D:5E (コロン) / 00-1A-2B-3C-4D-5E (ハイフン) / 001A.2B3C.4D5E (Cisco) |
| OSI レイヤー | L2 (データリンク層) |
| 到達範囲 | 同一 LAN セグメント内のみ (ルーター越え不可) |
| 役割 | 同一 LAN 内の機器を識別 |
| ペア | ARP で IP ↔ MAC を紐付け |
MAC アドレスの構造
48 bit
|---------- 24 bit ----------||--------- 24 bit ----------|
XX:XX:XX:XX:XX:XX
|--- OUI ---||--- NIC 固有 ---|
ベンダー識別 ベンダー内シリアル
例: AC:DE:48:00:11:22
└─── OUI ───┘└─ NIC ──┘
Apple, Inc.
特殊ビット:
第 1 オクテットの LSB (最下位ビット):
0 = ユニキャスト
1 = マルチキャスト
第 1 オクテットの第 2 ビット:
0 = グローバル (IEEE 割当)
1 = ローカル (ユーザ管理、ランダム MAC で 1 になる)
主な OUI 例
| OUI | ベンダー |
|---|---|
00:50:56 | VMware |
00:1C:42 | Parallels |
08:00:27 | VirtualBox |
AC:DE:48 / F8:1E:DF | Apple |
00:0F:1F | Dell |
00:25:9C | Cisco-Linksys |
02:42:XX | Docker コンテナ (自動生成) |
OUI 検索: IEEE 公式 または https://api.macvendors.com/{mac}。
MAC アドレスの確認方法
Linux
# 推奨: ip コマンド
ip link show
# 1: lo: ...
# 2: eth0: ...
# link/ether 08:00:27:12:34:56 brd ff:ff:ff:ff:ff:ff
# ^^^^^^^^^^^^^^^^^^ ← MAC アドレス
# インターフェース指定
ip link show eth0
# 旧コマンド (まだ動く)
ifconfig eth0
# eth0: ... ether 08:00:27:12:34:56 ...
# 全 NIC をワンライナーで
ip -o link | awk '{print $2, $(NF-2)}'
Windows
# 推奨
ipconfig /all
# 物理アドレス. . . . . . . . . . . . : 08-00-27-12-34-56
# よりシンプル
getmac /v
# 接続名 ネットワーク アダプター 物理アドレス
# Wi-Fi Intel Wi-Fi 6 AX201 AC-DE-48-12-34-56
# PowerShell
Get-NetAdapter | Select-Object Name, MacAddress
macOS
# Wi-Fi
ifconfig en0 | grep ether
# ether ac:de:48:12:34:56
# 全 NIC
networksetup -listallhardwareports
# 接続中の Wi-Fi のみ
networksetup -getmacaddress Wi-Fi
ARP: IP と MAC の対応表
L3 (IP) と L2 (MAC) を結ぶプロトコルが ARP (Address Resolution Protocol)。同一 LAN 内でブロードキャストして "この IP の MAC を教えて" と問い合わせます。
# Linux / macOS
arp -a
# router (192.168.1.1) at aa:bb:cc:dd:ee:ff [ether] on eth0
# pc-1 (192.168.1.10) at 11:22:33:44:55:66 [ether] on eth0
ip neigh # 新コマンド
# 192.168.1.1 dev eth0 lladdr aa:bb:cc:dd:ee:ff REACHABLE
# Windows
arp -a
# インターフェイス: 192.168.1.20 --- 0x4
# インターネット アドレス 物理アドレス 種類
# 192.168.1.1 aa-bb-cc-dd-ee-ff 動的
特殊な MAC アドレス
| MAC | 意味 |
|---|---|
FF:FF:FF:FF:FF:FF | ブロードキャスト (同一セグメント全機器宛て) |
01:00:5E:XX:XX:XX | IPv4 マルチキャスト |
33:33:XX:XX:XX:XX | IPv6 マルチキャスト |
00:00:00:00:00:00 | 未割当 (異常検知用) |
x2:xx:xx:xx:xx:xx | ローカル管理アドレス (ランダム MAC で多用) |
MAC アドレスの変更 (スプーフィング)
# Linux: 一時的な変更
sudo ip link set dev eth0 down
sudo ip link set dev eth0 address 02:11:22:33:44:55
sudo ip link set dev eth0 up
# macentioner ツール
sudo apt install macchanger
sudo macchanger -r eth0 # ランダム MAC
# macOS
sudo ifconfig en0 ether 02:11:22:33:44:55
# Windows
# デバイスマネージャー → 該当 NIC → 詳細設定 → Network Address
プライバシー強化: ランダム MAC
店舗 Wi-Fi 等で MAC を元に個人追跡される問題があるため、現代 OS は SSID ごとにランダム MAC を使うのがデフォルトになっています:
- iOS 14+: 「プライベートWi-Fiアドレス」(ON がデフォルト)
- Android 10+: 「ランダム化されたMAC」(SSID 単位)
- Windows 10/11: 「ランダムなハードウェアアドレス」
- macOS 14+: プライベートMACアドレス
ランダム MAC は第 2 ビットが 1 (ローカル管理) になっているため、企業内で OUI ベース検知が効きません。BYOD 環境では設定要検討。
Wi-Fi と Bluetooth の関係
多くのスマートフォンは Wi-Fi MAC と Bluetooth MAC が近接します (ベンダーがまとめて発行)。Bluetooth スキャンから Wi-Fi MAC を推測される攻撃が研究されています。最新 iOS / Android は Bluetooth もランダム化対象。
FAQ
Q: MAC アドレスはルーター越えで残る?
A: 残りません。ルーターを越えるたびに、そのルーターの MAC に書き換わります (L2 → L3 → L2 で次ホップ用)。
Q: 仮想マシンの MAC は本物?
A: 自動生成された"ベンダー仮想 OUI" (VMware: 00:50:56 / VirtualBox: 08:00:27) の MAC が使われます。ホストとは別物です。
Q: MAC アドレスフィルタリングは安全?
A: ほぼ無意味。簡単に変更できるためセキュリティ対策にはなりません。Wi-Fi なら WPA3 や証明書認証 (802.1X) が本命です。