MAC-адрес

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск

MAC-адрес (от англ. Media Access Control — управление доступом к среде, также Hardware Address) — это уникальный идентификатор, присваиваемый каждой единице активного оборудования компьютерных сетей. Большинство сетевых протоколов канального уровня используют одно из трёх пространств MAC-адресов, управляемых IEEE: MAC-48, EUI-48 и EUI-64. Адреса в каждом из пространств теоретически должны быть глобально уникальными. Не все протоколы используют MAC-адреса, и не все протоколы, использующие MAC-адреса, нуждаются в подобной уникальности этих адресов.

В широковещательных сетях (таких, как сети на основе Ethernet) MAC-адрес позволяет уникально идентифицировать каждый узел сети и доставлять данные только этому узлу. Таким образом, MAC-адреса формируют основу сетей на канальном уровне, которую используют протоколы более высокого (сетевого) уровня. Для преобразования MAC-адресов в адреса сетевого уровня и обратно применяются специальные протоколы (например, ARP и RARP в сетях IPv4 и NDP в сетях на основе IPv6).

Адреса вроде 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)[1], или (Код MFG — Manufacturing, производителя), который производитель получает в IEEE. При этом используются только младшие 22 разряда (бита), 2 старшие имеют специальное назначение:

  • первый бит (младший бит первого байта) указывает, для одиночного (0) или группового (1) адресата предназначен кадр
  • следующий бит указывает, является ли MAC-адрес глобально (0) или локально (1) администрируемым.

Следующие три октета выбираются изготовителем для каждого экземпляра устройства. За исключением сетей системной сетевой архитектуры SNA.

Таким образом, глобально администрируемый MAC-адрес устройства глобально уникален и обычно «зашит» в аппаратуру.

Администратор сети имеет возможность, вместо использования «зашитого», назначить устройству MAC-адрес по своему усмотрению. Такой локально администрируемый MAC-адрес выбирается произвольно и может не содержать информации об OUI. Признаком локально администрируемого адреса является соответствующий бит первого октета адреса (см. выше).

Для того, чтобы узнать MAC-адрес сетевого устройства используются следующие команды:

  • Windows — ipconfig /all — более подробно расписывает — какой MAC-адрес к какому сетевому интерфейсу относится
  • Windows  — getmac — менее подробно расписывает — какой MAC-адрес к какому сетевому интерфейсу относится
  • Linux — ifconfig -a | grep HWaddr
  • FreeBSD — ifconfig|grep ether
  • HP-UX — /usr/sbin/lanscan
  • Mac OS X — ifconfig, либо в Системных Настройках > Сеть > выбрать подключение > Дополнительно > Ethernet > Идентификатор Ethernet
  • QNX4 — netinfo -l
  • QNX6 — ifconfig или nicinfo

Смена MAC-адреса[править | править вики-текст]

Существует распространенное мнение, что MAC-адрес жестко вшит в сетевую карту и сменить его нельзя или можно только с помощью программатора. На самом деле это не так. MAC-адрес легко меняется программным путем, так как значение, указанное через драйвер, имеет более высокий приоритет, чем зашитое в плату. Однако всё же существует оборудование, в котором смену MAC-адреса произвести невозможно иначе, как воспользовавшись программатором. Обычно это телекоммуникационное оборудование, например, приставки для IP-TV (STB).

В некоторых устройствах, оснащённых веб-интерфейсом управления, возможна смена MAC-адреса во время настройки. Так, TP-LINK TL-WR740N позволяет дублировать MAC-адрес сетевой платы, через которую он подключен к компьютеру[2].

В Windows смену MAC-адреса можно осуществить встроенными средствами ОС — в свойствах сетевой платы, во вкладке «Дополнительно» для редактирования доступно свойство «Сетевой адрес» (англ. «Network Address», у некоторых изготовителей сетевых плат это свойство называется «Locally Administered Address»), позволяющее принудительно присвоить нужный MAC-адрес.

В FreeBSD, OpenBSD MAC-адрес меняется одной командой от пользователя root:

# ifconfig re0 ether <mac-address>

В Linux — такой командой от пользователя root:

# ifconfig ethN hw ether <mac-адрес>

где ethN — имя сетевого интерфейса.

При этом после перезагрузки ОС смену MAC-адреса нужно произвести заново. Чтобы этого избежать, следует прописать смену МАС-адреса в стартовых конфигурационных файлах сетевых настроек. Например, в случае Debian-based дистрибутива Linux в файл /etc/network/interfaces нужно добавить строку

hwaddress ether <mac-адрес>

в блок конфигурации соответствующего сетевого интерфейса, либо заполнить пункт настроек MAC-адреса для соответствующего сетевого интерфейса в менеджере сетевых настроек графической оболочки.

См. также[править | править вики-текст]

Примечания[править | править вики-текст]

Литература[править | править вики-текст]

Ссылки[править | править вики-текст]