資料鏈路如乙太網或令牌環網都有自己的定址機制(常常為48bit),這是使用資料鏈路的任何網路層都必須遵從的。當一台主機把乙太網資料幀傳送到位於同一區域網上的另一台主機上時,是根據48bit的乙太網位址來確認目的介面位址的。裝置驅動程式從不檢查ip資料報中的目的ip位址。
資料解析為這兩種不同的位址形式提供對映:32bit的ip位址和資料鏈路層使用的任何型別的位址。arp為ip位址到對應的硬體位址之間提供動態對映。
1.arp過程
1)應用程式ftp客戶端呼叫函式gethostbyname把主機名轉換成32bit的ip位址。
2)ftp客戶端請求tcp用得到的ip位址建立連線。
3)tcp傳送乙個連線請求分段到遠端的主機,即用上述的ip位址傳送乙份ip資料報。
4)如果目的主機在本地網路上,那麼ip資料報就能直接送到目的主機上。如果目的主機在乙個遠端網路上,那麼就通過ip選路函式來確定位於本地網路上的下一站路由器位址,並讓它**資料報。
5)假定是乙個乙太網,那麼傳送端主機必須把32bit的ip位址變換成48bit的乙太網位址。從邏輯internet位址到對應的物理硬體位址需要進行翻譯。這就是arp的功能。
6)arp傳送乙份稱作arp請求的乙太網資料幀給乙太網上的每乙個主機,這個過程稱作廣播。arp請求資料幀中包含目的主機的ip位址,意思是:如果你是這個ip位址的擁有者,請回答你的硬體位址。
7)目的主機的arp層收到這份廣播報文後,識別出這是傳送端在詢問它的ip位址,於是傳送乙個arp應答。這個arp應答包含ip位址及其對應的硬體位址。
8)收到arp應答後,使arp進行請求應答交換的ip資料報現在就可以傳送了。
傳送ip資料報到目的主機。
點對點電路不使用arp。當設定這些鏈路時,必須告知核心鏈路每一端的ip位址。像乙太網位址這樣的硬體位址並不涉及。
2.arp快取記憶體
每乙個主機上都有乙個arp快取記憶體,它存放了最近internet位址到硬體之間的對映記錄。用arp命令來檢查arp告訴快取。
對不存在主機的arp請求,查詢後將顯示incomplete。
3.arp**
如果arp請求是從乙個網路的主機傳送到另乙個網路上的主機,那麼連線這兩個網路的路由器就可以回答該請求,這個過程稱為委託arp或arp**(proxy arp)。這樣就可以欺騙發起arp請求的傳送端,使他誤以為路由器就是目的主機,而事實上目的主機是在路由器的另一邊。路由器的功能相當於目的主機的**,把分組從其他主機**給它。
在同乙個子網上的路由器和其所連線的主機的ip位址對映的硬體位址是相同的,這通常是使用委託arp的線索。
對於連線到路由器的每乙個撥號主機不需要用唯一的ip位址,所有的撥號主機使用同乙個ip位址作為slip鏈路的目的位址。
4.免費arp
免費arp是指主機傳送arp查詢自己的ip位址。通常它發生在系統引導期間進行介面配置的時候。
作用:
1)乙個主機可以通過它來確定另乙個主機是否設定了相同的ip位址。
2)如果傳送免費arp的主機正好改變了硬體位址,那麼這個分組就可以使用其他主機告訴快取中舊的硬體位址進行相應的更新。
rarp:
具有本地磁碟的系統引導時,一般是從磁碟上的配置檔案中讀取ip位址。無盤系統的rarp實現過程是從介面卡上讀取唯一的硬體位址,然後傳送乙份rarp請求(一幀在網路上廣播的資料),請求某個主機響應無盤系統系統的ip位址(在rarp應答中)。
rarp請求以廣播方式傳送,而rarp應答一般是單播發送。
ARP(位址解析協議)和RARP(逆位址解析協議)
arp基本過程 1 主機傳送乙份稱作arp請求的乙太網資料幀給乙太網上的每乙個主機。這個過程稱作廣播 注意這是資料鏈路層的廣播,不是網路層的廣播 arp請求包含目的主機的ip位址。這個動作的意思是 如果你是這個ip位址的擁有者,請回答你的硬體位址 mac 2 目的主機的arp層收到這份廣播報文後,識...
ARP位址解析協議和RARP逆位址解析協議
arp是位址解析協議,它提供了32位ip位址到物理鏈路層的實體地址的對映關係。拿最常見的乙太網來說,arp將32位ip位址對映位48位的mac實體地址。下面我們來看看arp協議在我們的一次請求中所起的作用。1.應用程式ftp客戶端呼叫函式gethostbyname將主機名轉換為32bit的ip位址。...
RARP 逆位址解析協議
圖5 1 rarp請求和應答r a r p請求是廣播方式 第1行 而第2行的r a r p應答是單播方式。第2行的輸出中a t s u n表示r a r p應答包含主機s u n的i p位址 1 4 0 2 5 2 1 3 3 3 在第3行中,我們可以看到,一旦s u n收到i p位址,它就傳送乙個...