Якщо мій комп'ютер має IP-адресу, навіщо йому потрібна MAC-адреса?
Якщо мій комп'ютер має IP-адресу, навіщо йому потрібна MAC-адреса?
Відповіді:
не вдаючись до моделі OSI, шару TCP тощо:
Ще в минулому були створені мережі: деякі комп’ютери спілкувались між собою, щоб ділитися чимось. Щоб це зробити, вони повинні знати, хто говорив і з ким спілкувався. Отже, замість того, щоб давати ім’я кожному комп’ютеру, ми дали їм посвідчення особи. Цей ідентифікатор називається MAC-адреса, повинен однозначно ідентифікувати кожен комп'ютер.
(гаразд, ідентифікуйте кожну мережеву карту, але тоді ви могли подумати одну MAC-адресу для кожного комп'ютера).
Не було унікальної специфікації того, як комп'ютери розмовлятимуть між собою: з'явилося багато протоколів: TCP / IP, IPX / SPX тощо. Кожен протокол визначав би речі, як вони вважали, що це нормально. Наприклад, IPX / SPX звертається до кожного комп'ютера, використовуючи MAC-адресу та додаткову інформацію.
Але протокол TCP / IP був розроблений дещо інакше: вони вирішили, що мати віртуальну адресу, що складається з 4 байтів (0,0.0,0 до 255,255,255,255), є достатньою, а керувати ще простіше: не має значення, чи всі ваші мережеві карти мають аналогічну MAC-адресу чи ні, ми згрупуємо наш комп'ютер так, що вся TCP / IP-адреса, яка почалася з 10.0.xx, входить до інженерної групи, а ті, що мають 10.1.xx, - принтери та. ..
Отже, якщо TCP / IP-адресу потрібно з'єднати з іншою, просто використовується TCP / IP-адреса. Але мережеві пристрої повинні знати, на яку мережеву карту йде це повідомлення, тому вони якось перекладають TCP / IP-адресу на MAC-адресу.
Чому б просто не усунути MAC і замість цього використовувати просто TCP / IP?
деякі причини:
MAC-адреси та IP-адреси працюють на різних рівнях набору Інтернет-протоколів . MAC-адреси використовуються для ідентифікації машин всередині однієї широкомовної мережі на рівні 2, тоді як IP-адреси використовуються на рівні 3 для ідентифікації машин у різних мережах.
Навіть якщо ваш комп'ютер має IP-адресу, він все ще потребує MAC-адресу, щоб знайти інші машини в тій же мережі (особливо маршрутизатор / шлюз до решти мережі / Інтернету), оскільки кожен шар використовує базові шари. На згаданій раніше сторінці ви можете знайти кілька приємних діаграм, що детально пояснюють набір протоколів.
Коли ви зрозумієте, що зв’язок IP-IP - це насправді лише серія зв'язку MAC-MAC, що відбувається при кожному скакуванні маршрутизатора, тоді ви побачите, чому обоє необхідні.
IP-заголовок пакета, що залишає вашу робочу станцію, призначену для IP-адреси в іншій підмережі, підтримуватиме вихідний IP-адресу та IP-адресу призначення, на даний момент забувши про NAT. [Пізніше я обговорюю те, що відбувається, коли пункт призначення знаходиться в одній підмережі.] Заголовок Ethernet містить ваш вихідний MAC та MAC призначення вашого шлюзу за замовчуванням. Ви не знаєте про MAC кінцевого призначення з вашої точки зору. Цей перший маршрутизатор перепише джерело MAC до себе та MAC призначення до наступного скаку маршрутизатора тощо, поки пакет не надійде до останнього маршрутизатора, який безпосередньо підключений до підмережі призначення.
Щоб спробувати просту ілюстрацію, розгляньте заголовки L2 / L3, як пакет переміщується від вихідного IP (sIP) до IP-адреса призначення (dIP), а вихідні та призначення MAC переписуються по шляху - fs = first-source та ld = останнє призначення, і r1-r3 - маршрутизатори:
fsMAC-r1MAC / sIP-dIP
r1MAC-r2MAC / sIP-dIP
r2MAC-r3MAC / sIP-dIP
r3MAC-ldMAC / sIP-dIP
Будь-які включені комутатори L2 не змінюватимуть MAC-адреси.
Тепер для зв'язку з іншим IP у вашій підмережі потрібне пряме спілкування MAC, але для отримання цього MAC-додатку потрібен протокол ARP, який використовує трансляцію в підмережі. До речі, саме так ваша робоча станція отримує MAC-адресу вашого шлюзу за замовчуванням, який повинен існувати у вашій самій підмережі.
MAC
це те, що отримує повідомлення від одного переходу до іншого, тоді як IP відстежує вихідне джерело та призначення. Це здається аналогічним поштовому відділенню, де я звертаюсь зі своїм листом до бабусі у Фенікс, але поштальон, який дістає його з поштової скриньки, дбає лише про те, щоб доставити його до поштового відділення, а поштове відділення дбає лише про те, щоб довести його до сортування центр тощо ...
Фізично нічого не заважає вам створити мережу, яка має лише IP-адреси для L2 та L3. Тоді "комутатор Ethernet" дізнається SIP-адресу вхідних пакетів і потоку або переправиться до DIP-адреси.
Однак ця мережа завжди підтримуватиме IP, коли наступне покоління IPvX прийде, воно не буде працювати, оскільки "комутатор Ethernet" не може підтримувати цей протокол. Ви також не могли запускати різні інші протоколи, наприклад IPX та AppleTalk, або якийсь новий протокол, який ви розробляєте та тестуєте у своєму будинку.
Шари абстракції збільшують швидкість розвитку та заохочують інновації, оскільки вам не потрібно перебудовувати весь будинок, щоб змінити вікно.
Тепер ви могли запустити такі ж комутатори Ethernet і перемістили вашу мережу між IPX та IPv4 до IPv6, не торкаючись вашої локальної мережі.
IP-адреса та MAC-адреса виконують різні (але важливі) цілі:
MAC-адреса отримує кадр від одного NIC до іншого. IP-адреса отримує пакет від одного комп’ютера до сервера
Отже, враховуючи наступне:
Source Computer <---> RouterA <---> RouterB <---> Destination Server
IP-адреса спрямовує пакет від "Джерела" до "Призначення". Але те, що отримує пакет від вихідного комп’ютера до RouterA, а потім від RouterA до RouterB, а потім від RouterB до пункту призначення, є MAC-адресами.
Ви можете побачити відносини на цій ілюстрації:
Протокол IP забезпечує основу для підтримки поняття підмереж та маршрутизації . Це означає, що IP не передбачає, що ваш пункт призначення знаходиться в одній мережі - якщо його немає, ваш трафік потрібно переадресовувати через посередницький пристрій, наприклад маршрутизатор. IP має поля TTL / Hop Limit та такі, що підтримують це.
Ethernet передбачає, що MAC призначення доступний безпосередньо, коли дані надходять із його інтерфейсу. Спочатку Ethernet був розроблений, коли найпоширенішим способом підключення комп'ютерів до мережі був через фізичну топологію шини. Незважаючи на те, що зараз майже весь провідний трафік Ethernet переключений, логічно він все ще працює як топологія шини. Отже, основне припущення Ethernet полягає в тому, що вузол з MAC призначення фізично знаходиться в одній мережі. Такого припущення щодо IP немає.
Я думаю, ви могли б "зламати" Ethernet для того, щоб робити підмережі та маршрутизацію, але ви можете також спроектувати протокол, який не покладається на деталі та припущення Ethernet низького рівня, і саме тому у нас є IP.
Щоб бути максимально простим:
Mac Address є фізичний або віртуальний адресу вашої мережевої карти або мережевого інтерфейсу. З комп'ютера, що відповідає мережі, це фізична адреса NIC-картки цього комп'ютера. Він використовується для передачі інформації на цей комп’ютер на рівні 2 на основі моделі OSI.
IP - адреса потрібна на рівні 3. Ви вимагаєте , щоб взаємодіяти з комп'ютерами в різних подсетях і devices.The IP Address перевіряє «де» пристрій знаходиться в мережі.
У IP - адреса і MAC - адреса використовуються в тандемі. Протокол роздільної здатності адреси використовується для з'єднання обох разом шляхом вирішення IP-адрес до Mac-адрес у межах рівня зв'язку в одній мережі.
Ви можете також перевірити тут для більш глибокого пояснення.
MAC-адреса представляє апаратне обладнання, яке вона збирає, це постійні та різні системи в нашій мережі, виготовлені різними постачальниками, мають дуже різний діапазон адресів mac, так що їх важко організувати як мережу. мережею, яка є одночасною адресою. Так само ми не можемо надсилати своїх адресів mac до зовнішніх мереж
Для початку це дуже хороше питання, яке стосується основних мережевих основ. Суть у вашому питанні полягає в тому, що нам дійсно не потрібна MAC-адреса для того, щоб досягти зв’язку. Теоретично мережа може бути побудована, реалізуючи самостійно IP-адреси! Однак деякі практичні труднощі можуть виникнути через використання такої схеми. Якщо ви розраховуєте вручну призначити IP-адресу кожному мережевому пристрою, то ви можете уникнути основних підводних каменів. Однак, якщо вам потрібно автоматично призначити IP-адреси, як, коли занадто багато мережевих вузлів для управління вручну, тоді немає можливості переконатися, що кожному вузлу присвоєно саме одну IP-адресу або заздалегідь задану їх кількість, тому що ви не може розпізнати одне від іншого, якщо тільки суб'єкт розповсюдження адреси не може однозначно та однозначно ідентифікувати запитуючий пристрій, наприклад за його MAC-адресою, яка вважається унікальною для будь-якого пристрою в локальній мережі. Такий непізнавальний пристрій може неодноразово просити додаткові IP-адреси та, врешті-решт, пошкодити життєздатність мережі. Назад до теми, все, що вам потрібно для створення мережі лише для IP-адрес, - це дозволити шару передачі даних адаптера мережевого інтерфейсу пройти через будь-який кадр даних, який він отримує, безпосередньо до мережевого шару, незалежно від будь-якого типу MAC, порівнянного типу, де він може фільтрувати відповідно до його цільової IP-адреси, а не фільтрувати на рівні даних. Для ілюстрації концепції, припустимо, що мережа створена за допомогою з'єднання портів UART RS-232: пристрої UART не мають MAC-адреси або будь-якого іншого унікального ідентифікатора, але в цьому випадку ви можете побудувати локальну мережу за допомогою UART та IP-адреси поодинці, забезпечуючи встановлення належних драйверів UART. Сподіваюсь, цей уривок дав вам деяку думку про цю тему.