Андрей Смирнов
Время чтения: ~17 мин.
Просмотров: 6

MAC-адрес: разбираемся что это такое и с чем его едят

Mac-адрес компьютера, телефона, маршрутизатора — просто строка из символов. Обычный набор из цифр и латинских букв, но важность он имеет колоссальную. Это как пропуск в глобальную сеть: если есть — проходи, а нет, значит, не пустим. Что представляет собой этот «тайный шифр», почему без него нельзя подключиться к Интернету и как определить его на разных устройствах.macad0.jpg

Что такое Mac-адрес. Почему у одного компьютера их может быть несколько

Мак-адрес (mac address) — это индивидуальный 12-значный код, который получает каждый сетевой интерфейс или устройство еще на фабрике. Он служит для идентификации девайса в сети при получении и отправке информации. Именно по маку сетевая карта получает IP (за определение IP по известным Mac-адресам и наоборот в сетях Ethernet отвечают протоколы ARP и RARP). А если нет IP, не будет и Интернета.

Сколько мак-адресов может быть у одного компьютера и ноутбука? Столько, сколько в аппарате сетевых интерфейсов. Например, если на ПК установлен проводной адаптер Ethernet и отдельно — Wi-Fi, у него 2 mac-адреса.

Mac присваивает девайсу производитель, но это не значит, что ваш компьютер, телефон или роутер связан с ним навечно. Пользователь имеет возможность изменить этот параметр. Для чего? Некоторые интернет-провайдеры практикуют аппаратную привязку устройств абонентов — открывают доступ к сети только по известному мак-адресу. А это ограничивает свободу выбора.

Чтобы прописать в сетевых настройках ПК или роутера тот мак, который нравится провайдеру, сначала придется его определить. Как это сделать, выясним дальше.

Как узнать мак адрес устройств

Компьютера и ноутбука под Windows

Чтобы узнать мак адрес компьютера на базе Windows, выполните следующее:

  • Щелкните правой клавишей мышки по иконке сети в системном трее (правой области панели задач). Выберите «Центр управления сетями«, если у вас Windows 7, или «Параметры сетей и Интернет«, если Windows 10.

macad1.png

  • Перейдите в папку сетевых подключений, кликнув «Настройка параметров адаптера«.

macad2.jpg

  • Откройте контекст интересующего подключения и выберите «Состояние«. В окошке состояния щелкните «Сведения«.

macad3.png

  • Строка «Физический адрес» — и есть мак выбранного адаптера.

macad4.png

К сожалению, этот вариант применим только к активным сетевым подключениям. Узнать mac-адрес интерфейса, который в настоящее время не используется, он не позволяет. Но это можно сделать вторым методом — через командную строку.

Итак:

  • Запустите любым способом командную консоль или PowerShell.
  • Вбейте в нее инструкцию ipconfig -all и нажмите клавишу подтверждения.

macad5.png

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

iMac и Macbook

Узнать мак-адрес Мака (компьютера марки Apple) тоже весьма несложно. Обычно это делают теми же способами, что и в Windows — через настройки сети и терминал (консоль).

Первый способ — через сетевые настройки:

  • Кликните по яблочку (логотипу Apple) в верхнем левом углу экрана и выберите в меню «Системные настройки«.

macad6.png

  • Кликните кнопку раздела «Сеть«.

macad7.jpg

  • Выделите текущее подключение и в правой половине окна нажмите «Дополнительно«.

macad8.png

  • В следующем окошке щелкните последнюю вкладку — «Ethernet» либо «Аппаратура«.

macad9.jpg

  • Нужный параметр находится в строке «Идентификатор Ethernet» или «MAC-адрес«.

Второй способ узнать mac на Маке — через терминал. Здесь тоже достаточно выполнить одну-единственную команду: ifconfig. Физический адрес адаптера отображается в строке «ether«.

macad10.png

Роутера

Простейший способ узнать mac WAN-интерфейса роутера — перевернуть его днищем вверх. В 90-95% случаев вы найдете нужные сведения на этикетке.

macad11.jpg

Физические адреса других интерфейсов, как правило, несложно отыскать в настройках. Так, продукты TP Link отображают их на первой же странице:

macad12.png

Asus RT-N тоже:

macad13.png

На прочих прошивках Asus и на других моделях роутеров сведения о маке могут находиться в иных местах, например, в разделах настройки беспроводной и проводной сетей.

Телефона и планшета

Чтобы посмотреть мак-адрес смартфона или планшетного ПК на Android, чаще всего достаточно открыть настройки и перейти в раздел «О телефоне» или «О планшете«. Интересующий параметр может находиться в общем списке, в подразделе «Техническая информация» либо «Общая информация» — различия обусловлены версиями и настройками прошивок.

macad14.png

На мобильных гаджетах Apple (iOS) сведения о mac-адресах находятся в настройках, конкретнее — в разделе «Основные» и «Об этом устройстве«. В примере на скриншоте ниже они подписаны как «Адрес Wi-Fi» и «Bluetooth«.

Как изменить Mac-адрес

Windows

На ПК и ноутбуках под управлением Windows для изменения mac достаточно средств самой системы. Но при условии, что эту возможность поддерживает драйвер сетевого адаптера.

Порядок действий:

  • Запустите диспетчер устройств, раскройте список сетевых адаптеров, кликните правой клавишей мышки по интересующему и выберите его «Свойства«.
  • Зайдите на вкладку «Дополнительно«. Найдите в списке свойств параметр «Network Address» и в поле «Значение» впишите новый мак.

Если в списке свойств нет вышеуказанного параметра, значит, драйвер адаптера не поддерживает изменение.

Опытные пользователи могут прописать мак-адрес прямо в системный реестр — в раздел, где хранятся настройки сетевого адаптера. Проще всего это сделать через командную строку, запущенную с админскими полномочиями.

Инструкция выглядит так:

Reg add "HKLMSYSTEMSetupUpgradeNetworkDriverBackupControlClass{4d36e972-e325-11ce-bfc1-08002be10318}####" /v NetworkAddress /t REG_SZ /d 000000000000 /f

Вместо «####» и «000000000000» необходимо подставить ваши данные:

«####» — это подпапка реестра вида 0000, 0001, 0002 и т. д. В таких подпапках хранятся параметры сетевых интерфейсов — каждого в своей. Чтобы узнать, в какую из подпапок производить запись, придется открыть их в реестре и в списке значений найти упоминание имени нужного сетевого адаптера. Такого же, как в диспетчере устройств.

Вместо двенадцати нулей напишите новый мак-адрес без пробелов, дефисов и других символов.

Кстати, изменить mac на компьютере с Windows можно и в BIOS, но только с помощью специального сервисного софта, который не предназначен для простых пользователей.

Mac OS X

Смена мак-адреса на компьютерах Apple производится всё через тот же терминал, который помог его узнать. Достаточно выполнить в терминале команду: sudo ifconfig en0 ether 00:00:00:00:00:00.

Вместо нулей после слова «ether» напишите новый адрес, разделяя пары символов двоеточиями.

Android

Чтобы сменить mac-адрес на телефоне или планшете под Android, необходимы права root и специальный софт. Для устройств на базе процессоров MediaTek удобно использовать бесплатную сервисную утилиту MTK Engineering Mode.

  • Чтобы перейти к нужным настройкам в MTK Engineering Mode, коснитесь кнопки «MTK settings«. В списке «Connectivity» выберите Wi-Fi или другой сетевой интерфейс. Откройте раздел NVRAM.
  • Впишите в строку add(h,byte) цифру 4, а в следующую строку — length(byte) — цифру 6. Нажмите «Read«. Ниже — в поле value(h), появится текущий физический адрес этого адаптера. Осталось его стереть, вписать новый (без пробелов, дефисов и двоеточий) и нажать кнопку Write.

Второй способ изменения мака доступен владельцам девайсов на процессорах других производителей, но, к сожалению, и он работает не на всех устройствах. Кроме того, придется установить платную утилиту Root Explorer.

  • Запустите Root Explorer и перейдите в каталог /data.
  • Найдите и откройте в любом редакторе текстовый файл с именем .nvmac.info. Если его нет, создайте. Чтобы создать и сохранить объект в этом каталоге, необходимо активировать права R/W (на чтение и запись)
  • Пропишите в .nvmac.info новый мак-адрес, разделяя пары цифр двоеточиями.
  • Откройте через меню окно разрешений этого файла и отметьте права на чтение для всех.

Роутеры

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

Методика клонирования физического адреса на аппаратах разных марок и моделей почти одинакова. Отличия лишь в интерфейсе прошивки.

Чтобы изменить интересующий параметр на роутере TP-link (в качестве примера приведен интерфейс прошивки Archer C20), откройте раздел «Сеть» и «Клонирование MAC-адреса«. Пропишите в показанном на скриншоте поле новое значение и нажмите «Сохранить«.

Как опознать производителя устройства по маку

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

Услуги определения производителя по mac предоставляют различные интернет-сервисы. Ниже приведен их неполный список:

  • suip.biz/ru/?act=mac
  • networkcenter.info
  • metroethernet.ru
  • 2ip.ua и другие.

Пользоваться такими сервисами проще простого: вставляем в поле известный адрес и жмем «Проверить«. Через 1-2 секунды на экране отобразится примерно такая картина:

Как видно на скриншоте, это устройство марки TP-Link, произведенное в Китае.

Другие сервисы работают похожим образом.

Image Credit: Christiaan Colen on Flickr

Всем известно, что это шесть байт, обычно отображаемых в шестнадцатеричном формате, присвоены сетевой карте на заводе, и на первый взгляд случайны. Некоторые знают, что первые три байта адреса – это идентификатор производителя, а остальные три байта им назначаются. Известно также, что можно поставить себе произвольный адрес. Многие слышали и про «рандомные адреса» в Wi-Fi.

Разберемся, что это такое.

МАС адрес (media access control address) – уникальный идентификатор, назначенный сетевому адаптеру, применяется в сетях стандартов IEEE 802, в основном Ethernet, Wi-Fi и Bluetooth. Официально он называется «идентификатором типа EUI-48». Из названия очевидно, что адрес имеет длину в 48 бит, т.е. 6 байт. Общепринятого стандарта на написание адреса нет (в противоположность IPv4 адресу, где октеты всегда разделяют точками).Обычно он записывается как шесть шестнадцатеричных чисел, разделенных двоеточием: 00:AB:CD:EF:11:22, хотя некоторые производители оборудования предпочитают запись вида 00-AB-CD-EF-11-22 и даже 00ab.cdef.1122.

Исторически адреса прошивались в ПЗУ чипсета сетевой карты без возможности их модификации без флеш-программатора, но в настоящее время адрес может быть изменен программно, из операционной системы. Задать вручную МАС адрес сетевой карте можно в Linux и MacOS (всегда), Windows (почти всегда, если позволит драйвер), Android (только рутованный); с iOS (без рута) подобный трюк невозможен.

Структура адреса

Адрес состоит из части идентификатора производителя, OUI, и идентификатора, присваиваемого производителем. Назначением идентификаторов OUI (Organizationally Unique Identifier) занимается организация IEEE. На самом деле его длина может быть не только 3 байта (24 бита), а 28 или 36 бит, из которых формируются блоки (MAC Address Block, МА) адресов типов Large (MA-L), Medium (MA-M) и Small (MA-S) соответственно. Размер выдаваемого блока, в таком случае, составит 24, 20, 12 бит или 16 млн, 1 млн, 4 тыс. штук адресов. В настоящий момент распределено порядка 38 тысяч блоков, их можно посмотреть многочисленными онлайн-инструментами, например у IEEE или Wireshark.

Кому принадлежат адреса

Несложная обработка публично доступной базы данных выгрузки IEEE даёт довольно много информации. Например, некоторые организации забрали себе много OUI блоков. Вот наши герои:

Вендор Число блоков/записей Число адресов, млн.
Cisco Systems Inc 888 14208
Apple 772 12352
Samsung 636 10144
Huawei Technologies Co.Ltd 606 9696
Intel Corporation 375 5776
ARRIS Group Inc. 319 5104
Nokia Corporation 241 3856
Private 232 2704
Texas Instruments 212 3392
zte corporation 198 3168
IEEE Registration Authority 194 3072
Hewlett Packard 149 2384
Hon Hai Precision 136 2176
TP-LINK 134 2144
Dell Inc. 123 1968
Juniper Networks 110 1760
Sagemcom Broadband SAS 97 1552
Fiberhome Telecommunication Technologies Co. LTD 97 1552
Xiaomi Communications Co Ltd 88 1408
Guangdong Oppo Mobile Telecommunications Corp.Ltd 82 1312

У Google их всего 40, и это не удивительно: они сами производят не так много сетевых устройств.

Блоки МА не предоставляются бесплатно, их можно приобрести за разумные деньги (без абонентской платы) за $3000, $1800 или $755 соответственно. Интересно, что за дополнительные деньги (в год) можно приобрести «сокрытие» публичной информации о выделенном блоке. Таких сейчас, как видно выше, 232.

Когда закончатся МАС-адреса

Мы все порядком устали от не прекращающихся уже лет 10 историй о том, что «IPv4 адреса вот-вот кончатся». Да, новые блоки IPv4 получить уже непросто. При этом известно, что IP адреса распределены крайне неравномерно; существуют гигантские и мало использованные блоки, принадлежащие крупным корпорациям и государственным учреждением США, впрочем, без особой надежды на их перераспределение в пользу нуждающихся. Распространение NAT, CG-NAT и IPv6 сделало проблему нехватки публичных адресов не такой острой.

В МАС адресе 48 бит, из которых «полезными» можно считать 46 (почему? читай дальше), что даёт 246 или 1014 адресов, что в 214 раз больше IPv4 адресного пространства. В настоящий момент распределено примерно полтриллиона адресов, или лишь 0.73% от всего объёма. До исчерпания MAC адресов ещё очень, очень далеко.

Случайность бит

Можно предположить, что OUI распределены случайно, а вендор затем также случайно назначает адреса индивидуальным сетевым устройствам. Так ли это? Посмотрим на распределение бит в имеющихся в моём распоряжении базах МАС адресов 802.11-устройств, собранных работающими системами авторизации в беспроводных сетях WNAM. Адреса принадлежат реальным устройствам, подключавшихся к Wi-Fi на протяжении нескольких лет в трех странах. В дополнение идет маленькая база 802.3-устройств проводной ЛВС.

Разобьем каждый МАС-адрес (шесть байт) каждой из выборок на биты побайтово, и посмотрим на частоту появления бита «1» в каждой из 48 позиций. Если бит выставлен совершенно произвольным образом, то вероятность получить «1» должна быть 50%.

Выборка Wi-Fi №1 (РФ) Выборка Wi-Fi №2 (Беларусь) Выборка Wi-Fi №3 (Узбекистан) Выборка LAN (РФ)
Число записей в базе 5929000 1274000 366000 1000
Номер бита: % бит «1» % бит «1» % бит «1» % бит «1»
1 48.6% 49.2% 50.7% 28.7%
2 44.8% 49.1% 47.7% 30.7%
3 46.7% 48.3% 46.8% 35.8%
4 48.0% 48.6% 49.8% 37.1%
5 45.7% 46.9% 47.0% 32.3%
6 46.6% 46.7% 47.8% 27.1%
7 0.3% 0.3% 0.2% 0.7%
8 0.0% 0.0% 0.0% 0.0%
9 48.1% 50.6% 49.4% 38.1%
10 49.1% 50.2% 47.4% 42.7%
11 50.8% 50.0% 50.6% 42.9%
12 49.0% 48.4% 48.2% 53.7%
13 47.6% 47.0% 46.3% 48.5%
14 47.5% 47.4% 51.7% 46.8%
15 48.3% 47.5% 48.7% 46.1%
16 50.6% 50.4% 51.2% 45.3%
17 49.4% 50.4% 54.3% 38.2%
18 49.8% 50.5% 51.5% 51.9%
19 51.6% 53.3% 53.9% 42.6%
20 46.6% 46.1% 45.5% 48.4%
21 51.7% 52.9% 47.7% 48.9%
22 49.2% 49.6% 41.6% 49.8%
23 51.2% 50.9% 47.0% 41.9%
24 49.5% 50.2% 50.1% 47.5%
25 47.1% 47.3% 47.7% 44.2%
26 48.6% 48.6% 49.2% 43.9%
27 49.8% 49.0% 49.7% 48.9%
28 49.3% 49.3% 49.7% 55.1%
29 49.5% 49.4% 49.8% 49.8%
30 49.8% 49.8% 49.7% 52.1%
31 49.5% 49.7% 49.6% 46.6%
32 49.4% 49.7% 49.5% 47.5%
33 49.4% 49.8% 49.7% 48.3%
34 49.7% 50.0% 49.6% 44.9%
35 49.9% 50.0% 50.0% 50.6%
36 49.9% 49.9% 49.8% 49.1%
37 49.8% 50.0% 49.9% 51.4%
38 50.0% 50.0% 49.8% 51.8%
39 49.9% 50.0% 49.9% 55.7%
40 50.0% 50.0% 50.0% 49.5%
41 49.9% 50.0% 49.9% 52.2%
42 50.0% 50.0% 50.0% 53.9%
43 50.1% 50.0% 50.3% 56.1%
44 50.1% 50.0% 50.1% 45.8%
45 50.0% 50.0% 50.1% 50.1%
46 50.0% 50.0% 50.1% 49.5%
47 49.2% 49.4% 49.7% 45.2%
48 49.9% 50.1% 50.7% 54.6%

Откуда такая несправедливость в 7 и 8 битах? Там почти всегда нули.

Действительно, стандарт определяет эти биты как специальные (Википедия):

Восьмой (с начала) бит первого байта МАС адреса называется Unicast/Multicast битом и определяет, какого типа кадр (фрейм) передается с этим адресом, обычный (0) или широковещательный (1) (мультикаст или броадкаст). Для обычного, unicast взаимодействия сетевого адаптера, этот бит выставлен в «0» во всех пакетах, им отправляемых.

Седьмой (с начала) бит первого байта МАС адреса называется U/L (Universal/Local) битом и определяет, является ли адрес глобально уникальным (0), или локально уникальным (1). По умолчанию, все «прошитые изготовителем» адреса глобально уникальны, поэтому подавляющее число собранных МАС адресов содержат седьмой бит выставленным в «0». В таблице присвоенных идентификаторов OUI только порядка 130 записей имеет U/L бит «1», и по всей видимости это блоки МАС адресов для специальных нужд.

С шестого по первый биты первого байта, биты второго и третьего байта в OUI идентификаторах, и тем более биты в 4-6 байтах адреса, назначаемые производителем, распределены более-менее равномерно.

Таким образом, в реальном МАС-адресе сетевого адаптера биты фактически равноценны и не несут технологического смысла, за исключением двух служебных бит старшего байта.

Распространенность

Интересно, какие производители беспроводного оборудования наиболее популярны? Объединим поиск по базе OUI с данными выборки №1.

Вендор Доля устройств, %
Apple 26,09
Samsung 19,79
Huawei Technologies Co. Ltd 7,80
Xiaomi Communications Co Ltd 6,83
Sony Mobile Communications Inc 3,29
LG Electronics (Mobile Communications) 2,76
ASUSTek COMPUTER INC. 2,58
TCT mobile ltd 2,13
zte corporation 2,00
не найден в базе IEEE 1,92
Lenovo Mobile Communication Technology Ltd. 1,71
HTC Corporation 1,68
Murata Manufactuaring 1,31
InPro Comm 1,26
Microsoft Corporation 1,11
Shenzhen TINNO Mobile Technology Corp. 1,02
Motorola (Wuhan) Mobility Technologies Communication Co. Ltd. 0,93
Nokia Corporation 0,88
Shanghai Wind Technologies Co. Ltd 0,74
Lenovo Mobile Communication (Wuhan) Company Limited 0,71

Практика показывает, что чем зажиточнее контингент абонентов беспроводной сети в данном месте, тем больше доля устройств Apple.

Уникальность

Уникальны ли МАС адреса? В теории да, поскольку каждый из производителей устройств (владельцев блока МА) обязан обеспечивать уникальный адрес для каждого из выпускаемых им сетевых адаптеров. Однако некоторые производители чипов, а именно:

  • 00:0A:F5 Airgo Networks, Inc. (сейчас Qualcomm)
  • 00:08:22 InPro Comm (сейчас MediaTek)

выставляют последние три байта МАС адреса в случайное число, по всей видимости, после каждой перезагрузки устройства. Таких адресов в моей выборке №1 нашлось 82 тысячи.

Поставить себе чужой, не уникальный адрес можно, конечно, путем целенаправленной его установки «как у соседа», определив его сниффером, или выбрав наугад. Также возможно случайно поставить себе не уникальный адрес, выполнив, например, восстановление бэкапа конфигурации какого-нибудь маршрутизатора вроде Mikrotik или OpenWrt.

Что будет, если в сети будет присутствовать два устройства с одним МАС адресом? Все зависит от логики сетевого оборудования (проводного роутера, контроллера беспроводной сети). Скорее всего, оба устройства или не будут работать, или будут работать с перебоями. С точки зрения стандартов IEEE, защиту от подделки МАС адресов предлагается решать при помощи, например, MACsec или 802.1Х.

Что, если поставить себе МАС с выставленным в «1» седьмым или восьмым битом, т.е. local или multicast-адрес? Скорее всего, ваша сеть на это не обратит внимания, но формально такой адрес не будет соответствует стандарту, и лучше так не делать.

Как работает рандомизация

Мы знаем, что с целью предотвратить отслеживание перемещения людей путем сканирования эфира и сбора МАС-операционные системы смартфонов уже несколько лет применяют технологию рандомизации. Теоретически, при сканировании эфира в поиске известных сетей смартфон отправляет пакет (группу пакетов) типа 802.11 probe request с МАС-адресом в качестве источника:

Включенная рандомизация позволяет указывать не «прошитый», а какой-то другой адрес источника пакета, меняющийся при каждом цикле сканирования, во времени или ещё как-то. Работает ли это? Посмотрим на статистику собранных МАС-адресов из эфира так называемым «Wi-Fi Радаром»:

Вся выборка Выборка только с нулевым 7м битом
Число записей в базе 3920000 305000
Номер бита: % бит «1» % бит «1»
1 66.1% 43.3%
2 66.5% 43.4%
3 31.7% 43.8%
4 66.6% 46.4%
5 66.7% 45.7%
6 31.9% 46.4%
7 92.2% 0.0%
8 0.0% 0.0%
9 67.2% 47.5%
10 32.3% 45.6%
11 66.9% 45.3%
12 32.3% 46.8%
13 32.6% 50.1%
14 33.0% 56.1%
15 32.5% 45.0%
16 67.2% 48.3%
17 33.2% 56.9%
18 33.3% 56.8%
19 33.3% 56.3%
20 66.8% 43.2%
21 67.0% 46.4%
22 32.6% 50.1%
23 32.9% 51.2%
24 67.6% 52.2%
25 49.8% 47.8%
26 50.0% 50.0%
27 50.0% 50.2%
28 50.0% 49.8%
29 50.0% 49.4%
30 50.0% 50.0%
31 50.0% 49.7%
32 50.0% 49.9%
33 50.0% 49.7%
34 50.0% 49.6%
35 50.0% 50.1%
36 50.0% 49.5%
37 50.0% 49.9%
38 50.0% 49.8%
39 50.0% 49.9%
40 50.0% 50.1%
41 50.0% 50.2%
42 50.0% 50.2%
43 50.0% 50.1%
44 50.0% 50.1%
45 50.0% 50.0%
46 50.0% 49.8%
47 50.0% 49.8%
48 50.1% 50.9%

Картина совсем другая.

8й бит первого байта МАС адреса по-прежнему соответствует Unicast-природе SRC-адреса в probe request пакете.

7й бит в 92.2% случаев установлен в Local, т.е. с достаточной долей уверенности можно считать, что именно столько собранных адресов относится к рандомизированным, а менее 8% — к реальным. При этом распределение бит в OUI для таких реальных адресов примерно совпадает с данными предыдущей таблицы.

Какому производителю, по OUI, принадлежат рандомизированные адреса (т.е. с 7м битом в «1»)?

Производитель по OUI Доля среди всех адресов
не найден в базе IEEE 62.45%
Google Inc. 37.54%
остальные 0.01%

При этом все рандомизированные адреса, отнесенные к Google, принадлежат одному OUI c префиксом DA:A1:19. Что это за префикс? Давайте посмотрим в исходники Android.

private static final MacAddress BASE_GOOGLE_MAC = MacAddress.fromString("da:a1:19:0:0:0");

Стоковый андроид в поиске беспроводных сетей использует специальный, зарегистрированный OUI, один из немногих с установленным седьмым битом.

Вычислить реальный МАС из рандомного

Посмотрим там же:

private static final long VALID_LONG_MASK = (1L << 48) - 1; private static final long LOCALLY_ASSIGNED_MASK = MacAddress.fromString("2:0:0:0:0:0").mAddr; private static final long MULTICAST_MASK = MacAddress.fromString("1:0:0:0:0:0").mAddr;  public static @NonNull MacAddress createRandomUnicastAddress(MacAddress base, Random r) {         long addr;         if (base == null) {             addr = r.nextLong() & VALID_LONG_MASK;         } else {             addr = (base.mAddr & OUI_MASK) | (NIC_MASK & r.nextLong());         }         addr |= LOCALLY_ASSIGNED_MASK;         addr &= ~MULTICAST_MASK;         MacAddress mac = new MacAddress(addr);         if (mac.equals(DEFAULT_MAC_ADDRESS)) {             return createRandomUnicastAddress(base, r);         }         return mac;     } 

Адрес целиком, либо его младшие три байта, это чистый Random.nextLong(). «Патентованное восстановление реального МАС» — надувательство. С большой долей уверенности можно ожидать, что производители Android-телефонов применяют и другие, не зарегистрированные OUI. Исходников iOS у нас нет, но скорее всего там применен схожий алгоритм.

Вышесказанное не отменяет работу других механизмов деанонимизации Wi-Fi абонентов, основанных на анализе других полей probe request фрейма, или корреляции относительной частоты посылаемых устройством запросов. Однако достоверно отследить абонента внешними средствами крайне проблематично. Собираемые данные больше подойдут для анализа средней/пиковой нагрузки по местоположению и времени, на основе больших чисел, без привязки к конкретным устройствам и людям. Точные данные есть только у тех, кто «внутри», у самих производителей мобильных ОС, у установленных приложений.

Что может быть опасного в том, что кто-то другой узнает МАС-адрес вашего устройства? Для проводных и беспроводных сетей можно организовать атаку «отказ в обслуживании». Для беспроводного устройства, к тому же, с некоторой вероятностью можно зафиксировать момент появления в месте, где установлен сенсор. Подменой адреса можно попробовать «представиться» вашим устройством, что может сработать, только если не применяется дополнительных средств защиты (авторизация и/или шифрование). 99.9% людей здесь не о чем волноваться.

МАС-адрес сложнее, чем кажется, но проще, чем мог бы быть.

Как узнать MAC адрес компьютера? С таким вопросом сталкиваются многие пользователи проводного интернета. Необходимость узнать MAC адрес компьютера может возникнуть при настройке роутера или других действиях связанных с локальной сетью.

В данной статье мы рассмотрим несколько способов, которые позволяет быстро узнать MAC адрес вашего компьютера. Но, перед тем как приступать к основной части статьи нужно сделать одно важное замечание. MAC адрес бывает не у компьютера, а у сетевой карты. Другими словами у компьютера может быть несколько MAC адресов, если у него несколько сетевых карт. Например, на компьютере может быть сетевая карта Ethernet и модуль WiFi. В этом случае у сетевой карты и модуля WiFi будут разные MAC адреса.

Самый простой способ узнать MAC компьютера, это посмотреть информацию о сетевом подключении. Для этого кликните по иконке сетевого подключения на панели задач и нажмите на ссылку «Центр управления сетями и общим доступом».

081114_0554_MAC1.png

Также вы можете открыть «Центр управления сетями и общим доступом» и через Панель управления, для этого нужно кликнуть по ссылке «Просмотр состояния сети и задач».

081114_0554_MAC2.png

После того как вы откроете окно «Центр управления сетями и общим доступом» вам нужно кликнуть по ссылке «Подключение по локальной сети».

081114_0554_MAC3.png

А в открывшемся окне нажать на кнопку «Сведения».

081114_0554_MAC4.png

После этого перед вами откроется окно с информацией о данном сетевом подключении.

081114_0554_MAC5.png

Здесь вы сможете узнать MAC компьютера, а также IP адрес и другие данные о конфигурации локальной сети. 

Если указанный выше способ кажется вам слишком сложным то, вы можете воспользоваться командной строкой. Откройте командную строку и введите команду GETMAC. После этого система отобразит список сетевых карт с их MAC адресами.

081114_0554_MAC6.png

Кроме GETMAC вы можете использовать команду IPCONFIG /ALL. Откройте командную строку и введите в нее команду IPCONFIG /ALL. После ввода данной команды вы увидите подробную информацию обо всех подключениях на вашем компьютере.

081114_0554_MAC7.png

Для того чтобы узнать MAC адрес найдите нужное вам подключение и посмотрите физический адрес. Физический адрес это и есть ваш MAC адрес.

Используя IPCONFIG /ALL нужно быть внимательным, поскольку данная команда выводит информацию сразу обо всех подключениях, у каждого из которых есть свой MAC адрес. Для того чтобы не запутаться легче всего ориентироваться на название сетевой карты, оно указано в поле «Описание».

081114_0554_MAC8.png

Кстати, команда IPCONFIG /ALL есть во всех популярных операционных системах. Единственное отличие это написание самой команды:

Linux ifconfig -a | grep HWaddr
FreeBSD ifconfig|grep ether
Mac OS X ifconfig
Solaris ifconfig –a
HP-UX /usr/sbin/lanscan
QNX4 netinfo –l
QNX6 ifconfig или nicinfo

Посмотрите такжеИспользуемые источники:

  • https://compconfig.ru/net/kak-uznat-i-izmenit-mac-adres.html
  • https://habr.com/ru/post/483670/
  • https://comp-security.net/как-узнать-mac-адрес-компьютера/

Рейтинг автора
5
Подборку подготовил
Андрей Ульянов
Наш эксперт
Написано статей
168
Ссылка на основную публикацию
Похожие публикации