地址解析協議(ARP)

一. 做用:

地址解析協議是用來提供ip地址與硬件地址之間的動態映射的緩存

二 . 報文格式:

地址解析協議(ARP)

字段 字段說明
以太網目的地址 目的地的硬件地址(mac地址),全爲1的話表明是廣播地址,電纜上全部以太網接口都要接受此數據幀
-------- --------
以太網源地址 發送方的硬件地址
-------- --------
幀類型 對於arp請求或應答,該字段的值爲0x0806
-------- --------
硬件類型 硬件地址類型 1表明以太網地址
-------- --------
協議類型 要映射的協議地址類型 0x800表明IP地址 ,它的值與包含IP數據報的以太網數據幀的類型字段值相同,有意設計的
-------- --------
硬件地址長度 mac地址爲6字節
-------- --------
協議地址長度 IP地址爲4字節
-------- --------
操做字段 在報文中佔2個字節,1表示ARP請求,2表示ARP應答,3表示RARP請求,4表示RARP應答
-------- --------
發送端以太網地址 發送方的硬件地址
-------- --------
發送端ip地址 發送方ip地址
-------- --------
目的端以太網地址 目的端的硬件地址
-------- --------
目的IP地址 目的端ip地址

前三個字段表明的是以太網首部站14字節,後面的字段表明arp請求或應答的數據幀佔28字節,這裏面有些字段是重複的。ide

三.arp請求過程

首先明確arp是發生在局域網內的。
當A主機要向B主機發送ip數據報,首先會在本機的arp緩衝表中查看有無此ip所對應的硬件地址,若是有就查出來寫入數據報中,若是沒有就啓動arp進程,在局域網上廣播一個arp請求,請求內容大體意思是:
我是ip:xx.xx.xx.xx(A主機的ip)
個人硬件地址是 mac:xx.xx.xx.xx.xx.xx,
我想知道ip:xx.xx.xx.xx(B主機的ip)的硬件地址是多少
局域網上全部主機都會收到這樣一個請求
若是存在主機B,主機B就會接受請求,並更新本身的arp緩存,其他的主機會丟棄這個包。主機B將本身的mac地址寫入響應包,將數據包類型改成響應類型,將目的地址改成源地址,而後經過單播的方式發送給主機A,主機A接受到響應包會進行更新arp緩存,並將mac地址寫入ip數據報。設計

相關文章
相關標籤/搜索