ARP與RARP詳細解析(轉)


地址解析協議 ARP和逆地址解析協議RARP

 

1.基本關系:

            

 

2.地址解析協議 ARP的實現過程:

不管網絡層使用的是什么協議,在實際網絡的鏈路上傳送數據幀時,最終還是必須使用硬件地址。

‚每一個主機都設有一個 ARP高速緩存(ARP cache),里面有所在的局域網上的各主機和路由器的IP地址到硬件地址的映射表。

ƒ當主機 A 欲向本局域網上的某個主機B發送IP數據報時,就先在其ARP高速緩存中查看有無主機B的 IP地址。如有,就可查出其對應的硬件地址,再將此硬件地址寫入MAC幀,然后通過局域網將該MAC幀發往此硬件地址。  

 

 

3.ARP 高速緩存的作用

為了減少網絡上的通信量,主機 A 在發送其 ARP請求分組時,就將自己的IP地址到硬件地址的映射寫入ARP請求分組。

‚當主機 B 收到A的 ARP請求分組時,就將主機A的這一地址映射寫入主機B自己的ARP高速緩存中。這對主機B以后向A發送數據報時就更方便了。

 

5.ARP協議注意到的問題:

   ARP 是解決同一個局域網上的主機或路由器的IP地址和硬件地址的映射問題。

   如果所要找的主機和源主機不在同一個局域網上,那么就要通過 ARP 找到一個位於本局域網上的某個路由器的硬件地址,然后把分組發送給這個路由器,讓這個路由器把分組轉發給下一個網絡。剩下的工作就由下一個網絡來做。

   從IP地址到硬件地址的解析是自動進行的,主機的用戶對這種地址解析過程是不知道的。

   只要主機或路由器要和本網絡上的另一個已知 IP 地址的主機或路由器進行通信,ARP協議就會自動地將該IP地址解析為鏈路層所需要的硬件地址。  

 

6.使用 ARP 的四種典型情況

    (1)發送方是主機,要把IP數據報發送到本網絡上的另一個主機。這時用ARP找到目的主機的硬件地址。

    (2)發送方是主機,要把 IP 數據報發送到另一個網絡上的一個主機。這時用ARP找到本網絡上的一個路由器的硬件地址。剩下的工作由這個路由器來完成。

    (3)發送方是路由器,要把 IP 數據報轉發到本網絡上的一個主機。這時用ARP找到目的主機的硬件地址。

(4)發送方是路由器,要把 IP數據報轉發到另一個網絡上的一個主機。這時用ARP找到本網絡上的一個路由器的硬件地址。剩下的工作由這個路由器來完成。

 

7.ARP數據報消息格式

網絡上的每台主機或設備都有一個或多個IP地址。IP地址是網絡層的地址,在網絡層,數據被組裝成IP包。但是發送IP包需要物理設備的支持(通常是Ethernet設備,在本課程設計中我們指定為Ethernet設備),即發送端必須知道目的物理地址才能將IP包發送出去,所以需要一種將IP地址映射為物理地址的機制。ARP協議就是用來完成這個任務的。ARP協議能夠在同一個物理網絡中,在給定目的主機或設備的IP地址的條件下,得到目的主機或設備的物理地址。ARP協議的數據包格式如圖1所示:

 

    圖1        數據報的消息格式

下面對數據包的各個部分進行說明

硬件類型:指定硬件接口類型。例如,值為1表示Ethernet

協議類型:指定發送方支持的上層協議的類型

物理地址長度:指定物理(硬件)地址的長度

協議地址長度:網絡層協議的地址長度。若為IP協議,其值為4

操作:指定ARP的操作類型,例如,1表示ARP請求,2表示ARP應答

源物理地址:指定發送方的IP地址

目的物理地址:指定目的物理地址。

目的IP地址:指定目的IP地址

ARP分組必須在數據鏈路層中被封裝成偵,才能發送出去封裝

 

8.ARP協議工作流程  

   (1) 首先,每台主機都會在自己的ARP緩沖區( ARP Cache )中建立一個ARP列表,以表示IP地址和MAC地址的對應關系。  

   (2)當源主機需要將一個數據包要發送到目的主機時,會首先檢查自己ARP列表中是否存在該IP地址對應的MAC地址,如果有﹐就直接將數據包發送到這個MAC地址;如果沒有,就向本地網段發起一個ARP請求的廣播包,查詢此目的主機對應的MAC地址。此ARP請求數據包里包括源主機的IP地址、硬件地址、以及目的主機的IP地址。

   (3)網絡中所有的主機收到這個ARP請求后,會檢查數據包中的目的IP是否和自己的IP地址一致。如果不相同就忽略此數據包;如果相同,該主機首先將發送端的MAC地址和IP地址添加到自己的ARP列表中,如果ARP表中已經存在該IP的信息,則將其覆蓋,然后給源主機發送一個ARP響應數據包,告訴對方自己是它需要查找的MAC地址;

   (4)源主機收到這個ARP響應數據包后,將得到的目的主機的IP地址和MAC地址添加到自己的ARP列表中,並利用此信息開始數據的傳輸。如果源主機一直沒有收到ARP響應數據包,表示ARP查詢失敗。

 

9.逆地址解析協議 RARP :

逆地址解析協議 RARP 使只知道自己硬件地址的主機能夠知道其 IP地址。

這種主機往往是無盤工作站。 因此 RARP協議目前已很少使用。

 

10.RARP工作原理:

   (1)網絡上的每台設備都會有一個獨一無二的硬件地址,通常是由設備廠商分配的MAC地址。PC1從網卡上讀取MAC地址,然后在網絡上發送一個RARP請求的廣播數據包,請求RARP服務器回復該PC的IP地址。

   (2)RARP服務器收到了RARP請求數據包,為其分配IP地址,並將RARP回應發送給PC1。

   (3)PC1收到RARP回應后,就使用得到的IP地址進行通訊。

 

 ARP和RARP請求是廣播方式,應答都是單播方式

 
————————————————
版權聲明:本文為CSDN博主「zlnnjit」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/zln99/article/details/51050472


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM