MACアドレス

MACアドレス（マック・アドレス、）とは、Media Access Controlにおいて、ネットワークインタフェースを識別するために使用される識別子である。OSI参照モデルでいえば、第2層（データリンク層）にあたる。
原則として全てのネットワーク機器に一意に割り当てられるが、様々な要因で例外が存在する。
概要.
WindowsのコマンドプロンプトではPhysical Addressと表記されており、単に物理アドレスと呼ばれたりNode ID（ノードID）の別名でも呼ばれたりすることがある。
イーサネットやIEEE 802.11 (Wi-Fi)の場合、48ビット（EUI-48）の符号である。MACアドレスの表現には、04-A3-43-5F-43-23や32:61:3C:4E:B6:05といったオクテットで区切り16進数表現を用いる。このMACアドレスの6つのオクテットのうち、最初の3オクテットがベンダーID部、次の1オクテットが機種ID、最後の2オクテットがシリアルIDとなることが一般的である。この場合、上位4オクテットでネットワーク機器の機種名まで特定可能である。
グローバルアドレスとローカルアドレス.
先頭オクテットのビット0x02がグローバルアドレスとローカルアドレスを識別するビットで、GLビットと呼ばれる。OFFであればグローバルアドレス、ONであればローカルアドレスであることを示している。また、先頭オクテットのビット0x01がユニキャストとマルチキャストを識別するビットで、IGビットと呼ばれる。詳細は、英文記事のを参照。
グローバルアドレスの場合、世界中のMACアドレスの管理を行なっているIEEEに料金を支払って、割り当てと登録を受けている。上位3オクテットはOUI（Organizationally Unique Identifier）と呼ばれる。OUIを割り当てられた各製造者は下位3オクテットを独自に重複しないように割り当てており、1つのOUIの割り当てを受けることで1677万7216個の製品に個別のMACアドレスが割り振れる。この仕組みにより、原則として、MACアドレスは世界中で唯一の番号となる。IEEEではOUIの登録データをWebで検索できるようにしている。
IPv4では、MACアドレスとIPアドレスの相互変換には、ARPやRARPというプロトコルを用いる。IPv6では、MACアドレスとIPアドレスの相互変換には、ICMPv6で規定されている近隣探索プロトコル（Neighbor discovery, NDP）を用いる。
変更と重複.
MACアドレスは物理アドレスと呼ばれるが、ソフトウェアの設定により変更可能なネットワーク機器も存在する。また、仮想マシンなどでは任意の値に変更できる場合もある。このため、無線LAN (Wi-Fi)などの情報セキュリティの確保のためにMACアドレス・フィルタリングを利用する場合、ブラックリストによる防御は突破される可能性がある。
また、以下のOSでは、程度の差こそあれWi-Fiにおいて毎回異なるMACアドレスを使用する。
このようにMACアドレスは変更可能なため、MACアドレスが重複することがある。また、ハードウェアの出荷時点から重複が存在している可能性がRFC 7136やRFC 7217で指摘されている。
近傍にMACアドレスが重複するネットワーク機器が複数あると正常な通信ができない。また、DHCPなど、MACアドレスを装置の識別に使用する場合もMACアドレスが重複すると意図しない動作となることがある。特に管理用途でMACアドレスを使う場合は、同一セグメントに限らず重複が問題となることがある。
枯渇の可能性.
MACアドレスが有限の符号である以上、理論的には枯渇というものが考えられる。しかし、IPアドレス枯渇問題などで話題になるIPv4と違い、MACアドレスは248=281,474,976,710,656個≒281兆個（IGビット/GLビットを除外すると246=70,368,744,177,664≒70兆個）と多いことなどにより、2012年時点では差し迫った問題にはなっていない。
MACアドレステーブル.
L2スイッチなどの通信機器では、通信機器のポートと、そのポートに接続される相手の通信機器のMACアドレスのマッピング情報を「MACアドレステーブル」に保存している。