# ARP

Sare eta teknologia protokoloak* :
| Aplikazio geruza | DNS, FTP, HTTP, HTTPS, IMAP, IRC, NFS, NNTP, NTP, POP3, SMB/CIFS, SMTP, SNMP, SSH, Telnet, SIP, gehiago |
| Aurkezpen geruza | ASN.1, MIME, SSL/TLS, XML, gehiago |
| Saio geruza | NetBIOS, gehiago |
| Garraio geruza | SCTP, SPX, TCP, UDP, gehiago |
| Sare geruza | AppleTalk, IP, IPX, NetBEUI, X.25, gehiago |
| Lotura geruza | ATM, Ethernet, Frame Relay, HDLC, PPP, Token Ring, Wi-Fi, STP, gehiago |
| Geruza fisikoa | Kable ardazkide, Zuntz optiko, Pare kordatu, Mikrouhin-sarea, Irrati bidezko sarea, RS-232, gehiago |
| *OSI ereduaren arabera ||
ARP protokoloa ingelesez, Address Resolution Protocol-aren siglak dira.
Sare geruzako ARP protokoloa IP helbide bati dagokion MAC helbidea (helbide fisikoa) aurkitzeaz arduratzen da, IP helbidetik abiatuz. ARPk IP helbideari ahalbidetzen dio sare teknologiatik (helbide fisikoetatik) independente izatea.

## ARP-ren helburua

ARP protokoloak paper garrantzitsu bat du TCP/IP mailako protokolo guztietan, helbide fisikoa ezagutzeko aukera ematen baitu, IP helbidetik abiatuta. Horregatik, Helbide Bereizmen Protokoloa (ARP ingelesez, Address Resolution Protocol) esaten zaio.
Sarera konektaturiko sistema bakoitzak 48 biteko identifikazio zenbaki bat du. Hori zenbaki bakar bat da; ez daude bi zenbaki berdin munduan. Fabrikan zehazten da zenbaki hori, sare txartela egiterako garaian. Halaber, Interneteko komunikazioetan ez da helbide fisiko hori erabiltzen (sistemen helbideak aldatu beharko liratekeelako sare txartelaren interfazea aldatzerakoan), ICANN organismoak esleitutako helbide logiko bat baizik: IP helbidea.
Helbide fisikoak helbide logikoetara konekta daitezen, ARP protokoloak sareko sistemei galdetzen die, eta gero bilaketa taula bat sortzen du cache memoria batean, helbide fisiko eta logikoen artean. Horri ARP taula deritzo.
Sistema bat beste batekin komunikatu behar denean, ARP taula kontsultatzen du. Helburuko helbidea taulan ez badago, ARP protokoloak sareko eskaera bidaltzen du. Sareko sistema guztiek helbide hori euren helbidearekin konparatzen dute. Kasuren batean bi helbideak bat badatoz, sistema horrek ARP-ari erantzungo dio, eta sistema horren helbideak taulan gordeko dira. Momentu horretatik aurrera, komunikazioa bidera daiteke.

## Mezuaren egitura

ARP-k mezu sinple formatu bat erabiltzen du, zeinak helbide bereizmen eskaera edo erantzun bat daraman. ARP mezuaren tamaina, IP helbidearen tamainaren araberakoa (normalean IPv4) eta hardware motaren araberakoa da.
Mezuaren goiburukoak mota zehazten du, baita helbide bakoitzaren luzera ere. Goiburukoa operazioaren kodearekin (1 eskaerarako eta 2 erantzunerako) betetzen da.
Internet protokoloa (IPv4) Ethernet ARP mezu batean :
| octet offset | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
| 0 | Hardware mota (HTYPE) | Hardware mota (HTYPE) | Hardware mota (HTYPE) | Hardware mota (HTYPE) | Hardware mota (HTYPE) | Hardware mota (HTYPE) | Hardware mota (HTYPE) | Hardware mota (HTYPE) | Hardware mota (HTYPE) | Hardware mota (HTYPE) | Hardware mota (HTYPE) | Hardware mota (HTYPE) | Hardware mota (HTYPE) | Hardware mota (HTYPE) | Hardware mota (HTYPE) | Hardware mota (HTYPE) |
| 2 | Protokolo mota (PTYPE) | Protokolo mota (PTYPE) | Protokolo mota (PTYPE) | Protokolo mota (PTYPE) | Protokolo mota (PTYPE) | Protokolo mota (PTYPE) | Protokolo mota (PTYPE) | Protokolo mota (PTYPE) | Protokolo mota (PTYPE) | Protokolo mota (PTYPE) | Protokolo mota (PTYPE) | Protokolo mota (PTYPE) | Protokolo mota (PTYPE) | Protokolo mota (PTYPE) | Protokolo mota (PTYPE) | Protokolo mota (PTYPE) |
| 4 | Helbide fisikoaren luzera (HLEN) | Helbide fisikoaren luzera (HLEN) | Helbide fisikoaren luzera (HLEN) | Helbide fisikoaren luzera (HLEN) | Helbide fisikoaren luzera (HLEN) | Helbide fisikoaren luzera (HLEN) | Helbide fisikoaren luzera (HLEN) | Helbide fisikoaren luzera (HLEN) | Protokoloaren luzera (PLEN) | Protokoloaren luzera (PLEN) | Protokoloaren luzera (PLEN) | Protokoloaren luzera (PLEN) | Protokoloaren luzera (PLEN) | Protokoloaren luzera (PLEN) | Protokoloaren luzera (PLEN) | Protokoloaren luzera (PLEN) |
| 6 | Operazioa (OPER) | Operazioa (OPER) | Operazioa (OPER) | Operazioa (OPER) | Operazioa (OPER) | Operazioa (OPER) | Operazioa (OPER) | Operazioa (OPER) | Operazioa (OPER) | Operazioa (OPER) | Operazioa (OPER) | Operazioa (OPER) | Operazioa (OPER) | Operazioa (OPER) | Operazioa (OPER) | Operazioa (OPER) |
| 8 | Bidaltzailearen helbide fisikoa (SHA) (lehen 2 byteak) | Bidaltzailearen helbide fisikoa (SHA) (lehen 2 byteak) | Bidaltzailearen helbide fisikoa (SHA) (lehen 2 byteak) | Bidaltzailearen helbide fisikoa (SHA) (lehen 2 byteak) | Bidaltzailearen helbide fisikoa (SHA) (lehen 2 byteak) | Bidaltzailearen helbide fisikoa (SHA) (lehen 2 byteak) | Bidaltzailearen helbide fisikoa (SHA) (lehen 2 byteak) | Bidaltzailearen helbide fisikoa (SHA) (lehen 2 byteak) | Bidaltzailearen helbide fisikoa (SHA) (lehen 2 byteak) | Bidaltzailearen helbide fisikoa (SHA) (lehen 2 byteak) | Bidaltzailearen helbide fisikoa (SHA) (lehen 2 byteak) | Bidaltzailearen helbide fisikoa (SHA) (lehen 2 byteak) | Bidaltzailearen helbide fisikoa (SHA) (lehen 2 byteak) | Bidaltzailearen helbide fisikoa (SHA) (lehen 2 byteak) | Bidaltzailearen helbide fisikoa (SHA) (lehen 2 byteak) | Bidaltzailearen helbide fisikoa (SHA) (lehen 2 byteak) |
| 10 | (hurrengo 2 byteak) | (hurrengo 2 byteak) | (hurrengo 2 byteak) | (hurrengo 2 byteak) | (hurrengo 2 byteak) | (hurrengo 2 byteak) | (hurrengo 2 byteak) | (hurrengo 2 byteak) | (hurrengo 2 byteak) | (hurrengo 2 byteak) | (hurrengo 2 byteak) | (hurrengo 2 byteak) | (hurrengo 2 byteak) | (hurrengo 2 byteak) | (hurrengo 2 byteak) | (hurrengo 2 byteak) |
| 12 | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) |
| 14 | Bidaltzailearen protokolo helbidea (SPA) (lehen 2 byteak) | Bidaltzailearen protokolo helbidea (SPA) (lehen 2 byteak) | Bidaltzailearen protokolo helbidea (SPA) (lehen 2 byteak) | Bidaltzailearen protokolo helbidea (SPA) (lehen 2 byteak) | Bidaltzailearen protokolo helbidea (SPA) (lehen 2 byteak) | Bidaltzailearen protokolo helbidea (SPA) (lehen 2 byteak) | Bidaltzailearen protokolo helbidea (SPA) (lehen 2 byteak) | Bidaltzailearen protokolo helbidea (SPA) (lehen 2 byteak) | Bidaltzailearen protokolo helbidea (SPA) (lehen 2 byteak) | Bidaltzailearen protokolo helbidea (SPA) (lehen 2 byteak) | Bidaltzailearen protokolo helbidea (SPA) (lehen 2 byteak) | Bidaltzailearen protokolo helbidea (SPA) (lehen 2 byteak) | Bidaltzailearen protokolo helbidea (SPA) (lehen 2 byteak) | Bidaltzailearen protokolo helbidea (SPA) (lehen 2 byteak) | Bidaltzailearen protokolo helbidea (SPA) (lehen 2 byteak) | Bidaltzailearen protokolo helbidea (SPA) (lehen 2 byteak) |
| 16 | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) |
| 18 | Helburuaren helbide fisikoa (THA) (lehen 2 byteak) | Helburuaren helbide fisikoa (THA) (lehen 2 byteak) | Helburuaren helbide fisikoa (THA) (lehen 2 byteak) | Helburuaren helbide fisikoa (THA) (lehen 2 byteak) | Helburuaren helbide fisikoa (THA) (lehen 2 byteak) | Helburuaren helbide fisikoa (THA) (lehen 2 byteak) | Helburuaren helbide fisikoa (THA) (lehen 2 byteak) | Helburuaren helbide fisikoa (THA) (lehen 2 byteak) | Helburuaren helbide fisikoa (THA) (lehen 2 byteak) | Helburuaren helbide fisikoa (THA) (lehen 2 byteak) | Helburuaren helbide fisikoa (THA) (lehen 2 byteak) | Helburuaren helbide fisikoa (THA) (lehen 2 byteak) | Helburuaren helbide fisikoa (THA) (lehen 2 byteak) | Helburuaren helbide fisikoa (THA) (lehen 2 byteak) | Helburuaren helbide fisikoa (THA) (lehen 2 byteak) | Helburuaren helbide fisikoa (THA) (lehen 2 byteak) |
| 20 | (hurrengo 2 byteak) | (hurrengo 2 byteak) | (hurrengo 2 byteak) | (hurrengo 2 byteak) | (hurrengo 2 byteak) | (hurrengo 2 byteak) | (hurrengo 2 byteak) | (hurrengo 2 byteak) | (hurrengo 2 byteak) | (hurrengo 2 byteak) | (hurrengo 2 byteak) | (hurrengo 2 byteak) | (hurrengo 2 byteak) | (hurrengo 2 byteak) | (hurrengo 2 byteak) | (hurrengo 2 byteak) |
| 22 | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) |
| 24 | Helburuaren protokolo helbidea (TPA) (lehen 2 byteak) | Helburuaren protokolo helbidea (TPA) (lehen 2 byteak) | Helburuaren protokolo helbidea (TPA) (lehen 2 byteak) | Helburuaren protokolo helbidea (TPA) (lehen 2 byteak) | Helburuaren protokolo helbidea (TPA) (lehen 2 byteak) | Helburuaren protokolo helbidea (TPA) (lehen 2 byteak) | Helburuaren protokolo helbidea (TPA) (lehen 2 byteak) | Helburuaren protokolo helbidea (TPA) (lehen 2 byteak) | Helburuaren protokolo helbidea (TPA) (lehen 2 byteak) | Helburuaren protokolo helbidea (TPA) (lehen 2 byteak) | Helburuaren protokolo helbidea (TPA) (lehen 2 byteak) | Helburuaren protokolo helbidea (TPA) (lehen 2 byteak) | Helburuaren protokolo helbidea (TPA) (lehen 2 byteak) | Helburuaren protokolo helbidea (TPA) (lehen 2 byteak) | Helburuaren protokolo helbidea (TPA) (lehen 2 byteak) | Helburuaren protokolo helbidea (TPA) (lehen 2 byteak) |
| 26 | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) | (azken 2 byteak) |
ARP mezu baten egitura ondoko taula honetan erakusten da, kontuan hartuz hau IPv4-rako dela. Kasu honetan, mezuak 48 biteko atalak ditu jatorrizko eta helburuko helbide fisikoentzat, eta 32 biteko atalak, helbide horiei dagozkien IP helbideentzat. ARP mezuak, kasu honetan, 28 byte ditu. Ethertype-a ARP mezuentzat 0x0806 da.
Hardware mota (HTYPE) Atal honek sare protokolo mota zehazten du. Adibidez: Ethernet 1 da.
Protokolo mota (PTYPE) Atal honek sare barneko protokoloa zehazten du, zeinentzat ARP eskaera bidaltzen den. IPv4rako, honek 0x0800 balioa du.
Helbide fisikoaren luzera (HLEN) Helbide fisiko baten luzera bytetan. Ethernet helbideena 6 byte da.
Protokoloaren luzera (PLEN) PTYPE atalean zehaztutako protokoloaren arabera zehaztutako helbideen luzera bytetan. IPv4 helbideetan tamaina 4 byte da.
Operazioa Bidaltzailea egiten ari den operazioa zehazten du: 1 eskaerarako (ARP request) eta 2 erantzunerako (ARP reply).
Bidaltzailearen helbide fisikoa (SHA) Mezua bidali duen sistemaren helbide fisikoa.
Bidaltzailearen protokolo helbidea (SPA) Mezua bidali duenaren sarearteko helbidea (IP).
Helburuaren helbide fisikoa (THA) Mezuaren helburuko sistemaren helbide fisikoa. Eskaeretan (ARP request) atal hau ez da kontutan hartzen.
Helburuaren protokolo helbidea (TPA) Mezua jaso behar duenaren sarearteko helbidea (IP).

## Ikus, gainera

* RARP
* BOOTP
* TCP/IP eredu
* LAN
* IP helbide

## Erreferentziak

* Andrew S. Tanenbaum, Konputagailu-sareak (3. ed 2002), EHU ed.
* Andrew S. Tanenbaum, Computer Networks (4. ed 2003), Prentice Hall.

## Kanpo estekak

* TCP/IP-ri buruzko liburua - J.M. Rivadeneyra
* http://tools.ietf.org/pdf/rfc826.pdf - An Ethernet Address Resolution Protocol: RFC 826
* http://www.erg.abdn.ac.uk/~gorry/course/inet-pages/arp.html - Address Resolution Protocol (arp)
* Datuak: Q15171
* Multimedia: Address Resolution Protocol / Q15171