一種mac地址學(xué)習(xí)的控制方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及MAC (Media Access Control)地址學(xué)習(xí)領(lǐng)域,尤其涉及一種MAC地址學(xué)習(xí)的控制方法及裝置。
【背景技術(shù)】
[0002]芯片中MAC表的規(guī)格都是一定的,MAC表的容量也是有限的,當(dāng)黑客偽造大量源MAC地址不同的報(bào)文并發(fā)送到設(shè)備后,設(shè)備上的MAC地址表就可能被這些源MAC地址填滿,尤其在軟件學(xué)習(xí)模式下,還會(huì)造成對CPU的沖擊。如此,當(dāng)MAC地址表被填滿后,即使它再收到正常的報(bào)文,也無法學(xué)習(xí)到正常報(bào)文中的源MAC地址。
[0003]目前,針對這種沖擊MAC表的行為,基本都是采用基于端口或VLAN (VirtualLAN)關(guān)閉MAC地址學(xué)習(xí),或者采用基于端口或VLAN進(jìn)行MAC地址學(xué)習(xí)數(shù)的限制來防止這種沖擊。上述方案雖然可以達(dá)到防止沖擊報(bào)文填滿整個(gè)MAC表的目的,但沖擊報(bào)文還是有一定數(shù)目的源MAC地址已經(jīng)學(xué)習(xí)到MAC表中,占用了 MAC表的資源,在一定情況下還會(huì)造成MAC地址的漂移,帶來其它的安全隱患;而且,關(guān)閉MAC地址學(xué)習(xí)和進(jìn)行MAC地址學(xué)習(xí)數(shù)的限制是針對整個(gè)端口或VLAN的,會(huì)導(dǎo)致之后正常的報(bào)文也無法學(xué)習(xí)到。
【發(fā)明內(nèi)容】
[0004]本發(fā)明的目的在于提供一種MAC地址學(xué)習(xí)的控制方法及裝置。
[0005]為實(shí)現(xiàn)上述發(fā)明目的之一,本發(fā)明一實(shí)施方式提供一種MAC地址學(xué)習(xí)的控制方法,包括步驟:
接收報(bào)文;
解析所述報(bào)文,得到所述報(bào)文的源MAC地址及對應(yīng)的目的MAC地址;
匹配所述報(bào)文的所述目的MAC地址及MAC表中的地址條目,若匹配成功,允許學(xué)習(xí)對應(yīng)的所述源MAC地址,若匹配失敗,禁止學(xué)習(xí)對應(yīng)的所述源MAC地址。
[0006]作為本發(fā)明一實(shí)施方式的進(jìn)一步改進(jìn),步驟“匹配所述報(bào)文的所述目的MAC地址及MAC表中的地址條目,若匹配成功,允許學(xué)習(xí)對應(yīng)的所述源MAC地址,若匹配失敗,禁止學(xué)習(xí)對應(yīng)的所述源MAC地址”具體包括:
匹配所述報(bào)文的所述目的MAC地址及MAC表中的地址條目,若匹配成功,將對應(yīng)的所述源MAC地址關(guān)聯(lián)到允許學(xué)習(xí)狀態(tài),若匹配失敗,將對應(yīng)的所述源MAC地址關(guān)聯(lián)到禁止學(xué)習(xí)狀態(tài);
學(xué)習(xí)所述允許學(xué)習(xí)狀態(tài)對應(yīng)的所述源MAC地址,且丟棄所述禁止學(xué)習(xí)狀態(tài)對應(yīng)的所述源MAC地址。
[0007]作為本發(fā)明一實(shí)施方式的進(jìn)一步改進(jìn),所述源MAC地址的初始學(xué)習(xí)狀態(tài)為禁止學(xué)習(xí)狀態(tài),步驟“匹配所述報(bào)文的所述目的MAC地址及MAC表中的地址條目,若匹配成功,將對應(yīng)的所述源MAC地址關(guān)聯(lián)到允許學(xué)習(xí)狀態(tài),若匹配失敗,將對應(yīng)的所述源MAC地址關(guān)聯(lián)到禁止學(xué)習(xí)狀態(tài)”具體包括:匹配所述報(bào)文的所述目的MAC地址及MAC表中的地址條目,若匹配成功,將對應(yīng)的所述源MAC地址修改為允許學(xué)習(xí)狀態(tài),若匹配失敗,將對應(yīng)的所述源MAC地址維持為禁止學(xué)習(xí)狀
??τ O
[0008]作為本發(fā)明一實(shí)施方式的進(jìn)一步改進(jìn),所述源MAC地址的初始學(xué)習(xí)狀態(tài)為允許學(xué)習(xí)狀態(tài),步驟“匹配所述報(bào)文的所述目的MAC地址及MAC表中的地址條目,若匹配成功,將對應(yīng)的所述源MAC地址關(guān)聯(lián)到允許學(xué)習(xí)狀態(tài),若匹配失敗,將對應(yīng)的所述源MAC地址關(guān)聯(lián)到禁止學(xué)習(xí)狀態(tài)”具體包括:
匹配所述報(bào)文的所述目的MAC地址及MAC表中的地址條目,若匹配成功,將對應(yīng)的所述源MAC地址維持為允許學(xué)習(xí)狀態(tài),若匹配失敗,將對應(yīng)的所述源MAC地址修改為禁止學(xué)習(xí)狀
??τ O
[0009]作為本發(fā)明一實(shí)施方式的進(jìn)一步改進(jìn),所述允許學(xué)習(xí)狀態(tài)及所述禁止學(xué)習(xí)狀態(tài)對應(yīng)AD表。
[0010]為實(shí)現(xiàn)上述發(fā)明目的之一,本發(fā)明一實(shí)施方式提供一種MAC地址學(xué)習(xí)的控制裝置,包括MAC表、接收模塊、解析模塊、匹配模塊及學(xué)習(xí)模塊,所述MAC表包含地址條目;接收模塊用于接收報(bào)文;解析模塊用于解析并得到所述報(bào)文的源MAC地址及對應(yīng)的目的MAC地址;匹配模塊用于匹配所述報(bào)文的所述目的MAC地址及所述地址條目;若匹配成功,所述學(xué)習(xí)模塊用于將對應(yīng)的所述源MAC地址學(xué)習(xí)到所述MAC表中,若匹配失敗,所述學(xué)習(xí)模塊用于丟棄對應(yīng)的所述源MAC地址。
[0011]作為本發(fā)明一實(shí)施方式的進(jìn)一步改進(jìn),所述裝置還包括AD表,所述AD表中包括允許學(xué)習(xí)單元及禁止學(xué)習(xí)單元,若匹配成功,所述學(xué)習(xí)模塊用于將對應(yīng)的所述源MAC地址關(guān)聯(lián)至所述允許學(xué)習(xí)單元,若匹配失敗,所述學(xué)習(xí)模塊用于將對應(yīng)的所述源MAC地址關(guān)聯(lián)至所述禁止學(xué)習(xí)單元。
[0012]作為本發(fā)明一實(shí)施方式的進(jìn)一步改進(jìn),所述源MAC地址的初始狀態(tài)為與所述禁止學(xué)習(xí)單元相關(guān)聯(lián),若匹配成功,所述學(xué)習(xí)模塊用于將對應(yīng)的所述源MAC地址修改為與所述允許學(xué)習(xí)單元相關(guān)聯(lián),若匹配失敗,所述學(xué)習(xí)模塊用于將對應(yīng)的所述源MAC地址維持為與所述禁止學(xué)習(xí)單元相關(guān)聯(lián)。
[0013]作為本發(fā)明一實(shí)施方式的進(jìn)一步改進(jìn),所述源MAC地址的初始狀態(tài)為與所述允許學(xué)習(xí)單元相關(guān)聯(lián),若匹配成功,所述學(xué)習(xí)模塊用于將對應(yīng)的所述源MAC地址維持為與所述允許學(xué)習(xí)單元相關(guān)聯(lián),若匹配失敗,所述學(xué)習(xí)模塊用于將對應(yīng)的所述源MAC地址修改為與所述禁止學(xué)習(xí)單元相關(guān)聯(lián)。
[0014]作為本發(fā)明一實(shí)施方式的進(jìn)一步改進(jìn),所述報(bào)文包括未知報(bào)文和已知報(bào)文,所述地址條目與所述已知報(bào)文匹配,且所述地址條目與所述未知報(bào)文不匹配。
[0015]與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果在于:本發(fā)明根據(jù)目的MAC地址與MAC表中的地址條目的匹配結(jié)果來決定是否進(jìn)行對應(yīng)的源MAC地址的學(xué)習(xí),以實(shí)現(xiàn)防止未知報(bào)文對MAC表的沖擊,同時(shí)又能保證已知報(bào)文的源MAC地址能學(xué)習(xí)到。
【附圖說明】
[0016]圖1是本發(fā)明一實(shí)施方式的MAC地址學(xué)習(xí)的控制方法流程圖;
圖2是本發(fā)明一實(shí)施方式的MAC地址學(xué)習(xí)的控制裝置結(jié)構(gòu)框圖; 圖3是本發(fā)明一具體示例的MAC地址學(xué)習(xí)的控制方法示意圖。
【具體實(shí)施方式】
[0017]以下將結(jié)合附圖所示的【具體實(shí)施方式】對本發(fā)明進(jìn)行詳細(xì)描述。但這些實(shí)施方式并不限制本發(fā)明,本領(lǐng)域的普通技術(shù)人員根據(jù)這些實(shí)施方式所做出的結(jié)構(gòu)、方法、或功能上的變換均包含在本發(fā)明的保護(hù)范圍內(nèi)。
[0018]如圖1所示,本發(fā)明一實(shí)施方式的MAC地址學(xué)習(xí)的控制方法包括步驟:
S1:接收報(bào)文;
這里,所述報(bào)文可分為未知報(bào)文和已知報(bào)文,所述未知報(bào)文例如為黑客偽造的包含虛假源MAC地址的沖擊報(bào)文,這些未知報(bào)文可能對設(shè)備的MAC表產(chǎn)生沖擊。
[0019]S2:解析所述報(bào)文,得到所述報(bào)文的源MAC地址及對應(yīng)的目的MAC地址;
這里,每一所述報(bào)文均包含對應(yīng)的源MAC地址、目的MAC地址及其他信息。
[0020]S3:匹配所述報(bào)文的所述目的MAC地址及MAC表中的地址條目,若匹配成功,允許學(xué)習(xí)對應(yīng)的所述源MAC地址,若匹配失敗,禁止學(xué)習(xí)對應(yīng)的所述源MAC地址。
[0021]這里,MAC表中的地址條目與報(bào)文的目的MAC地址相對應(yīng),且只有當(dāng)報(bào)文是已知報(bào)文時(shí),才能在MAC表中查找到對應(yīng)的地址條目,即此時(shí)匹配成功,若報(bào)文是未知報(bào)文,則無法在MAC表中查找到對應(yīng)的地址條目,即此時(shí)匹配失敗。
[0022]當(dāng)接收到報(bào)文時(shí),會(huì)先進(jìn)行目的MAC地址及源MAC地址的匹配過程,一般情況,這兩個(gè)匹配過程是同步進(jìn)行的。
[0023]其中,目的MAC地址是與MAC表中的目的地址條目進(jìn)行匹配,當(dāng)于MAC表中查找到與該目的MAC地址相對應(yīng)的目的地址條目時(shí),即匹配成功,亦即表明該目的MAC地址對應(yīng)