專利名稱:一種防止仿冒ip地址進(jìn)行攻擊的方法和接入設(shè)備的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及網(wǎng)絡(luò)安全技術(shù)領(lǐng)域,特別涉及一種防止仿冒IP地址進(jìn)行攻擊的方法 和接入設(shè)備。
背景技術(shù):
IPv6鄰居發(fā)現(xiàn)(ND)協(xié)議使用五種類型的網(wǎng)際控制報(bào)文協(xié)議(ICMPv6)報(bào)文鄰居 請求(賂)報(bào)文、鄰居通告(NA)報(bào)文、路由器請求(舊)報(bào)文、路由器通告報(bào)文(RA)和重定 向(Redirect)報(bào)文。上述五種類型的ICMPv6報(bào)文可以用于實(shí)現(xiàn)地址解析、驗(yàn)證鄰居是否 可達(dá)、重復(fù)地址檢測、路由器發(fā)現(xiàn)、地址自動配置和重定向等功能。由于在ND協(xié)議中報(bào)文發(fā)送方式為明文發(fā)送,因此在同一鏈路(例如同一 VLAN) 中,可能存在偽造使用仿冒IP地址的報(bào)文從而進(jìn)行攻擊的問題。為了解決這一問題,可以 采用接入設(shè)備偵聽DHCPV6地址分配過程或者偵聽ND無狀態(tài)地址配置過程,生成安全表項(xiàng) 的方式,具體為在各接入設(shè)備上,偵聽用戶終端的DHCPv6地址分配過程或ND無狀態(tài)地址 配置過程,根據(jù)偵聽結(jié)果生成包含IP地址、鏈路地址和接入端口的綁定表項(xiàng),根據(jù)該綁定 表項(xiàng)進(jìn)行后續(xù)控制報(bào)文或數(shù)據(jù)報(bào)文的轉(zhuǎn)發(fā)。即只有完全與綁定表項(xiàng)匹配的報(bào)文才能被轉(zhuǎn) 發(fā),不匹配的報(bào)文則丟棄。然而上述過程中當(dāng)有多臺接入設(shè)備處于同一鏈路時(shí),各個(gè)接入設(shè)備之間會進(jìn)行表 項(xiàng)同步,使每個(gè)接入設(shè)備上都維護(hù)了該鏈路中針對所有用戶終端的綁定表項(xiàng),這必定會占 用大量的設(shè)備資源。因此,現(xiàn)有技術(shù)中又提供了一種防止仿冒IP地址進(jìn)行攻擊的方法,各 接入設(shè)備僅針對接入該設(shè)備自身的用戶終端生成綁定表項(xiàng),具體為僅利用通過用戶側(cè)端 口偵聽到的報(bào)文生成綁定表項(xiàng)。但是這種方式中,也會產(chǎn)生仿冒IP地址攻擊的漏洞。如圖1所示,接入設(shè)備(NAS)I上接入了用戶終端PCldgSPCl的IP地址為IP Addressl,鏈路地址為LA1,接入端口為用戶側(cè)端口 1,則在接入設(shè)備NASI上存在包含IP AddressU LAl和用戶側(cè)端口 1的綁定表項(xiàng)。NASI和NAS2處于同一鏈路,如果此時(shí)非法用 戶設(shè)備PC2仿冒IP Addressl接入NAS2,在NAS2上生成包含IP AddressUVPNl和用戶側(cè) 端口 2的綁定表項(xiàng),即便PCl偵聽到有人使用自己的IP地址,回應(yīng)包含該IP Addressl的 NA報(bào)文,PC2僅需要將該NA報(bào)文丟棄即可繼續(xù)使用該IP地址上網(wǎng),甚至進(jìn)行非法操作。并 且,當(dāng)PCl從NASI遷移到NAS2后,NAS2偵聽到PCl的接入,但由于NAS2中已經(jīng)存在包含 該IP Addressl的綁定表項(xiàng),因此,PCl便不能使用該IP Addressl通過NAS2接入網(wǎng)絡(luò)。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明提供了一種防止仿冒IP地址進(jìn)行攻擊的方法和接入設(shè)備,以便 于有效地防止非法用戶仿冒IP地址進(jìn)行攻擊。一種防止仿冒IP地址進(jìn)行攻擊的方法,該方法包括所述接入設(shè)備從用戶側(cè)端口接收到攜帶待檢測IP地址的重復(fù)地址檢測鄰居請求 DAD NS報(bào)文或地址確定Confirm報(bào)文時(shí),生成包含所述待檢測IP地址的綁定表項(xiàng),并通過網(wǎng)絡(luò)側(cè)端口發(fā)送攜帶所述待檢測IP地址的DAD NS報(bào)文;所述接入設(shè)備如果在設(shè)定DAD檢測時(shí)間內(nèi)從網(wǎng)絡(luò)側(cè)端口收到攜帶所述待檢測IP 地址的NA報(bào)文,對該NA報(bào)文中附加的認(rèn)證信息進(jìn)行認(rèn)證,如果認(rèn)證通過,則刪除包含所述 待檢測IP地址的綁定表項(xiàng);其中,所述認(rèn)證信息是與所述接入設(shè)備處于同一鏈路中的其它接入設(shè)備從用戶側(cè) 端口收到攜帶所述待檢測IP地址的NA報(bào)文時(shí)在該NA報(bào)文中附加的。一種接入設(shè)備,該接入設(shè)備包括表項(xiàng)生成單元、報(bào)文處理單元、認(rèn)證處理單元和 表項(xiàng)處理單元;所述表項(xiàng)生成單元,用于在該接入設(shè)備從用戶側(cè)端口接收到待檢測IP地址的DAD NS報(bào)文或Confirm報(bào)文時(shí),生成包含所述待檢測IP地址的綁定表項(xiàng),并向報(bào)文處理單元發(fā) 送第一通知;所述報(bào)文處理單元,用于接收到第一通知時(shí),通過網(wǎng)絡(luò)側(cè)端口發(fā)送攜帶所述待檢 測IP地址的DAD NS報(bào)文;所述認(rèn)證處理單元,用于該接入設(shè)備在設(shè)定DAD檢測時(shí)間內(nèi)從網(wǎng)絡(luò)側(cè)端口收到攜 帶所述待檢測IP地址的NA報(bào)文時(shí),對該NA報(bào)文中附加的認(rèn)證信息進(jìn)行認(rèn)證,如果認(rèn)證通 過,則向所述表項(xiàng)處理單元發(fā)送刪除通知;該接入設(shè)備從用戶側(cè)端口接收到攜帶待檢測IP 地址的NA報(bào)文時(shí),在該NA報(bào)文中附加認(rèn)證信息;所述表項(xiàng)處理單元,用于接收到刪除通知后,刪除包含所述待檢測IP地址的綁定 表項(xiàng)。由以上技術(shù)方案可以看出,本發(fā)明中通過在從用戶側(cè)端口收到的NA報(bào)文中附加 認(rèn)證信息,使得接入設(shè)備能夠?qū)木W(wǎng)絡(luò)側(cè)端口收到的攜帶待檢測IP地址的NA中的認(rèn)證信 息進(jìn)行認(rèn)證,在認(rèn)證通過時(shí)確定待檢測的IP地址已經(jīng)有合法用戶在同一鏈路的其它接入 設(shè)備上使用,在本地通過DAD NS報(bào)文或Confirm報(bào)文生成的該待檢測IP地址所對應(yīng)綁定 表項(xiàng)可能是針對攻擊用戶的,則將本地包含該待檢測IP地址的綁定表項(xiàng)刪除,從而在接入 設(shè)備僅針對接入本接入設(shè)備的用戶終端建立綁定表項(xiàng)的場景下,有效地避免非法用戶仿冒 IP地址進(jìn)行的攻擊。
圖1為非法用戶仿冒IP地址進(jìn)行攻擊的示意圖;圖2為本發(fā)明實(shí)施例一提供的方法流程圖;圖3為攜帶認(rèn)證信息的Option字段格式圖;圖4為本發(fā)明實(shí)施例二提供的方法流程圖;圖5為本發(fā)明提供的接入設(shè)備的結(jié)構(gòu)示意圖。
具體實(shí)施例方式為了使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面結(jié)合附圖和具體實(shí)施例對 本發(fā)明進(jìn)行詳細(xì)描述。本發(fā)明提供的方法主要包括接入設(shè)備從用戶側(cè)端口接收到攜帶待檢測IP地址 的DAD NS報(bào)文或地址確定(Confirm)報(bào)文時(shí),生成包含所述待檢測IP地址的綁定表項(xiàng),并通過網(wǎng)絡(luò)側(cè)端口發(fā)送攜帶待檢測IP地址的DAD NS報(bào)文;如果在設(shè)定DAD檢測時(shí)間內(nèi)從網(wǎng) 絡(luò)側(cè)端口收到攜帶該待檢測IP地址的NA報(bào)文,對該NA報(bào)文中附加的認(rèn)證信息進(jìn)行認(rèn)證, 如果認(rèn)證通過,則刪除包含上述待檢測IP地址的綁定表項(xiàng);其中,認(rèn)證信息是與該接入設(shè) 備處于同一鏈路中的其它接入設(shè)備從用戶側(cè)端口收到攜帶所述待檢測IP地址的NA報(bào)文時(shí) 在該NA報(bào)文中附加的。上述方法中涉及的同一鏈路可以是同一虛擬局域網(wǎng)(VLAN),也可以同一非組播多 路訪問網(wǎng)絡(luò)(NBMA)等。其中,上述DAD NS報(bào)文是ND協(xié)議中的報(bào)文,Confirm報(bào)文是DHCPv6協(xié)議中的報(bào) 文,下面通過具體的實(shí)施例針對這兩種協(xié)議報(bào)文對上述方法進(jìn)行詳細(xì)描述。實(shí)施例一、仍以圖1所示結(jié)構(gòu)為例,假設(shè)用戶終端PCl為IP Addressl的合法用戶, 其鏈路地址為LAl,PCl接入NASI,此時(shí),在NASI中已生成包含該IP AddressULAl和用戶 側(cè)端口 1的綁定表項(xiàng)。如果此時(shí),非法用戶PC2接入NAS2并冒充IP Addressl發(fā)送DAD NS 報(bào)文,則按照本發(fā)明所提供的方法可以如圖2所示,包括以下步驟步驟201 :NAS2從用戶側(cè)端口 2接收到PC2發(fā)送的攜帶IP Addressl的DAD NS報(bào) 文,則生成包含該IP Addressl、用戶側(cè)端口 2和PC2的鏈路地址的綁定表項(xiàng),并轉(zhuǎn)發(fā)該DAD NS報(bào)文。實(shí)際上,在NAS2接收到DAD NS報(bào)文后,會首先判斷本地是否已經(jīng)生成包含該 IP Addressl的綁定表項(xiàng),如果是,進(jìn)一步判斷該DAD NS報(bào)文是否與NAS2本地中包含IP Addressl的綁定表項(xiàng)完全匹配,也就是說,判斷PC2的鏈路地址和用戶側(cè)端口 2是否與該綁 定表項(xiàng)中的內(nèi)容一致,如果是,說明該P(yáng)C2是與綁定表項(xiàng)匹配的用戶終端,則轉(zhuǎn)發(fā)該DAD NS 報(bào)文;否則,說明已經(jīng)存在接入NAS2且使用該IP Address 1的其它用戶終端,丟棄該DAD NS報(bào)文。在本實(shí)施例中,NAS2中尚沒有包含該IP Addressl的綁定表項(xiàng),因此,NAS2生成 包含該IP Addressl、用戶側(cè)端口 2和PC2的鏈路地址的綁定表項(xiàng)。PC2的鏈路地址可以從DAD NS報(bào)文的源鏈路地址中獲取,鏈路地址可以是MAC地 址、永久虛鏈路(PVC)地址等,與具體的鏈路類型對應(yīng)。步驟202 =NASl從網(wǎng)絡(luò)側(cè)端口接收到攜帶IP Addressl的DAD NS報(bào)文后,轉(zhuǎn)發(fā)該 DAD NS報(bào)文。在本步驟中,NASI從網(wǎng)絡(luò)側(cè)端口接收到DAD NS報(bào)文后,可以首先判斷本地是否已 經(jīng)生成包含IP Addressl的綁定表項(xiàng),如果否,轉(zhuǎn)發(fā)該DAD NS報(bào)文;如果是,進(jìn)一步匹配該 DAD NS攜帶的源鏈路地址是否與本地包含IP Addressl的綁定表項(xiàng)匹配,如果匹配且該綁 定表項(xiàng)已經(jīng)啟動了老化進(jìn)程,則NASI認(rèn)為是原來接入NASI的合法用戶終端PCl發(fā)生了遷 移,例如遷移到了 NAS2,此時(shí)NASI將本地包含IP Addressl的綁定表項(xiàng)刪除。如果不匹配, 或者匹配但該綁定表項(xiàng)沒有啟動老化進(jìn)程,則轉(zhuǎn)發(fā)該DAD NS報(bào)文,繼續(xù)偵聽NA報(bào)文,本實(shí) 施例中對應(yīng)該不匹配的情況。其中,對于老化進(jìn)程的啟動將在后續(xù)進(jìn)行具體描述。步驟203 =NASl從用戶側(cè)端口 1接收到PCl返回的攜帶IP Addressl的NA報(bào)文 后,在該NA報(bào)文中附加認(rèn)證信息,然后通過網(wǎng)絡(luò)側(cè)端口轉(zhuǎn)發(fā)該NA報(bào)文。由于PCl接收到攜帶IP Addressl的DAD NS報(bào)文后,確定自身已經(jīng)使用該IP Addressl,因此會單播回復(fù)攜帶IP Addressl的NA報(bào)文。NASI在NA報(bào)文中附加的認(rèn)證信息可以是按照NASI和NAS2所在鏈路約定的方式生成的認(rèn)證信息,該認(rèn)證信息可以通知NAS2該NA報(bào)文的合法性,并將NAS2上對應(yīng)的綁定 表項(xiàng)刪除,以避免非法用戶的仿冒攻擊。該認(rèn)證信息可以附加在NA報(bào)文中的選項(xiàng)(Option)字段中,其格式可以如圖3所 示。其中,類型(Type)字段用于指示該Option攜帶認(rèn)證信息,長度(Length)字段用于指 示該Option的長度,值(value)字段用于攜帶具體認(rèn)證信息。步驟204 :NAS2從網(wǎng)絡(luò)側(cè)端口接收到攜帶IP Addressl的NA報(bào)文后,對該NA報(bào)文 中攜帶的認(rèn)證信息進(jìn)行認(rèn)證,如果認(rèn)證成功,則刪除NAS2中包含該IP Addressl的綁定表 項(xiàng)。在NAS2接收到攜帶IP Addressl的NA報(bào)文后,可以首先判斷該NA報(bào)文中是否攜 帶認(rèn)證信息,如果沒有攜帶認(rèn)證信息,則丟棄該NA報(bào)文;如果攜帶認(rèn)證信息,則對該認(rèn)證信 息進(jìn)行認(rèn)證,如果認(rèn)證失敗,則丟棄該NA報(bào)文;本實(shí)施例中認(rèn)證成功,則說明在同一鏈路中 已經(jīng)有用戶使用IPAddressl,說明接入該NAS2的PC2是該IP Addressl的非法使用者,因 此,將本地包含IP Addressl的綁定表項(xiàng)刪除,以禁止PC2使用IP Addressl接入網(wǎng)絡(luò)。另 外,在認(rèn)證成功后,還可以將刪除的綁定表項(xiàng)信息上報(bào)網(wǎng)管,以便網(wǎng)管根據(jù)綁定表項(xiàng)中的信 息確定攻擊者。實(shí)施例二、在用戶終端從一個(gè)接入設(shè)備遷移到另一個(gè)接入設(shè)備,或者從接入設(shè)備的一個(gè)用 戶側(cè)端口遷移到另一個(gè)用戶側(cè)端口時(shí),會向遷移后的接入設(shè)備發(fā)送攜帶待檢測IP地址的 Confirm報(bào)文,以檢測該IP地址是否能夠繼續(xù)使用。而非法用戶也可以通過在同一鏈路中 的其它接入設(shè)備上發(fā)送Confirm報(bào)文來使用仿冒的IP地址接入網(wǎng)絡(luò),針對這種情況在本實(shí) 施例中進(jìn)行描述。仍以圖1所示結(jié)構(gòu)為例,假設(shè)用戶終端PCI為IP Addressl的合法用戶, 其鏈路地址為LAl,PCl接入NASI,此時(shí),在NASI中已生成包含該IP AddressULAl和用戶 側(cè)端口 1的綁定表項(xiàng)。如果此時(shí),非法用戶PC2接入NAS2并冒充IP Addressl發(fā)送confirm 報(bào)文,則按照本發(fā)明所提供的方法可以如圖4所示,包括以下步驟步驟401 :NAS2從用戶側(cè)端口 2接收到PC2發(fā)送的攜帶IP Addressl的Confirm 報(bào)文,則生成包含該IP Addressl、用戶側(cè)端口 2和PC2的鏈路地址的綁定表項(xiàng),并生成攜帶 IP Addressl的DAD NS報(bào)文進(jìn)行發(fā)送。在本步驟中,在NAS2接收到Confirm報(bào)文后,會首先判斷本地是否已經(jīng)生成包含 該IP Addressl的綁定表項(xiàng),如果是,進(jìn)一步判斷該用戶側(cè)端口 2以及Confirm報(bào)文的源鏈 路地址是否與NAS2本地中包含IP Addressl的綁定表項(xiàng)匹配,如果不匹配,向已有綁定表 項(xiàng)中的用戶側(cè)端口發(fā)送探測報(bào)文,探測原有用戶終端是否尚在,如果尚在,則回復(fù)PC2該IP Addressl不可用,如果已經(jīng)不存在,則PC2可能是原有的合法用戶且從NAS2的一個(gè)用戶側(cè) 端口遷移到另一個(gè)用戶側(cè)端口,此時(shí),將利用該Confirm報(bào)文更新包含IPAddressl的綁定 表項(xiàng)。在本實(shí)施例中,NAS2中尚沒有包含該IP Addressl的綁定表項(xiàng),NAS2生成包含該IP Addressl、用戶側(cè)端口 2和PC2的鏈路地址的綁定表項(xiàng)。另外,NAS2生成綁定表項(xiàng)后,需要進(jìn)一步驗(yàn)證該綁定表項(xiàng)的合法性,因此,可以在 本地構(gòu)造一個(gè)攜帶IP Addressl的DAD NS報(bào)文,并通過網(wǎng)絡(luò)側(cè)端口發(fā)送。后續(xù)步驟402至404與實(shí)施例一中的步驟202至204相同,不再贅述。在上述兩個(gè)實(shí)施例中,對于綁定表項(xiàng)來說,存在一套老化機(jī)制,具體包括如果接
8入設(shè)備的用戶側(cè)端口 Down,或者在設(shè)定時(shí)間內(nèi)沒有從用戶側(cè)端口接收到與該綁定表項(xiàng)完全 匹配的ND報(bào)文,則說明通過該用戶側(cè)端口接入的用戶設(shè)備可能發(fā)生了遷移,啟動對應(yīng)綁定 表項(xiàng)的老化進(jìn)程。如果接入設(shè)備通過用戶側(cè)端口接收到與本地的綁定表項(xiàng)完全匹配的ND 報(bào)文,則說明該綁定表項(xiàng)對應(yīng)的用戶設(shè)備仍然存在,取消該綁定表項(xiàng)的老化進(jìn)程。如果綁定 表項(xiàng)進(jìn)入老化進(jìn)程后到達(dá)老化時(shí)間,則刪除該綁定表項(xiàng)。如果接入設(shè)備從網(wǎng)絡(luò)側(cè)端口接收 到與綁定表項(xiàng)中的IP地址和鏈路地址匹配的DAD NS報(bào)文,且綁定表項(xiàng)啟動了老化進(jìn)程,則 說明該綁定表項(xiàng)對應(yīng)的用戶設(shè)備確實(shí)發(fā)生了遷移,刪除該綁定表項(xiàng)。需要說明的是,上述網(wǎng)絡(luò)側(cè)端口可以是接入設(shè)備與上一級交換設(shè)備連接的端口, 也可以是與其它接入設(shè)備連接的端口。以上是對本發(fā)明所提供的方法進(jìn)行的詳細(xì)描述,下面對本發(fā)明所提供的接入設(shè)備 進(jìn)行詳細(xì)描述。如圖5所示,該接入設(shè)備可以包括表項(xiàng)生成單元501、報(bào)文處理單元502、 認(rèn)證處理單元503和表項(xiàng)處理單元504。表項(xiàng)生成單元501,用于在該接入設(shè)備從用戶側(cè)端口接收到待檢測IP地址的DAD NS報(bào)文或Confirm報(bào)文時(shí),生成包含待檢測IP地址的綁定表項(xiàng),并向報(bào)文處理單元502發(fā)
送第一通知。報(bào)文處理單元502,用于接收到第一通知時(shí),通過網(wǎng)絡(luò)側(cè)端口發(fā)送攜帶待檢測IP 地址的DAD NS報(bào)文。認(rèn)證處理單元503,用于該接入設(shè)備在設(shè)定DAD檢測時(shí)間內(nèi)從網(wǎng)絡(luò)側(cè)端口收到攜 帶待檢測IP地址的NA報(bào)文時(shí),對該NA報(bào)文中附加的認(rèn)證信息進(jìn)行認(rèn)證,如果認(rèn)證通過,則 向表項(xiàng)處理單元504發(fā)送刪除通知;該接入設(shè)備從用戶側(cè)端口接收到攜帶待檢測IP地址的 NA報(bào)文時(shí),在該NA報(bào)文中附加認(rèn)證信息。表項(xiàng)處理單元504,用于接收到刪除通知后,刪除包含待檢測IP地址的綁定表項(xiàng)。其中,上述認(rèn)證信息是處于同一鏈路中的接入設(shè)備共同約定產(chǎn)生的,只有處于同 一鏈路中的接入設(shè)備能夠獲知。針對接入設(shè)備從用戶側(cè)端口接收到DAD NS報(bào)文的情況,該接入設(shè)備還可以包括 第一判斷單元505,用于在該接入設(shè)備從用戶側(cè)端口接收到待檢測IP地址的DAD NS報(bào)文 時(shí),判斷該接入設(shè)備本地是否已經(jīng)存在包含待檢測IP地址的綁定表項(xiàng),如果否,允許表項(xiàng) 生成單元501生成包含待檢測IP地址的綁定表項(xiàng);如果是,進(jìn)一步判斷接收DAD NS報(bào)文的 用戶側(cè)端口以及DAD NS報(bào)文的源鏈路地址是否與已經(jīng)存在的包含待檢測IP地址的綁定表 項(xiàng)匹配,如果匹配,通知報(bào)文處理單元502轉(zhuǎn)發(fā)接收到的DAD NS報(bào)文,并禁止表項(xiàng)生成單元 501生成包含待檢測IP地址的綁定表項(xiàng);如果不匹配,通知報(bào)文處理單元502丟棄接收到 的DAD NS報(bào)文,并禁止表項(xiàng)生成單元501生成包含待檢測IP地址的綁定表項(xiàng)。針對接入設(shè)備從用戶側(cè)端口接收到DAD NS報(bào)文的情況,該接入設(shè)備還可以包括 第二判斷單元506和終端探測單元507。第二判斷單元506,用于在該接入設(shè)備從用戶側(cè)端口接收到待檢測IP地址的 Confirm報(bào)文時(shí),判斷該接入設(shè)備本地是否已經(jīng)存在包含待檢測IP地址的綁定表項(xiàng),如果 否,允許表項(xiàng)生成單元501生成包含待檢測IP地址的綁定表項(xiàng);如果是,進(jìn)一步判斷接收 Confirm報(bào)文的用戶側(cè)接口以及Confirm報(bào)文的源鏈路地址是否與已經(jīng)存在的包含待檢測 IP地址的綁定表項(xiàng)匹配,如果不匹配,則向終端探測單元507發(fā)送探測通知,并禁止表項(xiàng)生成單元501生成包含待檢測IP地址的綁定表項(xiàng)。終端探測單元507,用于接收到探測通知后,利用包含待檢測IP地址的綁定表項(xiàng) 發(fā)送探測報(bào)文,探測到已經(jīng)存在的綁定表項(xiàng)對應(yīng)的用戶終端尚在,則通過接收Conf irm報(bào) 文的用戶側(cè)端口回復(fù)待檢測IP地址不可用;如果探測到已經(jīng)存在的綁定表項(xiàng)對應(yīng)的用戶 終端已經(jīng)不存在,則通知表項(xiàng)處理單元504利用Confirm報(bào)文更新本地已經(jīng)存在的包含待 檢測IP地址的綁定表項(xiàng)。此時(shí),報(bào)文處理單元502接收到第一通知時(shí),在接入設(shè)備本地生成攜帶待檢測IP 地址的DAD NS報(bào)文,并通過網(wǎng)絡(luò)側(cè)端口發(fā)送該DAD NS報(bào)文。由于接入設(shè)備還可能從網(wǎng)絡(luò)側(cè)端口接收到其它接入設(shè)備發(fā)送來的DAD NS報(bào)文,因 此該接入設(shè)備還可以包括第三判斷單元508,用于在該接入設(shè)備從網(wǎng)絡(luò)側(cè)端口接收到攜 帶待檢測IP地址的DAD NS報(bào)文后,判斷該接入設(shè)備本地是否已經(jīng)存在包含待檢測IP地址 的綁定表項(xiàng),如果否,則通知報(bào)文處理單元502轉(zhuǎn)發(fā)DAD NS報(bào)文。更進(jìn)一步地,該接入設(shè)備還可以包括第四判斷單元509,用于該接入設(shè)備在設(shè)定 DAD檢測時(shí)間內(nèi)從網(wǎng)絡(luò)側(cè)端口收到攜帶待檢測IP地址的NA報(bào)文時(shí),判斷NA報(bào)文中是否攜 帶認(rèn)證信息,如果否,通知報(bào)文處理單元502丟棄NA報(bào)文;如果是,通知認(rèn)證處理單元503 對該NA報(bào)文中附加的認(rèn)證信息進(jìn)行認(rèn)證。認(rèn)證處理單元503如果對NA報(bào)文中附加的認(rèn)證信息認(rèn)證失敗,則通知報(bào)文處理單 元502丟棄NA報(bào)文。另外,綁定表項(xiàng)的老化機(jī)制體現(xiàn)在表項(xiàng)處理單元504,如果該接入設(shè)備中所述綁 定表項(xiàng)對應(yīng)的用戶側(cè)端口 Down,或者該接入設(shè)備在設(shè)定時(shí)間內(nèi)沒有從用戶側(cè)端口接收到與 所述綁定表項(xiàng)完全匹配的ND報(bào)文,則啟動所述綁定表項(xiàng)的老化進(jìn)程;如果該接入設(shè)備通過 用戶側(cè)端口接收到與所述綁定表項(xiàng)完全匹配的ND報(bào)文,則取消所述綁定表項(xiàng)的老化進(jìn)程; 如果所述綁定表項(xiàng)進(jìn)入老化進(jìn)程后到達(dá)老化時(shí)間,則刪除所述綁定表項(xiàng);如果該接入設(shè)備 通過網(wǎng)絡(luò)側(cè)端口接收到與所述綁定表項(xiàng)中的IP地址和鏈路地址匹配的DAD NS報(bào)文,且所 述綁定表項(xiàng)啟動了老化進(jìn)程,則刪除所述綁定表項(xiàng)。由以上描述可以看出,本發(fā)明中通過在從用戶側(cè)端口收到的NA報(bào)文中附加認(rèn)證 信息,使得接入設(shè)備能夠?qū)木W(wǎng)絡(luò)側(cè)端口收到的攜帶待檢測IP地址的NA中的認(rèn)證信息進(jìn) 行認(rèn)證,在認(rèn)證通過時(shí)確定待檢測的IP地址已經(jīng)有合法用戶在同一鏈路的其它接入設(shè)備 上使用,在本地通過DAD NS報(bào)文或Confirm報(bào)文生成的該待檢測IP地址所對應(yīng)綁定表項(xiàng)可 能是針對攻擊用戶的,則將本地包含該待檢測IP地址的綁定表項(xiàng)刪除,從而在接入設(shè)備僅 針對接入本接入設(shè)備的用戶終端建立綁定表項(xiàng)的場景下,有效地避免非法用戶仿冒IP地 址進(jìn)行的攻擊。以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精 神和原則之內(nèi),所做的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明保護(hù)的范圍之內(nèi)。
權(quán)利要求
1.一種防止仿冒IP地址進(jìn)行攻擊的方法,其特征在于,該方法包括所述接入設(shè)備從用戶側(cè)端口接收到攜帶待檢測IP地址的重復(fù)地址檢測鄰居請求DAD NS報(bào)文或地址確定Confirm報(bào)文時(shí),生成包含所述待檢測IP地址的綁定表項(xiàng),并通過網(wǎng)絡(luò) 側(cè)端口發(fā)送攜帶所述待檢測IP地址的DAD NS報(bào)文;所述接入設(shè)備如果在設(shè)定DAD檢測時(shí)間內(nèi)從網(wǎng)絡(luò)側(cè)端口收到攜帶所述待檢測IP地址 的NA報(bào)文,對該NA報(bào)文中附加的認(rèn)證信息進(jìn)行認(rèn)證,如果認(rèn)證通過,則刪除包含所述待檢 測IP地址的綁定表項(xiàng);其中,所述認(rèn)證信息是與所述接入設(shè)備處于同一鏈路中的其它接入設(shè)備從用戶側(cè)端口 收到攜帶所述待檢測IP地址的NA報(bào)文時(shí)在該NA報(bào)文中附加的。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述接入設(shè)備從用戶側(cè)端口接收到攜帶 待檢測IP地址的DAD NS報(bào)文時(shí),在生成包含所述待檢測IP地址的綁定表項(xiàng)之前,還包括 所述接入設(shè)備判斷本地是否已經(jīng)存在包含所述待檢測IP地址的綁定表項(xiàng),如果否,繼續(xù)執(zhí) 行所述生成包含所述待檢測IP地址的綁定表項(xiàng);如果是,進(jìn)一步判斷接收該DAD NS報(bào)文的 用戶側(cè)端口以及DAD NS報(bào)文的源鏈路地址是否與已經(jīng)存在的包含所述待檢測IP地址的綁 定表項(xiàng)匹配,如果匹配,轉(zhuǎn)發(fā)接收到的DAD NS報(bào)文,結(jié)束流程;如果不匹配,丟棄接收到的 DAD NS報(bào)文,結(jié)束流程。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述接入設(shè)備從用戶側(cè)端口接收到攜帶 待檢測IP地址的Confirm報(bào)文時(shí),在生成包含所述待檢測IP地址的綁定表項(xiàng)之前,還包 括所述接入設(shè)備判斷本地是否已經(jīng)存在包含所述待檢測IP地址的綁定表項(xiàng),如果否,繼 續(xù)執(zhí)行所述生成包含所述待檢測IP地址的綁定表項(xiàng);如果是,進(jìn)一步判斷接收該Confirm報(bào)文的用戶側(cè)端口以及Confirm報(bào)文的源鏈路地 址是否與已經(jīng)存在的包含所述待檢測IP地址的綁定表項(xiàng)匹配,如果不匹配,則利用包含所 述待檢測IP地址的綁定表項(xiàng)發(fā)送探測報(bào)文,探測到已經(jīng)存在的綁定表項(xiàng)對應(yīng)的用戶終端 尚在,則通過接收所述Confirm報(bào)文的用戶側(cè)端口回復(fù)所述待檢測IP地址不可用,結(jié)束流 程;如果探測到已經(jīng)存在的綁定表項(xiàng)對應(yīng)的用戶終端已經(jīng)不存在,則利用所述Confirm報(bào) 文更新本地已經(jīng)存在的包含所述待檢測IP地址的綁定表項(xiàng);所述通過網(wǎng)絡(luò)側(cè)端口發(fā)送攜帶所述待檢測IP地址的DAD NS報(bào)文具體包括所述接入 設(shè)備生成攜帶所述待檢測IP地址的DAD NS報(bào)文,并通過網(wǎng)絡(luò)側(cè)端口發(fā)送該DAD NS報(bào)文。
4.根據(jù)權(quán)利要求1至3任一權(quán)項(xiàng)所述的方法,其特征在于,該方法還包括所述其它接 入設(shè)備從網(wǎng)絡(luò)側(cè)端口接收到攜帶所述待檢測IP地址的DAD NS報(bào)文后,判斷本地是否已經(jīng) 存在包含所述待檢測IP地址的綁定表項(xiàng),如果否,轉(zhuǎn)發(fā)所述DAD NS報(bào)文。
5.根據(jù)權(quán)利要求1至3任一權(quán)項(xiàng)所述的方法,其特征在于,在所述對該NA報(bào)文中附加 的認(rèn)證信息進(jìn)行認(rèn)證之前,還包括判斷所述NA報(bào)文中是否攜帶認(rèn)證信息,如果否,則丟棄 所述NA報(bào)文;如果是,繼續(xù)執(zhí)行所述對該NA報(bào)文中附加的認(rèn)證信息進(jìn)行認(rèn)證;如果對所述NA報(bào)文中附加的認(rèn)證信息認(rèn)證失敗,則丟棄所述NA報(bào)文。
6.根據(jù)權(quán)利要求1至3任一權(quán)項(xiàng)所述的方法,其特征在于,該方法還包括如果接入設(shè)備中所述綁定表項(xiàng)對應(yīng)的用戶側(cè)端口 Down,或者在設(shè)定時(shí)間內(nèi)沒有從用戶 側(cè)端口接收到與所述綁定表項(xiàng)完全匹配的ND報(bào)文,則啟動所述綁定表項(xiàng)的老化進(jìn)程;如果接入設(shè)備通過用戶側(cè)端口接收到與所述綁定表項(xiàng)完全匹配的ND報(bào)文,則取消所述綁定表項(xiàng)的老化進(jìn)程;如果所述綁定表項(xiàng)進(jìn)入老化進(jìn)程后到達(dá)老化時(shí)間,則刪除所述綁定表項(xiàng);如果從網(wǎng)絡(luò)側(cè)端口接收到與所述綁定表項(xiàng)中的IP地址和鏈路地址匹配的DAD NS報(bào) 文,且所述綁定表項(xiàng)啟動了老化進(jìn)程,則刪除所述綁定表項(xiàng)。
7.一種接入設(shè)備,其特征在于,該接入設(shè)備包括表項(xiàng)生成單元、報(bào)文處理單元、認(rèn)證 處理單元和表項(xiàng)處理單元;所述表項(xiàng)生成單元,用于在該接入設(shè)備從用戶側(cè)端口接收到待檢測IP地址的DAD NS 報(bào)文或Confirm報(bào)文時(shí),生成包含所述待檢測IP地址的綁定表項(xiàng),并向報(bào)文處理單元發(fā)送 第一通知;所述報(bào)文處理單元,用于接收到第一通知時(shí),通過網(wǎng)絡(luò)側(cè)端口發(fā)送攜帶所述待檢測IP 地址的DAD NS報(bào)文;所述認(rèn)證處理單元,用于該接入設(shè)備在設(shè)定DAD檢測時(shí)間內(nèi)從網(wǎng)絡(luò)側(cè)端口收到攜帶所 述待檢測IP地址的NA報(bào)文時(shí),對該NA報(bào)文中附加的認(rèn)證信息進(jìn)行認(rèn)證,如果認(rèn)證通過,則 向所述表項(xiàng)處理單元發(fā)送刪除通知;該接入設(shè)備從用戶側(cè)端口接收到攜帶待檢測IP地址 的NA報(bào)文時(shí),在該NA報(bào)文中附加認(rèn)證信息;所述表項(xiàng)處理單元,用于接收到刪除通知后,刪除包含所述待檢測IP地址的綁定表項(xiàng)。
8.根據(jù)權(quán)利要求7所述的接入設(shè)備,其特征在于,該接入設(shè)備還包括第一判斷單元, 用于在該接入設(shè)備從用戶側(cè)端口接收到待檢測IP地址的DAD NS報(bào)文時(shí),判斷該接入設(shè)備 本地是否已經(jīng)存在包含所述待檢測IP地址的綁定表項(xiàng),如果否,允許所述表項(xiàng)生成單元生 成包含所述待檢測IP地址的綁定表項(xiàng);如果是,進(jìn)一步判斷接收DAD NS報(bào)文的用戶側(cè)端 口以及DAD NS報(bào)文的源鏈路地址是否與已經(jīng)存在的包含所述待檢測IP地址的綁定表項(xiàng)匹 配,如果匹配,通知所述報(bào)文處理單元轉(zhuǎn)發(fā)接收到的DAD NS報(bào)文,并禁止所述表項(xiàng)生成單元 生成包含所述待檢測IP地址的綁定表項(xiàng);如果不匹配,通知所述報(bào)文處理單元丟棄所述接 收到的DAD NS報(bào)文,并禁止所述表項(xiàng)生成單元生成包含所述待檢測IP地址的綁定表項(xiàng)。
9.根據(jù)權(quán)利要求7所述的接入設(shè)備,其特征在于,該接入設(shè)備包括第二判斷單元和終 端探測單元;所述第二判斷單元,用于在該接入設(shè)備從用戶側(cè)端口接收到待檢測IP地址的Confirm 報(bào)文時(shí),判斷該接入設(shè)備本地是否已經(jīng)存在包含所述待檢測IP地址的綁定表項(xiàng),如果否, 允許所述表項(xiàng)生成單元生成包含所述待檢測IP地址的綁定表項(xiàng);如果是,進(jìn)一步判斷接收 所述Confirm報(bào)文的用戶側(cè)接口以及Confirm報(bào)文的源鏈路地址是否與已經(jīng)存在的包含所 述待檢測IP地址的綁定表項(xiàng)匹配,如果不匹配,則向所述終端探測單元發(fā)送探測通知,并 禁止所述表項(xiàng)生成單元生成包含所述待檢測IP地址的綁定表項(xiàng);所述終端探測單元,用于接收到所述探測通知后,利用包含所述待檢測IP地址的綁 定表項(xiàng)發(fā)送探測報(bào)文,探測到已經(jīng)存在的綁定表項(xiàng)對應(yīng)的用戶終端尚在,則通過接收所述 Confirm報(bào)文的用戶側(cè)端口回復(fù)所述待檢測IP地址不可用;如果探測到已經(jīng)存在的綁定表 項(xiàng)對應(yīng)的用戶終端已經(jīng)不存在,則通知所述表項(xiàng)處理單元利用所述Confirm報(bào)文更新本地 已經(jīng)存在的包含所述待檢測IP地址的綁定表項(xiàng);所述報(bào)文處理單元接收到所述第一通知時(shí),生成攜帶所述待檢測IP地址的DAD NS報(bào)文,并通過網(wǎng)絡(luò)側(cè)端口發(fā)送該DAD NS報(bào)文。
10.根據(jù)權(quán)利要求7至9任一權(quán)項(xiàng)所述的接入設(shè)備,其特征在于,該接入設(shè)備還包括 第三判斷單元,用于在該接入設(shè)備從網(wǎng)絡(luò)側(cè)端口接收到攜帶所述待檢測IP地址的DAD NS 報(bào)文后,判斷該接入設(shè)備本地是否已經(jīng)存在包含所述待檢測IP地址的綁定表項(xiàng),如果否, 則通知所述報(bào)文處理單元轉(zhuǎn)發(fā)所述DAD NS報(bào)文。
11.根據(jù)權(quán)利要求7至9任一權(quán)項(xiàng)所述的接入設(shè)備,其特征在于,該接入設(shè)備還包括 第四判斷單元,用于該接入設(shè)備在設(shè)定DAD檢測時(shí)間內(nèi)從網(wǎng)絡(luò)側(cè)端口收到攜帶所述待檢測 IP地址的NA報(bào)文時(shí),判斷所述NA報(bào)文中是否攜帶認(rèn)證信息,如果否,通知所述報(bào)文處理單 元丟棄所述NA報(bào)文;如果是,通知所述認(rèn)證處理單元對該NA報(bào)文中附加的認(rèn)證信息進(jìn)行認(rèn) 證;所述認(rèn)證處理單元如果對所述NA報(bào)文中附加的認(rèn)證信息認(rèn)證失敗,則通知所述報(bào)文 處理單元丟棄所述NA報(bào)文。
12.根據(jù)權(quán)利要求7至9任一權(quán)項(xiàng)所述的接入設(shè)備,其特征在于,所述表項(xiàng)處理單元,如 果該接入設(shè)備中所述綁定表項(xiàng)對應(yīng)的用戶側(cè)端口 Down,或者該接入設(shè)備在設(shè)定時(shí)間內(nèi)沒有 從用戶側(cè)端口接收到與所述綁定表項(xiàng)完全匹配的ND報(bào)文,則啟動所述綁定表項(xiàng)的老化進(jìn) 程;如果該接入設(shè)備通過用戶側(cè)端口接收到與所述綁定表項(xiàng)完全匹配的ND報(bào)文,則取消所 述綁定表項(xiàng)的老化進(jìn)程;如果所述綁定表項(xiàng)進(jìn)入老化進(jìn)程后到達(dá)老化時(shí)間,則刪除所述綁 定表項(xiàng);如果該接入設(shè)備通過網(wǎng)絡(luò)側(cè)端口接收到與所述綁定表項(xiàng)中的IP地址和鏈路地址 匹配的DAD NS報(bào)文,且所述綁定表項(xiàng)啟動了老化進(jìn)程,則刪除所述綁定表項(xiàng)。
全文摘要
一種防止仿冒IP地址進(jìn)行攻擊的方法和接入設(shè)備。接入設(shè)備從用戶側(cè)端口接收到攜帶待檢測IP地址的重復(fù)地址檢測鄰居請求(DAD NS)報(bào)文或地址確定(Confirm)報(bào)文時(shí),生成包含待檢測IP地址的綁定表項(xiàng),并通過網(wǎng)絡(luò)側(cè)端口發(fā)送攜帶待檢測IP地址的DAD NS報(bào)文;接入設(shè)備如果在設(shè)定DAD檢測時(shí)間內(nèi)從網(wǎng)絡(luò)側(cè)端口收到攜帶待檢測IP地址的NA報(bào)文,對該NA報(bào)文中附加的認(rèn)證信息進(jìn)行認(rèn)證,如果認(rèn)證通過,則刪除包含待檢測IP地址的綁定表項(xiàng);其中,認(rèn)證信息是與接入設(shè)備處于同一鏈路中的其它接入設(shè)備從用戶側(cè)端口收到攜帶待檢測IP地址的NA報(bào)文時(shí)在該NA報(bào)文中附加的。本發(fā)明能夠有效防止非法用戶仿冒IP地址進(jìn)行攻擊。
文檔編號H04L29/06GK102137073SQ201010103859
公開日2011年7月27日 申請日期2010年1月22日 優(yōu)先權(quán)日2010年1月22日
發(fā)明者林濤 申請人:杭州華三通信技術(shù)有限公司