Jak działa darmowy ARP?


36

Czy darmowy ARP działa jak normalne żądanie ARP?

Dlaczego w HSRP stosuje się darmowy ARP?


3
Czytałeś gdzieś o tym? Jeśli nie, powinieneś. Jeśli tak, a coś jest niejasne, prosimy o bardziej szczegółowe określenie pytania.
Gerben

@Gerben Jestem pewien, jak działa arp, ale ta koncepcja jest moją mylącą częścią, szczególnie w HSRP, w jaki sposób działa ten ARP ..
Trojan

Jeden mówi, że Grauitous ARP jest żądaniem, podczas gdy drugi pokazuje schemat Wireshark, który mówi, że jest odpowiedzią. Czy to jakieś przypadkowe zachowanie? Na moim komputerze wąchany pakiet Gratuitous ARP został również zanotowany jako żądanie (Opcode: 1).
VITOR FERNANDES DE BARROS

Odpowiedzi:


42

Bezpłatne ARP jest rodzajem „wcześniejszego powiadomienia”, aktualizuje pamięć podręczną ARP innych systemów, zanim o to poproszą (brak żądania ARP) lub aktualizuje nieaktualne informacje.

Mówiąc o darmowym ARP, pakiety są w rzeczywistości specjalnymi pakietami żądań ARP, a nie pakietami odpowiedzi ARP, jak można się spodziewać. Niektóre przyczyny tego wyjaśniono w RFC 5227 .

Bezpłatny pakiet ARP ma następujące cechy:

  • Zarówno źródłowy, jak i docelowy adres IP w pakiecie to adres IP hosta wydającego darmowy ARP
  • Docelowy adres MAC to rozgłaszany adres MAC ( ff:ff:ff:ff:ff:ff)
    • Oznacza to, że pakiet zostanie zalany do wszystkich portów przełącznika
  • Nie oczekuje się odpowiedzi

Darmowy ARP jest używany z kilku powodów:

  • Zaktualizuj tabele ARP po zmianie adresu MAC w celu zmiany adresu IP (pracy awaryjnej, nowej karty sieciowej itp.)
  • Zaktualizuj tabele adresów MAC na urządzeniach L2 (przełącznikach), aby adres MAC znajdował się teraz na innym porcie
  • Wysyłaj darmowy ARP, gdy interfejs się podniesie, aby wcześniej powiadomić innych hostów o nowych powiązaniach MAC / IP, aby nie musieli używać żądań ARP, aby się dowiedzieć
  • Po otrzymaniu odpowiedzi na bezpłatne żądanie ARP wiadomo, że w sieci występuje konflikt adresów IP

Jeśli chodzi o drugą część pytania, HSRP , VRRP itp. Używają bezpłatnego ARP do aktualizacji tablic adresów MAC na urządzeniach L2 (przełącznikach). Istnieje również opcja użycia wypalonego adresu MAC dla HSRP zamiast „wirtualnego”. W takim przypadku darmowy ARP zaktualizowałby również tabele ARP na urządzeniach / hostach L3.


Jak wyświetlić bezpłatne pakiety ARP?
Trojan

Sniffer sieciowy, taki jak Wireshark
Sebastian Wiesinger

czy są jakieś przechwyty wireshark dla nieodpłatnego ARP ..
Trojan

1
Przykładowy pakiet można zobaczyć na stronie głównej Wireshark
Sebastian Wiesinger

1
Ponieważ otrzymujesz odpowiedź na żądanie ARP, które zawiera własny adres IP. Więc ktoś inny ma ten adres IP i odpowiednio odpowiada.
Sebastian Wiesinger

14

Nieodpłatne ARP jest ARP Response, który nie został poproszony przez żądanie ARP. Nieodpłatny ARP jest wysyłany jako ramka rozgłoszeniowa, jako sposób, aby węzeł ogłosił lub zaktualizował swoje mapowanie IP na MAC do całej sieci.

Pakiet ARP zawiera pole „ Opcode ”, które wskazuje, czy pakiet jest żądaniem czy odpowiedzią. W nieodpłatnym ARP pole Opcode jest ustawione na 2, co oznacza odpowiedź:

wprowadź opis zdjęcia tutaj

Istnieje wiele przypadków użycia nieodpłatnego ARP , wszystkie zazwyczaj wiążą się z pewnego rodzaju potrzebą aktualizacji mapowania ARP lub tablic adresów MAC Switchport.

HSRP (i wiele innych protokołów redundancji) często używają bezpłatnego ARP. Ta animacja pokaże, jak:

wprowadź opis zdjęcia tutaj

Uwaga: Router A i Router B współużytkują adres IP 10.0.0.1i adres MAC 0053.ffff.1111. Hosty są skonfigurowane z domyślną bramą 10.0.0.1i każdy z nich ma mapowanie ARP wskazujące, że 10.0.0.1adresy IP są mapowane na 0053.ffff.1111adres MAC. Ponieważ zarówno adres MAC, jak i adres IP są współużytkowane przez dwa routery, mapowanie ARP nigdy nie będzie musiało być aktualizowane.

Jednakże , gdy RouterA jest aktywnym routerem HSRP, adres MAC jest obsługiwany przez urządzenie podłączone do switchport 1. Jeśli RouterA zawiedzie, to RouterB wysyła nieodpłatny ARP, aby zaktualizować tablicę adresów MAC przełącznika, że ​​adres MAC 0053.ffff.1111jest teraz obsługiwany przez urządzenie podłączone do switchportport 2.

Proces występuje ponownie, jeśli RouterB ulegnie awarii, a Router A musi przejąć obsługę adresu IP / MAC 10.0.0.1/0053.ffff.1111

Przechwytywanie pakietów przejść HSRP i pakietów GARP w powyższej animacji można pobrać i zbadać w Wireshark .


Chociaż nie jest to coś, o co dokładnie pytałeś, biorąc pod uwagę komentarze w tym pytaniu, pomyślałem, że rozsądnie jest wspomnieć o detekcji duplikatów adresów:

Często zdarza się mylony punkt dotyczący wykrywania duplikatów adresów i nieodpłatnego ARP. Gdy komputer próbuje sprawdzić, czy inny host w sieci używa określonego adresu IP , nie wysyła nieodpłatnego ARP .

Powodem tego jest z definicji nieodpłatny ARP przeznaczony do aktualizacji mapowań ARP innych urządzeń w sieci. Jeśli adres IP nie jest unikalny, nie chcielibyśmy, aby „test wyjątkowości” spowodował aktualizację niepoprawnego wpisu ARP.

W rzeczywistości w wykrywaniu duplikatów adresów wykorzystywany jest określony zestaw komunikatów ARP: sonda ARP i ogłoszenie ARP .

Zasadnicza różnica między tymi dwoma pakietami a rzeczywistym nieodpłatnym ARP polega na tym, że sonda ARP nie ma pełnego mapowania IP / MAC, dlatego nie jest możliwe, aby sonda ARP przypadkowo zaktualizowała pamięć podręczną ARP.

Ogólny proces polega na tym, że sonda ARP jest wysyłana kilka razy, co skłoniłoby właściciela danego adresu IP do wysłania nieodpłatnego ARP, jeśli adres IP jest już w użyciu. Jeśli nie otrzymano żadnej odpowiedzi, nadawca wysyła komunikat ARP, aby oficjalnie odebrać adres IP w sieci.

Ogłoszenie ARP jest jeszcze bardziej podobne do bezpłatnego ARP, ale technicznie nie jest takie samo, ponieważ ogłoszenie ARP ma kod operacji1 , wskazujący żądanie (gdzie jako darmowy ARP będzie miał kod operacji2 ).


Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.