/ / Для чого саме використовується MAC-адреса?

Для чого саме використовується MAC-адреса?

Кожен апаратний апарат у вашій локальній мережі має MAC-адресу на додаток до IP-адреси, призначеної йому локальним маршрутизатором або сервером. Для чого саме призначена ця MAC-адреса?

Сьогоднішня сесія "Питання та відповіді" приходить до нас з люб'язності SuperUser - підрозділу Stack Exchange, групування веб-сайтів Q&A, керованого громадою.

Питання

Читач SuperUser Вішну Вівек цікавиться MAC-адресами та їх функцією:

Я розумію, що IP-адреси є ієрархічними,щоб маршрутизатори по всьому Інтернету знали, в якому напрямку переслати пакет. Для MAC-адрес немає ієрархії, і, отже, переадресація пакетів буде неможливою. Отже, MAC-адреси не використовуються для передачі пакетів.

Я не думаю, що він сидить там без причини. Отже, моє запитання: де саме MAC-адреса входить у дію під час передачі пакетів?

Де справді? Яка специфічна функція MAC-адреси?

Відповідь

Співавтор SuperUser Вернер Хенце пропонує деяке уявлення про функцію MAC-адреси:

Для чого використовуються MAC-адреси?

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

Кожна мережева карта має унікальну MAC-адресу. Пакети, які надсилаються по Ethernet, завжди надходять з MAC-адреси та надсилаються на MAC-адресу. Якщо мережевий адаптер отримує пакет, він порівнює MAC-адресу призначення пакета з власною MAC-адресою адаптера. Якщо адреси збігаються, пакет обробляється, інакше його відкидають.

Існують спеціальні MAC-адреси, одна з них - ff: ff: ff: ff: ff: ff, яка є широкомовною адресою та адресою кожного мережевого адаптера в мережі.

Як IP-адреси та MAC-адреси працюють разом?

IP - це протокол, який використовується на рівні над Ethernet. Іншим протоколом, наприклад, буде IPX.

Коли ваш комп’ютер хоче надіслати пакет комусьIP-адреса x.x.x.x, тоді перша перевірка полягає в тому, чи адреса призначення знаходиться в тій самій IP-мережі, що і сам комп'ютер. Якщо x.x.x.x знаходиться в тій же мережі, то IP-адреса призначення може бути безпосередньо отримана, інакше пакет потрібно відправити на налаштований маршрутизатор.

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

Оскільки Ethernet використовує MAC-адреси, відправникпотрібно отримати MAC-адресу наступного стрибка. Для цього використовується спеціальний протокол ARP (протокол розрішення адрес). Після того, як відправник отримав MAC-адресу наступного стрибка, він записує цю цільову MAC-адресу в пакет і відправляє пакет.

Як працює ARP?

ARP сам по собі є протоколом над Ethernet, як IPабо IPX. Коли пристрій хоче дізнатися MAC-адресу для даної IP-адреси, воно відправляє пакет на MAC-адресу, що транслює, із запитанням "Хто має IP-адресу y.y.y.y?" Усі пристрої отримують цей пакет, але лише той із IP-адресою yyyyyy відповість пакетом "Це я". Запитуючий пристрій отримує відповідь і тепер знає, що вихідна MAC-адреса є правильною MAC-адресою для використання. Звичайно, результат буде кешовано, тому пристрою не потрібно кожного разу визначати MAC-адресу.

Маршрутизація

Я майже забув згадати: немає маршрутизації на основі MAC-адрес. Низький рівень Ethernet та MAC-адреси можуть бути доступні лише до кожного пристрою на те саме мережі (кабельної або бездротової). Якщо у вас є дві мережі з маршрутизатором між ними, ви не можете мати пристрій в мережі A, надішліть пакет на MAC-адресу пристрою в мережі B. Жоден пристрій в мережі A не має MAC-адреси пристрою в мережі B, тому пакет на цю MAC-адресу буде відкинутий усіма пристроями в мережі A (також маршрутизатором).

Маршрутизація здійснюється на рівні IP. Помічено, що маршрутизатор просто робить те, що я описав вище у розділі «Як IP-адреси та MAC-адреси працюють разом?». Маршрутизатор отримуватиме пакети на власну MAC-адресу, але на іншу IP-адресу. Потім він перевірить, чи зможе він безпосередньо досягти цільової IP-адреси. Якщо так, він відправляє пакет цілі. В іншому випадку на самому маршрутизаторі також налаштований висхідний маршрутизатор, який буде відправляти пакет на цей маршрутизатор.

Звичайно, у вас може бути кілька маршрутизаторівналаштовано. У домашньому маршрутизаторі буде налаштовано лише один маршрутизатор вищого рівня, але у магістралі Інтернету великі маршрутизатори мають великі таблиці маршрутизації, тому вони знають найкращі способи для всіх пакетів.

Інші випадки використання MAC-адрес

  1. Мережеві комутатори зберігають список MAC-адрес, які видно на кожному порту, і лише пересилає пакети до портів, які повинні бачити пакет.
  2. Точки бездротового доступу часто використовують MAC-адреси для контролю доступу. Вони дозволяють доступ лише для відомих пристроїв (MAC-адреса унікальна і ідентифікує пристрої) з правильною парольною фразою.
  3. DHCP-сервери використовують MAC-адресу для ідентифікації пристроїв та надання деяким пристроям фіксованих IP-адрес.

Щось додати до пояснення? Звучить у коментарях. Хочете прочитати більше відповідей від інших користувачів, які користуються технологією Stack Exchange? Ознайомтесь із повною темою дискусії тут.