Як працює безкоштовний ARP?


36

Чи працює безкоштовний ARP, як звичайний запит ARP?

Чому безоплатно ARP використовується для HSRP?


3
Ви десь читали про це десь? Якщо ви цього не зробили, ви повинні. Якщо ви зробили щось, і щось не зрозуміло, будь ласка, будьте більш конкретні у своєму питанні.
Гербен

@Gerben Я зрозумів, як працює arp, але ця концепція є моєю заплутаною частиною, особливо в HSRP, як працює ця ARP ..
Троян

Один каже, що Grauitous ARP - це запит, а інший показує схему Wireshark, кажучи, що це відповідь. Це якась випадкова поведінка? На моєму комп’ютері нюханий пакет безкоштовних ARP також був відзначений як Запит (Opcode: 1).
VITOR FERNANDES DE BARROS

Відповіді:


42

Безкоштовний ARP - це свого роду "попереднє повідомлення", він оновлює кеш-пам'ять ARP інших систем, перш ніж вони просять про це (без запиту ARP) або для оновлення застарілої інформації.

Коли ми говоримо про безоплатний ARP, пакети насправді є спеціальними пакетами запитів ARP, а не пакетами відповідей ARP, як можна було б очікувати. Деякі причини цього пояснюються в RFC 5227 .

Безкоштовний пакет ARP має такі характеристики:

  • І вихідний, і цільовий IP в пакеті - це IP-хост, який видає безоплатний ARP
  • MAC адреса призначення - MAC-адреса широкомовної передачі ( ff:ff:ff:ff:ff:ff)
    • Це означає, що пакет буде перелито на всі порти комутатора
  • Відповіді не очікується

Безкоштовний ARP використовується з деяких причин:

  • Оновлення таблиць ARP після зміни MAC-адреси для зміни IP-адреси (відмова, новий NIC тощо)
  • Оновіть таблиці MAC-адреси на пристроях L2 (комутатори), що MAC-адреса зараз знаходиться на іншому порту
  • Надсилайте безплатний ARP, коли інтерфейс піднімається, щоб заздалегідь повідомляти інших хостів про нові прив’язки MAC / IP, щоб їм не довелося використовувати запити ARP, щоб дізнатися
  • Коли ви отримаєте відповідь на безоплатний запит ARP, ви знаєте, що у вашій мережі є конфлікт IP-адреси

Що стосується другої частини вашого запитання, HSRP , VRRP тощо використовуйте безоплатно ARP для оновлення таблиць MAC-адрес на пристроях L2 (комутаторів). Також є можливість використовувати записану MAC-адресу для HSRP замість "віртуальної". У такому випадку безоплатно ARP також оновлює таблиці ARP на пристроях / хостах L3.


Як переглянути безкоштовні пакети ARP?
Троян

Використовуйте мережевий сніфер, як Wireshark
Себастьян Візінгер

чи є якась дротяна акушка, яка захоплює безоплатний ARP ..
Троян

1
Ви можете побачити приклад пакету на домашній сторінці Wireshark
Себастьян Візінгер

1
Тому що ви отримуєте відповідь на запит ARP, у якому є власний IP-адресу. Тож хтось інший має цю IP-адресу і відповідає відповідно.
Себастьян Візінгер

14

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

Пакет ARP містить поле " Код ", яке вказує, чи є пакет запитом чи відповіддю. У безплатній ARP встановлено поле Opcode 2, яке вказує на відповідь:

введіть тут опис зображення

Існує багато випадків використання для безплатних ARP , і всі, як правило, пов'язані з якоюсь потребою оновити таблиці адрес ARP Mapping або Switchport MAC.

HSRP (та багато інших протоколів надмірності) часто користуються Gratuitous ARP. Ця анімація проілюструє, як:

введіть тут опис зображення

Помітьте, що RouterA та RouterB діляться IP-адресою 10.0.0.1та MAC-адресою 0053.ffff.1111. Хости налаштовані за допомогою шлюзу за замовчуванням 10.0.0.1, і кожен з них має відображення ARP, що вказує 10.0.0.1IP-адресу на 0053.ffff.1111MAC-адресу. Оскільки MAC-адреса та IP-адреса поділяються між двома маршрутизаторами, ця карта ARP ніколи не доведеться оновлювати.

Однак , коли RouterA є активним маршрутизатором HSRP, MAC-адреса подається пристроєм, підключеним до комутатора 1. Якщо RouterA виходить з ладу, RouterB надсилає безоплатний ARP для оновлення таблиці MAC-комутатора комутатора, яку 0053.ffff.1111тепер обслуговує MAC-адреса пристрій, підключений до комутатора 2.

Процес повторюється, якщо RouterB не працює, і RouterA повинен перейти на обслуговування IP / MAC 10.0.0.1/0053.ffff.1111

Захоплення пакетів HSRP-переходів та GARP-пакетів у анімації вище можна завантажити та вивчити у Wireshark .


Хоча це не зовсім те, про що ви питали, враховуючи коментарі в цьому запитанні, я вважав, що розумно згадати щось про виявлення дублікатів адреси:

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

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

Насправді специфічний набір повідомлень ARP використовується для виявлення дублікатів адреси: зонд ARP та оголошення ARP .

Найважливішою відмінністю цих двох пакетів від фактичного безоплатного ARP є те, що зонд ARP не має повного відображення IP / MAC, тому неможливо, щоб зонд ARP випадково помилково оновив кеш ARP.

Загальний процес полягає в тому, що зонд ARP декілька разів надсилається, що спонукає власника відповідного IP-адреси надіслати безплатний ARP, якщо IP вже використовується. Якщо відповіді не отримано, то відправник надсилає ARP-повідомлення, щоб офіційно вимагати IP-адресу в мережі.

Оголошення ARP ще більше нагадує безкоштовний ARP, але технічно це (також) технічно не є тим, що в Анонсі ARP є опкод1 , що вказує на запит (де в якості безоплатного ARP буде встановлений опкод2 ).


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