在網絡中MAC地址是設備中不變的物理地址,控制MAC地址接入就控制了交換機的端口接入,所以端口安全也是對MAC的的安全。在交換機中CAM(Content Addressable Memory,內容可尋址內存表)表,又叫MAC地址表,其中記錄了與交換機相連的設備的MAC地址、端口號、所屬vlan等對應關系。
一、MAC地址表分為三張
1、靜態MAC地址表,手工綁定,優先級高於動態MAC地址表
2、動態MAC地址表,交換機收到數據幀后會將源mac學習到MAC地址表中
3、黑洞MAC地址表,手工綁定或自動學習,用於丟棄指定MAC地址
二、MAC地址表的管理命令
1、查看mac地址表
<Huawei>display mac-address
2、配置靜態mac地址表
[Huawei] mac-address static 5489-98C0-7E34 GigabitEthernet 0/0/1 vlan 1 將mac地址綁定到接口g0/0/1在vlan1中有效
3、配置黑洞mac地址表
[Huawei] mac-address blackhole 5489-987f-161a vlan 1 在vlan1中收到源或目的為此mac時丟棄幀
4、禁止端口學習mac地址,可以在端口或者vlan中禁止mac地址學習功能
[Huawei-GigabitEthernet0/0/1]mac-address learning disable action discard
禁止學習mac地址,並將收到的所有幀丟棄,也可以在vlan中配置
[Huawei-GigabitEthernet0/0/1] mac-address learning disable action forward
禁止學習mac地址,但是將收到幀以泛紅方式轉發(交換機對於未知目的mac地址轉發原理),也可以在vlan中配置
5、限制MAC地址學習數量,可以端口或者vlan中配置
[Huawei-GigabitEthernet0/0/1]mac-limit maximum 9 alarm enable
交換機限制mac地址學習數量為9個,並在超出數量時發出告警,超過的MAC數量將無法被端口學習到,但是可以通過泛紅轉發(交換機對於未知目的mac地址轉發原理),也可以在vlan中配置
6、配置端口安全動態mac地址
此功能是將動態學習到的MAC地址設置為安全屬性,其他沒有被學習到的非安全屬性的MAC的幀將被端口丟棄
[Huawei-GigabitEthernet0/0/3]port-security enable 打開端口安全功能
[Huawei-GigabitEthernet0/0/3]port-security max-mac-num 1 限制安全MAC地址最大數量為1個,默認為1
[Huawei-GigabitEthernet0/0/3]port-security protect-action ? 配置其他非安全mac地址數據幀的處理動作
protect Discard packets 丟棄,不產生告警信息
restrict Discard packets and warning 丟棄,產生告警信息(默認的)
shutdown Shutdown 丟棄,並將端口shutdown
[Huawei-GigabitEthernet0/0/3]port-security aging-time 300 配置安全MAC地址的老化時間300s,默認不老化
在端口安全動態MAC地址中,配置如上的話,在g0/0/3端口學習到的第一個MAC地址設置為安全MAC地址,此外其他MAC地址在接入端口的話都不給予轉發,在300s后刷新安全MAC地址表,並且重新學習安全MAC地址,(哪個MAC地址)先到就先被學到端口並設置為安全MAC地址,但是在交換機重啟后安全MAC地址會被清空重新學習。
7、配置端口安全Sticky貼粘MAC地址
此功能與端口安全動態mac地址一直,唯一不同的是:粘貼MAC地址不會老化,切交換重啟后依然存在,動態安全mac地址只能動態學到而安全粘貼MAC可以動態學習也可以手工配置。
[Huawei-GigabitEthernet0/0/3]port-security enable 打開端口安全功能
[Huawei-GigabitEthernet0/0/3]port-security mac-address sticky 打開安全粘貼MAC功能
[Huawei-GigabitEthernet0/0/3]port-security max-mac-num 1 限制安全MAC地址最大數量為1個,默認為1
[Huawei-GigabitEthernet0/0/3]port-security mac-address sticky 5489-98D8-71D5 vlan 1 手工綁定粘貼MAC地址和所屬vlan
[Huawei-GigabitEthernet0/0/3]port-security protect-action restrict 配置其他非安全mac地址數據幀的處理動作
查看粘貼MAC地址狀態
[Huawei-GigabitEthernet0/0/3] display mac-address
MAC address table of slot 0:
-------------------------------------------------------------------------------
MAC Address VLAN/ PEVLAN CEVLAN Port Type LSP/LSR-ID
VSI/SI MAC-Tunnel
-------------------------------------------------------------------------------
5489-98d8-71d5 1 - - GE0/0/3 sticky -
-------------------------------------------------------------------------------
Total matching items on slot 0 displayed = 1
[Huawei-GigabitEthernet0/0/3]
8、配置MAC地址防漂移功能
MAC地址漂移就是:在一個接口學習到的MAC地址在同一個vlan中的其他接口上也被學習到,這樣后學習的MAC地址信息就會覆蓋先學到的MAC地址信息(出接口頻繁變動),這種情況多數為出現環路的時候發生,所以這個功能也可以用來排查和解決環路問題。
MAC地址防止漂移功能的原理是,在接口上配置優先級,優先級高的接口學習到的MAC地址不會在桶vlan的優先級低的其他接口上被學到,如果優先級相同那么可以配置不允許相同優先級的接口學習到同一個MAC地址。
[Huawei]mac-address flapping detection 全局開啟MAC漂移檢測
[Huawei]interface g0/0/2
[Huawei-GigabitEthernet0/0/2]mac-learning priority 3 配置g0/0/2的接口優先級為3,默認為0
[Huawei-GigabitEthernet0/0/2]mac-address flapping trigger error-down 接口發生MAC地址漂移后關閉
[Huawei-GigabitEthernet0/0/2]quit
[Huawei]interface g0/0/3
[Huawei-GigabitEthernet0/0/3]mac-address flapping trigger error-down 接口發生MAC地址漂移后關閉
[Huawei-GigabitEthernet0/0/3]quit
配置完成后,當g0/0/2的MAC漂移到g0/0/3后,g0/0/3端口將被關閉。
查看MAC地址漂移記錄命令:[Huawei]display mac-address flapping record 查看MAC地址漂移記錄
9、配置丟棄全0的MAC地址報文功能
在網絡中一些主機或者設備在發生故障時,會發送全源和目的MAC地址為全0的幀,可以配置交換機丟棄這些錯誤報文功能。
[Huawei]drop illegal-mac enable 打開丟棄全零mac地址功能
[Huawei]snmp-agent trap enable feature-name lldptrap 開啟snmp的lldptrap告警功能
[Huawei]drop illegal-mac alarm 打開收到全0報文告警功能,前提是必須開啟snmp的lldptrap告警功能
10、配置MAC地址刷新arp功能
mac信息更新后(如用戶更換接入端口)自動刷新arp表項功能
[Huawei]mac-address update arp
11、配置端口橋接功能
正常情況下,交換機在收到源MAC地址和目的MAC地址的出接口為同一個接口的報文時,就認為該報文為非法報文,進行丟棄,但是有些情況下數據幀的源MAC和目的MAC地址又確實是同一個出接口,為了讓交換機能夠不丟棄這些特殊情況下的幀需要啟用交換的端口橋功能,比如交換機下掛了不具備二層轉發能力的HUB設備,或者下掛了一台啟用了多個虛擬機的服務器,這樣在這些下掛設備的下面的主機通信都是通過交換機的同一個接口收發的,所以這些幀是正常的幀不能丟棄。
[Huawei]interface g0/0/10
[Huawei-GigabitEthernet0/0/10] port bridge enable 為接口開啟橋功能
[Huawei-GigabitEthernet0/0/10] quit
原文:https://blog.csdn.net/alone_map/article/details/52459199