ARP(地址解析協定)的主要作用是將網路層的IP位址解析為數據鏈路層的物理地址,例如MAC地址。
當一台主機需要向另一台主機傳送數據包時,它首先會檢查自己ARP快取中是否存在目標主機的IP位址對應的MAC地址,如果存在,則直接使用這個MAC地址傳送數據包;如果不存在,則會向本地網段發起一個ARP請求的廣播包,查詢目的主機的MAC地址。網路中所有主機收到這個ARP請求後,會檢查數據包中的目的IP是否與自己的IP位址一致,如果一致,則給源主機傳送一個ARP回響數據包,告知自己就是目標主機。源主機收到ARP回響後,將得到的目的主機的IP位址和MAC地址添加到自己的ARP快取中,並利用此信息開始數據的傳輸。
此外,ARP協定建立在網路中各個主機互相信任的基礎上,區域網路上的主機可以自主傳送ARP應答訊息,其他主機收到應答報文時不會檢測報文的真實性就會將其記入本機ARP快取,這可能導致ARP欺騙。