什麼是反向地址解析協議 (RARP)?
反向地址解析協議 (RARP) 是一種網路特定的標準協議。它在 RFC 903 中進行了描述。某些網路主機,例如無盤工作站,在啟動時不知道自己的 IP 地址。為了確定自己的 IP 地址,它們使用類似於 ARP 的機制,但現在主機的硬體地址是已知引數,而 IP 地址是被查詢的引數。
反向地址解析的執行方式與 ARP 地址解析相同。ARP 使用的相同資料包格式也用於 RARP。
唯一的例外是操作碼欄位,它現在採用以下值:
- 3 用於 RARP 請求
- 4 用於 RARP 響應
幀的物理報頭現在將指示 RARP 作為更高級別的協議(十六進位制 8035),而不是乙太網型別欄位中的 ARP(十六進位制 0806)或 IP(十六進位制 0800)。
當具有本地磁碟的框架引導時,它通常從磁碟檔案中讀取的配置文件中獲取其 IP 地址。但是,沒有磁碟的系統(包括 X 終端或無盤工作站)需要其他方法來獲取其 IP 地址。
RARP 的功能是讓無盤框架從介面卡讀取其特定的硬體地址,併發送 RARP 請求,要求有人回覆無盤系統的 IP 地址。
RARP 資料包的格式幾乎與 ARP 資料包相同。唯一的區別在於,對於 RARP 請求或響應,幀型別為 0X8035,對於 RARP 請求,op 欄位的值為 3,對於 RARP 響應,op 欄位的值為 4。
RARP 的問題包括它使用鏈路層廣播,阻止大多數路由器轉發 RARP 請求,以及返回的資訊最少,僅包括系統的 IP 地址。雖然 RARP 的概念很簡單,但 RARP 伺服器的實現是依賴於系統的。
一些差異源於 RARP 本身的一些概念:
- ARP 僅假設每個主機都知道其自身硬體地址和協議地址之間的對映。RARP 要求網路中一個或多個伺服器主機維護硬體地址和協議地址之間對映的資料庫,以便它們能夠回覆來自客戶端主機的請求。
- 由於該資料庫的大小,伺服器功能的一部分通常在介面卡微程式碼之外實現,並在微程式碼中可選地使用一個小快取。然後,微程式碼部分僅負責接收和傳輸 RARP 幀,RARP 對映本身由在主機上作為普通程序執行的伺服器軟體處理。
- 此資料庫的性質還需要一些軟體手動建立和更新資料庫。
- 如果網路中有多個 RARP 伺服器,則 RARP 請求僅使用響應其廣播 RARP 請求收到的第一個 RARP 響應,並丟棄其他響應。
廣告