ARP協議和RARP協議

1、arp協議

1.1 簡介

地址解析協議,即ARP(Address Resolution Protocol),是根據IP地址獲取物理地址的一個TCP/IP協議。主機發送信息時將包含目標IP地址的ARP請求廣播到局域網絡上的所有主機,並接收返回消息,以此確定目標的物理地址;收到返回消息後將該IP地址和物理地址存入本機ARP緩存中並保留一定時間,下次請求時直接查詢ARP緩存以節約資源。地址解析協議是建立在網絡中各個主機互相信任的基礎上的,局域網絡上的主機可以自主發送ARP應答消息,其他主機收到應答報文時不會檢測該報文的真實性就會將其記入本機ARP緩存;由此攻擊者就可以向某一主機發送僞ARP應答報文,使其發送的信息無法到達預期的主機或到達錯誤的主機,這就構成了一個ARP欺騙。ARP命令可用於查詢本機ARP緩存中IP地址和MAC地址的對應關係、添加或刪除靜態對應關係等。相關協議有RARP、代理ARP。NDP用於在IPv6中代替地址解析協議。

1.2 功能

地址解析協議由互聯網工程任務組(IETF)在1982年11月發佈的RFC 826中描述制定。地址解析協議是IPv4中必不可少的協議,而IPv4是使用較爲廣泛的互聯網協議版本(IPv6仍處在部署的初期)。
OSI模型把網絡工作分爲七層,IP地址在OSI模型的第三層,MAC地址在第二層,彼此不直接打交道。在通過以太網發送IP數據包時,需要先封裝第三層(32位IP地址)、第二層(48位MAC地址)的報頭,但由於發送時只知道目標IP地址,不知道其MAC地址,又不能跨第二、三層,所以需要使用地址解析協議。使用地址解析協議,可根據網絡層IP數據包包頭中的IP地址信息解析出目標硬件地址(MAC地址)信息,以保證通信的順利進行。

1.3 工作原理

首先,每個主機都會在自己的ARP緩衝區中建立一個ARP列表,以表示IP地址和MAC地址之間的對應關係。
當源主機要發送數據時,首先檢查ARP列表中是否有對應IP地址的目的主機的MAC地址,如果有,則直接發送數據,如果沒有,就向本網段的所有主機發送ARP數據包,該數據包包括的內容有:源主機IP地址,源主機MAC地址,目的主機的IP地址。
當本網絡的所有主機收到該ARP數據包時,首先檢查數據包中的IP地址是否是自己的IP地址,如果不是,則忽略該數據包,如果是,則首先從數據包中取出源主機的IP和MAC地址寫入到ARP列表中,如果已經存在,則覆蓋,然後將自己的MAC地址寫入ARP響應包中,告訴源主機自己是它想要找的MAC地址。
源主機收到ARP響應包後。將目的主機的IP和MAC地址寫入ARP列表,並利用此信息發送數據。如果源主機一直沒有收到ARP響應數據包,表示ARP查詢失敗。
總結:廣播發送ARP請求,單播發送ARP響應。

2、rarp協議

2.1 簡介

RARP(Reverse Address Resolution Protocol)是逆地址解析協議,作用是完成硬件地址到IP地址的映射,主要用於無盤工作站,因爲給無盤工作站配置的IP地址不能保存。

2.2 工作原理

在網絡中配置一臺RARP服務器,裏面保存着IP地址和MAC地址的映射關係,當無盤工作站啓動後,就封裝一個RARP數據包,裏面有其MAC地址,然後廣播到網絡上去,當服務器收到請求包後,就查找對應的MAC地址的IP地址裝入響應報文中發回給請求者。因爲需要廣播請求報文,因此RARP只能用於具有廣播能力的網絡。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章