Address Resolution Protocol

Z Wikipedii, wolnej encyklopedii
Skocz do: nawigacja, szukaj
Inne znaczenia 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 konwersji adresów IP na adres MAC stosowany 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[edytuj | edytuj kod]

ARP działa w następujący sposób[1] :

  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.
  2. 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.
  3. 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[edytuj | edytuj kod]

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

Przypisy

  1. "Tanenbaum A. S": "Sieci komputerowe".

Zobacz też[edytuj | edytuj kod]

Linki zewnętrzne[edytuj | edytuj kod]

RFC0826: Address Resolution Protocol