專利名稱:一種802.1x客戶端ip地址再獲取方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種有線寬帶接入技術(shù),更確切地說是涉及一種802.1X客戶端與DHCP客戶端的結(jié)合方法。
背景技術(shù):
802.1X是2001年6月由IEEE標(biāo)準(zhǔn)化組織正式通過的基于端口的網(wǎng)絡(luò)訪問控制協(xié)議。
IEEE 802 LAN協(xié)議定義的局域網(wǎng)不提供接入認(rèn)證,一般來說,只要用戶能接入局域網(wǎng)控制設(shè)備,如局域網(wǎng)交換機(Lan Switch),用戶就可以訪問局域網(wǎng)中的設(shè)備或資源。但是對于如電信接入、寫字樓局域網(wǎng)以及移動辦公等應(yīng)用環(huán)境,設(shè)備提供者希望能對用戶的接入進行控制和配置,為此產(chǎn)生了802.1X接入控制需求,這就是802.1X認(rèn)證。
基于端口的網(wǎng)絡(luò)接入控制是在網(wǎng)絡(luò)設(shè)備的物理接入級對接入客戶端進行認(rèn)證和控制,此處的物理接入級指的是以太網(wǎng)交換或?qū)拵Ы尤朐O(shè)備的端口。連接在該類端口上的用戶設(shè)備如果能通過認(rèn)證,就可以訪問網(wǎng)絡(luò)內(nèi)的資源;如果不能通過認(rèn)證,則無法訪問網(wǎng)絡(luò)內(nèi)的資源。
IEEE 802.1X定義了基于端口的網(wǎng)絡(luò)接入控制協(xié)議,其中端口可以是物理端口,也可以是邏輯端口。典型的應(yīng)用方式有以太網(wǎng)交換機的一個物理端口連接一臺客戶端計算機;IEEE 802.11定義的無線局域網(wǎng)接入方式。
圖1中示出802.1X的體系結(jié)構(gòu),由三個實體組成,為客戶端(SupplicantSystem)11、設(shè)備端(Authenticator System)12和認(rèn)證服務(wù)器系統(tǒng)(Authentication Server System)13。802.1X的設(shè)備端部分12需要在用戶接入層設(shè)備中實現(xiàn);802.1X的客戶端11一般安裝在用戶PC中;802.1X的認(rèn)證服務(wù)器系統(tǒng)13一般駐留在運營商的計費、認(rèn)證與授權(quán)(AAA)中心內(nèi)。
802.1X的客戶端11與設(shè)備端12之間在局域網(wǎng)(LAN)上運行由IEEE 802.1X定義的EAPOL協(xié)議(客戶端與設(shè)備端間的認(rèn)證協(xié)議),具體地說是指客戶端11的客戶端端口狀態(tài)實體(Supplicant PAE)111與設(shè)備端12的由設(shè)備端系統(tǒng)提供的服務(wù)實體(Services offered by Authenticator’s System)123和設(shè)備端端口狀態(tài)實體(Authenticator PAE)124間;設(shè)備端12與認(rèn)證服務(wù)器系統(tǒng)13間同樣運行擴展認(rèn)證協(xié)議(EAP),在設(shè)備端12的設(shè)備端端口狀態(tài)實體(Authenticator PAE)124與認(rèn)證服務(wù)器系統(tǒng)13的認(rèn)證服務(wù)器131間交換認(rèn)證信息。
設(shè)備端12內(nèi)部有受控端口(Controlled Port)121和非受控端口(Uncontrolled Port)122。受控端口121負(fù)責(zé)控制網(wǎng)絡(luò)資源和業(yè)務(wù)的訪問,受控端口121只有在認(rèn)證通過的狀態(tài)下才打開,用于傳遞網(wǎng)絡(luò)資源和服務(wù)信息,圖中箭頭所指為端口未被授權(quán)通過(Port Unauthorized)狀態(tài),受控端口121可配置為雙向受控和僅輸入受控兩種方式,以適應(yīng)不同的應(yīng)用環(huán)境;非受控端口122始終處于雙向連通狀態(tài),主要用來傳遞EAPOL協(xié)議幀,可保證隨時接收和發(fā)送EAPOL協(xié)議幀。
802.1X為以太網(wǎng)交換機帶來了可運營特征。未通過用戶認(rèn)證的端口不能使用,通過認(rèn)證的端口可以自動動態(tài)配置并訪問網(wǎng)絡(luò)資源,這是區(qū)別于傳統(tǒng)以太網(wǎng)交換機的特性。
在有線寬帶接入環(huán)境下,需要有方便易用的802.1X客戶端軟件。美國Microsoft公司的WINDOWS XP操作系統(tǒng)實現(xiàn)了IEEE 802.1X-2001協(xié)議的客戶端軟件,該操作系統(tǒng)下的802.1X客戶端軟件主要應(yīng)用范圍是無線局域網(wǎng)(WLAN),在802.1X客戶端與動態(tài)主機配置協(xié)議(DHCPDynamic Host ConfigurationProtocol,用于實現(xiàn)動態(tài)IP地址分配)客戶端間沒有直接的關(guān)系。由于DHCP客戶端在一分鐘時間內(nèi)會多次請求獲取IP地址,且超過1分鐘后將不再發(fā)送請求報文,因此在將802.1X客戶端軟件應(yīng)用在有線寬帶接入網(wǎng)絡(luò)中時就會產(chǎn)生這樣一個問題由于用戶設(shè)備不是一開機就注冊的(無線終端是一開機就注冊的),用戶開機后并不立即上網(wǎng)也是經(jīng)常性的,若要求用戶在開機一分鐘內(nèi)必須完成802.1X認(rèn)證才能通過DHCP客戶端獲取網(wǎng)絡(luò)IP地址,如此運營的有線寬帶接入網(wǎng)絡(luò),會給用戶造成極大的不方便,用戶在這種情況下就需要在命令行輸入winipcfg,ipconfig等專業(yè)性很強的命令行進行操作,不便于普通用戶的使用。
此外,目前WINDOWS XP所提供的802.1X客戶端軟件在用戶下線時不能提供用戶IP地址的自動釋放,即在用戶下線后還一直占用著IP地址,在IP地址十分緊缺的應(yīng)用環(huán)境中,該問題對運營商和對客戶都是不利的,一方面造成IP地址的浪費,運營商所擁有的IP地址不能充分被利用,另一方面也會因為用戶分配不到IP地址或者有地址沖突而得不到服務(wù)。
綜上所述,WINDOWS XP操作系統(tǒng)實現(xiàn)了標(biāo)準(zhǔn)的IEEE 802.1X-2001協(xié)議,但XP操作系統(tǒng)下的802.1X客戶端軟件與DHCP客戶端間沒有直接的關(guān)系。用戶一開機,DHCP客戶端會自動發(fā)出DHCP請求IP地址報文,此時由于802.1X尚未開始認(rèn)證,發(fā)送的DHCP報文在設(shè)備端觸發(fā)802.1X認(rèn)證后會被丟棄。在一分鐘內(nèi),DHCP客戶端有重發(fā)機制,超過一分鐘后DHCP客戶端不再發(fā)送任何報文。也就是說,用戶必須在開機后一分鐘內(nèi)完成用戶名/密碼的輸入和認(rèn)證,這在無線局域網(wǎng)環(huán)境下其應(yīng)用是可行的,但在有線寬帶接入網(wǎng)絡(luò)中是存在問題的。此外就是不能在用戶下線后提供IP地址釋放機制。
發(fā)明內(nèi)容
本發(fā)明的目的是設(shè)計一種802.1X客戶端IP地址再獲取方法,是802.1X客戶端與DHCP客戶端的一種結(jié)合方法,以增強有線寬帶接入網(wǎng)絡(luò)中802.1X客戶端軟件的易用性。
實現(xiàn)本發(fā)明目的的技術(shù)方案是一種802.1X客戶端IP地址再獲取方法,其特征在于包括在802.1X客戶端軟件于認(rèn)證成功狀態(tài)下,主動觸發(fā)動態(tài)主機配置協(xié)議(DHCP)客戶端進行IP地址再獲取過程;和在用戶下線后,主動釋放所獲取的IP地址的過程。
所述的IP地址再獲取過程是由802.1X客戶端軟件遍歷所在用戶計算機的網(wǎng)卡列表,找到用戶所選擇的網(wǎng)卡,再調(diào)用WINDOWS API函數(shù),進行針對網(wǎng)卡的IP地址再獲取。
所述的主動觸發(fā)動態(tài)主機配置協(xié)議(DHCP)客戶端進行IP地址再獲取過程,是在802.1X客戶端軟件于認(rèn)證通過后立即觸發(fā)并在用戶設(shè)備后臺運行的。
所述的IP地址再獲取過程是作為可配置的默認(rèn)選項來處理的。
還包括在IP地址再獲取的更新過程成功后,允許用戶上網(wǎng);在IP地址再獲取的更新過程失敗后,由802.1X客戶端軟件給出提示。
所述的IP地址的再獲取是采用包括動態(tài)主機分配協(xié)議(DHCP)的RFC標(biāo)準(zhǔn)協(xié)議進行的;用戶計算機與動態(tài)主機分配協(xié)議(DHCP)服務(wù)器之間的報文交換動作,在新開辟的線程中處理,或在不影響用戶界面的已有線程中處理。
所述的主動釋放IP地址,是由802.1X客戶端在用戶下線后,主動發(fā)出釋放報文,釋放通過認(rèn)證獲取的IP地址。
本發(fā)明的方法,是讓802.1X客戶端軟件在認(rèn)證成功狀態(tài)下主動觸發(fā)DHCP客戶端,進行IP地址再獲取或者說再分配,和通過在802.1X客戶端軟件上增加IP地址釋放機制,用于保證在用戶下線后的IP地址能得到及時的釋放。
802.1X客戶端軟件進入成功(Success)狀態(tài)后,立即主動觸發(fā)IP地址更新過程,和在用戶下線通過釋放(Release)后發(fā)出DHCP Release報文,釋放通過認(rèn)證獲取到的IP地址,在有線寬帶網(wǎng)絡(luò)中節(jié)約了IP地址,解決了IP地址很快耗光的問題。本發(fā)明方法在實施時,在不同操作系統(tǒng)下調(diào)用的WINDOWS API函數(shù)會略有不同,從功能上相當(dāng)于執(zhí)行一次WINDOWS 98/ME操作系統(tǒng)下的Wincfg命令或WINDOWS 2000操作系統(tǒng)下的ipconfig/renew命令。
圖1是802.1X的體系結(jié)構(gòu)框圖;圖2是802.1X客戶端軟件運行在標(biāo)準(zhǔn)PC機上時,在802.1X客戶端軟件認(rèn)證成功情況下的消息序列圖。
具體實施例方式
參見圖2,802.1X客戶端軟件運行在標(biāo)準(zhǔn)PC機上,操作系統(tǒng)可以是WINDOWS98/WINDOWS NT/WINDOWS 2000/WINDOWS XP。圖2中示出用戶、802.1X客戶端軟件狀態(tài)機(可簡稱客戶端)及設(shè)備端之間進行的802.1X客戶端軟件認(rèn)證過程及認(rèn)證成功情況下的消息序列。首先,802.1X客戶端軟件狀態(tài)機初始化。
步驟1,用戶登錄802.1X客戶端;步驟2,802.1X客戶端收到用戶登錄的消息,向設(shè)備端發(fā)出EAPOL啟動(EAPOL-Start,客戶端與設(shè)備端間的認(rèn)證協(xié)議)報文,發(fā)起一次802.1X認(rèn)證過程,處于連接狀態(tài)步驟3,設(shè)備端收到客戶端發(fā)來的EAPOL-Start報文后,向802.1X客戶端發(fā)送EAPOL身份標(biāo)識請求(EAPOL-Request[Identity]),請求客戶端的身份標(biāo)識-用戶名;步驟4,客戶端收到設(shè)備端發(fā)來的EAPOL-Request[Identity]報文后,通過向設(shè)備端回送EAPOL身份應(yīng)答消息(EAPOL-Response[Identity]),將用戶名發(fā)給設(shè)備端,此時802.1X客戶端等待接收設(shè)備端發(fā)出的隨機數(shù),稱之為魔數(shù)(然后按MD5加密算法進行加密,保證用戶密碼在線路傳輸上的安全性),此時客戶端進入到等待設(shè)備端魔數(shù)狀態(tài);步驟5,設(shè)備端收到客戶端發(fā)來的應(yīng)答消息EAPOL-Response[Identity]報文后,向客戶端進行MD5質(zhì)詢,發(fā)出EAPOL請求/MD5查詢消息EAPOL-Request[MD5Challenge]報文,報文消息中含有802.1X客戶端加密用戶口令所需要的隨機數(shù);
步驟6,802.1X客戶端收到設(shè)備端發(fā)來的EAPOL-Request[MD5 Challenge]報文后,向設(shè)備端發(fā)送EAPOL應(yīng)答/MD5口令(EAPOL-Response[MD5]報文),此消息中包含加密后的密碼,此時的802.1X客戶端進入等待認(rèn)證結(jié)果狀態(tài);步驟7,設(shè)備端將用戶名和密碼通過Radius報文發(fā)送給遠(yuǎn)端的認(rèn)證服務(wù)器進行認(rèn)證,或者在接入設(shè)備上進行本地認(rèn)證,若認(rèn)證成功,將EAPOL-Success報文發(fā)送給客戶端;步驟8,客戶端收到設(shè)備端發(fā)來的EAPOL-Success報文后,立即主動觸發(fā)DHCP,啟動IP地址更新過程,即啟動IP地址再獲取程序,獲得IP地址。802.1X客戶端軟件只有完成認(rèn)證,才能通過DHCP客戶端獲取網(wǎng)絡(luò)IP地址。DHCP服務(wù)器的地址租期不要設(shè)置得過大,以1個小時左右為最佳(最多吊死一個小時),認(rèn)證成功后的客戶端向設(shè)備端發(fā)送注銷消息(EAPOL-Logoff報文);步驟9,用戶下線后,802.1X客戶端主動發(fā)出DHCP釋放(DHCP Release)報文,釋放認(rèn)證通過后獲取到的IP地址。
802.1X客戶端軟件在認(rèn)證成功進入Success狀態(tài)下,主動觸發(fā)IP地址更新過程時,在不同的操作系統(tǒng)下,調(diào)用的WINDOWS API函數(shù)略有不同,從功能上相當(dāng)于執(zhí)行一次WINDOWS 98/ME操作系統(tǒng)下的Wincfg命令或WINDOWS 2000操作系統(tǒng)下的ipconfig/renew命令。
具體過程為客戶端軟件遍歷該計算機的網(wǎng)卡列表,找到用戶所選擇網(wǎng)卡,然后調(diào)用Windows API函數(shù),針對該網(wǎng)卡開始IP地址的再獲取。
IP地址的獲取采用的是RFC的標(biāo)準(zhǔn)協(xié)議,包括動態(tài)主機分配協(xié)議(DHCPDinamic Host Configuration Protocol),由于此過程需要PC機和DHCP服務(wù)器之間的報文交換,有可能出現(xiàn)服務(wù)器不可用、地址獲取失敗的情況。這種情況下,由于PC機發(fā)出的DHCP請求報文得不到回應(yīng),會導(dǎo)致3次的超時重發(fā)才會最終失敗,調(diào)用該WINDOWS API函數(shù)的線程將處于長時間的阻塞狀態(tài),如果該線程是應(yīng)用程序的界面主線程,將導(dǎo)致短時間內(nèi)用戶的鼠標(biāo)和鍵盤動作得不到響應(yīng)的情況,從而影響應(yīng)用程序的界面友好性。因此,應(yīng)該開辟新的線程用于更新IP地址的動作,或者是將此動作放到不影響用戶界面的線程中處理。
802.1X客戶端軟件的IP地址再獲取是在認(rèn)證通過后,立即觸發(fā),并在后臺運行。更新的過程對用戶是透明的,只要更新成功,用戶就可以上網(wǎng),如果更新失敗了,客戶端軟件將給出適當(dāng)?shù)奶崾?,讓用戶重新嘗試,或是與提供商聯(lián)系。
另外,并非所有的802.1X在應(yīng)用組網(wǎng)時都需要認(rèn)證通過后進行IP地址的再次獲取,在一些應(yīng)用環(huán)境下,IP地址可能是固定分配好的,而只需要認(rèn)證的過程。因此應(yīng)該考慮把IP地址的再獲取作為一個可配置的但默認(rèn)的選項來實現(xiàn)。
本發(fā)明的方法經(jīng)在802.1X客戶端軟件上試運行,證明能實現(xiàn)發(fā)明目的,增強了802.1X客戶端軟件在有線寬帶網(wǎng)絡(luò)中的易用性,且實現(xiàn)簡單、可靠,提高了工作效率。
權(quán)利要求
1.一種802.1X客戶端IP地址再獲取方法,其特征在于包括在802.1X客戶端軟件于認(rèn)證成功狀態(tài)下,主動觸發(fā)動態(tài)主機配置協(xié)議(DHCP)客戶端進行IP地址再獲取過程;和在用戶下線后,主動釋放所獲取的IP地址的過程。
2.根據(jù)權(quán)利要求1所述的一種802.1X客戶端IP地址再獲取方法,其特征在于所述的IP地址再獲取過程是由802.1X客戶端軟件遍歷所在用戶計算機的網(wǎng)卡列表,找到用戶所選擇的網(wǎng)卡,再調(diào)用WINDOWS API函數(shù),進行針對網(wǎng)卡的IP地址再獲取。
3.根據(jù)權(quán)利要求1所述的一種802.1X客戶端IP地址再獲取方法,其特征在于所述的主動觸發(fā)動態(tài)主機配置協(xié)議(DHCP)客戶端進行IP地址再獲取過程,是在802.1X客戶端軟件于認(rèn)證通過后立即觸發(fā)并在用戶設(shè)備后臺運行的。
4.根據(jù)權(quán)利要求1所述的一種802.1X客戶端IP地址再獲取方法,其特征在于所述的IP地址再獲取過程是作為可配置的默認(rèn)選項來處理的。
5.根據(jù)權(quán)利要求1所述的一種802.1X客戶端IP地址再獲取方法,其特征在于還包括在IP地址再獲取的更新過程成功后,允許用戶上網(wǎng);在IP地址再獲取的更新過程失敗后,由802.1X客戶端軟件給出提示。
6.根據(jù)權(quán)利要求1所述的一種802.1X客戶端IP地址再獲取方法,其特征在于所述的IP地址的再獲取是采用包括動態(tài)主機分配協(xié)議(DHCP)的RFC標(biāo)準(zhǔn)協(xié)議進行的;用戶計算機與動態(tài)主機分配協(xié)議(DHCP)服務(wù)器之間的報文交換動作,放在新開辟的線程中處理,或放在不影響用戶界面的已有線程中處理。
7.根據(jù)權(quán)利要求1所述的一種802.1X客戶端IP地址再獲取方法,其特征在于所述的主動釋放IP地址,是由802.1X客戶端在用戶下線后,主動發(fā)出釋放報文,釋放通過認(rèn)證獲取的IP地址。
全文摘要
本發(fā)明涉及一種802.1X客戶端IP地址再獲取方法,為滿足有線寬帶接入環(huán)境對方便易用的802.1X客戶端軟件的需要而設(shè)計,因而也是802.1X客戶端與DHCP客戶端的一種結(jié)合方法。是在802.1X客戶端軟件于認(rèn)證成功狀態(tài)下,再立即主動觸發(fā)動態(tài)主機配置協(xié)議(DHCP)客戶端進行IP地址再獲取,和在用戶下線后主動釋放IP地址的過程。該IP地址再獲取過程是由802.1X客戶端軟件遍歷所在用戶計算機的網(wǎng)卡列表,找到用戶所選擇的網(wǎng)卡,再調(diào)用WINDOWS API函數(shù),進行針對網(wǎng)卡的IP地址再獲取。實施時,在不同操作系統(tǒng)下調(diào)用的WINDOWS API函數(shù)會略有不同,從功能上相當(dāng)于執(zhí)行一次WINDOWS 98/ME操作系統(tǒng)下的Wincfg命令或WINDOWS2000操作系統(tǒng)下的ipconfig/renew命令。
文檔編號H04M11/06GK1484426SQ02130659
公開日2004年3月24日 申請日期2002年9月16日 優(yōu)先權(quán)日2002年9月16日
發(fā)明者盧瑞昕, 羅漢軍, 鄒婷, 唐周和, 湯杰成 申請人:華為技術(shù)有限公司