|
Ten artykuł dotyczy protokołu komunikacyjnego. Zobacz też: ARP Instruments – producent syntezatorów. |
Address Resolution Protocol (ARP) – protokół sieciowy umożliwiający mapowanie logicznych adresów warstwy sieciowej (warstwa 3) na fizyczne adresy warstwy łącza danych (2). Protokół ten nie ogranicza się tylko do kojarzenia adresów IP z adresami MAC stosowanymi w sieciach Ethernet, lecz jest także wykorzystywany do odpytywania o adresy fizyczne stosowane w technologiach Token ring czy FDDI. Zdefiniowany jest w RFC 826 i jest określany jako standard internetowy STD 37.
Protokół ARP opisuje także zachowanie systemu operacyjnego, który zarządza tzw. tablicą ARP. Znajdują się w niej pary: adres warstwy sieciowej i przypisany do niego adres fizyczny. Zapobiega to wysyłaniu zapytania ARP przy próbie wysłania każdego pakietu do hosta znajdującego się w tej samej sieci.
Protokół ARP nie jest niezbędny do działania sieci komputerowych, może zostać zastąpiony przez statyczne wpisy w tablicy ARP, przyporządkowujące adresom warstwy sieciowej adresy fizyczne na stałe.
Zasada działania
ARP działa w następujący sposób[1]:
- W celu ustalenia adresu fizycznego hosta docelowego wysyłane jest żądanie ARP request do wszystkich hostów znajdujących się w tej samej sieci. Zapytanie zawiera adres logiczny hosta docelowego oraz adres fizyczny hosta wysyłającego zapytanie.
- Na zapytanie odpowiada tylko ten host, którego adres logiczny jest identyczny z adresem logicznym umieszczonym w zapytaniu. Odpowiedź zawiera adres logiczny i fizyczny hosta docelowego.
- Odebrany adres fizyczny zapisywany jest w tablicy ARP i parowany z adresem logicznym hosta docelowego, dzięki czemu nie będzie wymagane ponowne odkrywanie adresu fizycznego do momentu wyczyszczenia tablicy.
Często po podłączeniu do sieci host rozsyła zapytanie ARP o własny adres. Ma to na celu dwie rzeczy, po pierwsze: ustalenie, czy w sieci jest już podpięty system dysponującym identycznym adresem. Po drugie: każdy host obecny w danej sieci może zapisać w pamięci podręcznej dane o nowym hoście przyłączonym do sieci.
Format komunikatu ARP
EtherType
+
|
Bity 0 – 7
|
8 – 15
|
16 – 31
|
0
|
Typ warstwy fizycznej (HTYPE)
|
Typ protokołu wyższej warstwy (PTYPE)
|
32
|
Długość adresu sprzętowego (HLEN)
|
Długość protokołu wyższej warstwy (PLEN)
|
Operacja (OPER)
|
64
|
Adres sprzętowy źródła (SHA)
|
?
|
Adres protokołu wyższej warstwy źródła (SPA)
|
?
|
Adres sprzętowy przeznaczenia (THA)
|
?
|
Adres protokołu wyższej warstwy przeznaczenia (TPA)
|
|
- Typ warstwy fizycznej (HTYPE) – typ protokołu warstwy fizycznej. Możliwe wartości dla pola HTYPE w tabeli po prawej stronie.
Wartość HTYPE
|
Typ
|
1
|
Ethernet
|
6
|
IEEE 802.3
|
15
|
Frame Relay
|
16
|
ATM
|
17
|
HDLC
|
18
|
Fibre Channel
|
19
|
ATM
|
20
|
Serial Line
|
30
|
ATM
|
31
|
IPsec
|
- Typ protokołu wyższej warstwy (PTYPE) – dla protokołu IPv4 jest to 0x0800. Dopuszczalne wartości są zawarte w tabeli EtherType.
- Długość adresu sprzętowego (HLEN) – długość adresu sprzętowego (MAC) podana w bajtach.
- Długość protokołu wyższej warstwy (PLEN) – długość adresu protokołu, np. IP (4 bajty).
- Operacja (OPER) – kod operacji ARP. Poniżej cztery najważniejsze wartości:
Wartość OPER
|
Opis
|
RFC
|
1
|
Zapytanie
|
826
|
2
|
Odpowiedź
|
826, 1868
|
3
|
Zapytanie odwrotne
|
903
|
4
|
Odpowiedź odwrotna
|
903
|
- Adres sprzętowy źródła (SHA) – sprzętowy adres (MAC) nadawcy
- Adres protokołu wyższej warstwy źródła (SPA) – adres protokołu warstwy wyższej nadawcy, np. adres IP
- Adres sprzętowy przeznaczenia (THA) – sprzętowy adres (MAC) odbiorcy
- Adres protokołu wyższej warstwy przeznaczenia (TPA) – adres protokołu warstwy wyższej odbiorcy, np. adres IP
Zobacz też
Przypisy
- ↑ „Tanenbaum A. S”: Sieci komputerowe.brak strony w książce
Linki zewnętrzne
- D.D. Plummer D.D., Ethernet Address Resolution Protocol: Or Converting Network Protocol Addresses to 48.bit Ethernet Address for Transmission on Ethernet Hardware, STD 37, RFC 826, IETF, listopad 1982, DOI: 10.17487/RFC0826, ISSN 2070-1721, OCLC 943595667 (ang.).