HCNP Routing&Switching之MAC地址防漂移
- 2022 年 8 月 28 日
- 筆記
- HCNP Routing&Switching, MAC-Spoofing-Defend, MAC地址漂移懲罰動作, MAC地址防漂移技術, 防止MAC地址漂移核心思想, 防止MAC地址漂移配置
前文我們了解了二層埠安全技術相關話題,回顧請參考//www.cnblogs.com/qiuhom-1874/p/16631222.html;今天我們來聊一聊MAC地址防漂移技術;
首先我們來了解下什麼叫做MAC地址漂移呢?所謂MAC地址漂移是指在交換機上的一個埠學習到的MAC在同VLAN下的其他埠也學習到了相同的MAC地址;即該MAC地址在同一交換機下的相同VLAN的多個埠之間來回漂浮,一會在這口,一會在那口;我們把這種現象叫做MAC地址漂移現象;發生MAC地址漂移現象的原因只有兩種,一種是網路中存在環路;一種就是網路中存在惡意用戶偽造MAC地址來欺騙交換機;
防止MAC地址漂移核心思想
1、我們知道默認情況下交換機的所有埠學習MAC地址的優先順序是相同的(優先順序為0),同時默認情況下交換機也是允許相同優先順序學習到的MAC地址漂移;所以我們想要防止某個埠下學習到的MAC不會漂移到其他介面下,我們可以提高該埠學習到MAC地址的優先順序,這樣一來交換機如果再從其他埠學習到相同MAC地址,會對比優先順序;這樣一來我們就可以優先的防止相同MAC在其他埠學習到(相同MAC是指在我們配置的埠下正常該學習到的MAC);
2、默認交換機是開啟了允許相同優先順序學習到的MAC漂移,我們關閉了該功能即可;
3、MAC-Spoofing-Defend,該技術是用來配置信任埠來防止MAC地址漂移;具體就是我們在全局開啟該功能以後,然後在信任的埠下使用相同命令配置對應埠為信任埠;這樣一來,在信任埠下學習到的MAC地址在其他非信任埠下就不能夠被學習;
MAC地址漂移懲罰動作
MAC地址漂移懲罰是指當交換機檢查到有MAC地址漂移時,觸發的保護動作;
1、quit-VLAN:該動作表示退出當前VLAN;即當交換機檢測到有MAC地址漂移,就就會把對應埠提出對應VLAN,從而來保護現有網路的穩定;
2、err-down:該動作表示關閉介面,即一旦交換機檢測到有MAC地址漂移,即把對應埠給shutdown掉;
防止MAC地址漂移配置
實驗:如下拓撲,配置防止MAC地址漂移
如上配置,我們在三個pc1和pc2正常通訊的情況下,來查看mac地址表
提示:可以看到pc1和pc2正常通行,交換機正常學習和記錄對應mac地址和對應介面;
當pc3模擬pc1發包,看看對應mac地址會發生變化呢?
提示:可以看到當pc3一發包,對應交換機的mac地址表項就發生了變化,從原來的1口變為了3口;這是因為交換默認開了相同優先順序的mac地址可以漂移;
1、通過配置優先順序來限制MAC地址漂移現象
提示:上述命令表示在g0/0/1口學習到的mac地址,優先順序為1;
驗證:先pc1發包,然後pc3再發包,看看對應交換機的mac地址表項是否會發生變化呢?
提示:可以看到現在配置了mac地址學習優先順序以後,pc3再次發包欺騙,對應交換機是不會學習pc3發送的源mac;同時交換機也告警,介面g0/0/1的mac在g0/0/3上浮動,請檢查網路;
2、通過取消相同優先順序允許mac地址漂移來防止mac地址漂移
刪除優先順序配置
取消允許相同優先順序為0的mac漂移
提示:該命令在全局模式下使用,表示取消所有埠運行相同優先順序為0mac地址浮動;
驗證:先pc1發包,然後pc3再發包,看看對應交換機的mac地址表項是否會發生變化呢?
提示:可以看到交換機的mac地址表項沒有發生變化,對應pc1的mac對應g0/0/1,pc2的mac對應g0/0/2;pc3攻擊欺騙交換機,對應交換機沒有學習pc3的源mac,同時也給出了告警;
3、通過MAC-Spoofing-defend來限制mac地址漂移
恢復交換機默認配置
在交換機全局開啟MAC-Spoofing-Defend
在信任的介面下開啟mac-spoofing-defend
提示:這個是模擬器bug,在真機是可以正常開啟的;
配置發生MAC漂移的懲罰動作
quit-vlan懲罰動作的配置
把三個介面都加入到vlan10
全局開啟MAC地址漂移檢測
提示:不管後面的懲罰動作是quit-vlan,還是err-down,都需要先在全局開啟MAC地址漂移檢查功能,對應配置才會生效;
在g0/0/3下配置發生mac地址漂移時,退出vlan10
提示:需要懲罰那個介面,就在那個介面下配置即可;
驗證:先pc1正常發包,然後pc3攻擊欺騙交換機,看看對應g0/0/3口是否會退出vlan 10 呢?
提示:可以看到當交換機檢側出發生了MAC地址漂移後,對應會把g0/0/3口踢出vlan10,從而阻斷g0/0/3的介面的流量流入vlan10;這裡需要注意檢測需要檢測出一定次數才會觸發這個保護動作;
查看MAC地址漂移記錄
修改mac地址漂移記錄老化時間
提示:默認老化時間為300秒;
修改quit-vlan默認恢復時間
提示:默認quit-vlan恢復時間為10分鐘;設置為0表示不自動恢復;
再次查看漂移記錄?對應介面是否回到vlan呢?
提示:可以看到現在g0/0/3已經恢復到vlan10;
err-down懲罰動作的配置
驗證:先pc1發包,然後pc3發包,看看對應介面是否會被down掉?
提示:可以看到當mac地址漂移發生一定次數以後,對應介面就會down,並發出告警;
查看err-down
提示:可以看到g0/0/3是因為mac地址漂移而觸發的err-down;並且對應沒有恢復時間;
設置err-down的恢復時間
提示:設置了err-down恢復時間,它這個不針對之前的err-down,只對設置後發生mac地址漂移觸發的err-down生效;如果在沒有設置自動恢復時間,我們可以先把介面shutdown,然後再undo shutdown,來恢復介面;
重新觸發err-down,看看對應介面是否會自動恢復呢
提示:可以看到當觸發了err-down以後,對應介面會被down掉;當自動恢復時間到期以後,對應介面又會重新恢復到up狀態;