MAC-адрес
MAC-адрес (Media Access Control address, также физический адрес, аппаратный адрес) — уникальный идентификатор, присваиваемый каждой единице активного сетевого оборудования (сетевой карте, Wi-Fi-адаптеру, Bluetooth-модулю) на этапе производства. MAC-адрес используется на канальном уровне модели OSI для идентификации устройств в локальных сетях (LAN) и обеспечения передачи данных между узлами. В отличие от IP-адреса, который может меняться в зависимости от сети, MAC-адрес обычно является постоянным для конкретного устройства.
Структура и формат
MAC-адрес представляет собой 48-битное (6 байт) число, записываемое в шестнадцатеричной системе счисления. Стандартный формат записи — шесть групп по два шестнадцатеричных символа, разделённых дефисами, двоеточиями или точками. Например:
00-1A-2B-3C-4D-5E(дефисы)00:1A:2B:3C:4D:5E(двоеточия)001A.2B3C.4D5E(точки, реже)
Разделение на части
48-битный адрес делится на две основные части:
- Первые 24 бита (3 байта) — идентификатор организации (OUI, Organizationally Unique Identifier). Этот код выдаётся производителю оборудования IEEE (Institute of Electrical and Electronics Engineers). По OUI можно определить компанию-изготовителя устройства.
- Последние 24 бита (3 байта) — уникальный номер, присваиваемый самим производителем. Комбинация OUI и этого номера гарантирует теоретическую уникальность каждого MAC-адреса в мире.
IPv6 и EUI-64
В протоколе IPv6 используется расширенный формат адресации — EUI-64 (Extended Unique Identifier). Для его формирования из 48-битного MAC-адреса в середину (между OUI и уникальным номером) вставляются два байта FF-FE. Например, из 00:1A:2B:3C:4D:5E получается 00:1A:2B:FF:FE:3C:4D:5E. Это позволяет автоматически генерировать IPv6-адреса на основе MAC-адреса.
Классификация MAC-адресов
По типу адресации
- Индивидуальный (unicast) — адрес, присвоенный конкретному сетевому интерфейсу. Первый байт такого адреса имеет младший бит (бит I/G) равным 0. Используется для передачи данных от одного устройства к другому.
- Групповой (multicast) — адрес, предназначенный для группы устройств. Первый байт имеет младший бит равным 1. Пример — адрес
01-00-5E-xx-xx-xx, используемый протоколами маршрутизации (OSPF, VRRP). - Широковещательный (broadcast) — специальный адрес
FF-FF-FF-FF-FF-FF, предназначенный для передачи данных всем устройствам в локальной сети.
По способу назначения
- Заводской (burned-in address, BIA) — адрес, прошитый в постоянное запоминающее устройство (ПЗУ) сетевого адаптера производителем. Не подлежит изменению без замены оборудования.
- Программный (locally administered address, LAA) — адрес, который может быть изменён пользователем или операционной системой. Для этого второй по старшинству бит первого байта (бит U/L) устанавливается в 1. Такие адреса используются для обхода ограничений провайдеров, в виртуальных машинах или для тестирования.
История и стандартизация
MAC-адреса были введены в 1980-х годах в рамках стандарта Ethernet (IEEE 802.3). Изначально они предназначались для адресации устройств в локальных сетях с топологией «общая шина». С развитием сетевых технологий (Token Ring, FDDI, Wi-Fi) концепция MAC-адреса была адаптирована для всех протоколов канального уровня.
Стандартизацией MAC-адресов занимается IEEE. Организация ведёт реестр OUI (Organizationally Unique Identifier), который доступен для поиска онлайн. По состоянию на 2025 год зарегистрировано более 30 000 уникальных OUI, принадлежащих различным производителям — от крупных корпораций (Intel, Cisco, Apple) до мелких стартапов.
Применение
В локальных сетях
Основная функция MAC-адреса — обеспечение передачи данных на канальном уровне. Когда устройство отправляет пакет, коммутатор (switch) или точка доступа (AP) считывает MAC-адрес получателя и направляет кадр только на нужный порт. Для этого коммутатор использует таблицу MAC-адресов (CAM-таблица), которая динамически заполняется по мере прохождения трафика.
В беспроводных сетях
В Wi-Fi-сетях MAC-адрес используется для аутентификации устройств. Точки доступа могут фильтровать подключения по MAC-адресам (MAC-фильтрация), разрешая или запрещая доступ определённым устройствам. Однако этот метод считается устаревшим, так как MAC-адрес легко подделать (спуфинг).
В протоколах
- ARP (Address Resolution Protocol) — протокол, используемый в IPv4-сетях для определения MAC-адреса по известному IP-адресу. Работает путём широковещательного запроса.
- NDP (Neighbor Discovery Protocol) — аналог ARP для IPv6, использующий ICMPv6-сообщения.
- DHCP (Dynamic Host Configuration Protocol) — сервер DHCP может назначать IP-адреса на основе MAC-адреса клиента (статическая привязка).
В виртуализации
Виртуальные машины (VM) и контейнеры получают программные MAC-адреса, которые могут быть как случайно сгенерированными, так и заданными администратором. Гипервизоры (VMware, Hyper-V, KVM) автоматически присваивают уникальные MAC-адреса виртуальным сетевым интерфейсам, используя собственные OUI (например, 00:50:56 для VMware).
Проблемы и ограничения
Подделка MAC-адреса (MAC-спуфинг)
Изменение MAC-адреса на программном уровне возможно в большинстве операционных систем (Windows, Linux, macOS). Это используется для:
- обхода ограничений провайдера (например, при смене роутера);
- повышения приватности (скрытие реального производителя устройства);
- атак на сети (например, подмена MAC-адреса для обхода MAC-фильтрации).
Приватность и отслеживание
MAC-адрес является уникальным идентификатором устройства, что позволяет отслеживать перемещение пользователя в общественных Wi-Fi-сетях (например, в торговых центрах или аэропортах). Для защиты приватности современные мобильные ОС (iOS 8+, Android 10+, Windows 10/11) используют функцию рандомизации MAC-адреса при подключении к новым Wi-Fi-сетям. При этом устройство генерирует временный MAC-адрес, который не связан с реальным заводским адресом.
Ограниченность адресного пространства
48-битное адресное пространство теоретически позволяет создать около 281 триллиона уникальных MAC-адресов (2^48). Однако из-за особенностей распределения OUI и неэффективного использования части адресов (например, широковещательные и групповые) реальное количество уникальных адресов меньше. Тем не менее, на практике дефицита MAC-адресов не наблюдается, и стандарт остаётся актуальным.
Интересные факты
- Первые три байта MAC-адреса (OUI) могут быть использованы для идентификации производителя устройства. Например,
00:1A:11принадлежит компании Intel,00:25:00— Apple. - В сетях Ethernet MAC-адрес передаётся в кадре в обратном порядке битов (little-endian), что связано с историческими особенностями реализации.
- Некоторые производители (например, Cisco) используют MAC-адреса для генерации уникальных идентификаторов в своих протоколах (например, Bridge ID в STP).
- В протоколе Bluetooth MAC-адрес (BD_ADDR) имеет аналогичную структуру, но используется для идентификации Bluetooth-устройств.
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →