1. 程式人生 > >網絡技術-ARP協議

網絡技術-ARP協議

地址解析 提高 需要 查找 異構 span 必須 全世界 簡單

為什麽我們不直接 使用硬件地址進行通信?
由於全世界存在著各式各樣的網絡,它們使用不同的硬件地址。要使這些異構網絡能夠互相通信就必須進行非常復雜的硬件地址轉換工作,因此幾乎是不可能的事。
連接到因特網的主機都擁有統一的 IP 地址,它們之間的通信就像連接在同一個網絡上那樣簡單方便,因為調用 ARP 來尋找某個路由器或主機的硬件地址都是由計算機軟件自動進行的,對用戶來說是看不見這種調用過程的。
功能:從IP地址到物理地址的映射
高速緩存技術:
在主機內開辟一片專用內存空間,用來存放局域網上所有的主機和路由器的IP地址到物理地址的映射表。
當主機1向主機2發送報文時,它首先檢查高速緩存中有沒有主機2的IP地址,如果有,就查找出對應的物理地址,將其寫入到MAC幀,然後通過局域網發送出去。
如果沒有主機2的IP地址,主機1自動運行ARP去查找主機2的物理地址。

ARP工作原理/步驟
技術分享圖片

1)主機 A 上的 ARP 協議進程在本局域網上發送一個ARP廣播幀,該幀的主要內容是:“我的IP地址是202.197.12.1,物理地址是E1(08-00-2B-00-EE-0A),我想知道IP地址為202.197.12.2的主機的硬件地址。”

2)本網絡上所有計算機都收到廣播幀,並檢查自己的 IP 地址。

3)主機 B 發現它與自己的IP地址相同,於是就向主機 A發送一個ARP響應報文,該報文的主要內容是:“我的IP地址是202.197.12.2,物理地址是E2(00-00-2C-00-44-0D)”。

4)主機 A 收到主機 B 的 ARP 響應報文後,就在其高速緩存中寫入主機 B 的 IP 地址到硬件地址的映射。當主機 A向主機 B 發送數據時,就可以直接從高速緩存中找到主機 B 的 IP 地址到物理地址的映射。

技術分享圖片

提高 ARP的效率的措施
1)采用高速緩存技術。
2)在源端主機發送的ARP請求報文(ARP廣播幀)中加入它自己的地址映射。
3)源主機在局域網上廣播它自己的地址映射時,網絡上所有主機都應將它存放到它們各自的高速緩存中。
4)新計算機入網時,要主動廣播地址映射。

應當註意的問題
ARP 是解決同一個局域網上的主機或路由器的 IP 地址和硬件地址的映射問題
路由器不轉發以太網廣播幀。
不在同一局域網:
如果所要找的主機和源主機不在同一個局域網上:
  通過 ARP 找到一個位於本局域網上的某個路由器的硬件地址
  把分組發送給這個路由器,讓這個路由器把分組轉發給下一個網絡
  剩下的工作就由下一個網絡來做

不在同一局域網上的地址解析:

技術分享圖片

總結:ARP地址解析過程需記住8個字:廣播請求、單播響應

如果需要進一步分析ARP地址解析的過程,就需要用wires hark抓取數據包來進行分析。

網絡技術-ARP協議