溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

ARP數(shù)據(jù)報傳送格式

發(fā)布時間:2020-07-07 01:07:56 來源:網(wǎng)絡 閱讀:370 作者:給我個bit位 欄目:網(wǎng)絡安全

一. ARP

    ARP協(xié)議是運行在網(wǎng)絡體系中數(shù)據(jù)鏈路層的協(xié)議,用于在局域網(wǎng)內(nèi),當知道要發(fā)送目的地主機的IP地址和端口號但是卻不知道MAC地址的時候,就需要用到ARP也被稱為地址解析協(xié)議;因為數(shù)據(jù)鏈路層傳輸?shù)臄?shù)據(jù)格式是幀,接收方接收的時候是先經(jīng)過物理層和數(shù)據(jù)鏈路層才到達網(wǎng)絡層的,因此,在數(shù)據(jù)傳輸?shù)臅r候是需要知道主機的MAC地址也就是其硬件地址的來發(fā)送和接收數(shù)據(jù)的;如果接收到的數(shù)據(jù)包的MAC地址與本機不符,則直接丟棄;若相符,則在解析之后誤差錯就交付給上一層處理。

-------------------------------------------------------------------------------------------


二. ARP工作流程

  1. 當需要知道目的主機的MAC地址時,在發(fā)送數(shù)據(jù)幀之前需要先發(fā)送一個ARP請求數(shù)據(jù)報,而這個數(shù)據(jù)報是發(fā)送給局域網(wǎng)內(nèi)所有主機的,也就是以廣播的形式來告知局域網(wǎng)內(nèi)的主機們要找的是IP地址為XXX的主機的MAC地址;

  2. 當主機們收到這個ARP數(shù)據(jù)報時,如果請求中的目的IP地址與自身的IP不相符,則直接丟棄不處理;當IP地址就是源主機要找的主機時,就對ARP請求進行處理,之后再給發(fā)送ARP請求的源主機一個ARP應答數(shù)據(jù)報,并將自身的MAC地址填充其中;

  3. 而最后源主機收到ARP應答數(shù)據(jù)報之后,再進行處理獲得MAC地址,就可以直接將要發(fā)送的數(shù)據(jù)給發(fā)送過去了;

-------------------------------------------------------------------------------------------


三. ARP數(shù)據(jù)報格式

不管是發(fā)送ARP請求的數(shù)據(jù)報還是ARP應答數(shù)據(jù)報,其格式如下:

ARP數(shù)據(jù)報傳送格式其中:

  • 以太網(wǎng)目的地址是目的主機的MAC地址,共6個字節(jié),當ARP作為請求發(fā)送時并不知道,因此是全F;當ARP作為應答回應時,以太網(wǎng)目的地址是請求的源主機MAC地址;

  • 以太網(wǎng)源地址就是發(fā)送ARP主機的MAC地址,也是6個字節(jié),作為請求是源主機MAC地址,作為應答是目的主機MAC地址;

  • 幀類型就是ARP,2個字節(jié)來存放;

  • 硬件類型是處理當前網(wǎng)絡的鏈路層網(wǎng)絡類型,當前為以太網(wǎng)就是1,占用2個字節(jié);

  • 協(xié)議類型是指要轉(zhuǎn)換的地址類型,當前要轉(zhuǎn)換的是IP地址,仍然占用2個字節(jié);

  • 硬件地址長度也就是MAC地址的長度,為6個字節(jié),因此“6”這個數(shù)字就用一個字節(jié)就能存放了;

  • 協(xié)議地址長度是指當前的IP地址長度,也是用一個字節(jié)就能存放了,IPv4為4個字節(jié),IPv6為16個字節(jié);

  • op為1的話表示請求,2表示應答;

  • 發(fā)送端以太網(wǎng)地址就是發(fā)送ARP數(shù)據(jù)報的以太網(wǎng)網(wǎng)地址,也就是前面的以太網(wǎng)源地址,同樣為6個字節(jié)的空間;

  • 發(fā)送端IP地址就是發(fā)送ARP數(shù)據(jù)報的主機IP地址,4個字節(jié);

  • 目的以太網(wǎng)地址當為請求時是全F,應答時就為源主機MAC地址,6字節(jié);

  • 目的IP地址當請求時為目的主機的IP地址,當為應答時就為源主機IP地址,4個字節(jié);


前面三個部分14個字節(jié)是以太網(wǎng)的頭部信息,而后面的28個字節(jié)就是ARP數(shù)據(jù)報的請求/應答的有效載荷信息;


-------------------------------------------------------------------------------------------

栗子時間:

下面舉個具體的栗子來分析上面ARP數(shù)據(jù)報的信息;

ARP數(shù)據(jù)報傳送格式

因為以太網(wǎng)中數(shù)據(jù)報中的有效信息最小字節(jié)數(shù)為46最大為1500,因此,ARP數(shù)據(jù)報中不夠46位需要填充,而填充位內(nèi)容沒有定義,與具體實現(xiàn)相關(guān);

上面的數(shù)據(jù)報為ARP請求數(shù)據(jù)報,也就是源主機請求目的主機的MAC地址,從上面可以看出,源主機的IP地址為 c0 a8 00 37 也就是192.168.0.55,而目的主機的IP地址是 c0 a8 00 02 也就是192.168.0.2;


下面為對上面ARP請求的一個應答ARP:

ARP數(shù)據(jù)報傳送格式

在ARP請求數(shù)據(jù)報中,發(fā)送端IP為192.168.0.55,接收端也就是目的IP為192.168.0.2;

在ARP應答數(shù)據(jù)報中,發(fā)送端IP為192.168.0.2,接收端為192.168.0.55;


    從上面對ARP請求數(shù)據(jù)報和ARP應答數(shù)據(jù)報的分析中可以看出,兩個主機都作為目的主機和源主機,當一個源主機要給目的主機發(fā)送數(shù)據(jù)但不知道其MAC地址時,就可以使用ARP請求數(shù)據(jù)報在局域網(wǎng)內(nèi)請求目的主句的MAC地址,而當目的主機在收到ARP請求數(shù)據(jù)報發(fā)現(xiàn)其請求的IP地址和自身相符的時候,就會做出ARP應答并將自己的MAC地址填充其中,這樣源主機接收ARP應答數(shù)據(jù)報之后提取目的主機的MAC地址就能夠?qū)崿F(xiàn)發(fā)送數(shù)據(jù)了。



《完》

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI