MAC-адрес та його структура
Управління Доступом до Носія (англ. MAC, Media Access Control Address) - це унікальний ідентифікатор канального рівня моделі ОСІ, який призначається мережевим інтерфейсам для комунікації в межах канального мережевого сегмента.
Структура MAC адреси
Організаційно Унікальний Ідентифікатор (англ. OUI, Organizationally Unique Identifier) - це перші 24 біти (3 байти), які визначають виробника пристрою. Ці біти призначаються Інститутом інженерів з електротехніки та електроніки (IEEE) і є унікальними для кожного виробника.
Призначення виробника (англ.Vendor Assignment) - це останні 24 біти (3 байти), які виробник використовує для призначення унікальних адрес своїм пристроям. Це дозволяє виробнику генерувати унікальні MAC-адреси для кожного мережевого інтерфейсу, який вони виробляють.
Для того, щоб MAC-адреса була унікальною, IEEE призначає кожному постачальнику код для використання як перші 3 байти MAC адреси. Це називається організаційно унікальним ідентифікатором (OUI). В постачальника може бути декілька OUI залежно від потреб. Разом з OUI постачальник призначає унікальне значення в молодших 3 байтах призначення виробника(Vendor Assignment) для кожної виробленої ним карти Ethernet, таким чином забезпечуючи глобальну унікальність MAC-адрес. Зазвичай Vendor Assignment формується на основі виробничого обліку, туди може вписується серія та партія виробленого пристрою.
Індивідуальні/Групові та Універсальні/Локальні адресні позначення в першому октеті MAC-адреси
I/G Індивідуальні/Групові адреси (Individual/Group Address):
Індивідуальна адреса (англ. Individual Address):
Біт під номером 0 рівний 0
Призначення: Використовується для унікальної ідентифікації одного мережевого інтерфейсу. Іншими словами, адреса належить одному конкретному пристрою.
Групова адреса (англ. Group Address):
Біт під номером 0 рівний 1
Призначення: Використовується для ідентифікації групи пристроїв. Це можуть бути multicast або broadcast адреси.
U/L Універсальні/Локальні адреси (англ. Universal/Locally Address):
Універсальні або Глобально Унікальні Адреси (англ. Universal or Globally Unique Addresses) - призначаються виробником і є унікальними у всьому світі.
Біт під номером 1 рівний 0
Призначення: Використовуються для ідентифікації пристрою в глобальному масштабі.
Локально Керовані Адреси (англ. LAA, Locally Administered Address) - можуть бути змінені адміністратором мережі.
Біт під номером 1 рівний 1
Призначення: Використовуються для вирішення конфліктів або для тестування та спеціальних налаштувань.
I/G біт визначає, чи адресується повідомлення одному пристрою (індивідуальна адреса) або групі пристроїв (групова адреса).
U/L біт визначає, чи є MAC-адреса унікальною глобальною адресою, призначеною виробником (універсальна), або призначена/модифікована локально адміністратором мережі (локально керована).
U/L біт | I/G біт | Значення |
---|---|---|
0 | 0 | Універсальна індивідуальна адреса |
0 | 1 | Універсальна групова адреса |
1 | 0 | Локально керована індивідуальна адреса |
1 | 1 | Локально керована групова адреса |
Приклад: Якщо перший байт MAC-адреси має значення 03, то у двійковому форматі це 00000011, де два крайніх правих біти – 11, що визначають тип адреси як Локально керована групова адреса
Широкомовна адреса
Широкомовна адреса (англ. broadcast address) - використовується для надсилання пакетів усім пристроям у локальній мережі канального рівня.
Операції з широкомовними пакетами
Відправлення пакета — коли пристрій у мережі хоче відправити пакет усім іншим пристроям, він використовує широкомовну адресу як адресу призначення.
Отримання пакета — усі пристрої в тій самій локальній мережі (в межах одного сегмента Ethernet) отримують цей пакет.
Обробка пакета — кожен пристрій перевіряє MAC-адресу призначення пакета. Якщо адреса призначення широкомовна адреса, пристрій приймає та обробляє цей пакет.
Поширення широкомовних повідомлень
Локальна мережа — пакети з широкомовною MAC-адресою поширюються лише в межах локальної мережі канального рівня, оскільки маршрутизатори не передають такі пакети між мережами. Це обмежує область дії широкомовних повідомлень.
Комутатори (switches) — Комутатори передають пакети з широкомовною MAC-адресою на всі порти, крім того, з якого пакет був отриманий. Це забезпечує доставляння пакета усім пристроям у мережі.
Обробка широкомовних MAC-адрес на пристроях
Широкомовна MAC-адреса не "реєструється" на пристроях у прямому сенсі. Методи обробки:
Функціональність: Пристрої запрограмовані на розпізнавання широкомовної MAC-адреси та на обробку пакетів, адресованих на цю адресу.
Фільтрація: Мережеві інтерфейси налаштовані так, щоб автоматично фільтрувати та приймати пакети з цією адресою нарівні з пакетами, адресованими безпосередньо пристрою.
Приклади використання широкомовних пакетів
Протокол Визначення Адрес (англ. ARP, Address Resolution Protocol): Протокол, що використовується для визначення MAC-адреси пристрою за його IP-адресою. ARP-запити відправляються з використанням широкомовної MAC-адреси, щоб усі пристрої в мережі могли відповісти, якщо запит стосується їх.
Протокол Динамічної Конфігурації Вузла (англ. DHCP, Dynamic Host Configuration Protocol): При початковому налаштуванні мережевого з’єднання клієнт відправляє широкомовні запити для отримання IP-адреси від DHCP-сервера.
Широкомовна MAC-адреса є важливою частиною мережевої взаємодії в локальних мережах, забезпечуючи спосіб доставлення пакетів усім пристроям без необхідності знати їх конкретні MAC-адреси.
Групова адреса
Групова адреса (англ. multicast address) — це спеціальний тип MAC-адреси, який використовується для передачі даних одразу кільком пристроям в мережі. Групові адреси призначені для групової адресації, де один пакет даних може бути прийнятий усіма пристроями, які належать до певної групи.
Формат групової адреси
MAC multicast адреса завжди починається з 01:00:5E, в OUI зареєстровано 01:00:5E як групову адресу, тому всі адреси які починаються з 01:00:5E є груповими. Перший байт MAC multicast адреси завжди має молодший біт встановлений в 1.
Приклади використання групових пакетів
Уявімо, що у вас є локальна мережа з декількома комп'ютерами, принтерами та іншими пристроями. Деякі з цих пристроїв є частиною групи, яка спільно використовує певний сервіс, наприклад, отримання потоку відео з одного сервера.
Коли сервер хоче відправити відеопотік всім пристроям у групі, він може використовувати MAC multicast адресу замість того, щоб відправляти копію відео кожному пристрою окремо. Це зменшує навантаження на мережу.
MAC multicast адреси значно спрощують передачу даних до групи пристроїв, покращуючи ефективність мережі та зменшуючи навантаження на мережеву інфраструктуру.