Чи можна визначити мою MAC-адресу веб-сайтом?


16

Чи можна визначити мою MAC-адресу веб-сайтом, коли я отримую доступ до сайту? Чи має значення це, якщо сайт вимагає від мене завантаження файлів?


Ваше запитання розпливчасте. Будь ласка, вкажіть та надайте додаткові деталі.
Індіго

1
Через мережевий трафік: НІ. Через код у браузері: можливо.
Рікі Бім

Відповіді:


21

Загалом, не можна, щоб веб-сайт, на який ви отримуєте доступ, дізнався вашу MAC-адресу. Однак існують спеціальні випадки, коли сервер може дізнатися вашу MAC-адресу:

  1. IPv6 підтримує призначення адрес таким чином, щоб вбудовувати MAC-адресу в IP-адресу. З міркувань конфіденційності такий спосіб призначення IPv6 адрес не дуже поширений.
  2. Якщо ви безпосередньо приєднані до того ж сегменту мережі, що й веб-сервер, він зможе побачити вашу MAC-адресу. (Але це, мабуть, не той сценарій, який ви мали на увазі.)
  3. Я бачив, як деякі провайдери вставляють MAC-адресу обладнання клієнта у зворотні записи DNS (за форматом x1-6-дотримувалася MAC-адреса).
  4. У браузері можуть бути можливості сценарію, які дозволять скриптам дізнаватися MAC-адресу клієнтської машини та надсилати її на сервер. Я не знаю, чи може JavaScript отримати MAC-адресу клієнтської машини, але я знаю, що він може знайти локальну IP- адресу.

2
Для №1 див. RFC 4941
Боб

Я не вірю, що JavaScript може отримати MAC-адресу пристрою.
ліс

16

Ні, віддалений сайт дізнається лише, яку публічну IP-адресу ви використовуєте, а не MAC-адресу вашого пристрою, якщо ви не використовуєте IPv6 з адресою EUI-64 . У такому випадку ваша MAC-адреса може бути отримана з адреси IPv6.


3

Ви повинні вивчити модель OSI . MAC-адреси - це 2-й рівень у кадрі, але кадри позбавлені маршрутизатора. IP-адреси - це 3-й рівень у пакеті. Лише пакети будуть перетинати маршрутизатор.

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


3
Все вірно, але я не думаю, що ніхто не повинен вивчати модель OSI. Це не стосується TCP / IP, яка має власну, раніше історичну модель, і також не стосується нічого іншого в реальному світі. Він навіть не застосовувався належним чином до набору протоколів OSI.
користувач207421

2
Модель OSI - це хороша допомога зрозуміти, як взагалі працюють. Протягом транспортного шару сучасні мережеві стеки на диво добре працюють із моделлю OSI. Починаючи з шару 5, програмісти ОС та додатків не відповідають моделі OSI, але ці шари тут все-таки поза темою.
Рон Моупін

3
@EJP, справжній момент полягає в тому, що професіонал мережі для професійних мереж (про що тут йдеться, через OSI-рівень 4, у довідковому центрі ) повинен бути знайомий з моделлю OSI і повинен розуміти, що MAC-адреси - рівень 2 адреси, IP-адреси - це адреси 3 рівня, а порти TCP / UDP - це адреси 4-го рівня, і як дейтаграми протікають через різні шари мережевого стеку та їх інкапсульовані.
Рон Моупін

1
Під час налаштування мережевого обладнання PPP є протоколом рівня 2. Він має міст (NCP) до протоколу (рівнів) 3, який він підтримує. Під час налаштування мережевого обладнання (наприклад, Cisco) він налаштовується як протокол рівня 2. Для кінцевих пристроїв це може бути різним, але налаштування цих параметрів тут поза темою.
Рон Моупін

4
@kasperd: Справа в тому, щоб навчити поняття абстракційних шарів. Насправді не має значення, як ви їх називаєте, або яку конкретну модель ви вивчаєте.
Гонки легкості з Монікою
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.