本發(fā)明涉及網(wǎng)絡(luò)通信技術(shù)領(lǐng)域,尤其涉及一種支持端口遷移檢測(cè)的方法及裝置。
背景技術(shù):
DHCP(Dynamic Host Configuration Protocol,動(dòng)態(tài)主機(jī)配置協(xié)議)采用客戶端/服務(wù)器模式,由服務(wù)器為網(wǎng)絡(luò)設(shè)備動(dòng)態(tài)地分配IP(Internet Protocol,互聯(lián)網(wǎng)協(xié)議)地址等網(wǎng)絡(luò)配置參數(shù)。
DHCP Snooping(偵聽)是DHCP的一種安全機(jī)制,用于保證客戶端從合法的服務(wù)器獲取IP地址。為了使DHCP客戶端能通過合法的DHCP服務(wù)器獲取IP地址,DHCP Snooping安全機(jī)制允許將端口設(shè)置為信任端口和不信任端口:
信任端口正常轉(zhuǎn)發(fā)接收到的DHCP報(bào)文;
不信任端口接收到DHCP服務(wù)器響應(yīng)的DHCP-ACK(確認(rèn))和DHCP-OFFER(提供)報(bào)文后,丟棄該報(bào)文。
DHCP Snooping安全機(jī)制通過監(jiān)聽DHCP-REQUEST(請(qǐng)求)報(bào)文和信任端口收到的DHCP-ACK報(bào)文,記錄DHCP Snooping表項(xiàng),其中包括客戶端的MAC(Media Access Control,媒體訪問控制)地址、DHCP服務(wù)器為DHCP客戶端分配的IP地址、與DHCP客戶端連接的端口及VLAN(Virtual Local Area Network,虛擬局域網(wǎng))等信息。DHCP Snooping安全機(jī)制利用DHCP Snooping表項(xiàng)中的信息進(jìn)行安全檢查。
然而在現(xiàn)有DHCP Snooping安全機(jī)制中,當(dāng)DHCP客戶端發(fā)生端口遷移(如手機(jī)客戶端漫游時(shí)),若DHCP客戶端所屬VLAN沒有變化,而只有端口發(fā)生變化時(shí),DHCP服務(wù)器不會(huì)為該客戶端重新分配IP地址,而DHCPSnooping表項(xiàng)中記錄的端口還是遷移前的端口,導(dǎo)致安全防護(hù),如ARP(Address Resolution Protocol,地址解析協(xié)議)Detection(防護(hù)),采用之前記錄的DHCP Snooping表項(xiàng)進(jìn)行檢查,無法讓用戶遷移成功,需要強(qiáng)制讓客戶端重新分配地址后才能遷移成功。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明提供一種支持端口遷移檢測(cè)的方法及裝置,以解決現(xiàn)有技術(shù)中應(yīng)用DHCP Snooping安全機(jī)制時(shí),端口遷移可能無法成功的問題。
根據(jù)本發(fā)明實(shí)施例的第一方面,提供一種支持端口遷移檢測(cè)的方法,包括:
當(dāng)在第一端口學(xué)習(xí)到媒體訪問控制MAC地址時(shí),根據(jù)所述MAC地址查詢動(dòng)態(tài)主機(jī)配置協(xié)議DHCP偵聽Snooping表項(xiàng);
若查詢到對(duì)應(yīng)的目標(biāo)DHCP Snooping表項(xiàng),且所述目標(biāo)DHCP Snooping表項(xiàng)中記錄的第二端口與所述第一端口不一致,則檢測(cè)所述目標(biāo)DHCPSnooping表項(xiàng)對(duì)應(yīng)的目標(biāo)客戶端當(dāng)前是否連接在所述第二端口;
若檢測(cè)到所述目標(biāo)客戶端當(dāng)前未連接在所述第二端口,則確定所述目標(biāo)客戶端發(fā)生端口遷移,并將所述目標(biāo)DHCP Snooping表項(xiàng)中記錄的端口由第二端口修改為第一端口。
根據(jù)本發(fā)明實(shí)施例的第二方面,提供一種支持端口遷移檢測(cè)的裝置,包括:
學(xué)習(xí)單元,用于學(xué)習(xí)媒體訪問控制MAC地址;
查詢單元,用于當(dāng)所述學(xué)習(xí)單元在第一端口學(xué)習(xí)到媒體訪問控制MAC地址時(shí),根據(jù)所述MAC地址查詢動(dòng)態(tài)主機(jī)配置協(xié)議DHCP偵聽Snooping表項(xiàng);
檢測(cè)單元,用于若所述查詢單元查詢到對(duì)應(yīng)的目標(biāo)DHCP Snooping表項(xiàng),且所述目標(biāo)DHCP Snooping表項(xiàng)中記錄的第二端口與所述第一端口不一致,則檢測(cè)所述目標(biāo)DHCP Snooping表項(xiàng)對(duì)應(yīng)的目標(biāo)客戶端當(dāng)前是否連接在所述第二端口;
處理單元,用于若檢測(cè)到所述目標(biāo)客戶端當(dāng)前未連接在所述第二端口,則確定所述目標(biāo)客戶端發(fā)生端口遷移,并將所述目標(biāo)DHCP Snooping表項(xiàng)中記錄的端口由第二端口修改為第一端口。
應(yīng)用本發(fā)明實(shí)施例,當(dāng)?shù)谝欢丝趯W(xué)習(xí)到MAC地址時(shí),根據(jù)該MAC地址查詢DHCP Snooping表項(xiàng),若查詢到對(duì)應(yīng)的DHCP Snooping表項(xiàng),且目標(biāo)DHCP Snooping表項(xiàng)中記錄的第二端口與第一端口不一致,則檢測(cè)目標(biāo)DHCP Snooping表項(xiàng)對(duì)應(yīng)的目標(biāo)客戶端當(dāng)前是否連接在第二端口,若檢測(cè)到目標(biāo)客戶端當(dāng)前未連接在第二端口,則確定目標(biāo)端口發(fā)生遷移,將目標(biāo)DHCP Snooping表項(xiàng)中記錄的端口由第二端口修改為第一端口,保證了應(yīng)用DHCP Snooping安全機(jī)制時(shí),端口遷移能夠正常進(jìn)行。
附圖說明
圖1是本發(fā)明實(shí)施例提供的一種支持端口遷移檢測(cè)的方法的流程示意圖;
圖2是本發(fā)明實(shí)施例提供的一種具體應(yīng)用場(chǎng)景的架構(gòu)示意圖;
圖3是本發(fā)明實(shí)施例提供的一種支持端口遷移檢測(cè)的裝置的結(jié)構(gòu)示意圖;
圖4是本發(fā)明實(shí)施例提供的另一種支持端口遷移檢測(cè)的裝置的結(jié)構(gòu)示意圖;
圖5是本發(fā)明實(shí)施例提供的另一種支持端口遷移檢測(cè)的裝置的結(jié)構(gòu)示意圖;
圖6是本發(fā)明實(shí)施例提供的另一種支持端口遷移檢測(cè)的裝置的結(jié)構(gòu)示意圖。
具體實(shí)施方式
為了使本技術(shù)領(lǐng)域的人員更好地理解本發(fā)明實(shí)施例中的技術(shù)方案,并使本發(fā)明實(shí)施例的上述目的、特征和優(yōu)點(diǎn)能夠更加明顯易懂,下面結(jié)合附圖對(duì)本發(fā)明實(shí)施例中技術(shù)方案作進(jìn)一步詳細(xì)的說明。
請(qǐng)參見圖1,圖1為本發(fā)明實(shí)施提供的一種支持端口遷移檢測(cè)的方法的流程示意圖,如圖1所示,該支持端口遷移檢測(cè)的方法可以包括以下步驟:
需要說明的是,在本發(fā)明實(shí)施例中,步驟101~步驟103的執(zhí)行主體為支持DHCP Snooping安全機(jī)制的通信設(shè)備,如交換機(jī)或路由器等,為便于說明,以下以步驟101~步驟103的執(zhí)行主體為DHCP Snooping設(shè)備為例進(jìn)行描述。
步驟101、當(dāng)在第一端口學(xué)習(xí)到MAC地址時(shí),根據(jù)所述MAC地址查詢DHCP Snooping表項(xiàng)。
本發(fā)明實(shí)施例中,第一端口并不特指某一固定的端口,而是可以指代DHCP Snooping設(shè)備上客戶端側(cè)的任一端口,本發(fā)明實(shí)施例后續(xù)不再復(fù)述。
本發(fā)明實(shí)施例中,當(dāng)DHCP Snooping設(shè)備學(xué)習(xí)到MAC地址時(shí),DHCP Snooping設(shè)備可以認(rèn)為當(dāng)前可能發(fā)生了MAC遷移事件,進(jìn)而,DHCP Snooping設(shè)備可以根據(jù)該學(xué)到的MAC地址查詢自身維護(hù)的DHCP Snooping表項(xiàng)。
步驟102、若查詢到對(duì)應(yīng)的目標(biāo)DHCP Snooping表項(xiàng),且該目標(biāo)DHCP Snooping表項(xiàng)中記錄的第二端口與第一端口不一致,則檢測(cè)該目標(biāo)DHCP Snooping表項(xiàng)對(duì)應(yīng)的目標(biāo)客戶端當(dāng)前是否連接在第二端口。
本發(fā)明實(shí)施例中,若DHCP Snooping設(shè)備根據(jù)學(xué)習(xí)到的MAC地址查詢到對(duì)應(yīng)的DHCP Snooping表項(xiàng)(本文中稱為目標(biāo)DHCP Snooping表項(xiàng)),則DHCP Snooping設(shè)備需要進(jìn)一步比較該目標(biāo)DHCP Snooping表項(xiàng)中記錄的端口(本文中稱為第二端口)與學(xué)習(xí)到該MAC地址的端口(即第一端口)是否一致,若不一致,則DHCP Snooping設(shè)備需要進(jìn)一步檢測(cè)該目標(biāo)DHCP Snooping表項(xiàng)對(duì)應(yīng)的客戶端(即IP地址和MAC地址分別為該目標(biāo)DHCP Snooping表項(xiàng)中記錄的IP地址和MAC地址的客戶端,本文中稱為目標(biāo)客戶端)當(dāng)前是否連接在第二端口,即確定當(dāng)前是發(fā)生了MAC遷移還是MAC攻擊。
作為一種可選的實(shí)施方式,在本發(fā)明實(shí)施例中,檢測(cè)目標(biāo)DHCP Snooping表項(xiàng)對(duì)應(yīng)的目標(biāo)客戶端當(dāng)前是否連接在第二端口,可以包括以下步驟:
11)、通過第二端口發(fā)送ARP請(qǐng)求報(bào)文,該ARP請(qǐng)求報(bào)文的目的IP地址為目標(biāo)DHCP Snooping表項(xiàng)中記錄的IP地址;
12)、若在第一預(yù)設(shè)時(shí)間內(nèi)通過第二端口接收到ARP應(yīng)答報(bào)文,且該ARP應(yīng)答報(bào)文的源MAC地址和源IP地址分別與目標(biāo)DHCP Snooping表項(xiàng)中記錄的MAC地址和IP地址一致,則確定目標(biāo)客戶端當(dāng)前連接在第二端口;
13)、否則,確定目標(biāo)客戶端當(dāng)前未連接在第二端口。
在該實(shí)施方式中,DHCP Snooping設(shè)備可以通過第二端口發(fā)送ARP請(qǐng)求報(bào)文,該ARP請(qǐng)求報(bào)文的目的IP地址為目標(biāo)DHCP Snooping表項(xiàng)中記錄的IP地址(目的MAC地址可以為廣播地址或目標(biāo)DHCP Snooping表項(xiàng)中記錄的MAC地址),并判斷是否在預(yù)設(shè)時(shí)間內(nèi)(可以根據(jù)具體場(chǎng)景設(shè)定,本文中稱為第一預(yù)設(shè)時(shí)間)通過第二端口接收到該ARP請(qǐng)求報(bào)文對(duì)應(yīng)的ARP應(yīng)答報(bào)文。
若DHCP Snooping設(shè)備在第一預(yù)設(shè)時(shí)間內(nèi)通過第二端口接收到ARP應(yīng)答報(bào)文,且該ARP應(yīng)答報(bào)文的源MAC地址和源IP地址分別與目標(biāo)DHCP Snooping表項(xiàng)中記錄的MAC地址和IP地址一致,則DHCP Snooping設(shè)備可以確定目標(biāo)客戶端當(dāng)前連接在第二端口;否則,確定目標(biāo)客戶端當(dāng)前未連接在第二端口。
作為另一種可選的實(shí)施方式,在本發(fā)明實(shí)施例中,檢測(cè)目標(biāo)DHCP Snooping表項(xiàng)對(duì)應(yīng)的目標(biāo)客戶端當(dāng)前是否連接在第二端口,可以包括以下步驟:
21)、通過第二端口發(fā)送ICMP請(qǐng)求報(bào)文,ICMP請(qǐng)求報(bào)文的目的IP地址為目標(biāo)DHCP Snooping表項(xiàng)中記錄的IP地址;
22)、若在第二預(yù)設(shè)時(shí)間內(nèi)通過第二端口接收到ICMP應(yīng)答報(bào)文,且ICMP應(yīng)答報(bào)文的源MAC地址和源IP地址分別與目標(biāo)DHCP Snooping表項(xiàng)中記錄的MAC地址和IP地址一致,則確定目標(biāo)客戶端當(dāng)前連接在第二端口;
23)、否則,確定目標(biāo)客戶端當(dāng)前未連接在第二端口。
在該實(shí)施方式中,DHCP Snooping設(shè)備可以通過第二端口發(fā)送ICMP(Internet Control Message Protocol,互聯(lián)網(wǎng)控制報(bào)文協(xié)議)請(qǐng)求報(bào)文,該ICMP請(qǐng)求報(bào)文的目的IP地址為目標(biāo)DHCP Snooping表項(xiàng)中記錄的IP地址(目的MAC地址可以為目標(biāo)DHCP Snooping表項(xiàng)中記錄的MAC地址),并判斷是否在預(yù)設(shè)時(shí)間內(nèi)(可以根據(jù)具體場(chǎng)景設(shè)定,本文中稱為第二預(yù)設(shè)時(shí)間)通過第二端口接收到該ICMP請(qǐng)求報(bào)文對(duì)應(yīng)的ICMP應(yīng)答報(bào)文。其中,第一預(yù)設(shè)時(shí)間與第二預(yù)設(shè)時(shí)間可以相同,也可以不同。
若DHCP Snooping設(shè)備在第二預(yù)設(shè)時(shí)間內(nèi)通過第二端口接收到ICMP應(yīng)答報(bào)文,且該ICMP應(yīng)答報(bào)文的源MAC地址和源IP地址分別與目標(biāo)DHCP Snooping表項(xiàng)中記錄的MAC地址和IP地址一致,則DHCP Snooping設(shè)備可以確定目標(biāo)客戶端當(dāng)前連接在第二端口;否則,確定目標(biāo)客戶端當(dāng)前未連接在第二端口。
值得說明的是,在本發(fā)明實(shí)施例中,若DHCP Snooping設(shè)備根據(jù)學(xué)習(xí)到的MAC地址未查詢到對(duì)應(yīng)的目標(biāo)DHCP Snooping表項(xiàng),或查詢到對(duì)應(yīng)的目標(biāo)DHCP Snooping表項(xiàng),且該目標(biāo)DHCP Snooping表項(xiàng)中記錄的第二端口與第一端口一致,則DHCP Snooping設(shè)備可以不需要對(duì)其進(jìn)行特殊處理,而是可以參照現(xiàn)有相關(guān)實(shí)現(xiàn)進(jìn)行處理,本發(fā)明實(shí)施例對(duì)此不做描述。
步驟103、若檢測(cè)到目標(biāo)客戶端當(dāng)前未連接在第二端口,則確定目標(biāo)客戶端發(fā)生端口遷移,并將該目標(biāo)DHCP Snooping表項(xiàng)中記錄的端口由第二端口修改為第一端口。
本發(fā)明實(shí)施例中,若DHCP Snooping設(shè)備檢測(cè)到目標(biāo)客戶端當(dāng)前未連接在第二端口,則DHCP Snooping設(shè)備可以認(rèn)為第一端口學(xué)習(xí)到的該MAC地址是由于目標(biāo)客戶端發(fā)生了端口遷移,從而,DHCP Snooping設(shè)備可以將目標(biāo)DHCP Snooping表項(xiàng)中記錄的端口由第二端口修改為第一端口。
進(jìn)一步地,在本發(fā)明實(shí)施例中,若DHCP Snooping設(shè)備檢測(cè)到目標(biāo)客戶端當(dāng)前連接在第二端口,則DHCP Snooping設(shè)備可以確定目標(biāo)客戶端未發(fā)生端口遷移,DHCP Snooping設(shè)備從第一端口學(xué)習(xí)到該MAC地址屬于MAC攻擊,從而,DHCP Snooping設(shè)備可以拒絕更新目標(biāo)DHCP Snooping表項(xiàng)。
進(jìn)一步地,作為一種可選的實(shí)施方式,在本發(fā)明實(shí)施例中,若查詢到對(duì)應(yīng)的目標(biāo)DHCP Snooping表項(xiàng),且目標(biāo)DHCP Snooping表項(xiàng)中記錄的第二端口與第一端口不一致,則上述檢測(cè)目標(biāo)DHCP Snooping表項(xiàng)對(duì)應(yīng)的目標(biāo)客戶端當(dāng)前是否連接在第二端口之前,還可以包括以下步驟:
31)、判斷自身是否使能了端口遷移檢測(cè)功能;
32)、若使能了端口遷移檢測(cè)功能,則確定執(zhí)行上述檢測(cè)目標(biāo)DHCP Snooping表項(xiàng)對(duì)應(yīng)的目標(biāo)客戶端當(dāng)前是否連接在第二端口的步驟。
在該實(shí)施方式中,為了使本發(fā)明實(shí)施例提供端口遷移方案能夠兼容現(xiàn)有DHCP Snooping的相關(guān)應(yīng)用,可以在應(yīng)用本發(fā)明實(shí)施例提供的端口遷移方案中的DHCP Snooping設(shè)備上新增端口遷移檢測(cè)功能,當(dāng)該端口遷移檢測(cè)功能被使能時(shí),DHCP Snooping設(shè)備會(huì)在查詢到與新學(xué)習(xí)到的MAC地址對(duì)應(yīng)的目標(biāo)DHCP Snooping表項(xiàng),且該目標(biāo)DHCP Snooping表項(xiàng)中記錄的端口與新學(xué)習(xí)到該MAC地址的端口不一致時(shí),進(jìn)行端口遷移檢測(cè)。
相應(yīng)地,在該實(shí)施方式中,若DHCP Snooping設(shè)備查詢到對(duì)應(yīng)的目標(biāo)DHCP Snooping表項(xiàng),且目標(biāo)DHCP Snooping表項(xiàng)中記錄的第二端口與第一端口不一致,則DHCP Snooping設(shè)備需要先判斷自身是否使能了端口遷移檢測(cè)功能,若自身使能了端口遷移檢測(cè)功能,再進(jìn)一步檢測(cè)目標(biāo)DHCP Snooping表項(xiàng)對(duì)應(yīng)的目標(biāo)客戶端當(dāng)前是否連接在第二端口上。
其中,該端口遷移檢測(cè)功能可以包括但不限于ARP檢測(cè)或ICMP檢測(cè)(或稱為ping(一種網(wǎng)絡(luò)診斷工具)檢測(cè))功能。
值得說明的是,在本發(fā)明實(shí)施例中,若DHCP Snooping設(shè)備未使能端口遷移檢測(cè)功能,或DHCP Snooping設(shè)備不支持端口遷移檢測(cè)功能,則DHCP Snooping設(shè)備可以按照現(xiàn)有相關(guān)實(shí)現(xiàn)進(jìn)行處理,本發(fā)明實(shí)施例對(duì)此不做限定。
為了使本領(lǐng)域技術(shù)人員更好地理解本發(fā)明實(shí)施例提供的技術(shù)方案,下面結(jié)合具體應(yīng)用場(chǎng)景對(duì)本發(fā)明實(shí)施例提供的技術(shù)方案進(jìn)行描述。
請(qǐng)參見圖2,為本發(fā)明實(shí)施例提供的一種具體應(yīng)用場(chǎng)景的架構(gòu)示意圖,如圖2所示,在該應(yīng)用場(chǎng)景中,客戶端1的MAC地址為FC64-6A50-E465,DHCP Snooping設(shè)備部署于DCHP Server(服務(wù)器)與客戶端之間,端口G1/0/1和G1/0/2均屬于VLAN130。
基于該應(yīng)用場(chǎng)景,支持端口遷移檢測(cè)的方案的實(shí)現(xiàn)流程如下:
1、客戶端1在端口G1/0/1上線,申請(qǐng)到IP地址為10.0.139.34;
2、DHCP Snooping設(shè)備記錄客戶端通過DHCP上線申請(qǐng)到的地址信息,記錄的用戶信息(即DHCP Snooping表項(xiàng))為:
IP為10.0.139.34,MAC為FC64-6A50-E465,端口為G1/0/1,VLAN為130;
3、某一時(shí)刻,客戶端1發(fā)生漫游,從端口G1/0/1漫游到端口G1/0/2,IP地址不變;
4、DHCP Snooping設(shè)備從端口G1/0/2學(xué)習(xí)到MAC地址:FC64-6A50-E465;
5、DHCP Snooping設(shè)備根據(jù)該MAC地址查詢DHCP Snooping表項(xiàng),發(fā)現(xiàn)存在對(duì)應(yīng)的目標(biāo)DHCP Snooping表項(xiàng),但目標(biāo)DHCP Snooping表項(xiàng)中記錄的端口為G1/0/1(與新學(xué)習(xí)到該MAC地址的端口G1/0/2不一致);
6、DHCP Snooping設(shè)備通過端口G1/0/1發(fā)送目的IP地址為10.0.139.34,目的MAC地址為FC64-6A50-E465的ARP請(qǐng)求報(bào)文(或ICMP請(qǐng)求報(bào)文),并設(shè)置超時(shí)時(shí)間,如5s;
7、若DHCP Snooping設(shè)備在5s內(nèi)通過端口G1/0/1接收到源IP地址為10.0.139.34,源MAC地址為FC64-6A50-E465的ARP應(yīng)答報(bào)文(或ICMP應(yīng)答報(bào)文),則DHCP Snooping設(shè)備認(rèn)為客戶端1當(dāng)前仍連接在端口G1/0/1,未發(fā)生端口遷移,端口G1/0/2上學(xué)習(xí)到的MAC地址屬于MAC攻擊,后續(xù)可以通過ARP授權(quán)阻止該端口對(duì)該MAC地址進(jìn)行ARP學(xué)習(xí);
8、若DHCP Snooping設(shè)備在5s內(nèi)通過端口G1/0/1未接收到源IP地址為10.0.139.34,源MAC地址為FC64-6A50-E465的ARP應(yīng)答報(bào)文(或ICMP應(yīng)答報(bào)文),則認(rèn)為客戶端1發(fā)生了端口遷移,從而,DHCP Snooping設(shè)備可以將客戶端1對(duì)應(yīng)的目標(biāo)DHCP Snooping表項(xiàng)中記錄的端口由G1/0/1修改為G1/0/2;
9、DHCP Snooping設(shè)備控制基于DHCP Snooping授權(quán)的模塊更新端口信息,且在端口G1/0/2上,可以學(xué)習(xí)IP為10.0.139.34,VLAN 130,MAC為FC64-6A50-E465的ARP信息。
通過以上描述可以看出,在本發(fā)明實(shí)施例提供的技術(shù)方案中,當(dāng)?shù)谝欢丝趯W(xué)習(xí)到MAC地址時(shí),根據(jù)該MAC地址查詢DHCP Snooping表項(xiàng),若查詢到對(duì)應(yīng)的DHCP Snooping表項(xiàng),且目標(biāo)DHCP Snooping表項(xiàng)中記錄的第二端口與第一端口不一致,則檢測(cè)目標(biāo)DHCP Snooping表項(xiàng)對(duì)應(yīng)的目標(biāo)客戶端當(dāng)前是否連接在第二端口,若檢測(cè)到目標(biāo)客戶端當(dāng)前未連接在第二端口,則確定目標(biāo)端口發(fā)生遷移,將目標(biāo)DHCP Snooping表項(xiàng)中記錄的端口由第二端口修改為第一端口,保證了應(yīng)用DHCP Snooping安全機(jī)制時(shí),端口遷移能夠正常進(jìn)行。
請(qǐng)參見圖3,為本發(fā)明實(shí)施例提供的一種支持端口遷移檢測(cè)的裝置的結(jié)構(gòu)示意圖,其中,所述裝置可以應(yīng)用于上述方法實(shí)施例中的DHCP Snooping設(shè)備中,如圖3所示,該支持端口遷移檢測(cè)的裝置可以包括:
學(xué)習(xí)單元310,用于學(xué)習(xí)媒體訪問控制MAC地址;
查詢單元320,用于當(dāng)所述學(xué)習(xí)單元310在第一端口學(xué)習(xí)到媒體訪問控制MAC地址時(shí),根據(jù)所述MAC地址查詢動(dòng)態(tài)主機(jī)配置協(xié)議DHCP偵聽Snooping表項(xiàng);
檢測(cè)單元330,用于若所述查詢單元320查詢到對(duì)應(yīng)的目標(biāo)DHCP Snooping表項(xiàng),且所述目標(biāo)DHCP Snooping表項(xiàng)中記錄的第二端口與所述第一端口不一致,則檢測(cè)所述目標(biāo)DHCP Snooping表項(xiàng)對(duì)應(yīng)的目標(biāo)客戶端當(dāng)前是否連接在所述第二端口;
處理單元340,用于若所述檢測(cè)單元330檢測(cè)到所述目標(biāo)客戶端當(dāng)前未連接在所述第二端口,則確定所述目標(biāo)客戶端發(fā)生端口遷移,并將所述目標(biāo)DHCP Snooping表項(xiàng)中記錄的端口由第二端口修改為第一端口。
請(qǐng)一并參閱圖4,為本發(fā)明實(shí)施例提供的另一種支持端口遷移檢測(cè)的裝置的結(jié)構(gòu)示意圖,如圖4所示,在圖3所示支持端口遷移檢測(cè)的裝置的基礎(chǔ)上,圖4所示的支持端口遷移檢測(cè)的裝置還可以包括:
判斷單元350,用于若所述查詢單元320查詢到對(duì)應(yīng)的目標(biāo)DHCP Snooping表項(xiàng),且所述目標(biāo)DHCP Snooping表項(xiàng)中記錄的第二端口與所述第一端口不一致,判斷DHCP Snooping設(shè)備是否使能了端口遷移檢測(cè)功能;
相應(yīng)地,所述檢測(cè)單元330,可以具體用于若所述判斷單元340的判斷結(jié)果為是,則檢測(cè)所述目標(biāo)DHCP Snooping表項(xiàng)對(duì)應(yīng)的目標(biāo)客戶端當(dāng)前是否連接在所述第二端口。
請(qǐng)一并參閱圖5,為本發(fā)明實(shí)施例提供的另一種支持端口遷移檢測(cè)的裝置的結(jié)構(gòu)示意圖,如圖5所示,在圖3所示支持端口遷移檢測(cè)的裝置的基礎(chǔ)上,圖5所示的支持端口遷移檢測(cè)的裝置中,所述檢測(cè)單元330,可以包括:
第一發(fā)送子單元331,用于通過所述第二端口發(fā)送地址解析協(xié)議ARP請(qǐng)求報(bào)文,所述ARP請(qǐng)求報(bào)文的目的IP地址為所述目標(biāo)DHCP Snooping表項(xiàng)中記錄的IP地址;
第一接收子單元332,用于接收ARP應(yīng)答報(bào)文;
第一確定子單元333,用于若所述第一接收子單元332在第一預(yù)設(shè)時(shí)間內(nèi)通過所述第二端口接收到ARP應(yīng)答報(bào)文,且所述ARP應(yīng)答報(bào)文的源MAC地址和源IP地址分別與所述目標(biāo)DHCP Snooping表項(xiàng)中記錄的MAC地址和IP地址一致,則確定所述目標(biāo)客戶端當(dāng)前連接在所述第二端口;否則,確定所述目標(biāo)客戶端當(dāng)前未連接在所述第二端口。
請(qǐng)一并參閱圖6,為本發(fā)明實(shí)施例提供的另一種支持端口遷移檢測(cè)的裝置的結(jié)構(gòu)示意圖,如圖6所示,在圖3所示支持端口遷移檢測(cè)的裝置的基礎(chǔ)上,圖6所示的支持端口遷移檢測(cè)的裝置中,所述檢測(cè)單元330,可以包括:
第二發(fā)送子單元334,用于通過所述第二端口發(fā)送互聯(lián)網(wǎng)控制報(bào)文協(xié)議ICMP請(qǐng)求報(bào)文,所述ICMP請(qǐng)求報(bào)文的目的IP地址為所述目標(biāo)DHCP Snooping表項(xiàng)中記錄的IP地址;
第二接收子單元335,用于接收ICMP應(yīng)答報(bào)文;
第二確定子單元336,用于若所述第二接收子單元335在第二預(yù)設(shè)時(shí)間內(nèi)通過所述第二端口接收到ICMP應(yīng)答報(bào)文,且所述ICMP應(yīng)答報(bào)文的源MAC地址和源IP地址分別與所述目標(biāo)DHCP Snooping表項(xiàng)中記錄的MAC地址和IP地址一致,則確定所述目標(biāo)客戶端當(dāng)前連接在所述第二端口;否則,確定所述目標(biāo)客戶端當(dāng)前未連接在所述第二端口。
在可選實(shí)施例中,所述處理單元340,還可以用于若所述檢測(cè)單元330檢測(cè)到所述目標(biāo)客戶端當(dāng)前連接在所述第二端口,則確定所述目標(biāo)客戶端未發(fā)生端口遷移,拒絕更新所述目標(biāo)DHCP Snooping表項(xiàng)。
上述裝置中各個(gè)單元的功能和作用的實(shí)現(xiàn)過程具體詳見上述方法中對(duì)應(yīng)步驟的實(shí)現(xiàn)過程,在此不再贅述。
對(duì)于裝置實(shí)施例而言,由于其基本對(duì)應(yīng)于方法實(shí)施例,所以相關(guān)之處參見方法實(shí)施例的部分說明即可。以上所描述的裝置實(shí)施例僅僅是示意性的,其中所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個(gè)地方,或者也可以分布到多個(gè)網(wǎng)絡(luò)單元上。可以根據(jù)實(shí)際的需要選擇其中的部分或者全部模塊來實(shí)現(xiàn)本發(fā)明方案的目的。本領(lǐng)域普通技術(shù)人員在不付出創(chuàng)造性勞動(dòng)的情況下,即可以理解并實(shí)施。
由上述實(shí)施例可見,當(dāng)?shù)谝欢丝趯W(xué)習(xí)到MAC地址時(shí),根據(jù)該MAC地址查詢DHCP Snooping表項(xiàng),若查詢到對(duì)應(yīng)的DHCP Snooping表項(xiàng),且目標(biāo)DHCP Snooping表項(xiàng)中記錄的第二端口與第一端口不一致,則檢測(cè)目標(biāo)DHCP Snooping表項(xiàng)對(duì)應(yīng)的目標(biāo)客戶端當(dāng)前是否連接在第二端口,若檢測(cè)到目標(biāo)客戶端當(dāng)前未連接在第二端口,則確定目標(biāo)端口發(fā)生遷移,將目標(biāo)DHCP Snooping表項(xiàng)中記錄的端口由第二端口修改為第一端口,保證了應(yīng)用DHCP Snooping安全機(jī)制時(shí),端口遷移能夠正常進(jìn)行。
本領(lǐng)域技術(shù)人員在考慮說明書及實(shí)踐這里公開的發(fā)明后,將容易想到本發(fā)明的其它實(shí)施方案。本申請(qǐng)旨在涵蓋本發(fā)明的任何變型、用途或者適應(yīng)性變化,這些變型、用途或者適應(yīng)性變化遵循本發(fā)明的一般性原理并包括本發(fā)明未公開的本技術(shù)領(lǐng)域中的公知常識(shí)或慣用技術(shù)手段。說明書和實(shí)施例僅被視為示例性的,本發(fā)明的真正范圍和精神由下面的權(quán)利要求指出。
應(yīng)當(dāng)理解的是,本發(fā)明并不局限于上面已經(jīng)描述并在附圖中示出的精確結(jié)構(gòu),并且可以在不脫離其范圍進(jìn)行各種修改和改變。本發(fā)明的范圍僅由所附的權(quán)利要求來限制。