三層認(rèn)證方法、裝置及三層認(rèn)證交換機(jī)的制作方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種三層認(rèn)證方法、裝置及三層認(rèn)證交換機(jī)。
【背景技術(shù)】
[0002] 當(dāng)前網(wǎng)絡(luò)中,交換機(jī)主要應(yīng)用在二層網(wǎng)絡(luò)做分布式認(rèn)證,用戶認(rèn)證后,通過(guò)下 發(fā)ACL(AccessControlList,訪問(wèn)控制列表)規(guī)則,綁定用戶的源MAC(MediaAccess Control,介質(zhì)訪問(wèn)控制)或者源MAC與源IP(InternetProtocol,網(wǎng)絡(luò)協(xié)議)信息,作為認(rèn) 證與否的判斷。在大二層網(wǎng)絡(luò)環(huán)境中,交換機(jī)作為網(wǎng)關(guān)設(shè)備,開(kāi)啟集中式認(rèn)證,該方案也是 通過(guò)MAC地址表,判斷地址表中是否存在用戶的源MAC地址來(lái)標(biāo)識(shí)用戶是否已認(rèn)證。
[0003] 在現(xiàn)有的網(wǎng)絡(luò)中,三層認(rèn)證都是通過(guò)路由器等基于軟件實(shí)現(xiàn)轉(zhuǎn)發(fā)的設(shè)備來(lái)充當(dāng)。 現(xiàn)有技術(shù)中沒(méi)有交換機(jī)充當(dāng)三層認(rèn)證設(shè)備,主要問(wèn)題有兩個(gè):一方面,交換機(jī)充當(dāng)三層認(rèn)證 設(shè)備,只能通過(guò)源IP來(lái)區(qū)分用戶是否已認(rèn)證,這個(gè)目前無(wú)成熟且可直接使用的芯片方案; 另一方面,充當(dāng)三層認(rèn)證設(shè)備,通常出口是多個(gè)運(yùn)營(yíng)商(如聯(lián)通、移動(dòng)等),不同的用戶,購(gòu) 買的套餐不一樣,有些用戶購(gòu)買的是聯(lián)通套餐,有些用戶購(gòu)買的是移動(dòng)套餐,那么這些不同 的用戶的流量也要走不同的線路,即需要根據(jù)源IP來(lái)選擇出口,而目前交換機(jī)上的路由轉(zhuǎn) 發(fā)都是基于目的IP。如果需要基于源IP進(jìn)行轉(zhuǎn)發(fā),那就要通過(guò)ACL來(lái)實(shí)現(xiàn),強(qiáng)行匹配報(bào)文 的源IP,然后重定向到某條線路,這樣每個(gè)用戶就要占一條ACL表項(xiàng),而對(duì)于目前常用的芯 片,通常主機(jī)路由表容量遠(yuǎn)大于ACL表容量,例如最多可以達(dá)到512K的容量,但ACL容量最 多只有8K,但一個(gè)校園網(wǎng)中,用戶一般都超過(guò)1萬(wàn)人,根本無(wú)法用ACL來(lái)實(shí)現(xiàn)。
[0004] 綜上所述,現(xiàn)有技術(shù)中交換機(jī)只能實(shí)現(xiàn)二層認(rèn)證功能,無(wú)法有效實(shí)現(xiàn)三層認(rèn)證功 能。
【發(fā)明內(nèi)容】
[0005] 本發(fā)明提供一種三層認(rèn)證方法、裝置及三層認(rèn)證交換機(jī),用以解決現(xiàn)有技術(shù)中交 換機(jī)只能實(shí)現(xiàn)二層認(rèn)證功能,無(wú)法實(shí)現(xiàn)三層認(rèn)證的問(wèn)題。
[0006] 本發(fā)明提供了一種三層認(rèn)證方法,所述方法包括:
[0007] 在第一端口接收用戶發(fā)出的數(shù)據(jù)報(bào)文,根據(jù)數(shù)據(jù)報(bào)文的源IP地址匹配路由表,在 匹配結(jié)果為所述用戶發(fā)出的數(shù)據(jù)報(bào)文為待認(rèn)證報(bào)文時(shí),將所述數(shù)據(jù)報(bào)文在ACL表中進(jìn)行匹 配,根據(jù)匹配結(jié)果將數(shù)據(jù)報(bào)文發(fā)送至CPU進(jìn)行認(rèn)證處理;
[0008] 所述ACL表中預(yù)先設(shè)置了將第一端口接收到的待認(rèn)證報(bào)文轉(zhuǎn)發(fā)至CPU的表項(xiàng)。
[0009] 本發(fā)明還提供一種三層認(rèn)證裝置,所述裝置包括:
[0010] 匹配模塊,用于在第一端口接收用戶發(fā)出的數(shù)據(jù)報(bào)文,根據(jù)數(shù)據(jù)報(bào)文的源網(wǎng)絡(luò)協(xié) 議IP地址匹配路由表,在匹配結(jié)果為所述用戶發(fā)出的數(shù)據(jù)報(bào)文為待認(rèn)證報(bào)文時(shí),將所述數(shù) 據(jù)報(bào)文在訪問(wèn)控制列表ACL中進(jìn)行匹配,根據(jù)匹配結(jié)果將數(shù)據(jù)報(bào)文發(fā)送至CPU進(jìn)行認(rèn)證處 理;
[0011]ACL表設(shè)置模塊,用于在ACL表中預(yù)先設(shè)置將第一端口接收到的待認(rèn)證報(bào)文轉(zhuǎn)發(fā) 至CPU的表項(xiàng)。
[0012] 本發(fā)明還提供一種三層認(rèn)證交換機(jī),所述交換機(jī)包括上述三層認(rèn)證裝置。
[0013] 本發(fā)明的三層認(rèn)證方法、裝置及三層認(rèn)證交換機(jī),通過(guò)采用上述技術(shù)方案,在路由 表中根據(jù)數(shù)據(jù)報(bào)文的源IP地址匹配路由表,并且在匹配結(jié)果為待認(rèn)證報(bào)文時(shí),將數(shù)據(jù)報(bào)文 在ACL表中進(jìn)行匹配,從而轉(zhuǎn)發(fā)至CPU中進(jìn)行認(rèn)證處理的過(guò)程,解決了現(xiàn)有技術(shù)中交換機(jī)只 能實(shí)現(xiàn)二層認(rèn)證功能,無(wú)法有效實(shí)現(xiàn)三層認(rèn)證的問(wèn)題。
【附圖說(shuō)明】
[0014] 為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn) 有技術(shù)描述中所需要使用的附圖作一簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖是本發(fā) 明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以 根據(jù)這些附圖獲得其他的附圖。
[0015] 圖1為交換機(jī)充當(dāng)三層認(rèn)證設(shè)備的拓?fù)鋱?chǎng)景示意圖;
[0016] 圖2為本發(fā)明實(shí)施例一提供的三層認(rèn)證方法流程圖;
[0017] 圖3為本發(fā)明實(shí)施例二提供的三層認(rèn)證方法流程圖;
[0018] 圖4為本發(fā)明實(shí)施例三提供的三層認(rèn)證裝置結(jié)構(gòu)示意圖;
[0019] 圖5為本發(fā)明實(shí)施例四提供的三層認(rèn)證交換機(jī)結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0020] 為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本發(fā)明實(shí)施例 中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是 本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員 在沒(méi)有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0021] 交換機(jī)要實(shí)現(xiàn)三層認(rèn)證功能,則需要實(shí)現(xiàn)基于報(bào)文的源IP地址判斷用戶是否已 認(rèn)證,以及在認(rèn)證成功后基于源IP地址進(jìn)行選路,交換機(jī)充當(dāng)三層認(rèn)證設(shè)備的拓?fù)鋱?chǎng)景如 圖1所示,其中交換機(jī)對(duì)內(nèi)連接不同區(qū)域的網(wǎng)關(guān)設(shè)備,網(wǎng)關(guān)設(shè)備下連接了不同的用戶,交換 機(jī)對(duì)外連接不同的運(yùn)營(yíng)商網(wǎng)絡(luò),不同的用戶均可以在交換機(jī)上實(shí)現(xiàn)三層認(rèn)證,認(rèn)證成功后, 用戶的數(shù)據(jù)報(bào)文可以根據(jù)需求轉(zhuǎn)發(fā)到不同的運(yùn)營(yíng)商網(wǎng)絡(luò)中,需要說(shuō)明的是,圖1僅給出了 本發(fā)明技術(shù)方案的一個(gè)拓?fù)涫纠⒉幌拗票景l(fā)明應(yīng)用的場(chǎng)景范圍,例如交換機(jī)并非一定 通過(guò)網(wǎng)關(guān)設(shè)備連接用戶終端,其對(duì)外連接的網(wǎng)絡(luò)也不限于各運(yùn)營(yíng)商網(wǎng)絡(luò)等情形。
[0022] 圖2為本發(fā)明實(shí)施例一提供的三層認(rèn)證方法流程圖,具體包括以下步驟:
[0023] 101,在第一端口接收用戶發(fā)出的數(shù)據(jù)報(bào)文,根據(jù)數(shù)據(jù)報(bào)文的源IP地址匹配路由 表;
[0024] 201,在匹配結(jié)果為所述用戶發(fā)出的數(shù)據(jù)報(bào)文為待認(rèn)證報(bào)文時(shí),將所述數(shù)據(jù)報(bào)文在 ACL表中進(jìn)行匹配,根據(jù)匹配結(jié)果將數(shù)據(jù)報(bào)文發(fā)送至CPU進(jìn)行認(rèn)證處理;
[0025] ACL表中預(yù)先設(shè)置了將第一端口接收到的待認(rèn)證報(bào)文轉(zhuǎn)發(fā)至CPU的表項(xiàng)。
[0026] 為了能夠讓數(shù)據(jù)報(bào)文在交換機(jī)的路由表中可以進(jìn)行源IP地址匹配,可以在實(shí)際 接收數(shù)據(jù)報(bào)文之前先對(duì)交換機(jī)進(jìn)行預(yù)先的設(shè)置,
[0027] 因此進(jìn)一步可選的,在第一端口接收用戶發(fā)出的數(shù)據(jù)報(bào)文之前,還包括:
[0028] 在第一端口開(kāi)啟三層認(rèn)證功能,并開(kāi)啟URPF(UnicastReversePath Forwarding,單播逆向路徑轉(zhuǎn)發(fā))檢查,以使第一端口接收到的數(shù)據(jù)報(bào)文在路由表中進(jìn)行 源IP地址匹配。
[0029] URPF的主要功能是用于防止基于源IP地址欺騙的網(wǎng)絡(luò)攻擊行為,接口一旦使能 URPF功能,當(dāng)該接口收到數(shù)據(jù)報(bào)文時(shí),首先會(huì)對(duì)數(shù)據(jù)報(bào)文的源IP地址進(jìn)行合法性檢查,對(duì) 于檢查通過(guò)的報(bào)文,才會(huì)進(jìn)一步查找去往目的I