数据链路层:ARP协议详解(绝对经典)
1、ARP協議定義:
地址解析協議,工作在數據鏈路層,在本層和硬件接口聯系,同時向上層提供服務。IP數據包常通過以太網發送,以太網設備不識別32位IP地址,他們是以48位以太網地址傳輸以太網數據包的,因此需要IP轉化為以太網目的地址。ARP協議用于將網絡中的IP地址解析為Mac地址以保證通信的順利進行。RARP則反向解析地址協議,負責將鏈路層Mac地址轉化為網絡層IP地址。
2、ARP和RARP使用相同的報頭結構
硬件類型:表示硬件地址的類型,值為1表示以太網地址
協議類型:表示要映射的協議地址類型。它的值為0x0800表示IP地址類型
硬件地址長度和協議地址長度以字節為單位,對于以太網上的IP地址的ARP請求或應答來說,他們的值分別為6和4;
操作類型(op):1表示ARP請求,2表示ARP應答
發送端MAC地址:發送方設備的硬件地址;
發送端IP地址:發送方設備的IP地址;
目標MAC地址:接收方設備的硬件地址。
目標IP地址:接收方設備的IP地址。
3、ARP協議解析過程
  1、每臺主機都會在自己的ARP緩沖區中建立一個ARP列表,以表示IP地址和自己MAC地址的對應關系。當源主機要將一個數據包發送到目的主機時,會先檢查自己的ARP列表中是否存在該IP地址對應的MAC地址,如果有就直接發送,如果沒有就會在本地網段發起一個ARP請求的廣播包,查詢此IP地址對應的MAC地址。 
    
   2、網絡中所有的主機收到這個ARP請求之后,會檢查這個數據包中的目的IP地址是否和自己的IP地址一致,如果不相同則會忽略此數據包,如果相同,則會將發送端的MAC地址和IP地址添加到自己的ARP列表中,如果ARP列表中已經已存在該IP地址,則將其覆蓋,然后給源主機發送一個ARP響應包,告訴它自己就是它需要查找的MAC地址。 
    
   3、源主機收到這個響應數據包,將目的主機的IP地址和MAC地址添加到自己的ARP列表中,并利用該信息進行數據傳輸。如果源主機沒有收到ARP響應數據包則表示查詢失敗。
RARP工作過程
1、發送一個本地的RARP廣播包,在其中聲明自己的MAC地址并請求所有收到此包的RARP服務器分配一個IP地址。
2、在本地網段上的RARP服務器收到請求之后,檢查RARP列表,查找MAC地址對應的IP地址。
3、如果存在,RARP服務器給源主機發送一個響應數據包,并將IP地址提供給對方使用,如果不存在則不作任何響應
4、源主機如果收到響應數據包則利用得到的IP地址進行通信,如果一直沒有收到RARP 服務器響應數據包則表示初始化失敗。
總結
以上是生活随笔為你收集整理的数据链路层:ARP协议详解(绝对经典)的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: vim插件-对齐插件tabular
- 下一篇: 原生js预览ofd文件
