專(zhuān)利名稱(chēng):一種802.1x控制以太網(wǎng)端口權(quán)限的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及802.1X的通信技術(shù),特別是指一種802.1X控制以太網(wǎng)端口權(quán)限的方法。
背景技術(shù):
在以太網(wǎng)交換機(jī)中通過(guò)接入控制設(shè)備,即通常所說(shuō)的設(shè)備端(Authenticator),實(shí)現(xiàn)控制用戶(hù)接入網(wǎng)絡(luò)資源的權(quán)限有三種途徑基于以太網(wǎng)端口、基于客戶(hù)機(jī)介質(zhì)訪(fǎng)問(wèn)控制(MAC)地址、基于客戶(hù)機(jī)所在虛擬局域網(wǎng)(VLAN)。下面詳細(xì)說(shuō)明基于以太網(wǎng)端口控制用戶(hù)的訪(fǎng)問(wèn)權(quán)限。
以太網(wǎng)的每個(gè)物理端口被分為受控和非受控兩種邏輯狀態(tài)。受控端口是指通過(guò)該端口接入網(wǎng)絡(luò)的網(wǎng)絡(luò)資源訪(fǎng)問(wèn)權(quán)限受到Authenticator的控制;非受控端口是指通過(guò)該端口接入網(wǎng)絡(luò)的資源訪(fǎng)問(wèn)權(quán)限不受Authenticator的控制。
對(duì)于受控端口而言,當(dāng)有用戶(hù)接入設(shè)備,即通常所說(shuō)的客戶(hù)端(Supplicant),通過(guò)該端口接入網(wǎng)絡(luò)資源時(shí),需要通過(guò)Authenticator的認(rèn)證,并根據(jù)認(rèn)證結(jié)果控制用戶(hù)待接入端口為授權(quán)/非授權(quán)狀態(tài)。其中,授權(quán)狀態(tài)是指允許下掛的所有客戶(hù)機(jī)擁有該端口的權(quán)限為該端口處于非受控端口狀態(tài)時(shí)的相同權(quán)限;未授權(quán)狀態(tài)是指不允許下掛的所有客戶(hù)機(jī)通過(guò)該端口訪(fǎng)問(wèn)任何網(wǎng)絡(luò)資源。
以太網(wǎng)中生成樹(shù)協(xié)議(STP,Spanning Tree Protocol)的功能是防止交換機(jī)網(wǎng)絡(luò)中產(chǎn)生數(shù)據(jù)死循環(huán),而導(dǎo)致網(wǎng)絡(luò)癱瘓。因此,它規(guī)定以太網(wǎng)端口有五種狀態(tài)禁止?fàn)顟B(tài)(Disabled)、阻塞狀態(tài)(Blocking)、監(jiān)聽(tīng)狀態(tài)(Listening)、學(xué)習(xí)狀態(tài)(Learning)和通行狀態(tài)(Forwarding)。當(dāng)某個(gè)端口被設(shè)置為Forwarding狀態(tài)時(shí),允許該端口收發(fā)任何報(bào)文;當(dāng)某個(gè)端口被設(shè)置Blocking狀態(tài)時(shí),不允許該端口通過(guò)任何數(shù)據(jù)報(bào)文。STP協(xié)議的作用就是通過(guò)設(shè)置端口狀態(tài)來(lái)控制該端口是否允許有業(yè)務(wù)數(shù)據(jù)報(bào)文通過(guò)。
通常,802.1X協(xié)議可以借用STP協(xié)議所規(guī)定的端口狀態(tài)來(lái)控制用戶(hù)的訪(fǎng)問(wèn)權(quán)限,比如將某個(gè)以太網(wǎng)受控端口的狀態(tài)設(shè)置為Forwarding時(shí),該受控端口為授權(quán)狀態(tài),用戶(hù)可通過(guò)該端口對(duì)網(wǎng)絡(luò)資源進(jìn)行訪(fǎng)問(wèn);將某個(gè)以太網(wǎng)受控端口的狀態(tài)設(shè)置為Blocking時(shí),該受控端口為非授權(quán)狀態(tài),用戶(hù)不能通過(guò)該端口訪(fǎng)問(wèn)網(wǎng)絡(luò)資源。
在以太網(wǎng)交換機(jī)中,端口為Forwarding狀態(tài)時(shí),用戶(hù)可以進(jìn)一步設(shè)置該端口是否允許動(dòng)態(tài)學(xué)習(xí)MAC地址。此外,每個(gè)端口都維護(hù)一個(gè)轉(zhuǎn)發(fā)表,該轉(zhuǎn)發(fā)表中的關(guān)鍵元素是MAC地址,交換機(jī)根據(jù)是否存在某個(gè)MAC地址決定是否將目的地址為該MAC地址的數(shù)據(jù)報(bào)文從此端口發(fā)送出去。因此,用戶(hù)通常會(huì)設(shè)置Forwarding狀態(tài)的端口為允許動(dòng)態(tài)學(xué)習(xí)MAC地址。
但是,上述方案存在以下缺陷1)由于STP協(xié)議是從保證網(wǎng)絡(luò)環(huán)境正常運(yùn)作的角度來(lái)設(shè)置端口的狀態(tài),而802.1X協(xié)議是從端口的訪(fǎng)問(wèn)權(quán)限角度來(lái)設(shè)置端口的狀態(tài),因此,802.1X協(xié)議與STP協(xié)議可同時(shí)對(duì)同一端口的狀態(tài)進(jìn)行不同的設(shè)置,而802.1X協(xié)議與STP協(xié)議又各自有獨(dú)立的運(yùn)行機(jī)制,不具備協(xié)同工作的條件,這必然會(huì)相互影響,而使雙方均無(wú)法正常工作。
2)當(dāng)802.1X將受控端口設(shè)置為未授權(quán)狀態(tài)時(shí)該端口為Blocking狀態(tài),在該狀態(tài)下,除橋協(xié)議數(shù)據(jù)單元(BPDUs)之外的任何報(bào)文都不允許通過(guò),使原本在端口未被授權(quán)時(shí)應(yīng)該通過(guò)的報(bào)文而無(wú)法通過(guò)了,影響了交換機(jī)的其它功能,如利用動(dòng)態(tài)主機(jī)配置協(xié)議(DHCP)觸發(fā)802.1X的認(rèn)證功能;網(wǎng)內(nèi)交換機(jī)級(jí)連管理功能等。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明提供一種802.1X控制以太網(wǎng)端口權(quán)限的方法,在不影響STP協(xié)議正常工作以及以太網(wǎng)交換機(jī)其它功能的前提下,實(shí)現(xiàn)對(duì)以太網(wǎng)端口訪(fǎng)問(wèn)權(quán)限的控制。
為達(dá)到上述目的本發(fā)明的技術(shù)方案是這樣實(shí)現(xiàn)的一種802.1 X控制以太網(wǎng)端口權(quán)限的方法,每個(gè)以太網(wǎng)端口維護(hù)一個(gè)轉(zhuǎn)發(fā)表,交換機(jī)根據(jù)該端口所維護(hù)轉(zhuǎn)發(fā)表中的介質(zhì)訪(fǎng)問(wèn)控制(MAC)地址決定是否從該端口發(fā)送指定目的地址的數(shù)據(jù)報(bào)文,該方法還包括以下步驟判斷當(dāng)前用戶(hù)待接入端口是否為受控端口,如果是,則通過(guò)設(shè)置該待接入端口的屬性為是否允許動(dòng)態(tài)學(xué)習(xí)MAC地址,控制該待接入端口是否授權(quán);否則,按照系統(tǒng)默認(rèn)配置設(shè)置該端口是否允許動(dòng)態(tài)學(xué)習(xí)MAC地址。
較佳地,通過(guò)設(shè)置該待接入端口的屬性為允許動(dòng)態(tài)學(xué)習(xí)MAC地址,控制該待接入端口狀態(tài)為授權(quán)。
較佳地,通過(guò)設(shè)置該待接入端口的屬性為不允許動(dòng)態(tài)學(xué)習(xí)MAC地址,并清空該待接入端口所維護(hù)的轉(zhuǎn)發(fā)表中所有已動(dòng)態(tài)學(xué)習(xí)到的MAC地址,控制該待接入端口狀態(tài)為非授權(quán)。
較佳地,所述默認(rèn)配置是允許該端口動(dòng)態(tài)學(xué)習(xí)MAC地址。
較佳地,用戶(hù)接入設(shè)備通過(guò)當(dāng)前用戶(hù)待接入端口接入網(wǎng)絡(luò)時(shí),該方法進(jìn)一步包括接入控制設(shè)備對(duì)用戶(hù)接入設(shè)備進(jìn)行認(rèn)證,并判斷是否通過(guò)認(rèn)證,如果通過(guò),則設(shè)置該待接入端口的屬性為允許動(dòng)態(tài)學(xué)習(xí)MAC地址,否則,設(shè)置該待接入端口的屬性為不允許動(dòng)態(tài)學(xué)習(xí)MAC地址。
較佳地,當(dāng)用戶(hù)接入設(shè)備下線(xiàn)時(shí),該方法進(jìn)一步包括設(shè)置該待接入端口的屬性為不允許動(dòng)態(tài)學(xué)習(xí)MAC地址。
較佳地,該方法進(jìn)一步包括,清空該待接入端口所維護(hù)轉(zhuǎn)發(fā)表中所有已動(dòng)態(tài)學(xué)習(xí)到的MAC地址。
應(yīng)用本發(fā)明,通過(guò)控制受控端口是否允許動(dòng)態(tài)學(xué)習(xí)MAC地址,實(shí)現(xiàn)對(duì)受控端口的授權(quán)/未授權(quán)狀態(tài)的控制,而不影響其它不允許動(dòng)態(tài)學(xué)習(xí)MAC地址時(shí)交換機(jī)所具備的特性。同時(shí),應(yīng)用本發(fā)明不必關(guān)心STP中所規(guī)定的端口狀態(tài),無(wú)論STP協(xié)議模塊如何設(shè)置端口狀態(tài),802.1X協(xié)議模塊都可以獨(dú)立工作,而不影響STP協(xié)議的正常功能。
具體實(shí)施例方式
為使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下對(duì)本發(fā)明做進(jìn)一步詳細(xì)說(shuō)明。
本發(fā)明的思路是802.1X協(xié)議通過(guò)設(shè)置受控端口是否允許動(dòng)態(tài)學(xué)習(xí)MAC地址,而使該受控端口處于授權(quán)或非授權(quán)狀態(tài),進(jìn)而達(dá)到用戶(hù)接入設(shè)備通過(guò)該端口可否訪(fǎng)問(wèn)網(wǎng)絡(luò)資源的目的。MAC地址通常分為兩大類(lèi)一類(lèi)是動(dòng)態(tài)MAC地址,是通過(guò)芯片自動(dòng)學(xué)習(xí)得到的,該類(lèi)地址在轉(zhuǎn)發(fā)表中維護(hù)一段時(shí)間后會(huì)被自動(dòng)刪除,即老化;另一類(lèi)是靜態(tài)MAC地址,是通過(guò)程序或手工配置得到的,該類(lèi)地址在轉(zhuǎn)發(fā)表中不會(huì)老化。
用戶(hù)通過(guò)某個(gè)端口是否有權(quán)訪(fǎng)問(wèn)網(wǎng)絡(luò)資源,取決該端口是否非受控,在端口已受控的前提下,通過(guò)該端口是否有權(quán)訪(fǎng)問(wèn)網(wǎng)絡(luò)資源取決于Authenticator對(duì)該端口是否授權(quán)。也就是說(shuō),只有在該端口不受控或受控但被授權(quán)的情況下,用戶(hù)才能夠通過(guò)該端口訪(fǎng)問(wèn)網(wǎng)絡(luò)資源。上述對(duì)應(yīng)關(guān)系如表1所示
表1本實(shí)施例的具體控制方式如下如果將端口設(shè)置為受控端口,即該端口接受Authenticator的控制時(shí),進(jìn)行如下操作將該受控端口設(shè)置為未授權(quán)狀態(tài)1、清空該端口所維護(hù)的轉(zhuǎn)發(fā)表中已經(jīng)動(dòng)態(tài)學(xué)習(xí)到的所有MAC地址;2、設(shè)置該端口不允許動(dòng)態(tài)學(xué)習(xí)MAC地址。
當(dāng)Supplicant請(qǐng)求接入網(wǎng)絡(luò)并通過(guò)Authenticator的認(rèn)證時(shí),Authenticator將該受控端口設(shè)置為授權(quán)狀態(tài),即設(shè)置該受控端口允許學(xué)習(xí)MAC地址。
當(dāng)Supplicant下線(xiàn)時(shí),Authenticator設(shè)置該端口不允許動(dòng)態(tài)學(xué)習(xí)MAC地址,并清空該端口所維護(hù)的轉(zhuǎn)發(fā)表中已動(dòng)態(tài)學(xué)習(xí)到的MAC地址。
如果將端口設(shè)置為非受控端口,即停止Authenticator對(duì)該端口的控制時(shí),則按照系統(tǒng)默認(rèn)配置設(shè)置該端口是否允許動(dòng)態(tài)學(xué)習(xí)MAC地址。通常,默認(rèn)配置是允許動(dòng)態(tài)學(xué)習(xí)MAC地址。
以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種802.1X控制以太網(wǎng)端口權(quán)限的方法,每個(gè)以太網(wǎng)端口維護(hù)一個(gè)轉(zhuǎn)發(fā)表,交換機(jī)根據(jù)該端口所維護(hù)轉(zhuǎn)發(fā)表中的介質(zhì)訪(fǎng)問(wèn)控制(MAC)地址決定是否從該端口發(fā)送指定目的地址的數(shù)據(jù)報(bào)文,其特征在于該方法還包括以下步驟判斷當(dāng)前用戶(hù)待接入端口是否為受控端口,如果是,則通過(guò)設(shè)置該待接入端口的屬性為是否允許動(dòng)態(tài)學(xué)習(xí)MAC地址,控制該待接入端口是否授權(quán);否則,按照系統(tǒng)默認(rèn)配置設(shè)置該端口是否允許動(dòng)態(tài)學(xué)習(xí)MAC地址。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,通過(guò)設(shè)置該待接入端口的屬性為允許動(dòng)態(tài)學(xué)習(xí)MAC地址,控制該待接入端口狀態(tài)為授權(quán)。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,通過(guò)設(shè)置該待接入端口的屬性為不允許動(dòng)態(tài)學(xué)習(xí)MAC地址,并清空該待接入端口所維護(hù)的轉(zhuǎn)發(fā)表中所有已動(dòng)態(tài)學(xué)習(xí)到的MAC地址,控制該待接入端口狀態(tài)為非授權(quán)。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述默認(rèn)配置是允許該端口動(dòng)態(tài)學(xué)習(xí)MAC地址。
5.根據(jù)權(quán)利要求1所述的方法,其特征在于,用戶(hù)接入設(shè)備通過(guò)當(dāng)前用戶(hù)待接入端口接入網(wǎng)絡(luò)時(shí),該方法進(jìn)一步包括接入控制設(shè)備對(duì)用戶(hù)接入設(shè)備進(jìn)行認(rèn)證,并判斷是否通過(guò)認(rèn)證,如果通過(guò),則設(shè)置該待接入端口的屬性為允許動(dòng)態(tài)學(xué)習(xí)MAC地址,否則,設(shè)置該待接入端口的屬性為不允許動(dòng)態(tài)學(xué)習(xí)MAC地址。
6.根據(jù)權(quán)利要求5所述的方法,其特征在于,當(dāng)用戶(hù)接入設(shè)備下線(xiàn)時(shí),該方法進(jìn)一步包括設(shè)置該待接入端口的屬性為不允許動(dòng)態(tài)學(xué)習(xí)MAC地址。
7.根據(jù)權(quán)利要求6所述的方法,其特征在于該方法進(jìn)一步包括,清空該待接入端口所維護(hù)轉(zhuǎn)發(fā)表中所有已動(dòng)態(tài)學(xué)習(xí)到的MAC地址。
全文摘要
本發(fā)明提供了一種802.1X控制以太網(wǎng)端口權(quán)限的方法,每個(gè)以太網(wǎng)端口維護(hù)一個(gè)轉(zhuǎn)發(fā)表,交換機(jī)根據(jù)該端口所維護(hù)轉(zhuǎn)發(fā)表中的介質(zhì)訪(fǎng)問(wèn)控制(MAC)地址決定是否從該端口發(fā)送指定目的地址的數(shù)據(jù)報(bào)文,該方法還包括以下步驟判斷當(dāng)前用戶(hù)待接入端口是否為受控端口,如果是,則通過(guò)設(shè)置該待接入端口的屬性為是否允許動(dòng)態(tài)學(xué)習(xí)MAC地址,控制該待接入端口是否授權(quán);否則,按照系統(tǒng)默認(rèn)配置設(shè)置該端口是否允許動(dòng)態(tài)學(xué)習(xí)MAC地址。應(yīng)用本發(fā)明,通過(guò)控制端口是否允許學(xué)習(xí)MAC地址,而達(dá)到控制用戶(hù)接入權(quán)限的目的,避免了802.1X協(xié)議與STP協(xié)議的相互影響,而且應(yīng)用本發(fā)明不影響其他不允許MAC地址學(xué)習(xí)時(shí)交換機(jī)所具備的特性。
文檔編號(hào)H04L12/24GK1522000SQ03102410
公開(kāi)日2004年8月18日 申請(qǐng)日期2003年1月27日 優(yōu)先權(quán)日2003年1月27日
發(fā)明者魏其禮, 羅漢軍, 鄒婷, 湯杰成 申請(qǐng)人:華為技術(shù)有限公司