ARP協議的工作過程


當網絡設備要發送數據給另一台設備時,必須要知道對方的網絡層地址(即IP地址)。IP地址由網絡層來提供,但是僅有IP地址是不夠的,IP數據報文必須封裝成幀才能通過數據鏈路進行發送。

數據幀必須包含目的MAC地址,因此發送端還必須獲取到目的MAC地址。通過目的IP地址而獲取目的MAC地址的過程是由ARP協議來實現的。

ARP協議是TCP/IP協議簇中的重要組成部分,ARP能夠通過目的IP地址發現目標設備的MAC地址,從而實現數據鏈路層的可達性。

工作流程

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

  2. 當A要發送數據時,首先檢查ARP列表中是否有B的IP地址對應的MAC地址,如果有則直接發送,如果沒有就向本網段的所有主機發送ARP數據包,該數據包有:A的IP地址、A的MAC地址、B的IP地址。

  3. 當本網絡的所有主機收到該ARP數據包時,首先檢查數據包中的IP地址是否是自己的IP地址,如果不是,則忽略該數據包,如果是,則首先從數據包中取出A的IP和MAC地址寫入到ARP列表中;然后將自己的MAC地址寫入到ARP響應包中,告訴A自己是它想找的MAC地址。

  4. A收到ARP響應包后,將B的IP和MAC地址寫入ARP列表中,並利用此信息發送數據。如果A一直沒有收到響應包,則表示ARP查詢失敗。


免責聲明!

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



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