Чому деякі мак-адреси повторюються так часто?


12

Мій додаток запитує mac-адреси клієнтських комп'ютерів, де він працює, і зберігає їх на сервері. Проаналізувавши серверну БД, я виявив, що деякі mac-адреси повторюються 100-150 разів. Тобто різні клієнтські комп’ютери в різних непов'язаних організаціях мають одні і ті ж комп'ютери. Тож деякі mac-адреси дуже "популярні". Вони також якимось чином відображаються в результатах google. Наприклад 58-2C-80-13-92-63. Чому це відбувається?

Детальніше: моя програма працює на Windows, клієнтські комп'ютери належать до різних організацій і розташовані в різних містах. А мій додаток підключається до веб-сервера, де він зберігає певну статистику (наприклад, mac-адреси).


1
Добре, що виникає помилка "не знайдено постачальника", коли ви шукаєте його - це програмний MAC, певно, якась форма внутрішнього NAT, можливо, з вашого маршрутизатора / VPN / брандмауера.
Chopper3

Гадаю, безгосподарність від їх продавця? Колись у мене був маршрутизатор D-Link, який мав бездротовий MAC "01: 23: 45: 67: 89: ab" ... Дешеве лайно.
Уелід Хамра

може бути конфігурація віртуального пристрою, просто скопіюйте / вставте, не змінюючи MAC (fe зі старими версіями xen це можливо)
Dennis Nolte

Ну, навіть з новими версіями Xen це можливо, якщо ви не дозволяєте йому генерувати новий MAC під час створення VM NIC (наприклад, якщо хтось використовує машинний шаблон). Ви навіть можете це зробити за допомогою libvirt, якщо ви використовуєте лише virsh та єдиний шаблон без скрипту рандомізації.
Спулер

Відповіді:


17

Зокрема, цей приклад ( 58-2C-80-13-92-63) - це мікросхем USB Ethernet, виготовлений Huawei. Схоже, вони лінуються і повторно використовують MAC. Приклади від Google:

[50413.229125] cdc_ether 2-1:1.0: eth1: register 'cdc_ether' at usb-0000:00:1d.7-1, CDC Ethernet Device, 58:2c:80:13:92:63

[  122.660069] huawei_cdc_ncm 3-3:1.1 wwan0: register 'huawei_cdc_ncm' at usb-0000:00:14.0-3, Huawei CDC NCM device, 58:2c:80:13:92:63

Інші також можуть бути випадком передачі ВМ. Але найімовірніше пояснення (як говорили інші) - це дешеве обладнання.

Щоб придумати це, перевірте, чи MAC (позначений як) глобально унікальний або локально адмініструється: https://en.wikipedia.org/wiki/MAC_address#Address_details

Адреса 58:2c:80:13:92:63теоретично повинна бути унікальною у всьому світі:

0x58 → 1011000

Але MAC від VM (наприклад 58:2c:80:13:92:63) не буде:

0x52 → 1010010

Ще кілька прикладів: 0C-5B-8F-27-9A-64, 02-00-4C-4F-4F-50, 36-4B-50-B7-EF-2D, 02-0C-E7-0B-01- 02, 00-16-76-C9-4E-DE. По-перше - схожий на Huawei знову, має бути унікальним у всьому світі. (Хіба хлопці з Huawei не бояться зіткнень з локальною мережею? - serverfault.com/questions/462178/… ) Другий - це петля. Інші - я не знаю, що саме. Другий найменш значущий біт першого октету може бути 1 або 0. Єдине, що я бачу - загалом mac унікальність - це міф :( (навіть якщо вони задані не програмно).
Майк Сіомкін

Ще одна дивна річ - те, що я фільтрую петлі у своєму коді:if (adapter.NetworkInterfaceType == NetworkInterfaceType.Tunnel || adapter.NetworkInterfaceType == NetworkInterfaceType.Loopback || adapter.NetworkInterfaceType == NetworkInterfaceType.Unknown) continue;
Майк Сіомкін,

-2

Ви можете бачити різні мак-адреси лише в локальній мережі. Коли IP-пакет проходить через маршрутизатор, mac-адресу вихідного хоста змінюється на mac-адресу вихідного інтерфейсу маршрутизатора. Ось чому ви можете бачити багато IP-адрес (відьом не з вашої локальної мережі) з однаковою мак-адресою.


Ні, це не так, як це працює, це різні шари OSI. Якщо віддалений IP-адреса доходить до вас через маршрутизатор, ви асоціюєте лише (локальний) IP-адрес маршрутизатора з цим MAC. Я міг би уявити дуже екзотичну настройку, коли роутер намагається зробити так, ніби це міст до Інтернету (хто б насправді цього хотів?), Але такий звір навіть не буде працювати, і, звичайно, не маскуючи все позаду єдиний MAC
Хаген фон Ейтцен

Ти правий. Існують різні шари OSI. Але маршрутизатор отримує пакет на низькому рівні Ethernet, а потім вирішує, що робити з цим пакетом на IP-шарі, а потім знову відправляє його до наступного пункту на низькому рівні Ethernet. Ось чому маршрутизатор надсилає пакети з власною mac-адресою. На фізичному рівні Ethernet не існує протоколів маршрутизації.
Михайло Хиргій

Власне, IS-IS - це протокол маршрутизації, який працює прямо на шарі Ethernet. Але незалежно від того , системи ніколи не повідомляють машини , досяжні за межами шлюзу , як має MAC - адреса шлюзу.
MikeyB


1. Як я вже говорив, я отримую ті ж маки від клієнтів з різних міст (не з однієї локальної мережі)! 2. Мій настільний клієнт додає запит на mac адаптера комп'ютера, на якому він працює, а потім надсилає його на сервер за допомогою веб-сервісу SOAP. Отже, це не може бути mac маршрутизатора.
Майк Сіомкін
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.