溫馨提示×

溫馨提示×

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

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

計(jì)算機(jī)網(wǎng)絡(luò)中的MAC幀

發(fā)布時(shí)間:2020-07-23 11:35:57 來源:網(wǎng)絡(luò) 閱讀:2749 作者:mdd9502053669 欄目:網(wǎng)絡(luò)安全

一.數(shù)據(jù)鏈路層

  數(shù)據(jù)鏈路層實(shí)現(xiàn)的是相鄰結(jié)點(diǎn)之間的邏輯鏈接,其使用的協(xié)議單元為數(shù)據(jù)幀。在兩個(gè)結(jié)點(diǎn)之間傳送數(shù)據(jù)時(shí),數(shù)據(jù)鏈路層將網(wǎng)絡(luò)層交下來的IP數(shù)據(jù)報(bào)組裝成幀,在兩個(gè)相鄰節(jié)點(diǎn)間的鏈路上傳送幀。

   數(shù)據(jù)鏈路層的三個(gè)基本問題:

         1.封裝成幀,2.透明傳輸,3.差錯(cuò)檢測

下來討論一下封裝成幀 :

   封裝成幀就是在一段數(shù)據(jù)的前后分別添加首部和尾部,這樣就構(gòu)成了一個(gè)幀。網(wǎng)絡(luò)層的IP數(shù)據(jù)報(bào)傳送到數(shù)據(jù)鏈路層就成為了幀的數(shù)據(jù)部分,在幀的數(shù)據(jù)部分前后分別加上頭部和尾部就構(gòu)成了一個(gè)完整的幀。

二.以太網(wǎng)的MAC層

   1.MAC 層的硬件地址

       在局域網(wǎng)中,硬件地址又稱為物理地址或者MAC 地址。長度是48位,是在網(wǎng)卡出廠

時(shí)固化的。在LINUX 下用ifconfig命令看一下,“HWaddr 00:15:F2:14:9E:3F”部分就是硬件地址。在生產(chǎn)適配器時(shí),這6字節(jié)MAC地址已被固化在適配器的ROM中。因此實(shí)際上就是適配器地址或適配器標(biāo)識(shí)符。

   2.MAC幀的格式

   計(jì)算機(jī)網(wǎng)絡(luò)中的MAC幀

其中目的地址和源地址就是MAC地址,幀協(xié)議類型字段有三種值,分別對(duì)應(yīng)IP、ARP(地址解析)、RARP(逆地址解析)。幀末尾是CRC校驗(yàn)碼。

 以太網(wǎng)幀中的數(shù)據(jù)長度規(guī)定最小46字節(jié),最大1500字節(jié),ARP和RARP數(shù)據(jù)包的長度不夠46字節(jié),要在后面補(bǔ)填充位。最大值1500稱為以太網(wǎng)的最大傳輸單元(MTU),不同的網(wǎng)絡(luò)類型有不同的MTU,如果一個(gè)數(shù)據(jù)包從以太網(wǎng)路由到撥號(hào)鏈路上,數(shù)據(jù)包長度大于撥號(hào)鏈路的MTU了,則 需要對(duì)數(shù)據(jù)包進(jìn)行分片(fragmentation)。LINUX下的ifconfig命令的輸出中也有“MTU:1500”。注意,MTU這 個(gè)概念指數(shù)據(jù)幀中有效載荷的最大長度,不包括幀首部的長度。

3.ARP數(shù)據(jù)報(bào)格式 

在網(wǎng)絡(luò)通訊時(shí),源主機(jī)的應(yīng)用程序知道目的主機(jī)的IP地址和端口號(hào),卻不知道目的主機(jī)的硬件地址,而數(shù)據(jù)包首先是被網(wǎng)卡接收到再去處理上層協(xié)議的,如果接收到的數(shù)據(jù)包的硬件地址與本機(jī)不符,則直接丟棄。因此在通訊前必須獲得目的主機(jī)的硬件地址。ARP協(xié)議就起到這個(gè)作用。

   源主機(jī)發(fā)出ARP請求,詢問“IP地址是192.168.0.1的主機(jī)的硬件地址是多少”,并將這個(gè)請求廣播到本地網(wǎng)段(以太網(wǎng)幀首部的硬件地址填FF:FF:FF:FF:FF:FF表示廣播),目的主機(jī)接收到廣播的ARP請求,發(fā)現(xiàn)其中的IP地址與本機(jī)相符,則發(fā)送一個(gè)ARP應(yīng)答數(shù)據(jù)包給源主機(jī),將自己的硬件地址填寫在應(yīng)答包中。

每臺(tái)主機(jī)都維護(hù)一個(gè)ARP緩存表,在LINUX下可以用arp -a命令查看。緩存表中的表項(xiàng)有過期時(shí)間(一般為20分鐘),如果20分鐘內(nèi)沒有再次使用某個(gè)表項(xiàng),則該表項(xiàng)失效,下次還要發(fā)ARP請求來獲得目的主機(jī)的硬件地址。

 ARP數(shù)據(jù)報(bào)幀格式如下圖所示:

  計(jì)算機(jī)網(wǎng)絡(luò)中的MAC幀

 

注意到源MAC地址、目的MAC地址在以太網(wǎng)首部和ARP請求中各出現(xiàn)一次,對(duì)于鏈路層為以太網(wǎng) 的情況是多余的,但如果鏈路層是其它類型的網(wǎng)絡(luò)則有可能是必要的。硬件類型指鏈路層網(wǎng)絡(luò)類型,1為以太網(wǎng),協(xié)議類型指要轉(zhuǎn)換的地址類型,0x0800為IP地址,后面兩個(gè)地址長度對(duì)于以太網(wǎng)地址和IP地址分別為6和4(字節(jié)),op字段為1表示ARP請求,op字段為2表示ARP應(yīng)答。

下面舉一個(gè)具體的例子:

 主機(jī)1向主機(jī)2發(fā)送ARP請求:

計(jì)算機(jī)網(wǎng)絡(luò)中的MAC幀

 主機(jī)2向主機(jī)1ARP應(yīng)答:


計(jì)算機(jī)網(wǎng)絡(luò)中的MAC幀





  

  


向AI問一下細(xì)節(jié)

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

AI