MAC-адрес
MAC-адрес (от англ. Media Access Control — контроль доступа к среде, также Hardware Address, также физический адрес) — уникальный идентификатор, присваиваемый каждой единице сетевого оборудования или некоторым их интерфейсам в компьютерных сетях Ethernet[1].
При проектировании стандарта Ethernet было предусмотрено, что каждая сетевая карта (равно как и встроенный сетевой интерфейс) должна иметь уникальный шестибайтный номер (MAC-адрес), «прошитый» в ней при изготовлении. Этот номер используется для идентификации отправителя и получателя фрейма; и предполагается, что при появлении в сети нового компьютера (или другого устройства, способного работать в сети) сетевому администратору не придётся настраивать этому компьютеру MAC-адрес вручную[1].
Уникальность MAC-адресов достигается тем, что каждый производитель получает в координирующем комитете IEEE Registration Authority диапазон из 16 777 216 (224) адресов и, по мере исчерпания выделенных адресов, может запросить новый диапазон. Поэтому по трём старшим байтам MAC-адреса можно определить производителя. Существуют таблицы, позволяющие определить производителя по MAC-адресу; в частности, они включены в программы типа arpalert.
В широковещательных сетях (таких, как сети на основе Ethernet) MAC-адрес позволяет уникально идентифицировать каждый узел сети и доставлять данные только этому узлу. Таким образом, MAC-адреса формируют основу сетей на канальном уровне модели OSI, которую используют протоколы более высокого (сетевого) уровня. Для преобразования MAC-адресов в адреса сетевого уровня и обратно применяются специальные протоколы (например, ARP и RARP в сетях IPv4, и NDP в сетях на основе IPv6).
Большинство сетевых протоколов канального уровня используют 1 из 3-х пространств MAC-адресов, управляемых IEEE (или MAC-48, или EUI-48, или EUI-64); адреса в каждом из тех пространств, теоретически, должны быть глобально уникальными. Но не все протоколы используют MAC-адреса; и не все протоколы, использующие MAC-адреса, нуждаются в подобной уникальности этих адресов.
Адреса вроде MAC-48 наиболее распространены; они используются в таких технологиях, как Ethernet, Token ring, FDDI, WiMAX и других. Они состоят из 48 бит; таким образом, адресное пространство MAC-48 насчитывает 248 (или 281 474 976 710 656) адресов. Согласно подсчётам IEEE, этого запаса адресов хватит по меньшей мере до 2100 года.
EUI-48 от MAC-48 отличается лишь семантически: в то время как MAC-48 используется для сетевого оборудования — EUI-48 применяется для других типов аппаратного и программного обеспечения.
Идентификаторы EUI-64 состоят из 64 бит и используются в FireWire, а также в IPv6 (в качестве младших 64 бит сетевого адреса узла).
Структура MAC-адреса
Стандарты IEEE определяют 48-разрядный (6 октетов) MAC-адрес, который разделён на четыре части.
Первые 3 октета (в порядке их передачи по сети; старшие 3 октета, если рассматривать их в традиционной бит-реверсной шестнадцатеричной записи MAC-адресов) содержат 24-битный уникальный идентификатор организации (OUI)[2], или код MFG (Manufacturing, производителя), который производитель получает в IEEE. При этом, в самом первом октете используются только 6 старших разрядов, а два младших имеют специальное назначение:
- Нулевой бит — указывает: для одиночного (0) или группового (1) адресата предназначен кадр;
- Первый бит — указывает, является ли MAC-адрес глобально (0) или локально (1) администрируемым.
Следующие три октета — выбираются изготовителем для каждого экземпляра устройства (за исключением сетей системной сетевой архитектуры SNA).
Таким образом, глобально администрируемый MAC-адрес устройства глобально уникален и обычно «зашит» в аппаратуру.
Администратор сети имеет возможность вместо использования «зашитого» назначить устройству MAC-адрес по своему усмотрению. Такой локально администрируемый MAC-адрес выбирается произвольно и может не содержать информации об OUI. Признаком локально администрируемого адреса является соответствующий бит первого октета адреса (см. выше).
Для того чтобы узнать MAC-адрес сетевого устройства, в различных операционных системах используются следующие команды:
- Windows —
ipconfig /all
— более подробно расписывает — какой MAC-адрес к какому сетевому интерфейсу относится; - Windows —
getmac /v
— менее подробно расписывает — какой MAC-адрес к какому сетевому интерфейсу относится; - Linux —
ip link show
- FreeBSD —
ifconfig | grep ether
- OpenBSD —
ifconfig | grep lladdr
- HP-UX —
/usr/sbin/lanscan
- Mac OS X —
ifconfig
, либо в «Системных настройках» («Сеть», «Выбрать подключение», «Дополнительно», «Ethernet», «Идентификатор Ethernet»); - QNX4 —
netinfo -l
- QNX6 —
ifconfig
илиnicinfo
- Cisco IOS, JUNOS —
show interfaces
Смена MAC-адреса
Существует возможность смены MAC-адреса программным путём[1], так как его значение, указанное через драйвер, имеет более высокий приоритет, чем «зашитое» в плату. Однако всё же существует оборудование, в котором смену MAC-адреса произвести невозможно без программатора (обычно это телекоммуникационное оборудование; например, приставки для IP-TV (STB)).
В некоторых устройствах, оснащённых веб-интерфейсом управления, возможна смена MAC-адреса во время настройки: большинство маршрутизаторов позволяют дублировать MAC-адрес сетевой платы, через которую он подключён к компьютеру.
См. также
Примечания
- ↑ 1 2 3 Любовь Касьянова. Как поменять MAC-адрес: Windows, Linux, Mac, Android, iOS . iCHIP.ru (6 августа 2018). Дата обращения: 28 июля 2021. Архивировано 28 июля 2021 года.
- ↑ IEEE OUI and Company_id Assignments // IEEE Registration Authority: Список присвоенных OUI // IEEE Registration Authority Архивная копия от 22 февраля 2008 на Wayback Machine поиск OUI по названию производителя и наоборот Архивная копия от 21 октября 2010 на Wayback Machine.