ARP (Address Resolution Protocol) konwertuje adres IP (Internet Protocol) na odpowiadający mu fizyczny adres sieciowy. Sieci IP, w tym te działające w sieci Ethernet i Wi-Fi, wymagają do działania protokołu ARP.
Historia i cel ARP
ARP został opracowany we wczesnych latach 80. jako protokół translacji adresów ogólnego przeznaczenia dla sieci IP. Oprócz Ethernetu i Wi-Fi, ARP został zaimplementowany dla ATM, Token Ring i innych typów sieci fizycznych.
ARP umożliwia sieci zarządzanie połączeniami niezależnie od konkretnego urządzenia fizycznego podłączonego do każdego z nich. Dzięki temu protokół internetowy działa wydajniej niż niezależne zarządzanie różnymi urządzeniami sprzętowymi i sieciami fizycznymi.
Jak działa ARP
ARP działa w warstwie 2 w modelu OSI. Obsługa protokołów jest zaimplementowana w sterownikach urządzeń sieciowych systemów operacyjnych. Internet RFC 826 dokumentuje szczegóły techniczne protokołu, w tym jego format pakietu oraz działanie komunikatów żądań i odpowiedzi
ARP działa w nowoczesnych sieciach Ethernet i Wi-Fi w następujący sposób:
- Karty sieciowe są produkowane z adresem fizycznym wbudowanym w sprzęt zwany adresem Media Access Control (MAC). Producenci zapewniają, że te sześciobajtowe (48-bitowe) adresy są unikalne, ponieważ adres IP opiera się na tych unikalnych identyfikatorach w celu dostarczania wiadomości.
- Zanim jakiekolwiek urządzenie wyśle dane do innego urządzenia docelowego, musi określić adres MAC na podstawie swojego adresu IP. Te mapowania adresów IP na MAC pochodzą z pamięci podręcznej ARP utrzymywanej na każdym urządzeniu.
- Jeśli podany adres IP nie pojawia się w pamięci podręcznej urządzenia, to urządzenie nie może kierować wiadomości do tego celu, dopóki nie uzyska nowego mapowania. Aby to zrobić, urządzenie inicjujące najpierw wysyła komunikat rozgłoszeniowy żądania ARP w lokalnej podsieci. Host z podanym adresem IP wysyła odpowiedź ARP w odpowiedzi na transmisję, umożliwiając urządzeniu inicjującemu aktualizację pamięci podręcznej i dostarczanie wiadomości bezpośrednio do celu.
Inverse ARP i Reverse ARP
Eksperci opracowali inny protokół sieciowy o nazwie RARP (Reverse ARP) w latach 80. jako uzupełnienie ARP. RARP pełnił odwrotną funkcję niż ARP, przekształcając fizyczne adresy sieciowe na adresy IP przypisane tym urządzeniom. Protokół RARP został uznany za przestarzały przez DHCP (protokół dynamicznej konfiguracji hosta) i nie jest już używany.
Oddzielny protokół o nazwie Inverse ARP obsługuje również funkcję odwrotnego mapowania adresu. Inverse ARP nie jest używany w sieciach Ethernet ani Wi-Fi, chociaż czasami można go znaleźć w innych typach.
Bezpłatne ARP
Aby poprawić wydajność ARP, niektóre sieci i urządzenia sieciowe używają metody komunikacji zwanej nieodpłatnym ARP. Urządzenie emituje komunikat żądania ARP do sieci lokalnej, aby powiadomić inne urządzenia o swoim istnieniu.