您當前的位置:首頁 > 體育

科普向-MAC地址

作者:由 葉煥新 發表于 體育時間:2020-09-29

1.MAC地址

1.1.MAC地址作用

MAC地址用來定義網路裝置的位置,由48位元長、12位的16進位制數字組成,從左到右開始,1到24bit是廠商向IETF等機構申請用來標識廠商的程式碼,25到48bit由廠商自行分派,是各個廠商製造的所有網絡卡的一個唯一編號。

1.2.MAC地址分類

物理MAC地址:第8bit為0的MAC地址為物理MAC地址,用來唯一標識乙太網上的一個終端,全球唯一的硬體地址。

廣播MAC地址:全1的MAC地址(FF-FF-FF-FF-FF-FF),用來表示LAN上的所有終端裝置。

組播MAC地址:除廣播地址外,第8bit為1的MAC地址為組播MAC地址,用來代表LAN上的一組終端。

2.原理

2.1.組成及轉發原理

科普向-MAC地址

MAC地址表記錄裝置學習到的其他裝置的MAC地址與介面的對應關係,以及介面所屬VLAN等資訊。

MAC地址表用於指導報文進行單播轉發,裝置在轉發報文時,根據報文的目的MAC地址查詢MAC地址表:

如果MAC地址表中包含與報文目的MAC地址對應的表項,則直接透過該表項中的出介面轉發該報文;

如果MAC地址表中沒有包含報文目的MAC地址對應的表項時,裝置將採取廣播方式在所屬VLAN內除接收介面外的所有介面轉發該報文。

2.2.學習及老化

一般情況下,MAC地址表是裝置根據收到的資料幀裡的源MAC地址自動學習而建立的。

如果MAC地址表中不存在該MAC地址表項,裝置則將這個新MAC地址以及該MAC地址對應的Port和VLAN ID作為一個新的表項加入到MAC地址表中。

如果MAC地址表中已經存在該MAC地址表項,裝置將透過重置該表項的老化時間,對該表項進行更新。

裝置只有在收到資料幀時,才會觸發MAC地址的學習和重新整理。

裝置所有介面預設加入VLAN1,如果不做修改所有MAC地址表項的VLANID都是VLAN1。

裝置對於BPDU MAC(形如:0180-c200-xxxx)不會進行MAC地址學習。

為適應網路的變化,MAC表需要不斷更新。MAC表中自動生成的表項(即動態表項)並非永遠有效,每一條表項都有一個生存週期,到達生存週期仍得不到更新的表項將被刪除,這個生存週期被稱作老化時間,預設300S。如果在到達生存週期前記錄被更新,則該表項的老化時間重新計算。

2.3.MAC地址表項

由介面透過報文中的源MAC地址學習獲得,表項可老化。

在系統復位、介面板熱插拔或介面板復位後,動態表項會丟失。

透過檢視動態MAC地址表項,可以判斷兩臺相連裝置之間是否有資料轉發。

透過檢視指定動態MAC地址表項的個數,可以獲取介面下通訊的使用者數。

2.4.靜態表項

由使用者手工配置,並下發到各介面板,表項不可老化。

在系統復位、介面板熱插拔或介面板復位後,儲存的表項不會丟失。

介面和MAC地址靜態繫結後,其他介面收到源MAC是該MAC地址的報文將會被丟棄。

一條靜態MAC地址表項,只能繫結一個出介面。

一個介面和MAC地址靜態繫結後,不會影響該介面動態MAC地址表項的學習。

透過繫結靜態MAC地址表項,可以保證合法使用者的使用,防止其他使用者使用該MAC進行攻擊。

2.5.黑洞表項

由使用者手工配置,並下發到各介面板,表項不可老化。

在系統復位、介面板熱插拔或介面板復位後,儲存的表項不會丟失。

配置黑洞MAC地址後,源MAC地址或目的MAC地址是該MAC的報文將會被丟棄。

透過配置黑洞MAC地址表項,可以過濾掉非法使用者。

3.埠安全

定義與分類

埠安全(Port Security)透過將介面學習到的動態MAC地址轉換為安全MAC地址(包括安全動態MAC和Sticky MAC),阻止除安全MAC和靜態MAC之外的主機透過本介面和裝置通訊,從而增強裝置的安全性。

4.安全動態MAC地址

使能埠安全而未使能Sticky MAC功能時轉換的MAC地址。

裝置重啟後表項會丟失,需要重新學習。

預設情況下不會被老化,只有在配置安全MAC的老化時間後才可以被老化。

5.Sticky MAC地址

使能埠安全後又同時使能Sticky MAC功能後轉換到的MAC地址。

不會被老化,手動儲存配置後重啟裝置不會丟失。

說明:

未使能埠安全功能時,裝置的MAC地址表項可透過動態學習或靜態配置。

當某個介面使能埠安全功能後,該介面上之前學習到的動態MAC地址表項會被刪除,之後學習到的MAC地址將變為安全動態MAC地址,此時該介面僅允許匹配安全MAC地址或靜態MAC地址的報文透過。

若接著使能Sticky MAC功能,安全動態MAC地址表項將轉化為Sticky MAC表項,之後學習到的MAC地址也變為Sticky MAC地址。

直到安全MAC地址數量達到限制,將不再學習MAC地址,並對介面或報文采取配置的保護動作。

6.保護動作

介面上安全MAC地址數達到限制後,如果收到源MAC地址不存在的報文,埠安全則認為有非法使用者攻擊,就會根據配置的動作對介面做保護處理。

6.1.restrict

丟棄源MAC地址不存在的報文並上報告警。華為裝置預設處理動作。

6.2.protect

只丟棄源MAC地址不存在的報文,不上報告警。

6.3.shutdown

介面狀態被置為error-down,並上報告警。

預設情況下,介面關閉後不會自動恢復,只能由網路管理人員執行undo shutdown命令手動恢復,也可以在介面檢視下執行restart命令重啟介面。

7.MAC地址漂移

7.1.產生原因

MAC地址漂移是指裝置上一個VLAN內有兩個埠學習到同一個MAC地址,後學習到的MAC地址表項覆蓋原MAC地址表項的現象。

正常情況下,網路中不會在短時間內出現大量MAC地址漂移的情況。出現這種現象一般都意味著網路中存在環路,可以透過檢視告警資訊和漂移記錄,快速定位和排除環路。

科普向-MAC地址

若SwitchB和SwitchC之間誤接網線,則Router、SwitchB、SwitchC之間形成環路。當RouterA上Port1介面從網路中收到一個廣播報文後轉發給Router,該報文經過環路,會被RouterA上Port2介面收到。在介面Port2上配置MAC地址漂移檢測,此時RouterA會感知到MAC地址學習介面跳變的現象。若連續出現此現象,則在RouterA上可以判斷出現了MAC地址漂移。

7.2.MAC地址漂移檢測

MAC地址漂移檢測是利用MAC地址學習時介面跳變實現的,因此能提供的資訊與MAC地址學習相關,包括MAC地址、VLAN,以及跳變的介面等診斷資訊。其中跳變的介面即為可能出現環路的介面。網路管理員根據網路中每臺裝置上出現的跳變介面,以及網路拓撲,判斷環路的源頭。

MAC地址漂移檢測是單臺裝置根據MAC學習變化感知到流量拓撲變化,是一種單點技術,無法精確感知網路拓撲。因而該技術應用有一定的場景限制,建議使用在下掛網路成環場景(即上圖場景)。

解決方法

1)提高介面MAC地址學習優先順序;

2)不允許相同優先順序的介面發生MAC地址表項覆蓋。

標簽: Mac  地址  表項  介面  報文