Як працює комутатор, коли йому відомо про MAC-адресу, але ПК, що відправляє, не знає MAC призначення MAC


12

До комутатора підключено 4 ПК, і цей комутатор знає їх MAC-адреси (усі 4 ПК). Комп'ютер A та Computer D не спілкувались раніше, отже, у них обох не оновлюється таблиця ARP з MAC-адресою один одного.

Комп'ютер A хоче спілкуватися з комп'ютером D, отже, він надсилає ARP-запит на MAC-адресу Computer D. Це ARP було б трансляційним повідомленням (з FF: FF: FF: FF: FF: FF як MAC призначення в пакеті ARP).

Я хотів би зрозуміти, як перемикач буде приймати це, оскільки він уже знає про MAC комп'ютера D, але комп'ютер A це не так. Чи дозволить перемикач Computer D відповісти на запит ARP (трансляція) або відкине цей запит ARP і безпосередньо направить пакет Computer A на комп'ютер D (оскільки комутатору вже відомо про MAC комп'ютера D)?


2
На додаток до відповідей, усі операційні системи, про які я знаю сьогодні, видають безплатний ARP, коли посилання з'являється.
AbraCadaver

@AbraCadaver Це не дуже актуально. Безкоштовний ARP повинен мати лише існуючі записи кешу ARP, а не створювати нові. Це покликане вимушувати застарілі записи, коли IP-адреса рухається або замінюється NIC, а не попередньо завантажувати кеші.
Бармар

@Barmar: Ні. Міст / перемикач бачить кадр, записує джерело MAC та порт. Ось як це працює.
AbraCadaver

@AbraCadaver Що це стосується того, як обробляється безкоштовна ARP?
Бармар

@Barmar: Безкоштовний ARP не обробляється комутатором. Він бачить кадр Ethernet з джерелом MAC, що надходить на певний порт, ось і все ...
AbraCadaver

Відповіді:


24

Запит ARP, звичайно, пройде.

Комутатор не знає про ARP. Він знає лише про Ethernet (тобто MAC-адреси на Ethernet-кадрах), а не протоколи поверх нього. (Деякі комутатори пропонують розширені функції, такі як прослуховування IGMP, але це не актуально.)

Оскільки це широкомовне повідомлення, воно повинно бути доставлене до всіх (підключених) портів. Ось і все, що хвилює перемикач. Він не може знати, що це справді призначено для комп'ютера D.


Ну, Ethernet - це протокол. Однак простий комутатор просто звертає увагу на деякі протоколи (наприклад, Ethernet), а не на інші (наприклад, Internet Protocol версії 4 або протокол управління передачею).
TOOGAM

2
Запит ARP запитує: "Де 192.168.0.1?" Комутатор не має жодного поняття з цього приводу.
Майкл Хемптон

11

ARP-запит - це просто повідомлення, в якому сказано: "Ви там, будь-яка IP ! Яка ваша MAC-адреса?" Навіть незважаючи на те, що ARP займається виявленням адрес 2-го рівня, за своєю суттю це запит рівня 3, оскільки він надсилається на IP-адресу. Перемикачі не працюють на рівні 3.

У прикладі, який ви подали, ви знаєте щось, чого комутатор не робить; що IP-адреса в запиті ARP належить комп'ютеру D. MAC-адреса призначення - це широкомовна передача, і це все, про що комутатор знає або про що піклується. Якщо комутатор бачить MAC широкомовної передачі, то він передаватиме цей пакет просто та просто.

Так, там є комутатори рівня 3, і педанти зазначили, що ARP технічно не є протоколом рівня 3, але для цього прикладу нічого з цього не має значення.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.