1. 程式人生 > >ARP地址解析協議(圖解)

ARP地址解析協議(圖解)

TCP/IP的第四章講到ARP地址解析協議,APR協議的作用就是尋找到對應目標的MAC地址,其方式也是很簡單的一問一答的方式,以書上的圖為例:

根據OSI模型,從上到下對資料進行封裝,但是封裝到二層時候,發現沒有對方的目的MAC地址,此時,會發送一個APR廣播請求,獲得到相應的MAC地址後,繼續封裝至完整然後發出。整個流程猶如我們寫信一般,當我們寫好收件人的名字後,我們往往記不清楚收件人的詳細地址,通過百度查詢後添寫相應地址再把信寄出去。

我們把傳送APR的請求的稱為源主機,接受請求的稱為目的主機,所以APR獲得目的MAC地址流程為:

1.傳送ARP請求的乙太網資料幀給乙太網上的每個主機,即廣播(乙太網源地址填全1),ARP請求幀中包含了目的主機的IP地址。

(目的主機在收到請求時候,會檢查ARP的快取表是否有源主機IP與源主機mac地址的對應條目,若有且與收到的不一致則更新,若無,則新增相應條目,最後構造一個針對請求主機的ARP單播應答包)

2.目的主機收到了該ARP請求之後,會發送一個ARP應答,裡面包含了目的主機的MAC地址。(源主機在接受到應答包,發現目的mac是自己,會查詢ARP的快取表,若快取表中已經存在對應的項,則更新該項。若快取中沒有,則忽略)

可以看到流程1,2中,在一問一答中會引發ARP的快取表的更新動作,整個的流程如圖,可以看出整個一問一答中,問是廣播,答是單播,主要是為了讓頻寬變得更大,而問的過程中首先先自我介紹,其次再詢問,所以對於接受方會先進行ARP快取表更新動作,然後應答給傳送方,傳送方獲得資訊,記錄在自己ARP快取表中。

報文的格式如下: