專利名稱:一種訪問控制方法、接入設備及系統的制作方法
技術領域:
本發明涉及通信領域,尤其涉及一種訪問控制方法、接入設備及系統。
背景技術:
在 IP(Internet Protocol,網絡協議)網絡或者 IPv6 (Internet Protocol Version 6,新一代網絡協議)網絡模型中,一個 CPE/RG(customer premises equipment/ router gateway,用戶站/路由型網關)要訪問網絡資源,和其它CPE/RG進行通信,必須獲 取唯一的IP地址(IPv6地址或者IPv6前綴)。目前,根據不同的鏈路層封裝,CPE/RG獲取 IP地址、IPv6地址或者IPv6前綴的方式主要有兩種IPoE(IP over Ethernet,IP承載在以 太鏈路上)鏈路封裝類型主要通過DHCP (Dynamic Host Configuration Protocol,動態主 機配置協議)協議或者DHCPv6 (Dynamic Host Configuration Protocol for IPv6,新一代 動態主機配置協議)協議動態獲取IP地址(IPv6地址或者IPv6前綴),以及PPPoE (Point to Point over Ethernet,點對點協議承載在以太鏈路上)鏈路封裝類型通過PPPoE協議 獲取IP地址(IPv6地址或者IPv6前綴)。IPoE鏈路封裝類型安全性比較低,惡意CPE/RG可以通過仿冒其它CPE/RG的IP地 址(IPv6地址或者IPv6前綴)或MAC地址進行欺騙,網絡容易受到攻擊。在網絡安全越來 越重要的情況下,必須要提供更安全的接入方法,防止網絡攻擊。AMAccess Node,接入節 點)在網絡架構中負責給CPE/RG提供接入網絡的服務,是最接近CPE/RG的設備,需要處理 DHCP協議(DHCPv6協議),因此,目前AN上防IP地址欺騙和防MAC地址欺騙的接入方法是 基于DHCP協議的原理來實現的。AN通過監聽DHCP報文,獲取到CPE/RG的MAC地址和DHCP Server分配給CPE/RG 的IP地址,并且與AN上的用戶側端口建立綁定關系。用戶端口不一定是物理端口,根據不 同的接入方式,也可以是虛擬的通道端口,通常在同一端口上可以允許綁定多個MAC地址 和IP地址,但要限制綁定的數量,超過該限制值后,不再綁定新的MAC地址和IP地址。在轉發平面轉發報文時,通過獲取接收報文的用戶側端口,檢查報文的MAC地址 和IP地址是否符合已經建立的綁定關系,如果符合,則允許訪問接入,如果不符合,則不能 進行訪問,從而實現防止用戶進行MAC地址欺騙和IP地址欺騙的目的。在控制平面,如果 新的CPE/RG使用與已經綁定MAC地址相同的MAC地址發起DHCP協議申請IP地址,也會檢 查已經建立的綁定關系,如果用戶端口信息不同,認為是屬于MAC地址欺騙,丟棄該DHCP協 議報文。建立綁定關系的有效時間,根據DHCP協議的原理,與DHCP分配的IP地址的租期 相同,當租期到期則刪除綁定關系表。CPE/RG通過DHCP協議申請IP地址時,為了減少DHCP協議報文占用的網絡資源, 通常租期時間都會比較長,一般在M小時以上,在這段時間內,綁定關系表一直是生效的。 但是,當進行開局測試時,可能會使用相同的終端在不同端口上測試DHCP業務是否正常, 需要將MAC地址和IP地址在短時間內在不同用戶端口上遷移,在這種場景下,因為已經在 一端口上綁定了 MAC和IP地址,當相同MAC地址遷移到其他端口上進行DHCP協議申請時,會被認為是MAC地址欺騙,不能進行申請,必須等到原綁定關系租期到期刪除后,才能在另 一端口上申請。由于租期時間一般比較長,所以無法實現上述業務。另外,當一端口上綁定 關系表規格已經滿的情況下,更換其中一個訪問設備,例如終端損壞,更換終端時,需要使 用新的MAC地址進行DHCP協議申請,但因為舊的綁定表項租期較長,舊的綁定關系依然存 在,新的MAC地址將不能進行申請,所以也無法實現該業務。由此可見,現有技術防止用戶進行MAC地址欺騙和IP地址欺騙的訪問控制方法適 用性較差,影響了正常業務的進行。
發明內容
有鑒于此,本發明提供一種訪問控制方法、接入設備及系統,以解決現有技術中綁 定關系建立方法,其具體方案如下一種訪問控制方法,包括接收訪問請求,獲取用戶的網絡協議IP地址和用戶的介質訪問控制MAC地址;當所述MAC地址已經綁定、與所述MAC地址進行綁定的綁定端口與接收訪問請求 的當前端口不相同、且所述MAC地址與所述綁定端口間的綁定關系為無效時,刪除所述MAC 地址與所述綁定端口間的綁定關系,建立所述MAC地址與所述當前端口的綁定關系,允許 用戶訪問;當所述MAC地址沒有綁定、所述當前端口上綁定的MAC地址的數量已經達到最大 值、且所述當前端口與所述當前端口上綁定的MAC地址間的綁定關系中包含無效的綁定關 系時,刪除所述無效的綁定關系,建立所述MAC地址與所述當前端口的綁定關系,允許用戶 訪問ο一種接入設備,包括接收模塊,用于接收協議請求,獲取用戶獲得的網絡協議IP地址和用戶的介質訪 問控制MAC地址;第一綁定狀態判斷模塊,用于判斷所述MAC地址是否已經綁定;第一端口判斷模塊,用于判斷與所述MAC地址進行綁定的綁定端口與所述接收協 議請求的當前端口是否相同;第一綁定關系判斷模塊,用于判斷所述MAC地址與所述綁定端口間的綁定關系是 否為無效;第一建立模塊,用于當判斷出所述MAC地址已經綁定、與所述MAC地址進行綁定的 綁定端口與接收請求的當前端口不相同、且所述MAC地址與所述綁定端口間的綁定關系為 無效時,刪除所述MAC地址與所述綁定端口間的綁定關系,建立所述MAC地址與所述當前端 口的綁定關系,允許用戶訪問;綁定數量判斷模塊,用于當判斷出所述MAC地址沒有綁定時,判斷所述當前端口 上綁定的MAC地址的數量是否已經達到最大值;第二綁定關系判斷模塊,用于當判斷出所述當前端口上綁定的MAC地址的數量已 經達到最大值時,判斷所述當前端口與所述當前端口上綁定的MAC地址間的綁定關系中是 否包含無效的綁定關系;第二建立模塊,用于當所述MAC地址沒有綁定、所述當前端口上綁定的MAC地址的數量已經達到最大值、且所述當前端口與所述當前端口上綁定的MAC地址間的綁定關系中 包含無效的綁定關系時,刪除所述無效的綁定關系,建立所述MAC地址與所述當前端口的 綁定關系,允許用戶訪問。一種訪問控制系統,包括終端設備和接入設備,其中所述終端設備用于,向接入設備發送訪問請求;所述接入設備用于,接收所述訪問請求,獲取用戶的網絡協議IP地址和用戶的介 質訪問控制MAC地址,當所述MAC地址已經綁定、與所述MAC地址進行綁定的綁定端口與接 收請求的當前端口不相同、且所述MAC地址與所述綁定端口間的綁定關系為無效時,刪除 所述MAC地址與所述綁定端口間的綁定關系,建立所述MAC地址與所述當前端口的綁定關 系,允許用戶訪問;當所述MAC地址沒有綁定,所述當前端口上綁定的MAC地址的數量已經 達到最大值、且所述當前端口與所述當前端口上綁定的MAC地址間的綁定關系中包含無效 的綁定關系時,刪除所述無效的綁定關系,建立所述MAC地址與所述當前端口的綁定關系, 允許用戶訪問。從上述技術方案可以看出,本發明實施例公開的訪問控制方法,通過對綁定關系 的有效性檢測判定接收的協議請求是MAC地址欺騙還是正常的業務需要導致的IP和MAC 合法地址遷移,從而實現了即滿足安全特性的需要,又滿足特殊場景的需求,擴大了該方法 的應用范圍。
為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施例或現 有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本 發明的一些實施例,對于本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以 根據這些附圖獲得其他的附圖。圖1為本發明實施例公開的訪問控制方法的流程圖;圖2為本發明實施例公開的又一訪問控制方法的流程圖;圖3為本發明實施例公開的又一訪問控制方法的流程圖;圖4為本發明實施例公開的接入設備的結構示意圖;圖5為本發明實施例公開的訪問控制系統的示意圖。
具體實施例方式下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完 整地描述,顯然,所描述的實施例僅僅是本發明一部分實施例,而不是全部的實施例。基于 本發明中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他 實施例,都屬于本發明保護的范圍。本發明公開的訪問控制方法的流程如圖1所示,包括步驟S11、接入設備接收終端設備發送的DHCP協議請求,獲取用戶獲得的IP地址 和用戶的MAC地址;本實施例中的協議可以為DHCP或者新一代動態主機配置協議DHCPv6。當為 DHCPv6時,對應的IP地址為IPv6地址、IPv6前綴。在此選用DHCP作為舉例描述。
接入設備接收CPE/RG發送的DHCP,CPE/RG已經通過DHCP協議獲取到IP地址。步驟S12、判斷MAC地址是否已經綁定,若是,則執行步驟S13,若否,則執行步驟 S14 ;AN上保存所有的MAC、IP、端口對應關系,判斷該獲取到的用戶MAC是否已經和端 口建立起了對應關系,即進行了綁定。步驟S13、當綁定端口與接收DHCP的當前端口不相同,且綁定關系為無效時,刪除 MAC地址與綁定端口的綁定關系,建立MAC地址與當前端口的綁定關系,執行步驟S15 ;當接收DHCP的當前端口并非與MAC綁定的端口時,則說明CPE/RG在并未與其綁 定的端口進行訪問,此時需要去檢測與MAC的綁定關系是否仍然有效,即,檢測MAC和與其 綁定的端口間是否仍然能夠進行正常的通信,如果不能,則證明其綁定關系已經無效,該無 效的原因可能是CPE/RG在原來綁定的端口上掉線,即表示CPE/RG已經從原來的端口移除, 此時需要將該端口與MAC的綁定關系刪除,以保證該MAC可以在其他的端口上進行綁定,并 保證正常的訪問。步驟S14、當接收DHCP的當前端口上綁定的MAC地址的數量已經達到最大值,且其 中包含無效的綁定關系時,刪除無效的綁定關系,建立MAC地址與當前端口的綁定關系,執 行步驟S15 ;當接收DHCP的當前端口上綁定的MAC地址的數量已經達到最大值,即AN上設置 的規格已滿,無法直接建立發起DHCP用戶的未被綁定的MAC與當前端口的綁定關系。此時 需要判斷與該端口相關的綁定關系是否有效,即判斷與該端口建立的綁定關系是否都能保 證正常的通信,如果都能保證正常通信,則表示綁定關系都有效,如果存在無法保證正常通 信的綁定關系,則表明該綁定關系已經無效,無效的原因可能是租期時間到達,或者是CPE/ RG在該端口上掉線,此時,可刪除該無效的綁定關系,建立起發起DHCP用戶的未被綁定的 MAC與當前端口的綁定關系。步驟S15、允許用戶訪問。在建立起發起DHCP用戶的MAC與當前端口的綁定關系后,則可以允許用戶進行訪 問。本實施例公開的訪問控制方法中,通過獲取接收的DHCP中的用戶MAC地址,判斷 該MAC地址是否已經綁定,進而根據其是否已經被綁定以及如果被綁定,其綁定關系的狀 態來確定是否需要刪除無效的綁定關系,建立新的綁定關系以進行正常的接入訪問,從而 解決了現有技術中,由于綁定關系租期未到,無法建立新的綁定關系,以及由于端口上綁定 的MAC地址的數量已經達到最大值,需要更換終端時,無法建立新的綁定關系,影響正常的 業務進行的問題,提高了訪問控制方法的通用性。此外,在上一實施例的上述步驟后,還可以包括步驟S16、當MAC地址已經綁定且綁定端口與當前端口不相同,且綁定關系為有效 時,確定為MAC地址欺騙,拒絕用戶訪問;此時,通過判斷得到MAC與綁定端口的綁定關系仍然有效,說明該MAC對應的CPE/ RG仍然與其綁定端口相連,而當前接收的DHCP屬于MAC地址欺騙,丟棄該DHCP協議報文, 拒絕用戶訪問。步驟S17、當MAC地址已經綁定且綁定端口與當前端口相同時,允許用戶訪問。
此步驟中表示,CPE/RG在與其綁定的端口上進行訪問,由于AN上預先保存有其 MAC與端口以及IP地址的綁定關系,則允許其進行訪問。下面結合一個具體例子對本實施例進行詳細描述假設終端A的MAC地址為MACl,通過DHCP協議獲取到IP地址為IPl,如果AN在端 口 Portl上建立了 MACl和IPl的綁定關系,并且保存。其綁定關系的租期為M小時。在租 期內,如果將終端A從端口 Portl上移除,從端口 Port2上接入,此時由于終端A的MAC地 址已經綁定,但是接收用戶訪問請求的端口并非與MACl綁定的端口 portl,AN則判斷MACl 對應的綁定關系是否有效,此時由于終端A已經從Port 1上移除了,所以該綁定關系已經無 效,則AN刪除該無效的綁定關系,建立起MACl與當前接入端口 Port2的綁定關系,以允許 用戶進行訪問。假設端口 Portl上綁定關系表規格已經滿足最大值,即在該端口上綁定的MAC地 址的數量已經達到最大值,如果此時其中的一個終端B損壞,需要將其更換為終端A,由于 此時在AN上存儲有Portl與終端B的MAC地址MAC2和IP地址IP2的綁定關系,而該綁定 關系由于終端B的損壞已經無效,則此時,AN刪除該無效的綁定關系,使得能夠建立起終端 A的MAC地址MACl和Portl的綁定關系,使得終端A能夠正常的通過AN進行訪問。本發明公開的又一訪問控制方法的流程如圖2所示,該過程適用于如開局測試 時,使用相同的終端在不同端口上測試DHCP業務是否正常的情況,其具體過程包括步驟S21、接收DHCP報文,獲取用戶獲得的IP地址和用戶的MAC地址;假設AN在端口 Portl上建立了 MAC地址(MACl)和IP地址(IPl)綁定關系。則 AN此時存儲了 Portl、MACl和IPl的綁定關系。步驟S22、判斷獲取的用戶MAC地址是否已經被綁定,如果是已綁定,則判斷綁定 端口與接收DHCP報文的當前端口是否不相同;如果不相同,則執行步驟S23 ;如果AN在當前端口 Port2接收到CPE/RG發起的DHCP協議,獲取該CPE/RG的MAC 地址為MACl,在綁定關系表中查找到該MACl,獲得其綁定關系為MACl、IPl與portl綁定; 由于端口 Port2與Portl并不相同,確定綁定端口與接收報文的當前端口不相同。步驟S23、判斷該用戶MAC地址對應的綁定關系是否有效,若有效,則執行步驟 S24,若無效,則執行步驟S25;具體的可以為向綁定端口發送目標IP為用戶獲得的IP的請求報文;判斷是否接 收到綁定端口返回的應答報文,如果接收到返回的應答報文,則確定綁定關系有效;如果沒 有接收到返回的應答報文,則確定綁定關系無效。AN向Portl發起目標IP是IPl的ARP請求報文。本實施例中的請求報文還可以為鄰居發現ND報文。如果AN收到portl返回的應答報文,則確定該端口 portl仍然能正常通信,即確 定MACl、IPl和portl這個綁定關系為有效。如果AN沒有收到portl返回的應答報文,則 確定該端口無法正常通信,即確定MAC1、IPl和portl這個綁定關系為無效。步驟S24、確定為MAC地址欺騙,拒絕用戶訪問;如果綁定關系有效,說明該CPE/RG仍然進行著與端口 Portl的聯系,MACl也仍然 與Portl相綁定,則證明此時接收的DHCP為MAC欺騙,阻止其進行訪問,以保證訪問過程的
安全性。
步驟S25、刪除MAC地址在當前對應關系表中的綁定關系,建立MAC地址與當前端 口的綁定關系,允許用戶訪問。如果綁定關系無效,說明該CPE/RG已經在Portl掉線,不管是否已經到租期規定 時間,直接刪除舊的綁定關系即Portl與MAC1、IPl綁定關系,允許MACl在新的用戶端口 Port2發起DHCP協議請求,進行訪問,并建立MACl、IPl與Port2的綁定關系,保存在對應 關系表中。本實施例中并不限定允許用戶訪問的步驟發生在建立起新的綁定關系之后,其同 樣可以在允許用戶訪問的同時建立該綁定關系,或者允許用戶訪問之后建立綁定關系。本實施例也并不限定采用向IPl發送請求報文的方式來判斷綁定關系是否有效, 其同樣可以采用檢測物理端口狀態判斷是否原端口上的CPE/RG已經掉線,即檢查原有的 綁定關系所在的Port鏈路狀態是否正常,例如,是否仍然連接,如果正常,則說明有效,如 果不正常,則說明無效。還可以采用流量檢測來判斷CPE/RG是否在線,檢測統計的報文數 量,如果報文統計數量一直增加,說明用戶在線,綁定關系有效,否則,綁定關系無效。本實施例具體描述了將該方法應用于例如開局測試業務時,使用相同的終端在不 同端口上測試DHCP業務的情況,雖然此時終端的MAC已經在其他端口建立綁定關系,租期 時間未到,該綁定關系仍然存在,但是,為了實現當前對其他端口的測試,采用不等待租期 時間到來,直接刪除原來綁定關系的方式,從而使其可以實現利用相同終端測試不同端口 業務情況的目的,擴大了該方法的適用范圍。該方法通過對綁定關系的有效性檢測判定接收的協議請求是MAC地址欺騙還是 正常的業務需要導致的IP和MAC合法地址遷移,從而既滿足安全特性的需要,又滿足特殊 場景的需求,擴大了該方法的應用范圍,并且由于其只在特定的情況下進行綁定關系的有 效性檢測,與現有技術中為了滿足特殊場景的需求,采用較短的時間間隔發請求報文進行 探測的方法相比,減輕了 AN設備的負載,占用了較少的網絡帶寬資源。本實施例并不限定圖2所示流程只適用于開局測試的場景,凡是涉及到訪問控制 的情況都是本實施例方法所適用的范圍,例如也可以應用于固定寬帶接入的寬帶網絡網 關控制設備BNG上,以及WLAN(Wireless Local Area Networks,無線局域網絡)網絡的 AP (Wireless Access Point,^A ^ ) >AC(Wireless Access Controller,
入控制器)上。本發明公開的又一訪問控制方法的流程如圖3所示,該過程適用于更換新的訪問 設備后,向綁定關系數量達到最大值的端口發送請求的情況下,其具體過程為步驟S31、接收DHCP,獲取用戶獲得的IP地址和用戶的MAC地址;假設AN在端口 Portl上建立了 MAC地址(MACl)和IP地址(IPl)綁定關系。則AN 此時存儲了 Portl、MAC1和IPl的綁定關系。如果CPE/RG設備故障,更換了一個新的CPE/ RG,或者更新了該CPE/RG的MAC地址,例如MAC2。該CPE/RG使用MAC2發起DHCP協議請 求,其發起請求的端口并不限定,可以仍為Portl,也可以為其他的端口。步驟S32、確定MAC地址沒有綁定,判斷當前端口上綁定的MAC地址的數量是否已 經達到最大值,若是,則執行步驟S33,若否,則執行步驟S36 ;由于AN上存儲有端口、MAC地址和IP地址的對應關系,其利用存儲的對應關系, 判斷出MAC2并沒有在端口上進行綁定。但是,當前端口上綁定的MAC地址的數量也已經達到了最大值,其具體的判別依據可以為判斷代表該端口設置規格的屬性值是否為預設值, 例如,是否為1。若為1,則表明規格已滿,數量達到了最大值,若不為1,則表明規格未滿,仍 可以進行與MAC地址的綁定。步驟S33、判斷該用戶MAC地址對應的綁定關系是否有效,若有效,則執行步驟 S34,若無效,則執行步驟S35;具體的可以為向與當前端口綁定的MAC地址對應的IP地址分別發送請求報文。 假設當前端口上綁定的MAC地址為MAC1、MAC3和MAC4,其對應的IP地址分別為IP1、IP3 和IP4,則本步驟中,向IPU IP3和IP4分別發送請求報文。如果AN收到portl返回的由 IPl返回的應答報文,即確定MACl、IPl和portl這個綁定關系為有效,如果AN收到IP3返 回的應答報文,則確定MAC3、IP3和portl這個綁定關系為有效,如果AN沒有收到IP4返回 的應答報文,則可以確定MAC4、IP4和portl這個綁定關系為無效,步驟S34、確定不存在無效綁定關系,結束;不存在無效的綁定關系,則無法建立新的綁定關系,則該訪問不能進行。步驟S35、刪除無效的綁定關系;將無效的綁定關系刪除,此時確定的無效的綁定關系可能為一個也可能為多個。 使得當前端口上可以建立新的綁定關系。步驟S36、建立MAC地址與當前端口的綁定關系,允許用戶訪問。本實施例也并不限定采用向IPl發送請求報文的方式來判斷綁定關系是否有效, 其同樣可以采用檢測物理端口狀態判斷是否原端口上的CPE/RG已經掉線,即檢查原有的 綁定關系所在的Port鏈路狀態是否正常,例如,是否仍然連接,如果正常,則說明有效,如 果不正常,則說明無效。還可以采用流量檢測來判斷CPE/RG是否在線,檢測統計的報文數 量,如果報文統計數量一直增加,說明用戶在線,綁定關系有效,否則,綁定關系無效。本實施例公開的判斷當前端口上的綁定的MAC地址的數量是否已經達到最大值 并且當其達到最大值時檢測無效的綁定關系的過程同樣也可適用于如圖2所示的實施例 中,建立MAC地址與當前端口的綁定關系步驟里面,以保證該步驟能夠實現,保證訪問的正 常進行。本發明同時公開了一種接入設備,其結構如圖4所示,包括接收模塊41、綁定狀態判斷模塊42、第一端口判斷模塊43、第一綁定關系判斷模 塊44、第一建立模塊45、綁定數量判斷模塊46、第二綁定關系判斷模塊47和第二建立模塊 48,其中接收模塊41用于接收訪問請求,獲取用戶的IP地址和用戶的MAC地址;綁定狀態 判斷模塊42,用于判斷MAC地址是否已經綁定;第一端口判斷模塊43,用于判斷與MAC地址 進行綁定的綁定端口與接收協議請求的當前端口是否相同;第一綁定關系判斷模塊44,用 于判斷MAC地址與綁定端口間的綁定關系是否為無效;第一建立模塊45,用于當判斷出MAC 地址已經綁定、與MAC地址進行綁定的綁定端口與接收請求的當前端口不相同、且MAC地址 與綁定端口間的綁定關系為無效時,刪除MAC地址與綁定端口間的綁定關系,建立MAC地址 與當前端口的綁定關系,允許用戶訪問;綁定數量判斷模塊46,用于當判斷出MAC地址沒有 綁定時,判斷當前端口上綁定的MAC地址的數量是否已經達到最大值;第二綁定關系判斷 模塊47,用于當判斷出當前端口上綁定的MAC地址的數量已經達到最大值時,判斷當前端口與當前端口上綁定的MAC地址間的綁定關系中是否包含無效的綁定關系;第二建立模塊 48,用于當MAC地址沒有綁定、當前端口上綁定的MAC地址的數量已經達到最大值、且當前 端口與當前端口上綁定的MAC地址間的綁定關系中包含無效的綁定關系時,刪除無效的綁 定關系,建立MAC地址與當前端口的綁定關系,允許用戶訪問。進一步的,第一綁定關系判斷模塊44包括第一發送單元441用于向綁定端口發送目標IP地址為所獲得的用戶IP地址的請 求報文;第一判斷單元442用于判斷是否接收到綁定端口返回的應答報文;第一確定單元 443用于當接收到綁定端口返回的應答報文時,確定綁定關系為有效,若否,則確定綁定關 系為無效。第二綁定關系判斷模塊47包括第二發送單元471用于向與當前端口綁定的MAC地址對應的用戶獲得的IP地址 分別發送請求報文;第二判斷單元472用于判斷是否接收到與每一個IP地址對應的應答報 文;第二確定單元473用于當接收到與每一個IP地址對應的應答報文時,確定不包含無效 綁定關系;若否,則確定包含無效綁定關系。其中,該接入設備各個模塊及單元的功能如下所述接收模塊接收訪問請求,獲取用戶的IP地址和用戶的MAC地址,綁定狀態判斷模 塊判斷所述MAC地址是否已經綁定,第一端口判斷模塊判斷綁定端口與所述接收訪問請求 的當前端口是否相同,第一綁定關系判斷模塊判斷所述綁定關系是否為無效,當所述判斷 出所述MAC地址已經綁定、綁定端口與所述當前端口不相同、且所述綁定關系為無效時,第 一建立模塊刪除所述綁定關系,建立所述MAC地址與所述當前端口的綁定關系,允許用戶 訪問;當所述第一端口判斷模塊判斷出所述MAC地址沒有綁定時,綁定數量判斷模塊判斷 所述當前端口上綁定的MAC地址的數量是否已經達到最大值,當判斷出所述當前端口上綁 定的MAC地址的數量已經達到最大值時,第二綁定關系判斷模塊判斷當前端口與當前端口 上綁定的MAC地址間的綁定關系中是否包含無效的綁定關系,當其中包含無效的綁定關系 時,第二建立模塊刪除該無效的綁定關系,建立MAC地址與當前端口的綁定關系,允許用戶 訪問ο更進一步的,本發明同時公開了一種訪問控制系統,其結構如圖5所示,包括終 端設備51和接入設備52,其中終端設備51用于,向接入設備52發送訪問請求;接入設備52用于接收來自終端 設備的訪問請求,獲取用戶的網絡協議IP地址和用戶的介質訪問控制MAC地址,當MAC地 址已經綁定、與MAC地址進行綁定的綁定端口與接收請求的當前端口不相同、且MAC地址與 綁定端口間的綁定關系為無效時,刪除MAC地址與綁定端口間的綁定關系,建立MAC地址 與當前端口的綁定關系,允許用戶訪問;當MAC地址沒有綁定、當前端口上綁定的MAC地址 的數量已經達到最大值、且當前端口與當前端口上綁定的MAC地址間的綁定關系中包含無 效的綁定關系時,刪除無效的綁定關系,建立MAC地址與當前端口的綁定關系,允許用戶訪 問。本實施例中的接入設備的具體結構可以如圖4所示。本實施例公開的訪問控制系統,由于接入設備能夠通過對綁定關系的有效性檢測 判定接收的協議請求是MAC地址欺騙還是正常的業務需要導致的IP和MAC合法地址遷移,從而既滿足安全特性的需要,又滿足特殊場景的需求,擴大了該方法的應用范圍,并且由于 其只在特定的情況下進行綁定關系的有效性檢測,與現有技術中為了滿足特殊場景的需 求,系統采用較短的時間間隔發請求報文進行探測的方法相比,減輕了 AN設備的負載,占 用了較少的網絡帶寬資源。本說明書中各個實施例采用遞進的方式描述,每個實施例重點說明的都是與其他 實施例的不同之處,各個實施例之間相同相似部分互相參見即可。對于實施例公開的裝置 而言,由于其與實施例公開的方法相對應,所以描述的比較簡單,相關之處參見方法部分說 明即可。專業人員還可以進一步意識到,結合本文中所公開的實施例描述的各示例的單元 及算法步驟,能夠以電子硬件、計算機軟件或者二者的結合來實現,為了清楚地說明硬件和 軟件的可互換性,在上述說明中已經按照功能一般性地描述了各示例的組成及步驟。這些 功能究竟以硬件還是軟件方式來執行,取決于技術方案的特定應用和設計約束條件。專業 技術人員可以對每個特定的應用來使用不同方法來實現所描述的功能,但是這種實現不應 認為超出本發明的范圍。結合本文中所公開的實施例描述的方法或算法的步驟可以直接用硬件、處理器執 行的軟件模塊,或者二者的結合來實施。軟件模塊可以置于隨機存儲器(RAM)、內存、只讀存 儲器(ROM)、電可編程ROM、電可擦除可編程ROM、寄存器、硬盤、可移動磁盤、CD-ROM、或技術 領域內所公知的任意其它形式的存儲介質中。對所公開的實施例的上述說明,使本領域專業技術人員能夠實現或使用本發明。 對這些實施例的多種修改對本領域的專業技術人員來說將是顯而易見的,本文中所定義的 一般原理可以在不脫離本發明的精神或范圍的情況下,在其它實施例中實現。因此,本發明 將不會被限制于本文所示的這些實施例,而是要符合與本文所公開的原理和新穎特點相一 致的最寬的范圍。
權利要求
1.一種訪問控制方法,其特征在于,包括接收訪問請求,獲取用戶的網絡協議IP地址和用戶的介質訪問控制MAC地址; 當所述MAC地址已經綁定、與所述MAC地址進行綁定的綁定端口與接收訪問請求的當 前端口不相同、且所述MAC地址與所述綁定端口間的綁定關系為無效時,刪除所述MAC地址 與所述綁定端口間的綁定關系,建立所述MAC地址與所述當前端口的綁定關系,允許用戶 訪問;當所述MAC地址沒有綁定、所述當前端口上綁定的MAC地址的數量已經達到最大值、且 所述當前端口與所述當前端口上綁定的MAC地址間的綁定關系中包含無效的綁定關系時, 刪除所述無效的綁定關系,建立所述MAC地址與所述當前端口的綁定關系,允許用戶訪問。
2.根據權利要求1所述的方法,其特征在于,當所述MAC地址已經綁定且綁定端口與所 述當前端口不相同,且所述綁定關系為有效時,確定為MAC地址欺騙,拒絕用戶訪問。
3.根據權利要求1所述的方法,其特征在于,按照以下步驟確定所述綁定關系是否為 無效向所述綁定端口發送目標IP地址為所述獲得的用戶IP地址的請求報文; 判斷是否接收到所述綁定端口返回的應答報文,若是,則確定所述綁定關系為有效,若 否,則確定所述綁定關系為無效。
4.根據權利要求1所述的方法,其特征在于,按照以下步驟確定是否包含無效的綁定 關系向與所述當前端口綁定的MAC地址對應的用戶IP地址分別發送請求報文; 判斷是否分別接收到與每一個IP地址對應的應答報文,若是,則確定不包含無效綁定 關系,若否,則確定包含無效綁定關系。
5.根據權利要求3或4所述的方法,其特征在于,所述請求報文包括地址解析協議報 文ARP或鄰居發現ND報文。
6.一種接入設備,其特征在于,包括接收模塊,用于接收協議請求,獲取用戶獲得的網絡協議IP地址和用戶的介質訪問控 制MAC地址;第一綁定狀態判斷模塊,用于判斷所述MAC地址是否已經綁定; 第一端口判斷模塊,用于判斷與所述MAC地址進行綁定的綁定端口與所述接收協議請 求的當前端口是否相同;第一綁定關系判斷模塊,用于判斷所述MAC地址與所述綁定端口間的綁定關系是否為 無效;第一建立模塊,用于當判斷出所述MAC地址已經綁定、與所述MAC地址進行綁定的綁定 端口與接收請求的當前端口不相同、且所述MAC地址與所述綁定端口間的綁定關系為無效 時,刪除所述MAC地址與所述綁定端口間的綁定關系,建立所述MAC地址與所述當前端口的 綁定關系,允許用戶訪問;綁定數量判斷模塊,用于當判斷出所述MAC地址沒有綁定時,判斷所述當前端口上綁 定的MAC地址的數量是否已經達到最大值;第二綁定關系判斷模塊,用于當判斷出所述當前端口上綁定的MAC地址的數量已經達 到最大值時,判斷所述當前端口與所述當前端口上綁定的MAC地址間的綁定關系中是否包含無效的綁定關系;第二建立模塊,用于當所述MAC地址沒有綁定、所述當前端口上綁定的MAC地址的數量 已經達到最大值、且所述當前端口與所述當前端口上綁定的MAC地址間的綁定關系中包含 無效的綁定關系時,刪除所述無效的綁定關系,建立所述MAC地址與所述當前端口的綁定 關系,允許用戶訪問。
7.根據權利要求6所述的裝置,其特征在于,所述第一綁定關系判斷模塊包括第一發送單元,用于向所述綁定端口發送目標IP地址為所述獲得的用戶IP地址的請 求報文;第一判斷單元,用于判斷是否接收到所述綁定端口返回的應答報文;第一綁定關系確定單元,用于當接收到所述綁定端口返回的應答報文時,確定所述MAC 地址與所述綁定端口間的綁定關系為有效;若否,則確定所述MAC地址與所述綁定端口間 的綁定關系為無效。
8.根據權利要求6所述的裝置,其特征在于,所述第二綁定關系判斷模塊包括第二發送單元,用于向與所述當前端口綁定的MAC地址對應的用戶的IP地址分別發送 請求報文;第二判斷單元,用于判斷是否接收到與每一個所述IP地址對應的應答報文;第二確定單元,用于當接收到與每一個所述IP地址對應的應答報文時,確定不包含無 效綁定關系;若否,則確定包含無效綁定關系。
9.一種訪問控制系統,其特征在于,包括終端設備和接入設備,其中所述終端設備用于,向接入設備發送訪問請求;所述接入設備用于,接收所述訪問請求,獲取用戶的網絡協議IP地址和用戶的介質訪 問控制MAC地址,當所述MAC地址已經綁定、與所述MAC地址進行綁定的綁定端口與接收請 求的當前端口不相同、且所述MAC地址與所述綁定端口間的綁定關系為無效時,刪除所述 MAC地址與所述綁定端口間的綁定關系,建立所述MAC地址與所述當前端口的綁定關系,允 許用戶訪問;當所述MAC地址沒有綁定,所述當前端口上綁定的MAC地址的數量已經達到最 大值、且所述當前端口與所述當前端口上綁定的MAC地址間的綁定關系中包含無效的綁定 關系時,刪除所述無效的綁定關系,建立所述MAC地址與所述當前端口的綁定關系,允許用 戶訪問。
全文摘要
本發明公開了訪問控制方法、接入設備及系統,包括接收訪問請求,獲取IP地址和MAC地址;當MAC地址已經綁定、與MAC地址進行綁定的綁定端口與當前端口不相同、MAC地址與綁定端口的綁定關系為無效時,刪除MAC地址與綁定端口的綁定關系,建立與當前端口的綁定關系;當MAC地址沒有綁定、當前端口上綁定的MAC地址的數量已經達到最大值、且當前端口上的綁定關系中包含無效的綁定關系時,刪除無效的綁定關系,建立MAC地址與當前端口的綁定關系。本發明公開的訪問控制方法,通過對綁定關系有效性的檢測判定接收的協議請求是地址欺騙還是正常的業務需要導致的合法地址遷移,實現了即滿足安全特性的需要,又滿足特殊場景的需求。
文檔編號H04L12/28GK102137109SQ201110065919
公開日2011年7月27日 申請日期2011年3月18日 優先權日2011年3月18日
發明者尹家生, 楊顯杰 申請人:華為技術有限公司