Protokół rozpoznawania adresów, powszechnie określany jako ARP, to protokół używany przez protokół internetowy (IP) [RFC826], w szczególności IPv4, do mapowania adresów sieciowych IP na adresy sprzętowe używane przez protokół łącza danych. Stanowi integralną część sieci IP i pozwala na pomyślną transmisję danych w tych sieciach.
Ewolucja i pierwsze wzmianki o protokole rozpoznawania adresów (ARP)
ARP został po raz pierwszy zdefiniowany w RFC 826, artykule z prośbą o komentarz opublikowanym przez Internet Engineering Task Force (IETF) w listopadzie 1982. Seria RFC to zbiór uwag technicznych i organizacyjnych dotyczących Internetu, począwszy od 1969 roku. notatki omawiają różne aspekty sieci komputerowych, w tym protokoły, procedury, programy i koncepcje, a także notatki ze spotkań, opinie, a czasem humor.
Davidowi C. Plummerowi, amerykańskiemu informatykowi, przypisuje się opracowanie protokołu ARP podczas pracy w MIT. Protokół pozostał w dużej mierze niezmieniony od czasu jego pierwszego wprowadzenia, co świadczy o trwałej wartości jego podstawowych zasad projektowania.
Rozszerzanie protokołu rozpoznawania adresów (ARP)
ARP służy do tłumaczenia adresów IP na adresy MAC (Media Access Control). Adresy MAC to unikalne identyfikatory przypisane do interfejsów sieciowych w celu komunikacji w fizycznym segmencie sieci. Gdy urządzenie chce wysłać pakiet do innego urządzenia w tej samej sieci, musi znać adres MAC odbiorcy.
Jeśli urządzenie wysyłające zna adres IP odbiorcy (co jest niezbędne w przypadku każdego rodzaju bezpośredniej komunikacji IP), ale nie zna adresu MAC, wyśle pakiet rozgłoszeniowego żądania ARP. To żądanie zasadniczo zadaje pytanie: „Kto ma ten adres IP i jaki jest Twój adres MAC?” Urządzenie o żądanym adresie IP odeśle pakiet odpowiedzi ARP ze swoim adresem MAC. Gdy nadawca otrzyma tę odpowiedź, może wysłać pakiet do odbiorcy, korzystając z podanego adresu MAC.
Funkcjonujący mechanizm protokołu rozpoznawania adresów (ARP)
ARP działa głównie w czterech etapach:
- Nadawca rozgłasza pakiet żądania ARP do wszystkich urządzeń w tym samym segmencie sieci.
- Urządzenie o pasującym adresie IP odbiera żądanie i odpowiada pakietem odpowiedzi ARP zawierającym jego adres MAC.
- Nadawca odbiera pakiet odpowiedzi ARP i przechowuje powiązanie adresów IP-MAC w swojej pamięci podręcznej ARP do wykorzystania w przyszłości.
- Nadawca może teraz bezpośrednio wysłać dane do odbiorcy, korzystając z jego adresu MAC.
Funkcjonalność protokołu ARP zależy od tego, czy każde urządzenie utrzymuje pamięć podręczną ARP – niewielki fragment pamięci używany do przechowywania ostatnich mapowań adresów IP na MAC w celu ograniczenia konieczności rozgłaszania żądań ARP.
Kluczowe cechy protokołu rozpoznawania adresów (ARP)
-
Mapowanie adresów: Protokół ARP jest używany głównie do mapowania adresów warstwy sieciowej (adresów IP) na adresy warstwy łącza (adresy MAC).
-
Niezależność sieci: ARP został zaprojektowany do obsługi dowolnej warstwy sieciowej i warstwy łącza danych. Protokół nie zależy od żadnej konkretnej topologii sieci ani formatu adresu.
-
Pamięć podręczna: Każde urządzenie utrzymuje pamięć podręczną ARP do przechowywania mapowań adresów IP na MAC, co znacznie poprawia wydajność poprzez zmniejszenie potrzeby rozgłaszania żądań ARP.
-
Żądanie transmisji: Żądania ARP są rozsyłane do wszystkich urządzeń w tym samym segmencie sieci, dzięki czemu urządzenie o pasującym adresie IP może odpowiedzieć.
Rodzaje protokołu rozpoznawania adresów (ARP)
Istnieje kilka typów ARP:
-
ARP: Standardowy protokół ARP używany do mapowania adresów IP na MAC.
-
Proxy ARP: Technika, dzięki której urządzenie w danej sieci odpowiada na zapytania ARP dotyczące adresu sieciowego, który nie znajduje się w tej sieci.
-
Bezpłatny ARP: Jest to typ protokołu ARP, który nie jest używany do tłumaczenia adresów IP na adresy MAC, ale zwykle służy do wykrywania duplikatów adresów.
-
Odwrotny ARP (RARP): Protokół, za pomocą którego maszyna fizyczna w sieci lokalnej może zażądać poznania swojego adresu IP z tablicy ARP lub pamięci podręcznej serwera bramy.
Typ ARP | Opis |
---|---|
ARP | Standardowe mapowanie adresów IP na MAC |
Serwer proxy ARP | Odpowiada na zapytania ARP dotyczące adresu sieciowego, który nie znajduje się w sieci |
Bezpłatna ARP | Służy do wykrywania duplikatów adresów |
RARP | Żądanie poznania adresu IP z tablicy ARP serwera bramy |
Protokół rozpoznawania adresów (ARP) w praktyce: zastosowania, problemy i rozwiązania
ARP jest szeroko stosowany w sieciach Ethernet, gdzie konieczna jest konwersja adresów IP na adresy MAC w sieci Ethernet. Jednak jego rozgłoszeniowy charakter może być źródłem luk w zabezpieczeniach. Na przykład ataki polegające na fałszowaniu protokołu ARP mogą umożliwić złośliwym użytkownikom powiązanie ich adresu MAC z adresem IP prawdziwego użytkownika.
Istnieje kilka metod zapobiegania lub łagodzenia ataków typu ARP spoofing, w tym:
-
Statyczny ARP: Administratorzy mogą tworzyć statyczne wpisy w pamięci podręcznej ARP, których nie mogą zmieniać przychodzące pakiety ARP.
-
Inspekcja ARP: Urządzenia można skonfigurować tak, aby sprawdzały pakiety ARP i sprawdzały ich dane przed aktualizacją pamięci podręcznej ARP.
-
Środki bezpieczeństwa: Aby zapobiec fałszowaniu ARP, można zastosować protokoły takie jak dynamiczna inspekcja ARP (DAI). DAI przechwytuje, rejestruje i odrzuca pakiety ARP z nieprawidłowymi powiązaniami adresów IP-MAC.
Porównanie z podobnymi protokołami
Podczas gdy protokół ARP jest używany do mapowania adresów IP na adresy MAC w sieciach IPv4, sieci IPv6 korzystają z podobnego protokołu znanego jako Neighbor Discovery Protocol (NDP).
Protokół | Typ sieci | Funkcja podstawowa |
---|---|---|
ARP | IPv4 | Rozwiązywanie adresów IP na MAC |
NDP | IPv6 | Rozwiązywanie adresów IP na MAC |
Perspektywy na przyszłość: ARP w rozwijających się technologiach
Wraz ze wzrostem popularności protokołu IPv6 rola protokołu ARP może z czasem maleć, ponieważ protokół IPv6 wykorzystuje protokół Neighbor Discovery Protocol (NDP) do rozpoznawania adresów. Jednakże protokoły IPv4 i ARP są nadal szeroko stosowane i oba prawdopodobnie pozostaną istotnymi elementami infrastruktury sieciowej w dającej się przewidzieć przyszłości.
Ponadto ciągły rozwój środków bezpieczeństwa ARP, takich jak Dynamic ARP Inspection (DAI) i Secure ARP (S-ARP), wskazuje, że w dalszym ciągu będą pojawiać się ulepszenia bezpieczeństwa i funkcjonalności ARP.
Serwery ARP i proxy
Serwery proxy mogą wykorzystywać ARP w swoim działaniu, szczególnie w scenariuszach, w których służą jako bramy do innych sieci. Proxy ARP to technika, w której serwer proxy odpowiada na żądania ARP przeznaczone dla innego komputera. W ten sposób skutecznie sprawia, że obie sieci wyglądają jak jedna dla hostów po obu stronach. W ten sposób serwer proxy może kierować ruchem pomiędzy różnymi sieciami, zwiększając łączność i bezpieczeństwo.
powiązane linki
Więcej informacji na temat protokołu ARP można znaleźć w następujących zasobach:
- RFC 826 – protokół rozpoznawania adresów Ethernet
- Cisco – Zrozumienie ARP
- Microsoft — protokół rozpoznawania adresów (ARP)
Mamy nadzieję, że dzięki szczegółowemu zapoznaniu się z protokołem rozpoznawania adresów (ARP), jego historią, funkcjonalnością, typami i zastosowaniami, teraz w pełni rozumiesz ten kluczowy protokół sieciowy. Niezależnie od tego, czy jesteś inżynierem sieci, studentem, czy po prostu osobą interesującą się funkcjonowaniem sieci, znajomość protokołu ARP jest podstawą zrozumienia komunikacji sieciowej.