ARP報文格式
ARP請求和應(yīng)答報文格式:
主要字段解釋如下:
•Hardware Type:硬件地址的類型。對于以太網(wǎng),該類型的值為“1”。
•Protocol Type:映射的協(xié)議地址類型。對于IP地址,該值為0x0800。
•Hardware Length:硬件地址長度。對于ARP請求或應(yīng)答來說,該值為6。
•Protocol Length:協(xié)議地址長度。對于ARP請求或應(yīng)答來說,該值為4。
•OP:操作類型。1表示ARP請求,2表示ARP應(yīng)答。
•Ethernet Address of sender:發(fā)送方MAC地址。
•IP Address of sender:發(fā)送方IP地址。
•Ethernet Address of destination:接收方MAC地址。
•IP Address of destination:接收方IP地址。
ARP地址解析過程
ARP通過ARP請求和ARP應(yīng)答這兩個過程完成地址解析
ARP請求過程:
HostA和HostB在同一個網(wǎng)段,HostA要向HostB發(fā)送信息。
首先,HostA查看自己的ARP表,確定其中包含有HostB對應(yīng)的ARP表項(xiàng)。
如果找到了HostB對應(yīng)的MAC地址,則HostA直接利用ARP表中的MAC地址,對IP數(shù)據(jù)包進(jìn)行幀分鐘,并將數(shù)據(jù)包 發(fā)送給HostB。
如果HostA在ARP表中找不到對應(yīng)的MAC地址,則將緩存該數(shù)據(jù)報文,然后以廣播方式發(fā)送一個ARP請求報文。ARP請求報文中的發(fā)送端IP地址和發(fā)送端MAC地址為HostA的IP地址和MAC地址,目標(biāo)IP地址為HostB的IP地址,目標(biāo)MAC地址為全0的MAC地址。
由于ARP請求報文以廣播方式發(fā)送,該網(wǎng)段上的所有主機(jī)都可以接收到該請求,但只有被請求的主機(jī)(即HostB)會對該請求進(jìn)行處理
ARP應(yīng)答過程
HostB比較自己的IP地址和ARP請求報文中的目標(biāo)IP地址,當(dāng)兩者相同時進(jìn)行如下處理:
將ARP請求報文中的發(fā)送端(即HostA)的IP地址和MAC地址存入自己的ARP表中。之后以單播方式發(fā)送ARP響應(yīng)報文發(fā)送給HostA,其中包含了自己的MAC地址。HostB向HostA發(fā)出一個包含其MAC地址和ARP響應(yīng)報文
HostA收到ARP響應(yīng)報文后,將HostB的MAC地址加入到自己的ARP表中以用于后續(xù)報文的轉(zhuǎn)發(fā),同時將IP數(shù)據(jù)包進(jìn)行封裝后發(fā)送出去
ARP老化機(jī)制
•高速緩存
每臺主機(jī)上都維護(hù)著一個高速緩存,這是ARP高效運(yùn)行的一個關(guān)鍵。在這個高速緩存中,存放最近獲得的IP地址和MAC的映射關(guān)系。
發(fā)送發(fā)在每次發(fā)送報文時,都先在緩存中查找目標(biāo)IP地址所對應(yīng)的MAC地址。如果ARP緩存中有對應(yīng)的AMC地址,主機(jī)就不會在發(fā)送ARP請求報文,而是直接將報文發(fā)至這個MAC地址。如果ARP緩存中沒有對應(yīng)的AMC地址時,主機(jī)才會發(fā)送廣播的ARP請求報文
•動態(tài)ARP表項(xiàng)的老化超時時間
ARP告訴緩存中的表項(xiàng)一般都會設(shè)定一個定時器。當(dāng)?shù)竭_(dá)定時器的動態(tài)ARP表項(xiàng)的老化超時時間,設(shè)備進(jìn)行老化探測,如果探測失敗,刪除該表項(xiàng);否則,保留該表項(xiàng)
動態(tài)ARP表項(xiàng)的老化探測次數(shù)
一條動態(tài)ARP表項(xiàng)老化之前,系統(tǒng)先進(jìn)行探測,如果超過設(shè)置的探測次數(shù)后探測的目標(biāo)主機(jī)仍沒有應(yīng)答,則此ARP表項(xiàng)將被刪除
•動態(tài)ARP表項(xiàng)的老化探測模式
ARP表項(xiàng)老化之前,接口會發(fā)送ARP老化探測報文。老化探測報文可以是單播報文,也可以是廣播報文。設(shè)備只在最后一次發(fā)送ARP老化探測報文是廣播模式,其余均為單播模式發(fā)送
動態(tài)ARP
動態(tài)ARP表項(xiàng)由ARP協(xié)議通過ARP報文自動生成和維護(hù),可以被老化,可以被新的ARP報文更新,可以被靜態(tài)ARP表項(xiàng)覆蓋。當(dāng)?shù)竭_(dá)老化時間、接口Down時會刪除響應(yīng)的動態(tài)ARP表項(xiàng)
靜態(tài)ARP
靜態(tài)ARP是指IP地址和MAC地址之間有固定的映射關(guān)系,由網(wǎng)絡(luò)管理員手動配置生成。
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------
轉(zhuǎn)自:CSDN