專利名稱:一種網(wǎng)絡(luò)中防止地址沖突檢測欺騙的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計算機網(wǎng)絡(luò)通信領(lǐng)域,尤其涉及一種IPV6網(wǎng)絡(luò)中.防止地址 沖突檢測欺騙的方法。
背景技術(shù):
隨著因特網(wǎng)規(guī)^莫的日趨擴大,IP(InternetProtocol網(wǎng)絡(luò)之間互連的協(xié)議) 業(yè)務(wù)的迅速增長,IP網(wǎng)絡(luò)上的應(yīng)用也在不斷增加,原有的IP網(wǎng)絡(luò)越來越力 不從心。目前使用的IP協(xié)議是IPV4(Internet Protocol Version 4互聯(lián)網(wǎng)協(xié)議 第四版),是70年代制定的協(xié)議,隨著全球IP網(wǎng)絡(luò)規(guī);f莫的不斷擴大和用戶 數(shù)目的迅速增長,IPV4協(xié)議已不能適應(yīng)IP網(wǎng)絡(luò)發(fā)展的需要,IP網(wǎng)絡(luò)正在向 下一代的網(wǎng)絡(luò)演進,其網(wǎng)絡(luò)協(xié)議也應(yīng)產(chǎn)生重大變化。早在卯年代初,有關(guān)專家就預(yù)見到IP協(xié)議換代的必然性。因為IPV4 地址資源日見緊張,大約只有43億個地址,估計在2005 ~ 2010年間將被 分配完畢,已有逐漸耗盡的趨勢,針對這一現(xiàn)象,因特網(wǎng)工程任務(wù)組(IETF: Internet Engineering Task Force )準備開發(fā)一種IPV6協(xié)議來取代IPV4協(xié)議。 IPV6(Intemet Protocol Version 6)是1992年提出的,主要起因是由于環(huán)球網(wǎng) (Web)的出現(xiàn)導(dǎo)致了 IP網(wǎng)的爆炸性發(fā)展,IP網(wǎng)用戶迅速增加,IP地址空前 緊張,由于IPV4協(xié)議采用32位二進制數(shù)來表示地址,地址空間很狹小, IP網(wǎng)將會因為地址耗盡而無法繼續(xù)發(fā)展,所以IPV6協(xié)議首先要解決的問題 是擴大地址空間。IPV6協(xié)議采用128位地址長度,幾乎可以不受限制地提 供地址。按保守方法估算,IPV6實際可分配的地址,整個地球的每平方米 面積上仍可分配1000多個地址。當一臺安裝有IPV6協(xié)議的主機第一次連接到鏈路上時,它能夠自動配 .置自身的接口地址。對于廣播型的接口,使用一種稱為MAC-to-EUI64的轉(zhuǎn) 換法,利用MAC(Macintosh)地址導(dǎo)出接口的ID(Identification),再加上適當 的前綴構(gòu)成完整的IPV6地址。雖然大多數(shù)情況下都可以保證,在任何范圍 內(nèi)獲取一個唯一的地址,但是確保地址的唯一性無疑是明知的。所以不管 一臺設(shè)備是如何獲取一個地址的,在使用這個地址之前都必需要進行地址 沖突;f企測(DAD: Duplicate Address Detection)程序。對已經(jīng)獲取一個新地址的節(jié)點,系統(tǒng)會把這個新的地址歸類為臨時狀 態(tài)的地址。在地址沖突檢測操作沒有完成并確認該鏈路上沒有其他節(jié)點使 .用這個地址之前,該地址還不能被使用。這個節(jié)點會把目標地址字段設(shè)置 為該地址的鄰居請求消息,并發(fā)送這個鄰居請求消息來驗該證地址是否沖 突。這個鄰居請求消息的源地址是未指定地址,而它的目的地址是纟皮請求 節(jié)點的多播地址。如果一個節(jié)點收到一個鄰居請求消息,并且它的目標地址與該節(jié)點所 分配的其中一個地址匹配,它就會發(fā)送一個目標地址和目的地址都為試探地址的鄰居通告消息,發(fā)起這個鄰居請求消息的節(jié)點就會知道這個試探地址是沖突的,并且不能使用。IPV6的鄰居請求消息格式中的目標地址使用的是本地鏈路地址。使用 這類地址的消息只在單條鏈路上傳遞,不會被IPV6路由器轉(zhuǎn)發(fā),但會被二 層設(shè)備例如交換機,在本地鏈路的所有端口上轉(zhuǎn)發(fā)。上述的地址沖突檢測機制很容易造成給惡意主機在IPV6網(wǎng)絡(luò)中開放漏 洞。某個惡意的節(jié)點可以偽造數(shù)據(jù)包對所有地址沖突檢測的鄰居請求報文 給予應(yīng)答,這將擁塞該條鏈路上的所有節(jié)點無法正常完成地址沖突檢測, 從而導(dǎo)致本地鏈路癱瘓。因此,現(xiàn)有技術(shù)存在缺陷,尚有待改進和發(fā)展。發(fā)明內(nèi)容本發(fā)明要解決的問題是,提供一種網(wǎng)絡(luò)中防止地址沖突檢測欺騙的方 法,以防止由于惡意節(jié)點的地址沖突檢測欺騙報文造成的鏈路癱瘓。本發(fā)明的4支術(shù)方案如下一種網(wǎng)絡(luò)中防止地址沖突檢測欺騙的方法,其包括以下步驟A、 運行監(jiān)控子模塊用于偵聽以太網(wǎng)鏈路內(nèi)各個端口,發(fā)現(xiàn)端口可能異 常時,調(diào)用模擬地址沖突檢測子模塊對該端口進行驗證;B、 判定該端口異常時,調(diào)用防御子模塊,半關(guān)閉異常端口直至端口正.常。所述的方法,其中,所述步驟B中半關(guān)閉動作包4舌允許往異常端口 發(fā)數(shù)據(jù)包,禁止異常端口發(fā)出的數(shù)據(jù)包擴散至鏈路的其他分支。所述的方法,其中,所述步驟A中所述監(jiān)控子模塊的偵聽過程還包括 Al、監(jiān)控來自于鏈路上的鄰居通告消息; A2、統(tǒng)計鄰居通告消息的源端口 。所述的方法,其中,所述步驟A中的監(jiān)控子模塊、模擬地址沖突檢測 子模塊和防御子模塊中還包含二層設(shè)備。所述的方法,其中,所述步驟A1還包括 Al 1 、接收來自本鏈路上的所有數(shù)據(jù)包;A12、判斷所述數(shù)據(jù)包類型是否屬于鄰居通告消息,是則轉(zhuǎn)步驟A2, 否則轉(zhuǎn)步驟All。所述的方法,其中,所述步驟A2還包括A21、將所收到鄰居通告消息的源端口相應(yīng)統(tǒng)計量計數(shù)器加1;A22、判斷所述統(tǒng)計量是否超過設(shè)定的門限值,是則轉(zhuǎn)步驟A23,否則 轉(zhuǎn)步驟A21;A23、復(fù)位所述統(tǒng)計量計數(shù)器,返回該端口可能異常。 所述的方法,其中,所述步驟B還包括Bl、生成一個地址沖突檢測報文,并從所述可能異常端口發(fā)送出該報文;B2、等待是否收到相應(yīng)的鄰居通告消息,是則返回端口異常,否則返 回端口正常。所述的方法,其中,所述步驟B1中所述地址沖突檢測報文中的目標地 址隨機且合法。所述的方法,其中,所述步驟B2中在返回端口異常后還包括 B3、 判斷是否還設(shè)置有精確判定程序,是則轉(zhuǎn)步驟B4,否則返回端口 異常;B4、重復(fù)一次步驟B1和步驟B2的處理,并且所述地址沖突檢測報文 中的目標地址非法。所述的方法,其中,所述步驟B之后還包括Cl、調(diào)用模擬地址沖突檢測子模塊檢測該端口是否正常,是則轉(zhuǎn)步驟 C3,否則轉(zhuǎn)步驟C2;C2、等待超過預(yù)定時間后轉(zhuǎn)步驟C1; C3、解除半關(guān)閉狀態(tài),恢復(fù)端口正常。本發(fā)明所提供的 一種網(wǎng)絡(luò)中防止地址沖突檢測欺騙的方法,由于采取 了半關(guān)閉異常端口直至端口正常的防御手段,有效地防止了因惡意節(jié)點的 .地址沖突檢測欺騙報文造成的鏈路癱瘓,彌補了現(xiàn)有技術(shù)中沒有針對地址 沖突檢測欺騙報文采取有效措施的漏洞,從而提高了系統(tǒng)運行的安全性和 穩(wěn)定性。
圖l是本發(fā)明的主流程示意圖;圖2是本發(fā)明的監(jiān)控子模塊流程示意圖;圖3是本發(fā)明的模擬地址沖突檢測子模塊流程示意圖;圖4是本發(fā)明的防御子模塊流程示意圖。
具體實施方式
以下將結(jié)合附圖所示,對本發(fā)明IPV6網(wǎng)絡(luò)中防止地址沖突檢測欺騙方 法的具體實施方式
加以詳細說明。本發(fā)明IPV6網(wǎng)絡(luò)中防止地址沖突檢測欺騙方法的具體實施方式
,主要 核心點在于,監(jiān)控子模塊發(fā)現(xiàn)端口可能異常并經(jīng)模擬地址沖突檢測子模塊 (以下簡稱模擬DAD子模塊)驗證端口異常時,通過防御子模塊半關(guān)閉 異常端口直至該端口正常,至于支持組播的以太網(wǎng)鏈路內(nèi)主機和二層設(shè)備 的安裝調(diào)試以及IPV6協(xié)議網(wǎng)絡(luò)應(yīng)用過程為現(xiàn)有技術(shù)所熟知,在此不再贅述。本發(fā)明IPV6網(wǎng)絡(luò)中防止地址沖突檢測欺騙方法的具體實施方式
基于包 含IPV6協(xié)議二層設(shè)備的支持組播的以太網(wǎng)鏈路。二層設(shè)備例如交換機等通 過對以太網(wǎng)鏈路內(nèi)各個端口的偵聽,以發(fā)現(xiàn)是否有可能存在惡意節(jié)點接入 的分支,是則交由模擬DAD子模塊對該端口進行驗證,如果確認該分支上 存在惡意節(jié)點,則主動斷開該分支的鏈接,以確保本鏈路的其他分支能正 常工作。.曰月IPV6網(wǎng)絲 以下幾個子才莫塊1、 監(jiān)控子模塊二層設(shè)備隨時監(jiān)控來自于本鏈路上的所有鄰居通告消 息,同時統(tǒng)計每個消息來源的源端口。 一旦發(fā)現(xiàn)某端口的鄰居通告消息數(shù).量超過所設(shè)定的門限值,則發(fā)現(xiàn)該端口可能異常,隨即調(diào)用模擬DAD子模 塊以驗證該端口分支是否存在惡意節(jié)點。2、 模擬DAD子模塊針對上述特定的可能異常的端口分支,該子模 塊可發(fā)送模擬的DAD報文,報文中所使用的目標地址為二層設(shè)備隨機生成(甚至是非法報文)。然后檢查該分支是否有返回這些DAD報文相應(yīng)的鄰 居通告消息。如果有,則判定該分支上存在惡意節(jié)點,隨即調(diào)用防御子模塊進行防御。較好的是,在生成DAD報文時還采用了分級的手段。首先產(chǎn) 生一個隨機且合法的目標地址DAD報文進行驗證。如果失敗,再根據(jù)系統(tǒng) 配置,生成又一個非法的目標地址DAD l艮文進行-瞼證。3、防御子模塊針對模擬DAD子模塊判定出來的惡意節(jié)點所在分支, 半關(guān)閉二層設(shè)備上相對應(yīng)的端口 ,以阻止該惡意節(jié)點所在分支對本鏈路其 他分支造成的破壞。所謂的半關(guān)閉,是指只允許從二層設(shè)備往異常端口發(fā) 數(shù)據(jù)包,但不允許異常端口發(fā)出的數(shù)據(jù)包擴散到鏈路的其他分支上去。還 可以預(yù)定時間周期反復(fù)調(diào)用DAD子模塊對該異常端口進行測試,直至發(fā)現(xiàn) 該端口上的惡意節(jié)點消失后,解除防御狀態(tài),重新開放該端口。如圖1所示為本發(fā)明的主流程示意圖步驟S11:系統(tǒng)運行監(jiān)控子模塊,監(jiān)控來自于鏈路上的鄰居通告消息, 統(tǒng)計鄰居通告消息的源端口 ;步驟S12:系統(tǒng)是否發(fā)現(xiàn)某端口存在可能異常,是則轉(zhuǎn)入步驟S13,否 則返回步驟S11;步驟S13:系統(tǒng)針對該可能異常端口調(diào)用DAD子模塊進行驗證;步驟S14:系統(tǒng)如果判定該端口確實異常,轉(zhuǎn)入步驟S15,否則返回步 驟S11;步驟S15:系統(tǒng)調(diào)用防御子模塊半關(guān)閉已證實的該異常端口,禁止該異 常端口發(fā)出的數(shù)據(jù)包擴散到鏈路的其他分支上去,但允許從二層設(shè)備往該 異常端口發(fā)數(shù)據(jù)包;步驟S16:系統(tǒng)調(diào)用DAD子模塊對該異常端口檢測; 步驟S17:系統(tǒng)按最新檢測結(jié)果檢測該端口是否恢復(fù)正常,是則轉(zhuǎn)入步 驟S18,否則返回步驟S16;步驟S18:系統(tǒng)解除半關(guān)閉防御,恢復(fù)該端口正常狀態(tài)。2)如圖2所示為監(jiān)控子模塊流程示意圖步驟S21:系統(tǒng)隨時接收來自本鏈路上的所有數(shù)據(jù)包;步驟S22:系統(tǒng)判斷所述數(shù)據(jù)包類型是否屬于鄰居通告消息,是則入轉(zhuǎn)步驟S23,否則轉(zhuǎn)入步驟S21;步驟S23:系統(tǒng)將收到該數(shù)據(jù)包的端口相應(yīng)統(tǒng)計量計數(shù)器數(shù)目加1; 步驟S24:系統(tǒng)判斷該統(tǒng)計量計數(shù)器是否超過所設(shè)定的門P艮值,是則轉(zhuǎn)入步驟S25,否則轉(zhuǎn)入步驟S21;步驟S25:系統(tǒng)復(fù)位該統(tǒng)計量計數(shù)器,返回該端口可能異常。3 )如圖3所示為模擬DAD子模塊流程示意圖步驟S31:系統(tǒng)自動生成一個DAD報文,其中的目標地址隨機且合法;步驟S32:系統(tǒng)從相應(yīng)的可能異常端口發(fā)送該DAD報文;步驟S33:系統(tǒng)等待接收相應(yīng)目標地址的鄰居通告消息;步驟S34:系統(tǒng)是否收到所述鄰居通告消息,是則轉(zhuǎn)入步驟S35,否則返回端口正常;步驟S35:系統(tǒng)檢查是否還設(shè)置了精確判定程序,是則轉(zhuǎn)入步驟S36,否則返回端口異常;步驟S36:系統(tǒng)自動生成又一個DAD才艮文,此時其中的目標地址非法; 步驟S37:系統(tǒng)乂X^目應(yīng)的可能異常端口再次發(fā)送該DAD報文; 步驟S38:系統(tǒng)等待接收相應(yīng)目標地址的鄰居通告消息; 步驟S39:系統(tǒng)是否收到所述鄰居通告消息,是則返回端口異常,否則返回端口正常。4)如圖4所示為防御子模塊流程示意圖步驟S41:系統(tǒng)半關(guān)閉相應(yīng)端口,包括允許從二層i殳備往異常端口發(fā) 數(shù)據(jù)包,禁止異常端口發(fā)出的數(shù)據(jù)包擴散至鏈路的其他分支;步驟S42:系統(tǒng)調(diào)用DAD子模塊對該異常端口實施4企測;步驟S43:系統(tǒng)最新檢測的結(jié)果是否出現(xiàn)端口正常,是則轉(zhuǎn)入步驟S45, 否則轉(zhuǎn)入步驟S44;步驟S44:系統(tǒng)等待超過設(shè)定時間后轉(zhuǎn)入步驟S42;步驟S45:系統(tǒng)解除半關(guān)閉防御,恢復(fù)端口狀態(tài),結(jié)束流程。 本發(fā)明具體實施方式
所描述IPV6網(wǎng)絡(luò)中防止地址沖突檢測欺騙方法, 根據(jù)實際應(yīng)用還可以采用現(xiàn)有各種可能的方案,其基本手段為本領(lǐng)域技術(shù) 人員所熟知,在此不再贅述。本發(fā)明IPV6網(wǎng)絡(luò)中防止地址沖突檢測欺騙方法的具體實施方式
中,由 于采取了半關(guān)閉異常端口直至端口正常的防御手段,有效地防止了因惡意 節(jié)點的地址沖突檢測欺騙報文造成的鏈路癱瘓,彌補了現(xiàn)有技術(shù)中沒有針 對地址沖突^r測欺騙^J:采取有效措施的漏洞,從而提高了系統(tǒng)運行的安 全性和穩(wěn)定性。應(yīng)當理解的是,對本領(lǐng)域普通技術(shù)人員來說,可以根據(jù)上述方案的說 明加以改進或變換,例如防止欺騙的手段變化等,而所有這些改進和變換 都本應(yīng)屬于本發(fā)明所附權(quán)利要求的保護范圍。
權(quán)利要求
1. 一種網(wǎng)絡(luò)中防止地址沖突檢測欺騙的方法,其包括以下步驟A、運行監(jiān)控子模塊用于偵聽以太網(wǎng)鏈路內(nèi)各個端口,發(fā)現(xiàn)端口可能異常時,調(diào)用模擬地址沖突檢測子模塊對該端口進行驗證;B、判定該端口異常時,調(diào)用防御子模塊,半關(guān)閉異常端口直至端口正常。
2、 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述步驟B中半關(guān)閉動 作包括允許往異常端口發(fā)數(shù)據(jù)包,禁止異常端口發(fā)出的數(shù)據(jù)包擴散至鏈 路的其他分支。
3、 根據(jù)權(quán)利要求2所述的方法,其特征在于,所述步驟A中所述監(jiān)控子模塊的偵聽過程還包括Al、監(jiān)控來自于鏈路上的鄰居通告消息; A2、統(tǒng)計鄰居通告消息的源端口。
4、 根據(jù)權(quán)利要求2所述的方法,其特征在于,所述步驟A中的監(jiān)控子 模塊、模擬地址沖突檢測子模塊和防御子模塊中還包含二層設(shè)備。
5、 根據(jù)權(quán)利要求3所述的方法,其特征在于,所述步驟A1還包括 All、接收來自本鏈路上的所有數(shù)據(jù)包;A12、判斷所述數(shù)據(jù)包類型是否屬于鄰居通告消息,是則轉(zhuǎn)步驟A2, 否則轉(zhuǎn)步驟All。
6、 根據(jù)權(quán)利要求3所述的方法,其特征在于,所述步驟A2還包括 A21、將所收到鄰居通告消息的源端口相應(yīng)統(tǒng)計量計數(shù)器加1;A22、判斷所述統(tǒng)計量是否超過設(shè)定的門限值,是則轉(zhuǎn)步驟A23,否則轉(zhuǎn)步驟A21;A23、復(fù)位所述統(tǒng)計量計數(shù)器,返回該端口可能異常。
7、 根據(jù)權(quán)利要求2所述的方法,其特征在于,所述步驟B還包括 Bl、生成一個地址沖突檢測^JL,并從所述可能異常端口發(fā)送出該報文;B2、等待是否收到相應(yīng)的鄰居通告消息,是則返回端口異常,否則返 回端口正常。
8、 根據(jù)權(quán)利要求7所述的方法,其特征在于,所述步驟B1中所述地 址沖突檢測才艮文中的目標地址隨才幾且合法。
9、 根據(jù)權(quán)利要求8所述的方法,其特征在于,所述步驟B2中在返回 端口異常后還包括B3、判斷是否還設(shè)置有精確判定程序,是則轉(zhuǎn)步驟B4,否則返回端口異常;B4、重復(fù)一次步驟B1和步驟B2的處理,并且所述地址沖突4企測報文 中的目標地址非法。
10、 根據(jù)權(quán)利要求2所述的方法,其特征在于,所述步驟B之后還包括Cl、調(diào)用模擬地址沖突檢測子模塊檢測該端口是否正常,是則轉(zhuǎn)步驟 C3,否則轉(zhuǎn)步驟C2;C2、等待超過預(yù)定時間后轉(zhuǎn)步驟C1; C3、解除半關(guān)閉狀態(tài),恢復(fù)端口正常。
全文摘要
本發(fā)明公開了一種網(wǎng)絡(luò)中防止地址沖突檢測欺騙的方法,其包括以下步驟運行監(jiān)控子模塊用于偵聽以太網(wǎng)鏈路內(nèi)各個端口,發(fā)現(xiàn)端口可能異常時,調(diào)用模擬地址沖突檢測子模塊對該端口進行驗證;判定該端口異常時,調(diào)用防御子模塊,半關(guān)閉異常端口直至端口正常。由于采取了半關(guān)閉異常端口直至端口正常的防御手段,有效地防止了因惡意節(jié)點的地址沖突檢測欺騙報文造成的鏈路癱瘓,彌補了現(xiàn)有技術(shù)中沒有針對地址沖突檢測欺騙報文采取有效措施的漏洞,從而提高了系統(tǒng)運行的安全性和穩(wěn)定性。
文檔編號H04L29/06GK101267312SQ20081006705
公開日2008年9月17日 申請日期2008年4月30日 優(yōu)先權(quán)日2008年4月30日
發(fā)明者凡 楊 申請人:中興通訊股份有限公司