專利名稱:綁定表項(xiàng)生成方法、裝置及網(wǎng)絡(luò)設(shè)備的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及網(wǎng)絡(luò)通信技術(shù),尤其涉及一種綁定表項(xiàng)生成方法、裝置及網(wǎng)絡(luò)設(shè)備。
背景技術(shù):
在IPV6無狀態(tài)自動分配地址環(huán)境中,常見的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)如圖1所示,該網(wǎng)絡(luò) 拓?fù)浒ńK端11、與終端11連接的ND Snoopingl2以及與NDSn00pingl2連接的路由設(shè) 備13。其中,終端11是指預(yù)獲取IPV6地址的各種入網(wǎng)設(shè)備,例如個人計算機(jī)(Personal Computer ;簡稱為PC);路由設(shè)備13用于為終端11分配IPV6地址;ND Snoopingl2的作用 是生成安全表項(xiàng),對終端11發(fā)出的數(shù)據(jù)進(jìn)行源地址安全過濾。其中,終端11通過ND Snoopingl2向路由設(shè)備13發(fā)出路由器請求消息(Router Solicitation Message ;簡稱為:RS)報文以使路由設(shè)備13為其分配IP地址。路由設(shè)備13 收到RS報文后,向ND Snoopingl2發(fā)送路由器通告消息(Router Advertisement Message ; 簡稱為RA)報文。NDSn00pingl2通過設(shè)置與路由設(shè)備13相連的上聯(lián)端口為trust端口, 對路由設(shè)備13發(fā)出的RA報文進(jìn)行過濾。如果ND Snoopingl2接收到從非trust端口來的 RA報文,則將該RA報文丟掉;反之,將該RA報文發(fā)送給終端11。終端11接收到合法的RA 報文后,提取RA報文攜帶的前綴,并與自身的MAC地址組合成無狀態(tài)自動分配的IPV6地 址。此時,終端11會向同一網(wǎng)段的其他終端發(fā)送鄰居請求消息(Neighbor Solicitation Message ;簡稱為NS)報文以進(jìn)行地址沖突檢測(Address Conflict Detection;簡稱 為DAD),并在預(yù)設(shè)時間戳內(nèi)根據(jù)是否接收到鄰居通告消息(Neighbor Advertisement Message ;簡稱為NA)報文來決定該IPV6地址是否分配成功。如果沒有接收到NA報文,表 明該IPV6地址分配成功,終端11可以使用該分配的地址接入網(wǎng)絡(luò);反之,則表明該地址分 配失敗。在上述終端11獲取IPV6地址的過程中,ND Sn00pingl2通過嗅探地址沖突檢測過 程,并在嗅探到IPV6地址分配成功時為終端11建立綁定表項(xiàng),該綁定表項(xiàng)包括終端11的 MAC地址、所在網(wǎng)段號、老化時間等信息。ND Sn00pingl2根據(jù)該綁定表項(xiàng)對終端11的報文 進(jìn)行過濾,實(shí)現(xiàn)網(wǎng)絡(luò)的安全接入。在圖1所示的網(wǎng)絡(luò)結(jié)構(gòu)中,終端11直接與ND Snoopingl2連接,當(dāng)網(wǎng)絡(luò)中終端11 的數(shù)量較多時,需要ND Sn00pingl2具有較多數(shù)量的端口,而通常ND Sn00pingl2的端口數(shù) 量是有限制的。因此,為了擴(kuò)展NDSn00pingl2的端口功能,可以采用圖2所示的網(wǎng)絡(luò)拓?fù)?結(jié)構(gòu),該網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)通過在終端11和ND Snoopingl2之間設(shè)置端口擴(kuò)展設(shè)備,例如HUB 14 (也可以是不具有ND Snooping功能的交換機(jī)),實(shí)現(xiàn)對ND Sn00pingl2端口的擴(kuò)展。但 是,在圖2所示的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)中,若HUB 14所連接的ND Sn00pingl2的端口發(fā)生改變時, 例如從ND Snoopingl2的端口 GO/1變化到端口 G0/2,或者改連到其他ND Snoopingl2時, 終端11由于無法感知這種變化,將不會發(fā)出NS報文進(jìn)行DAD檢測,這樣ND Snoopingl2的 端口 G0/2或者新的ND Snoopingl2將不會生成終端11的綁定表項(xiàng),因此,終端11的報文 將被過濾掉,以致使終端11無法正常通信。因此,在圖2所示擴(kuò)展ND Sn00pingl2端口的 網(wǎng)絡(luò)拓?fù)渲校绾紊山壎ū眄?xiàng)成為必須解決的問題。
發(fā)明內(nèi)容
本發(fā)明提供一種綁定表項(xiàng)生成方法、裝置及網(wǎng)絡(luò)設(shè)備,用以在擴(kuò)展網(wǎng)絡(luò)設(shè)備端口 的同時,實(shí)現(xiàn)綁定表項(xiàng)的生成。本發(fā)明提供一種綁定表項(xiàng)生成方法,包括監(jiān)測本地MAC地址表;當(dāng)監(jiān)測到所述MAC地址表發(fā)生變化時,根據(jù)所述MAC地址表中的變化表項(xiàng)信息和 預(yù)存儲的RA報文信息,生成所述變化表項(xiàng)信息中的變化端口的綁定表項(xiàng)。本發(fā)明提供一種綁定表項(xiàng)生成裝置,包括監(jiān)測模塊,用于監(jiān)測本地MAC地址表;生成模塊,用于在所述監(jiān)測模塊監(jiān)測到所述MAC地址表發(fā)生變化時,根據(jù)所述MAC 地址表中的變化表項(xiàng)信息和預(yù)存儲的RA報文信息,生成所述變化表項(xiàng)信息中的變化端口 的綁定表項(xiàng)。本發(fā)明提供一種網(wǎng)絡(luò)設(shè)備,其包括本發(fā)明提供的綁定表項(xiàng)生成裝置。本發(fā)明提供的綁定表項(xiàng)生成方法、裝置及網(wǎng)絡(luò)設(shè)備,綁定表項(xiàng)生成裝置通過監(jiān)測 其MAC地址表發(fā)現(xiàn)MAC地址變化,當(dāng)MAC地址表有變化時,根據(jù)MAC地址表中的變化表項(xiàng) 信息和預(yù)存儲的RA報文信息生成綁定表項(xiàng)。本發(fā)明技術(shù)方案通過監(jiān)測本地MAC地址表可 以實(shí)時發(fā)現(xiàn)網(wǎng)絡(luò)遷移,根據(jù)變化的MAC地址表項(xiàng)生成變化表項(xiàng)中的變化端口對應(yīng)的綁定表 項(xiàng),綁定表項(xiàng)的生成不依賴終端發(fā)出的地址沖突檢測報文,終端無須感知網(wǎng)絡(luò)遷移,克服了 現(xiàn)有綁定表項(xiàng)生成方法無法應(yīng)用于通過端口擴(kuò)展設(shè)備(例如HUB)進(jìn)行端口擴(kuò)展的網(wǎng)絡(luò)結(jié) 構(gòu)中的缺陷,在對網(wǎng)絡(luò)設(shè)備進(jìn)行端口擴(kuò)展的同時,實(shí)現(xiàn)綁定表項(xiàng)的生成。
為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實(shí)施例或現(xiàn) 有技術(shù)描述中所需要使用的附圖作一簡單地介紹,顯而易見地,下面描述中的附圖是本發(fā) 明的一些實(shí)施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根 據(jù)這些附圖獲得其他的附圖。圖1為現(xiàn)有IPV6無狀態(tài)自動分配地址環(huán)境中常見的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)示意圖;圖2為IPV6無狀態(tài)自動分配地址環(huán)境下擴(kuò)展ND Snooping端口的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu) 示意圖;圖3為本發(fā)明實(shí)施例一提供的綁定表項(xiàng)生成方法的流程圖;圖4為本發(fā)明實(shí)施例二提供的綁定表項(xiàng)生成方法的流程圖;圖5為本發(fā)明實(shí)施例三提供的綁定表項(xiàng)生成裝置的結(jié)構(gòu)示意圖;圖6為本發(fā)明實(shí)施例四提供的綁定表項(xiàng)生成裝置的結(jié)構(gòu)示意圖。
具體實(shí)施例方式為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本發(fā)明實(shí)施例 中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是 本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。實(shí)施例一圖3為本發(fā)明實(shí)施例一提供的綁定表項(xiàng)生成方法的流程圖。本實(shí)施例的執(zhí)行主體 為綁定表項(xiàng)生成裝置,如圖3所示,本實(shí)施例的綁定表項(xiàng)生成方法包括步驟301,監(jiān)測本地MAC地址表;其中,本實(shí)施例的綁定表項(xiàng)生成裝置可以獨(dú)立于網(wǎng)絡(luò)設(shè)備而與網(wǎng)絡(luò)設(shè)備連接, 也可以作為網(wǎng)絡(luò)設(shè)備的一個功能模塊設(shè)置于網(wǎng)絡(luò)設(shè)備內(nèi)。而網(wǎng)絡(luò)設(shè)備例如可以為ND Snooping設(shè)備或者具有ND Snooping功能的路由設(shè)備(例如三層交換機(jī))。在本步驟301中,綁定表項(xiàng)生成裝置監(jiān)測本地介質(zhì)訪問控制(Medium Access Control ;簡稱為MAC)地址表,以通過MAC地址表的變化發(fā)現(xiàn)所在網(wǎng)絡(luò)是否發(fā)生網(wǎng)絡(luò)遷移。 例如是否發(fā)生圖2所示的擴(kuò)展端口用的HUB14由端口 G0/1變換到端口 G0/2,或者由新終端 通過NDSnooping接入網(wǎng)絡(luò)等。其中,當(dāng)綁定表項(xiàng)生成裝置監(jiān)測到MAC地址表有MAC地址遷 移(例如終端的物理位置發(fā)生變化時,從綁定表項(xiàng)生成裝置的一個端口遷移到了另一個 端口 )或者由新MAC地址加入時,即可判斷網(wǎng)絡(luò)發(fā)生遷移。步驟302,判斷是否監(jiān)測到MAC地址表發(fā)生變化;若監(jiān)測到MAC地址表發(fā)生變化, 則執(zhí)行步驟303 ;反之,則執(zhí)行步驟301,即繼續(xù)監(jiān)測MAC地址表的變化情況。步驟303,根據(jù)MAC地址表中的變化表項(xiàng)信息和預(yù)存儲的RA報文信息,生成變化表 項(xiàng)信息中的變化端口的綁定表項(xiàng)。其中,在無狀態(tài)自動分配地址機(jī)制中,端口的綁定表項(xiàng)包括終端的MAC地址、由該 MAC地址和RA報文前綴生成的IPV6地址、接收端口、老化時間以及網(wǎng)段號等信息。其中,綁 定表項(xiàng)生成裝置會根據(jù)接收到的報文進(jìn)行MAC地址的學(xué)習(xí),并將學(xué)習(xí)到的MAC地址和接收 報文的端口的對應(yīng)關(guān)系存儲在其MAC地址表中,即在綁定表項(xiàng)生成裝置的MAC地址表中存 儲各端口與掛接在各端口的終端的MAC地址之間的對應(yīng)關(guān)系。根據(jù)上述,可知各端口上的 綁定表項(xiàng)應(yīng)該與MAC地址表相對應(yīng),即每個綁定表項(xiàng)中的MAC地址對應(yīng)于MAC地址表中的 一個MAC地址。其中,本實(shí)施例所稱的變化表項(xiàng)是指MAC地址表中發(fā)生變化的表項(xiàng)。例如 當(dāng)MAC地址表中新增一個MAC地址時,則記錄該新增MAC地址以及該新增MAC地址對應(yīng)的 端口的一項(xiàng)記錄,即為變化表項(xiàng);而變化表項(xiàng)信息即為所記錄的新增MAC地址以及其對應(yīng) 的端口等信息。其中,記錄在變化表項(xiàng)中的端口即為變化端口,同時,該端口也即為需要生 成綁定表項(xiàng)的端口。本步驟302用于在MAC地址表發(fā)生變化時,獲知變化端口,并生成變化端口的綁定 表項(xiàng)。同理,該綁定表項(xiàng)中包括MAC地址、IPV6地址、接收端口(即變化端口)、老化時間以 及網(wǎng)段號等信息。其中,當(dāng)生成變化端口的綁定表項(xiàng)后,將繼續(xù)執(zhí)行步驟301,即繼續(xù)監(jiān)測 MAC地址表。本實(shí)施例的綁定表項(xiàng)生成方法,利用端口的綁定表項(xiàng)與MAC地址表的對應(yīng)關(guān)系, 監(jiān)測本地MAC地址表的變化情況,并在監(jiān)測到MAC地址表發(fā)生變化時,根據(jù)變化表項(xiàng)信息和 預(yù)存儲的RA報文信息,生成變化端口對應(yīng)的綁定表項(xiàng)。本發(fā)明技術(shù)方案通過監(jiān)測本地MAC 地址表可以實(shí)時發(fā)現(xiàn)網(wǎng)絡(luò)遷移,根據(jù)變化的MAC地址表項(xiàng)生成變化表項(xiàng)信息中變化端口的 綁定表項(xiàng),綁定表項(xiàng)的生成不依賴終端發(fā)出的地址沖突檢測報文,終端無須感知網(wǎng)絡(luò)遷移; 同時,通過本發(fā)明技術(shù)方案可以克服現(xiàn)有綁定表項(xiàng)生成方法無法應(yīng)用于通過端口擴(kuò)展設(shè)備(例如HUB)進(jìn)行端口擴(kuò)展的網(wǎng)絡(luò)結(jié)構(gòu)中的缺陷,在對綁定表項(xiàng)生成裝置進(jìn)行端口擴(kuò)展的同 時,實(shí)現(xiàn)綁定表項(xiàng)的生成。其中,綁定表項(xiàng)生成裝置可以根據(jù)變化表項(xiàng)信息中的MAC地址和RA報文信息中的 前綴,按照RFC4862的規(guī)定生成IPV6地址。進(jìn)一步,獲取變化表項(xiàng)信息中的MAC地址和變 化端口號、以及RA報文信息,并結(jié)合生成的與MAC地址對應(yīng)的IPV6地址,生成變化端口的 綁定表項(xiàng)。其中,RA報文信息還包括生成綁定表項(xiàng)所需的老化時間、網(wǎng)段號等信息。該RA 報文信息可以在綁定表項(xiàng)生成裝置接收路由設(shè)備發(fā)送的響應(yīng)RS報文的RA報文中獲取。具 體的,綁定表項(xiàng)生成裝置可以在判斷該RA報文合法后,獲取其中的前綴、老化時間以及網(wǎng) 段號等生成RA報文信息并存儲。則由上述過程生成的綁定表項(xiàng)包括終端的MAC地址、對應(yīng) 的IPV6地址、接收端口、老化時間以及網(wǎng)段號等信息。進(jìn)一步,綁定表項(xiàng)生成裝置可基于上 述綁定表項(xiàng)對接收到的終端的報文進(jìn)行過濾處理,以保證網(wǎng)絡(luò)接入時的安全性。實(shí)施例二圖4為本發(fā)明實(shí)施例二提供的綁定表項(xiàng)生成方法的流程圖。本實(shí)施例可基于實(shí)施 例一實(shí)現(xiàn),其執(zhí)行主體也為綁定表項(xiàng)生成裝置,如圖2所示,本實(shí)施例的綁定表項(xiàng)生成方法 包括步驟401,監(jiān)測本地MAC地址表;步驟402,判斷監(jiān)測的MAC地址表是否發(fā)生變化;當(dāng)綁定表項(xiàng)生成裝置監(jiān)測到其 MAC地址表發(fā)生變化時,執(zhí)行步驟403 ;反之,返回步驟401,繼續(xù)執(zhí)行監(jiān)測操作。步驟403,根據(jù)MAC地址表中的變化表項(xiàng)信息和預(yù)存儲的RA報文信息,生成探測報 文,并執(zhí)行步驟404;本步驟403用于當(dāng)綁定表項(xiàng)生成裝置監(jiān)測到其MAC地址表發(fā)生變化,獲知網(wǎng)絡(luò)發(fā) 生遷移時,根據(jù)MAC地址表中發(fā)生變化的MAC地址(例如新增MAC地址,或者由一個端口遷 移到另一端口發(fā)生遷移的MAC地址),和預(yù)存儲的RA報文信息中的前綴,生成發(fā)生變化的 MAC地址對應(yīng)的IPV6地址,進(jìn)而生成包含該IPV6地址的探測報文。其中,本實(shí)施例的探測 報文用于探測使用該IPV6地址的終端的存在狀態(tài),其可以是根據(jù)私有協(xié)議預(yù)先約定的報 文,也可以采用現(xiàn)有的報文,例如NS報文,本實(shí)施例并不對探測報文的實(shí)現(xiàn)方式進(jìn)行限制。 其中,采用現(xiàn)有NS報文其實(shí)現(xiàn)簡單,且可與現(xiàn)有技術(shù)兼容,因此,本實(shí)施例以NS報文作為探 測報文,則綁定表項(xiàng)生成裝置將生成以上述IPV6地址為探測地址的NS報文,即將上述IPV6 地址為NS報文的目的IP地址。步驟404,將該探測報文發(fā)送給同網(wǎng)段內(nèi)的終端,并執(zhí)行步驟405 ;當(dāng)綁定表項(xiàng)生成裝置生成NS報文后,可以通過組播或廣播的形式將NS報文發(fā)送 給綁定表項(xiàng)生成裝置所在同一局域網(wǎng)內(nèi)的所有終端,其中MAC地址表中發(fā)生變化的MAC地 址對應(yīng)的終端也在上述局域網(wǎng)內(nèi)。步驟405,等待接收終端返回的探測響應(yīng)報文;當(dāng)在預(yù)設(shè)時間內(nèi)接收到終端返回 的探測響應(yīng)報文時,執(zhí)行步驟406 ;反之,轉(zhuǎn)去執(zhí)行步驟404,即再次發(fā)送探測報文;其中,探測響應(yīng)報文是使用由發(fā)生變化的MAC地址生成的IPV6地址的終端對探測 報文做出的應(yīng)答報文,該探測響應(yīng)報文中攜帶有終端的所要生成綁定的IP地址(即上述 IPV6地址),以確認(rèn)終端是使用這個地址。在本實(shí)施例中,該探測響應(yīng)報文具體為NA報文。具體的,同一網(wǎng)段內(nèi)的終端接收到綁定表項(xiàng)生成裝置發(fā)送的NS報文后,會根據(jù)其目的IP地址判斷是否接收并響應(yīng)該NS報文。其中,只有使用上述IPV6地址的終端響應(yīng)NS 報文并返回NA報文。若此時該終端仍然在線,則該終端將會對NS報文做出響應(yīng),即返回NA 報文。步驟406,根據(jù)接收到的探測響應(yīng)報文和預(yù)存儲的RA報文信息,生成變化端口的 綁定表項(xiàng),并轉(zhuǎn)去執(zhí)行步驟401,繼續(xù)監(jiān)測MAC地址表的變化情況,以便進(jìn)行下一次綁定表 項(xiàng)的生成。其中,終端返回的NA報文中攜帶有上述IPV6地址以及終端的MAC地址(即NA報 文的源MAC地址)等信息。綁定表項(xiàng)生成裝置可以從接收到的NA報文中獲取上述IPV6地 址、終端的MAC地址,并獲取接收NA報文的端口以及RA報文信息中的老化時間和網(wǎng)段號等 信息,用以在綁定表項(xiàng)生成裝置的變化端口上生成所對應(yīng)的終端的綁定表項(xiàng)。其中,根據(jù)NA 報文攜帶的信息生成綁定表項(xiàng)的方法,可以直接獲取綁定表項(xiàng)中的各種信息,例如可以直 接獲取IPV6地址,進(jìn)而節(jié)約了生成IPV6地址的操作。進(jìn)一步,需要說明的是,在本實(shí)施例步驟405中,為了防止由于網(wǎng)絡(luò)鏈路等原因引 起的探測報文丟失的問題,當(dāng)綁定表項(xiàng)生成裝置在預(yù)設(shè)時間內(nèi)未收到探測響應(yīng)報文時,將 會重新發(fā)送探測報文,以便保證正確接收NA報文。但是該重新發(fā)送探測報文的操作不是無 限制的執(zhí)行,例如,當(dāng)使用該IPv6地址的終端正好在發(fā)送探測報文的瞬間下線,則此時將 不會有NA報文返回。因此,為了避免無限制的重發(fā)探測報文,在本實(shí)施例中將設(shè)定一重發(fā) 次數(shù)閾值,當(dāng)重發(fā)次數(shù)達(dá)到預(yù)設(shè)重發(fā)次數(shù)閾值時,將不再發(fā)送探測報文,并認(rèn)為該終端已經(jīng) 下線,將不再為該終端建立綁定表項(xiàng)。本實(shí)施例的綁定表項(xiàng)生成方法,由綁定表項(xiàng)生成裝置發(fā)起綁定表項(xiàng)的建立過程, 通過探測報文和探測響應(yīng)報文驗(yàn)證使用IPV6地址的終端的存在狀態(tài),并在確認(rèn)終端存在 時,根據(jù)終端的探測響應(yīng)報文在綁定表項(xiàng)生成裝置的端口上為終端建立綁定表項(xiàng),既可以 保證成功為終端建立綁定表項(xiàng),又可以避免在終端不存在時建立綁定表項(xiàng)造成的資源浪 費(fèi);且本實(shí)施例根據(jù)終端返回的NA報文建立綁定表項(xiàng),可以實(shí)現(xiàn)與現(xiàn)有相關(guān)技術(shù)(例如, DAD檢測過程等)的兼容。其中,本發(fā)明上述技術(shù)方案并不限于應(yīng)用在通過端口擴(kuò)展設(shè)備(例如HUB)擴(kuò)展綁 定表項(xiàng)生成裝置端口的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)中,也可應(yīng)用于終端直接與綁定表項(xiàng)生成裝置連接的 網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)中,且同樣適用于既有終端直接與綁定表項(xiàng)生成裝置連接,也有終端通過端 口擴(kuò)展設(shè)備與綁定表項(xiàng)生成裝置連接的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)中。即本發(fā)明技術(shù)方案具有更強(qiáng)的適 用性。進(jìn)一步,為了使本發(fā)明技術(shù)方案能夠更好地與現(xiàn)有基于DAD檢測過程生成綁定表 項(xiàng)的技術(shù)方案相兼容,本實(shí)施例技術(shù)方案在根據(jù)變化表項(xiàng)信息生成變化端口的綁定表項(xiàng)之 前,還包括查詢變化端口的綁定表項(xiàng)信息的操作。其中,綁定表項(xiàng)信息為綁定表項(xiàng)存儲的內(nèi) 容,例如MAC地址、IPV6地址、接收端口等信息。查詢綁定表項(xiàng)信息的操作結(jié)果包括查詢 到該變化端口存在綁定表項(xiàng),或者查詢到變化端口的綁定表項(xiàng)不存在。其中,當(dāng)查詢到該變化端口的綁定表項(xiàng)不存在時,則可按照本發(fā)明上述實(shí)施例的 方法為該變化端口建立綁定表項(xiàng)。若查詢到該變化端口已存在綁定表項(xiàng)時,則將查詢獲取 到的變化端口的綁定表項(xiàng)信息與對應(yīng)的MAC地址表中的變化表項(xiàng)信息進(jìn)行比較,并判斷綁 定表項(xiàng)信息是否與變化表項(xiàng)信息是否一致。若比較得出該變化端口已存在的綁定表項(xiàng)中存儲的內(nèi)容與MAC地址表中的變化表項(xiàng)信息一致(例如,綁定表項(xiàng)生成裝置可能通過DAD檢 測過程已經(jīng)為該變化端口建立了綁定表項(xiàng),從而使得存在綁定表項(xiàng)與變化表項(xiàng)信息一致), 則不再為該變化端口建立綁定表項(xiàng),以節(jié)約操作流程及資源。若比較得出變化端口存在綁 定表項(xiàng)中的內(nèi)容與對應(yīng)的MAC地址表中的變化表項(xiàng)信息不一致(例如,由于終端發(fā)生遷移 使得MAC地址由第一端口變化到第二端口,但第二端口原來的綁定表項(xiàng)尚未被刪除),則將 根據(jù)本發(fā)明技術(shù)方案生成變化端口的綁定表項(xiàng),并對該變化端口的綁定表項(xiàng)進(jìn)行更新。本發(fā)明上述技術(shù)方案可以與現(xiàn)有技術(shù)實(shí)現(xiàn)兼容。具體的,在實(shí)施過程中可以現(xiàn)有 技術(shù)為主實(shí)現(xiàn)綁定表項(xiàng)的生成,而本發(fā)明技術(shù)方案可用于在特殊網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)或者特殊情 況下對綁定表項(xiàng)進(jìn)行更新。即通過上述方式可以在保證不對網(wǎng)絡(luò)拓?fù)浜同F(xiàn)有協(xié)議進(jìn)行較大 更改的情況下,提高生成綁定表項(xiàng)的成功率,進(jìn)而保證基于綁定表項(xiàng)對終端報文進(jìn)行過濾 實(shí)現(xiàn)網(wǎng)絡(luò)接入時的安全性。實(shí)施例三圖5為本發(fā)明實(shí)施例三提供的綁定表項(xiàng)生成裝置的結(jié)構(gòu)示意圖。本實(shí)施例的綁定 表項(xiàng)生成裝置可以獨(dú)立于網(wǎng)絡(luò)設(shè)備而與網(wǎng)絡(luò)設(shè)備連接,也可以作為網(wǎng)絡(luò)設(shè)備的一部分而設(shè) 置于網(wǎng)絡(luò)設(shè)備內(nèi),主要用于生成綁定表項(xiàng),對終端發(fā)送的數(shù)據(jù)進(jìn)行源地址安全過濾。其中, 網(wǎng)絡(luò)設(shè)備可以是獨(dú)立的ND Snooping設(shè)備,也可以是具有ND Snooping功能的路由設(shè)備(例 如三層交換機(jī))。如圖5所示,本實(shí)施例的綁定表項(xiàng)生成裝置包括監(jiān)測模塊51和生成模 塊52。其中,監(jiān)測模塊51,與生成模塊52連接,用于監(jiān)測本地綁定表項(xiàng)生成裝置的MAC地 址表。具體的,監(jiān)測模塊51可以實(shí)時或定時監(jiān)測綁定表項(xiàng)生成裝置的MAC地址表的變化情 況,以監(jiān)測網(wǎng)絡(luò)是否發(fā)生遷移。其中,監(jiān)測模塊51可能會監(jiān)測到有新增MAC地址或者某一 個或某些MAC地址對應(yīng)的端口由一個變化為另一個(可能由終端物理位置的遷移而引起) 等情況。生成模塊52,用于在監(jiān)測模塊51監(jiān)測到MAC地址表發(fā)生變化時,根據(jù)MAC地址表 中的變化表項(xiàng)信息和預(yù)存儲的RA報文信息,生成變化表項(xiàng)信息中的變化端口的綁定表項(xiàng)。 其中,變化表項(xiàng)是指MAC地址表中發(fā)生變化的表項(xiàng),例如新增MAC地址對應(yīng)的表項(xiàng)或者對應(yīng) 端口發(fā)生變化的MAC地址對應(yīng)的表項(xiàng)等。而變化表項(xiàng)信息是指變化表項(xiàng)中存儲的內(nèi)容,例 如發(fā)生變化的MAC地址,以及其對應(yīng)的端口(以端口號表示)等信息。其中變化表項(xiàng)信息 中的端口即為變化端口,同時,在本實(shí)施例中也即需要生成綁定表項(xiàng)的端口。具體的,由于綁定表項(xiàng)生成裝置上端口的綁定表項(xiàng)中存儲有終端的MAC地址,以 及終端使用的并根據(jù)終端的MAC地址生成的IPV6地址,因此,每個端口的綁定表項(xiàng)應(yīng)該與 MAC地址表中的某個表項(xiàng)信息相對應(yīng),故可以根據(jù)MAC地址表中變化表項(xiàng)信息獲知需要生 成綁定表項(xiàng)的端口(即變化端口),并可根據(jù)變化表項(xiàng)信息中的MAC地址以及預(yù)存儲的RA 報文信息生成獲取的端口的綁定表項(xiàng)。本實(shí)施例的綁定表項(xiàng)生成裝置,可用于執(zhí)行本發(fā)明實(shí)施例提供的綁定表項(xiàng)生成方 法的流程,通過監(jiān)測模塊監(jiān)測本地MAC地址表可以實(shí)時發(fā)現(xiàn)網(wǎng)絡(luò)遷移,根據(jù)變化的MAC地址 表項(xiàng)生成變化表項(xiàng)信息中變化端口的綁定表項(xiàng),綁定表項(xiàng)的生成不依賴終端發(fā)出的地址沖 突檢測報文,終端無須感知網(wǎng)絡(luò)遷移;同時,本發(fā)明技術(shù)方案并不限定終端與綁定表項(xiàng)生成 裝置的連接方式(既可以直接連接,也可以通過其他設(shè)備連接),即本發(fā)明技術(shù)方案可以克服現(xiàn)有技術(shù)無法適用于通過端口擴(kuò)展設(shè)備(例如HUB)進(jìn)行端口擴(kuò)展的網(wǎng)絡(luò)結(jié)構(gòu)中的缺陷, 在對綁定表項(xiàng)生成裝置進(jìn)行端口擴(kuò)展的同時,實(shí)現(xiàn)綁定表項(xiàng)的生成。其中,本實(shí)施例的生成模塊52具體可以根據(jù)變化表項(xiàng)信息中的MAC地址和RA報 文中信息中的前綴,按照RFC4862的規(guī)定生成IPV6地址。其中,RA報文信息是根據(jù)路由設(shè) 備通過綁定表項(xiàng)生成裝置向終端返回的RA報文獲取的,即獲取RA報文攜帶的前綴(可由 RFC4862決定)、老化時間以及網(wǎng)段號等信息。進(jìn)一步,生成模塊52可以獲取變化表項(xiàng)信息 中的MAC地址和變化端口號、以及RA報文信息,并結(jié)合生成的與MAC地址對應(yīng)的IPV6地址, 生成變化端口的綁定表項(xiàng)。通過上述技術(shù)方案,生成模塊52可以為綁定表項(xiàng)生成裝置上各 個連接有終端的端口建立綁定表項(xiàng),以使綁定表項(xiàng)生成裝置根據(jù)建立的綁定表項(xiàng)對終端報 文進(jìn)行過濾,使終端安全接入網(wǎng)絡(luò)。實(shí)施例四圖6為本發(fā)明實(shí)施例四提供的綁定表項(xiàng)生成裝置的結(jié)構(gòu)示意圖。本實(shí)施例基于實(shí) 施例五實(shí)現(xiàn),其區(qū)別在于,本實(shí)施例的綁定表項(xiàng)生成裝置還包括探測模塊61、接收模塊62 和重新發(fā)送模塊63。其中,探測模塊61,與監(jiān)測模塊51連接,用于在監(jiān)測模塊51監(jiān)測到綁定表項(xiàng)生成 裝置的MAC地址表發(fā)生變化,且在生成模塊52生成變化端口的綁定表項(xiàng)之前,根據(jù)變化表 項(xiàng)信息和RA報文信息,生成探測報文,并將探測報文發(fā)送給綁定表項(xiàng)生成裝置所在同一局 域網(wǎng)段的終端。接收模塊62,與生成模塊52連接,用于等待接收終端返回的探測響應(yīng)報文, 并在接收到探測響應(yīng)報文時觸發(fā)生成模塊52執(zhí)行生成變化端口的綁定表項(xiàng)的操作。其中, 探測響應(yīng)報文是接收并響應(yīng)探測報文的終端對接收到的探測報文做出的響應(yīng)報文。具體的,探測模塊61包括第一生成單元611和第二生成單元612。其中,第一生成 單元611與監(jiān)測模塊51連接,用于根據(jù)變化表項(xiàng)信息中的MAC地址和RA報文信息中的前 綴,按照RFC4862的規(guī)定生成IPV6地址,并將生成的IPV6地址提供給第二生成單元612 ; 第二生成單元612,用于根據(jù)接收到的IPV6地址,生成并發(fā)送探測報文。其中,本實(shí)施例的 探測報文用于探測使用該IPV6地址的終端的存在狀態(tài),其可以是根據(jù)私有協(xié)議預(yù)先約定 的報文,也可以采用現(xiàn)有的報文,例如NS報文,本實(shí)施例并不對探測報文的實(shí)現(xiàn)方式進(jìn)行 限制。重新發(fā)送模塊63,分別與探測模塊61和接收模塊62連接,用于當(dāng)接收模塊62在 預(yù)設(shè)時間內(nèi)未接收到探測響應(yīng)報文時,重新發(fā)送探測報文。其中更為優(yōu)選的方式是在重新 發(fā)送模塊63內(nèi)設(shè)置一重發(fā)次數(shù)閾值,當(dāng)重發(fā)次數(shù)達(dá)到預(yù)設(shè)重發(fā)次數(shù)閾值時,將不再發(fā)送探 測報文,并認(rèn)為該終端已經(jīng)下線,將不再為該終端建立綁定表項(xiàng),以避免無限制重發(fā)探測報 文造成的資源浪費(fèi)。基于上述技術(shù)方案,本實(shí)施例的生成模塊52還可用于根據(jù)變化表項(xiàng)信息對應(yīng)的 探測響應(yīng)報文和RA報文信息,生成變化端口的綁定表項(xiàng)。其中,在該方式下,生成模塊52 將不根據(jù)MAC地址表中的變化表項(xiàng)信息中的MAC地址和端口,結(jié)合RA報文信息生成變化端 口的綁定表項(xiàng)。具體的,由于探測響應(yīng)報文是由使用上述IPV6地址的終端返回的,因此,探 測響應(yīng)報文中攜帶有上述IPV6地址以及終端的MAC地址(即NA報文的源MAC地址)等信 息。則生成模塊52獲取接收模塊62接收到的探測響應(yīng)報文(例如對應(yīng)于NS報文的NA報 文)中的信息,即上述IPV6地址、終端的MAC地址,并獲取接收NA報文的端口,再結(jié)合RA報文信息中的老化時間和網(wǎng)段號等信息,用以在綁定表項(xiàng)生成裝置的變化端口上生成所對 應(yīng)的終端的綁定表項(xiàng)。本實(shí)施例的綁定表項(xiàng)生成裝置,同樣可用于執(zhí)行本發(fā)明實(shí)施例提供的綁定表項(xiàng)生 成方法的流程,其在發(fā)起綁定表項(xiàng)的建立過程中,通過探測報文和探測響應(yīng)報文驗(yàn)證使用 IPV6地址的終端的存在狀態(tài),并在確認(rèn)終端存在時,根據(jù)終端的探測響應(yīng)報文在綁定表項(xiàng) 生成裝置的端口上為終端建立綁定表項(xiàng);本實(shí)施例的綁定表項(xiàng)生成裝置既可以保證成功為 終端建立綁定表項(xiàng),又可以避免在終端不存在時建立綁定表項(xiàng)造成的資源浪費(fèi)。進(jìn)一步,在上述技術(shù)方案的基礎(chǔ)上,為了實(shí)現(xiàn)與現(xiàn)有生成綁定表項(xiàng)的技術(shù)方案更 好的兼容,本實(shí)施例的綁定表項(xiàng)生成裝置還包括查詢確定模塊64。該查詢確定模塊64分 別與監(jiān)測模塊51和生成模塊52連接,用于在監(jiān)測模塊51監(jiān)測到MAC地址表有變化,并在 生成模塊52生成綁定表項(xiàng)之前,查詢變化端口的綁定表項(xiàng)信息。其中,當(dāng)變化端口存在綁 定表項(xiàng)時,查詢確定模塊64需要查詢獲取到變化端口的綁定表項(xiàng)信息,并提供確定綁定表 項(xiàng)信息與變化表項(xiàng)信息不一致的結(jié)果;當(dāng)變化端口的綁定表項(xiàng)不存在時,查詢確定模塊64 需要查詢并提供變化端口的綁定表項(xiàng)不存在的結(jié)果。其中,綁定表項(xiàng)信息為綁定表項(xiàng)存儲 的內(nèi)容,例如MAC地址、IPV6地址、接收端口等信息。其中,查詢確定模塊64的應(yīng)用場景以 及具體工作原理,可詳見方法實(shí)施例相應(yīng)部分的描述,本實(shí)施例將不再贅述。通過該查詢確 定模塊64可以實(shí)現(xiàn)本發(fā)明綁定表項(xiàng)生成裝置與現(xiàn)有技術(shù)的兼容。實(shí)施例五本發(fā)明實(shí)施例五提供一種網(wǎng)絡(luò)設(shè)備,包括綁定表項(xiàng)生成裝置。本實(shí)施例的網(wǎng)絡(luò) 設(shè)備例如可以為設(shè)置于終端和路由設(shè)備(例如三層交換機(jī)或路由器)之間的獨(dú)立的ND Snooping設(shè)備,也可以是具有ND Snooping功能的交換機(jī)等設(shè)備。本實(shí)施例的網(wǎng)絡(luò)設(shè)備主 要用于獲取可靠終端的IPV6地址與MAC地址的對應(yīng)關(guān)系,并建立綁定表項(xiàng),通過所建立的 綁定表項(xiàng),以及結(jié)合鄰居發(fā)現(xiàn)(Neighbor Discovery ;簡稱為=ND)檢測(ND Detection)技 術(shù),對異常的ND報文進(jìn)行過濾,達(dá)到防止ND攻擊的效果。其中,綁定表項(xiàng)生成裝置可以為 本發(fā)明上述實(shí)施例提供的綁定表項(xiàng)生成裝置,具體結(jié)構(gòu)、功能和工作原理詳見本發(fā)明上述 實(shí)施例,本實(shí)施例將不再詳細(xì)介紹。本實(shí)施例的網(wǎng)絡(luò)設(shè)備由于包括本發(fā)明的綁定表項(xiàng)生成裝置,因此,可以直接與終 端連接,也可以通過其他端口擴(kuò)展設(shè)備與終端連接,即本實(shí)施例的網(wǎng)絡(luò)設(shè)備可應(yīng)用于各種 網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)中對異常報文進(jìn)行過濾,使終端安全接入網(wǎng)絡(luò)。本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述方法實(shí)施例的全部或部分步驟可以通過 程序指令相關(guān)的硬件來完成,前述的程序可以存儲于一計算機(jī)可讀取存儲介質(zhì)中,該程序 在執(zhí)行時,執(zhí)行包括上述方法實(shí)施例的步驟;而前述的存儲介質(zhì)包括R0M、RAM、磁碟或者 光盤等各種可以存儲程序代碼的介質(zhì)。最后應(yīng)說明的是以上實(shí)施例僅用以說明本發(fā)明的技術(shù)方案,而非對其限制;盡 管參照前述實(shí)施例對本發(fā)明進(jìn)行了詳細(xì)的說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解其依然 可以對前述各實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對其中部分技術(shù)特征進(jìn)行等同替 換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實(shí)施例技術(shù)方案的精 神和范圍。
權(quán)利要求
一種綁定表項(xiàng)生成方法,其特征在于,包括監(jiān)測本地MAC地址表;當(dāng)監(jiān)測到所述MAC地址表發(fā)生變化時,根據(jù)所述MAC地址表中的變化表項(xiàng)信息和預(yù)存儲的RA報文信息,生成所述變化表項(xiàng)信息中的變化端口的綁定表項(xiàng)。
2.根據(jù)權(quán)利要求1所述的綁定表項(xiàng)生成方法,其特征在于,根據(jù)所述MAC地址表中的變 化表項(xiàng)信息和預(yù)存儲的RA報文信息,生成所述變化表項(xiàng)信息中的變化端口的綁定表項(xiàng)之 前,包括根據(jù)所述變化表項(xiàng)信息和所述RA報文信息,生成探測報文,并將所述探測報文發(fā)送給 同網(wǎng)段內(nèi)的終端;以及等待接收所述終端返回的探測響應(yīng)報文。
3.根據(jù)權(quán)利要求2所述的綁定表項(xiàng)生成方法,其特征在于,若在預(yù)設(shè)時間內(nèi)未接收到 所述探測響應(yīng)報文,則重新發(fā)送所述探測報文。
4.根據(jù)權(quán)利要求1所述的綁定表項(xiàng)生成方法,其特征在于,根據(jù)所述MAC地址表中的變 化表項(xiàng)信息和預(yù)存儲的RA報文信息,生成所述變化表項(xiàng)信息中的變化端口的綁定表項(xiàng)之 前,包括查詢獲取所述變化端口的綁定表項(xiàng)信息,并確定所述綁定表項(xiàng)信息與所述變化表項(xiàng)信 息不一致;或者查詢確定所述變化端口的綁定表項(xiàng)信息不存在。
5.根據(jù)權(quán)利要求1-4任一項(xiàng)所述的綁定表項(xiàng)生成方法,其特征在于,根據(jù)所述MAC地址 表中的變化表項(xiàng)信息和預(yù)存儲的RA報文信息,生成所述變化表項(xiàng)信息中的變化端口的綁 定表項(xiàng),具體為根據(jù)所述變化表項(xiàng)信息中的MAC地址和所述RA報文信息中的前綴,生成IPV6地址,以 生成包含所述IPV6地址、所述變化表項(xiàng)信息中的MAC地址和變化端口號,以及所述RA報文 信息的所述綁定表項(xiàng)。
6.根據(jù)權(quán)利要求2所述的綁定表項(xiàng)生成方法,其特征在于,根據(jù)所述MAC地址表中的變 化表項(xiàng)信息和預(yù)存儲的RA報文信息,生成所述變化表項(xiàng)信息中的變化端口的綁定表項(xiàng),具 體為根據(jù)所述變化表項(xiàng)信息對應(yīng)的探測響應(yīng)報文信息和所述RA報文信息,生成所述變化 端口的綁定表項(xiàng)。
7.一種綁定表項(xiàng)生成裝置,其特征在于,包括監(jiān)測模塊,用于監(jiān)測本地MAC地址表;生成模塊,用于在所述監(jiān)測模塊監(jiān)測到所述MAC地址表發(fā)生變化時,根據(jù)所述MAC地址 表中的變化表項(xiàng)信息和預(yù)存儲的RA報文信息,生成所述變化表項(xiàng)信息中的變化端口的綁 定表項(xiàng)。
8.根據(jù)權(quán)利要求7所述的綁定表項(xiàng)生成裝置,其特征在于,還包括探測模塊,用于在生成所述變化端口的綁定表項(xiàng)之前,根據(jù)所述變化表項(xiàng)信息和所述 RA報文信息,生成探測報文,并將所述探測報文發(fā)送給同網(wǎng)段內(nèi)的終端;接收模塊,用于等待接收所述終端返回的探測響應(yīng)報文。
9.根據(jù)權(quán)利要求8所述的綁定表項(xiàng)生成裝置,其特征在于,所述探測模塊包括第一生成單元,用于根據(jù)所述變化表項(xiàng)信息中的MAC地址和所述RA報文信息中的前綴,生成IPV6地址;第二生成單元,用于根據(jù)所述IPV6地址,生成并發(fā)送所述探測報文。
10.根據(jù)權(quán)利要求8所述的綁定表項(xiàng)生成裝置,其特征在于,還包括重新發(fā)送模塊,用于在預(yù)設(shè)時間內(nèi)未接收到所述探測響應(yīng)報文時,重新發(fā)送所述探測 報文。
11.根據(jù)權(quán)利要求7所述的綁定表項(xiàng)生成裝置,其特征在于,還包括查詢確定模塊,用于在所述生成模塊生成所述綁定表項(xiàng)之前,查詢獲取所述變化端口 的綁定表項(xiàng)信息,并確定所述綁定表項(xiàng)信息與所述變化表項(xiàng)信息不一致;或者用于在所述 生成模塊生成所述綁定表項(xiàng)之前,查詢確定所述變化端口的綁定表項(xiàng)信息不存在。
12.根據(jù)權(quán)利要求7-11任一項(xiàng)所述的綁定表項(xiàng)生成裝置,其特征在于,所述生成模塊 具體用于根據(jù)所述變化表項(xiàng)信息中的MAC地址和所述RA報文信息中的前綴,生成IPV6地 址,以生成包含所述IPV6地址、所述變化表項(xiàng)信息中的MAC地址和變化端口號,以及所述RA 報文信息的所述綁定表項(xiàng)。
13.根據(jù)權(quán)利要求8所述的綁定表項(xiàng)生成裝置,其特征在于,所述生成模塊具體用于根 據(jù)所述變化表項(xiàng)信息對應(yīng)的所述探測響應(yīng)報文和所述RA報文信息,生成所述變化端口的 綁定表項(xiàng)。
14.一種包含權(quán)利要求7-13任一項(xiàng)所述的綁定表項(xiàng)生成裝置的網(wǎng)絡(luò)設(shè)備。
全文摘要
本發(fā)明提供一種綁定表項(xiàng)生成方法、裝置及網(wǎng)絡(luò)設(shè)備,其中方法包括監(jiān)測本地MAC地址表;當(dāng)監(jiān)測到MAC地址表發(fā)生變化時,根據(jù)MAC地址表中的變化表項(xiàng)信息和預(yù)存儲的RA報文信息,生成變化表項(xiàng)信息中的變化端口的綁定表項(xiàng)。本發(fā)明技術(shù)方案通過監(jiān)測MAC地址表發(fā)現(xiàn)網(wǎng)絡(luò)遷移,根據(jù)變化的MAC地址表項(xiàng)生成對應(yīng)的綁定表項(xiàng),綁定表項(xiàng)的生成不依賴終端發(fā)出的地址沖突檢測報文,終端無須感知網(wǎng)絡(luò)遷移,可在終端不與網(wǎng)絡(luò)設(shè)備直接連接的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)下,現(xiàn)綁定表項(xiàng)的生成。
文檔編號H04L29/12GK101909007SQ20101024099
公開日2010年12月8日 申請日期2010年7月29日 優(yōu)先權(quán)日2010年7月29日
發(fā)明者鄭寒曦 申請人:福建星網(wǎng)銳捷網(wǎng)絡(luò)有限公司