什麼是地址解析協議 (ARP)?


地址解析協議 (ARP) 是一種網路特定標準協議。地址解析協議對於將高階協議地址(IP 地址)轉換為物理網路地址非常重要。它在 RFC 826 中有描述。

ARP 將 IP 地址與物理地址關聯起來。在典型的物理網路(如 LAN)中,鏈路上的每個裝置都由一個物理地址標識,通常印在網路介面卡 (NIC) 上。當特定機器上的 NIC 出現故障時,物理地址可以輕鬆更改。

IP 地址不能更改。當知道節點的網際網路地址時,ARP 可以找到該節點的物理地址。ARP 提供了從 IP 地址到相應硬體地址的動態對映。

當一個主機想要與網路上的另一個主機通訊時,它需要將每個主機的 IP 地址解析為主機的硬體地址。

此過程如下:

  • 當主機嘗試與另一主機互動時,會發起 ARP 請求。如果 IP 地址是本地網路的,則源主機檢查其 ARP 快取以查詢目標計算機的硬體地址。
  • 如果未找到相應的硬體地址,ARP 會將請求廣播到所有本地主機。
  • 所有主機接收廣播並檢查自己的 IP 地址。如果未發現匹配項,則忽略該請求。
  • 找到匹配 IP 地址的目標主機將 ARP 響應及其硬體地址傳送回源主機,從而建立通訊。然後,ARP 快取會更新為目標主機的硬體地址。

ARP 資料包生成

如果應用程式需要將資訊傳送到特定的 IP 目標地址,則 IP 路由結構首先確定資料包下一跳的 IP 地址(應該是目標主機本身或路由器)以及應在其上傳輸的硬體工具。

如果是 IEEE 802.3/4/5 網路,則應考慮 ARP 結構以將 <協議型別目標協議地址> 設計為物理地址。

ARP 模組嘗試在 ARP 快取中查詢該地址。如果找到連線對,它會將等效的 48 位物理位置提供回撥用方(裝置驅動程式),然後後者共享資料包。

如果它沒有在其表中找到該對,它會刪除資料包(假設較高級別的協議將重新發送)並建立 ARP 請求的網路廣播。

  • **硬體地址空間:**它指定硬體型別,例如乙太網或分組無線電網路。
  • **協議地址空間:**它指定協議型別,與 IEEE 802 標頭中的 Ether 型別欄位相同(IP 或 ARP)。
  • **硬體地址長度:**它確定此資料包中硬體地址的長度(以位元組為單位)。對於 IEEE 802.3 和 IEEE 802.5,這是 6。
  • **協議地址長度:**它指定此資料包中協議地址的長度(以位元組為單位)。對於 IP,這是 4 位元組。
  • **操作碼:**它指定這是 ARP 請求 (1) 還是回覆 (2)。
  • **源/目標硬體地址:**它包含物理網路硬體地址。對於 IEEE 802.3,這些是 48 位地址。
  • 對於 ARP 請求資料包,目標硬體地址是資料包中唯一未定義的欄位。

更新於: 2021 年 5 月 5 日

10K+ 瀏覽量

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.