一种基于DHCPOption82的用户接入权限控制方法

文档序号:7758042阅读:208来源:国知局
专利名称:一种基于DHCP Option 82的用户接入权限控制方法
技术领域
本发明涉及计算机数据通信领域,尤其涉及一种基于DHCP Opt ion 82的用户接入权限控制方法。
背景技术
DHCP (Dynamic Host Configuration Protocol,动态主机分配协议)作为一种动态分配IP地址的协议,广泛应用于各种IP网络中,为了解决在不安全的网络环境下出现的因IP地址欺骗、MAC地址欺骗、恶意分配IP地址以致IP资源匮乏等问题,现有技术中规定了中继代理信息选项即Option 82,用户终端发出的DHCP地址请求报文在通过接入交换机时,接入交换机会在DHCP选项中添加VLAN(Virtual Local Area Network,虚拟局域网标识)ID、交换机端口号等信息,并发给DHCP服务器,这样DHCP服务器就可以通过VLANID、交换机端口号等信息和用户信息关联。一般管理员在DHCP krver上配置基于0ption82的地址分配策略,DHCP krver根据DHCP请求中的Option 82信息来判断当前请求是否匹配相应策略而分配不同的地址,目前Option 82并没有一个确定的内容和格式,常规写法是“接入vlanid+接入端口 id+交换机标识”,通过这几个信息组成的字符串可以唯一确定用户接入的物理位置,然后将从用户的DHCP报文中获取的Option 82与预设的数据库中内容进行比对,若有匹配的字符串则认为用户接入合法并分配IP地址。但是DHCP本身没有严格的安全认证机制,因此,不能依赖DHCP作为安全接入的基础。为了防止用户非法接入网络,一般在接入网络中采用802. Ix认证,802. Ix是IEEE LAN/WAN委员会为了解决基于端口的网络接入控制(Port-Based Network Access Control)而定义的一个标准,该标准目前已经在无线局域网和以太网中被广泛应用。PC客户端安装802. Ix认证客户端,客户通过认证后即可以合法的接入网络,访问各种资源。但是目前的802. Ix认证后存在这样的缺陷,用户在认证前无法访问任何资源,通过认证后又可以访问所有资源,也就是说,对用户访问权限的控制只有完全不能访问和全部可以访问这两种状态,而这种访问权限力度太粗,无法实现用户权限的精细化控制。

发明内容
为了解决现有技术中用户接入网络时802. Ix认证后无法控制用户访问权限的问题,本发明提供一种基于DHCP Option 82利用两次IP获取来调整用户权限的接入控制方法,具体方案如下基于DHCP Option 82的用户接入权限控制方法,包括客户端和DHCP 服务器,客户端通过接入交换机、汇聚交换机与DHCP服务器连接,汇聚交换机还连接有 Radius服务器,其特征在于,包括如下步骤步骤1、用户终端的DHCP模块向接入交换机发送DHCP请求,接入交换机的DHCP Snooping模块在DHCP请求的Option 82中附加默认值,然后通过汇聚交换机向DHCP服务器转送DHCP请求;步骤2、DHCP服务器将接收到的DHCP请求的Option 82信息与DHCP服务器中预存的信息进行对比,如果找到相应的信息,则DHCP服务器将其中的地址作为一次IP地址加入到DHCP回应中并通过汇聚交换机下发给接入交换机,否则驳回该DHCP请求;步骤3、接入交换机接到返回的DHCP回应后转发给用户终端,如果用户终端通过 802. Ix认证,用户终端的802. Ix模块向DHCP服务器再发送一次DHCP请求,此次的DHCP请求附加有认证后的Option 82信息;步骤4、用户终端的802. Ix认证成功后,DHCP服务器将接收到的DHCP请求中的 OPTION 82信息与DHCP服务器中预存的信息进行对比,如果找到相应的信息,则DHCP服务器分配一个二次IP地址给用户终端;否则驳回此次DHCP请求,用户终端仅能使用一次IP 地址访问网络;步骤5、用户终端利用二次IP地址通过汇聚交换机配置的访问权限访问网络。优选的,所述步骤1中的默认值为将Option 82信息的子选项1设为未认证状态,子选项2设为接入交换机的CPU MAC地址。优选的,所述步骤2中DHCP服务器中预存的信息为在DHCP服务中配置有很多 Option 82,每个不同的Option 82内容下配置相应的地址池,如果用户终端的DHCP请求中 Option 82内容匹配DHCP服务器上其中一个Option 82,则从相应的地址池中分配IP给 DHCP请求。优选的,所述步骤3中接入交换机接到返回的DHCP请求后,剥离并保存其中的 Option 82信息然后转发给用户终端,而用户终端的802. Ix模块再次发送DHCP请求时,接入交换机的DHCP Snooping模块会将保存的认证后的Option 82信息添加到此次的DHCP 请求的Option 82中。优选的,所述步骤3中,接入交换机将一次IP请求成功后的DHCP回应中的IP地址和MAC地址绑定在接入交换机端口上,以防止ARP欺骗,DHCP Snooping模块在获得DHCP ACK包后更新用户访问所有资源的IP地址和ARP的ACL表项。优选的,所述步骤4中,DHCP服务器分配的二次IP地址所依据的DHCP请求中的 Option 82内容由Radius服务器利用Access-Accept报文的沈属性下发给用户终端。优选的,所述步骤5中,汇聚交换机中利用硬件ACL表项配置了二次IP地址网段的访问权限,在用户终端利用二次IP地址访问时,汇聚交换机根据二次IP地址对应的硬件 ACL表项中此二次IP地址所限制的网段控制用户终端的访问权限。优选的,接入交换机的DHCP Snooping模块接到用户的DHCP请求后,在802. Ix认证表项里查询DHCP请求的源MAC是否通过认证,如果用户未通过认证,接入交换机附加未通过标识的Option 82到DHCP请求尾部,对DHCP请求其它部分不作修改而传送到汇聚交换机的DHCP中继代理;如果用户已经通过认证,则取出已认证Option 82放到DHCP请求尾部交给汇聚交换机DHCP中继代理。本发明通常应用于用户使用DHCP方式获取地址的环境中,需要支持基于Option 82进行地址分配策略的DHCP服务器。现有技术中DHCP请求中的0ption82选项一般由 DHCP中继代理在中继DHCP请求时附加。本发明扩展了这一功能,允许接入交换机的DHCP Snooping模块在监听DHCP请求时附加Option 82信息,用户在获取IP地址之前处于受控状态,只能访问DHCP服务器,用户在获取IP地址之后处于安全状态,此时接入交换机转发该用户的IP和ARP报文,由于用户在认证前后能够获得不同地址,在汇聚交换机上配置硬件ACL表项限制不同源IP地址用户能够访问的资源,从而实现认证前后用户终端的访问权限控制。本发明通过用户终端的DHCP申请IP时,在DHCP请求中附加不同的0ption82信息,用户终端认证后,Option 82的内容由Radius服务器下发,因此完全可以在后台为不同用户分配不同的Option 82信息。同时,管理员在DHCP服务器端配置基于Option 82的地址分配策略,用户终端在认证前后将获得不同的IP地址,这个IP地址是经过802. Ix认证和DHCP服务器共同确认的。本发明既利用了 DHCP的方便,又利用了 802. Ix的安全认证机制,提供了一种安全方便的接入方法,同时实现控制用户终端访问权限的目的。


图1为本发明系统的网络连接结构框图;图2为本发明的方法流程示意图。
具体实施例方式下面结合具体图示,进一步阐述本发明。图1为本发明涉及的系统网络连接结构框图,其中用户终端通过接入交换机连入网络,汇聚交换机收集接入交换机的信息向DHCP服务器转发,而Radius服务器对用户终端通过汇聚交换机传来的DHCP请求进行验证。其中一、汇聚交换机1、支持DHCP中继代理;2、配置 ACL:ACLl :permiti pl/maksl dstl/maskl ;ACL2 :permiti p2/mask2 dst2/m£isk2。二、接入交换机1、全局启动 802. Ix ;2、端口使能dotlx,使用基于DHCP 0ption82的接入控制方式;3、启动 DHCP Snooping ;4、启动 DHCP Snooping 绑定功能;5、启用 DHCP Snooping 添加 0ption82 功能。三、客户端(DHCPClient)1、安装 DCN802. Ix 客户端。图2是本发明基于DHCP Option 82的用户接入权限控制方法流程图,如图2所示, 该方法包括如下步骤步骤101 用户终端的系统自带的DHCP Client模块向接入交换机发送DHCP请求, 接入交换机的DHCP Snooping模块在DHCP请求的Option 82中附加默认值,然后通过汇聚交换机向DHCP服务器转送DHCP请求。接入交换机的端口使能802. lx,接入交换机基于DHCP Option 82的接入控制方式设置硬件表项,此时经过接入交换机的所有报文都不能转发,仅能向汇聚交换机转送DHCP请求,在启动接入交换机的DHCP Snooping模块后,用户终端的DHCP报文重定向到接入交换机的CPU,这样用户终端在获取认证IP地址之前,除了能向DHCP服务器发送DHCP请求外,不能访问其他资源。汇聚交换机的DHCP中继模块收到来自接入交换机的DHCP请求后,只负责把DHCP 数据包中继给DHCP服务器,汇聚交换机不能启用DHCP Relay Option 82功能。设定Option 82的两个子选项,其中子选项1为未认证状态;子选项2为存放接入交换机的CPU MAC地址,默认值由网管人员设定,例如DHCPSnooping模块在Option 82 的子选项1中填入字符串“unauth”,子选项2中填入交换机的CPU MAC。步骤102 =DHCP服务器将接收到的DHCP请求的Option 82信息与DHCP服务器中预存的信息进行对比,如果找到相应的信息,则DHCP服务器将其中的地址作为一次IP地址加入到DHCP回应中并通过汇聚交换机下发给接入交换机,否则驳回该DHCP请求。其中,在DHCP服务器中查找相应信息的步骤为在DHCP服务中配置有很多 Option 82,每个不同的Option 82内容下配置相应的地址池,如果用户终端的DHCP请求中 Option 82内容匹配DHCP服务器上其中一个Option 82,则从相应的地址池中分配IP给 DHCP请求,如果没有匹配任一个地址池,则会驳回请求。步骤103 接入交换机接到返回的DHCP回应后转发给用户终端,客户端获得第一次IP地址,用户进行802. Ix认证,如果通过认证,用户终端的802. Ix模块向DHCP服务器再发送一次DHCP请求,此次的DHCP请求附加有认证后的Option 82信息。接入交换机接到返回的DHCP回应后,剥离其中的Option 82信息然后转发给用户终端,而用户终端的802. Ix模块再次发送DHCP请求时,接入交换机的DHCP Snooping模块会将保存的认证后的Option 82信息添加到此次的DHCP请求的Option 82中。该认证后的Option 82内容由!Radius服务器利用!Radius Access-Accept报文的 26属性(厂商属性)通过下发给接入交换机,接入交换机会保存该认证用户的Option 82 选项。接入交换机端口配置基于DHCP Option 82的接入控制模式后,DHCP请求一旦成功,用户终端不需要认证(包括认证后)就能够访问全网资源,此时将认证后的IP地址和 MAC地址绑定在接入交换机端口上,以防止ARP欺骗。DHCPSnooping模块在获得DHCP请求后更新用户访问所有资源的IP地址和ARP的硬件ACL表项。步骤104 用户终端的802. Ix认证成功后,DHCP服务器将接收到的DHCP请求中的OPTION 82信息与DHCP服务器中预存的信息进行对比,如果找到相应的信息,则DHCP服务器分配一个二次IP地址给用户终端;否则驳回此次DHCP请求,用户终端仅能使用一次 IP地址访问网络。如果没有匹配预设的认证用户的地址池,根据DHCP服务器的配置(DHCP服务器可设置一个缺省的地址池)可能会分配一个缺省配置的IP,但这个IP就不是用户终端需要的IP 了。当用户未通过二次认证时只能采用一次IP地址进行网络访问,而此访问则是受汇聚交换机设定的访问权限的限制。步骤105 用户终端利用二次IP地址通过汇聚交换机配置的访问权限访问网络。此时在汇聚交换机中利用硬件ACL表项配置了二次IP地址网段的访问权限,在用户终端利用二次IP地址访问时,汇聚交换机根据二次IP地址对应的硬件ACL表项中此二次IP地址所限制的网段控制用户终端的访问权限。接入交换机的DHCP Snooping模块接到用户的DHCP请求后,在802. Ix认证用户表项里查询DHCP请求的源MAC是否通过认证,如果用户未通过认证,接入交换机附加未通过标识的Option 82到DHCP请求尾部,对DHCP请求其它部分不作修改而传送到汇聚交换机的DHCP中继代理;如果用户已经通过认证,则取出已认证Option 82放到DHCP请求尾部交给汇聚交换机DHCP中继代理。由网管人员配置汇聚交换机中每个IP地址段的硬件ACL表项,以限制不同网段的 IP地址的访问权限,进而实现用户终端在通过认证前后获取不同的访问权限。本方法的工作流程如下用户终端向DHCP服务器发送DHCP请求,接入交换机的 DHCP Snooping模块截获用户的DHCP请求后,查询DHCP请求报文的源MAC是否通过认证, 如果用户未通过认证,交换机附加标识未通过认证的0ption82选项(其中子选项1指示未认证状态,子选项2存放接入交换机的MAC地址)到DHCP请求报文尾部,对DHCP请求报文其它部分不作修改交给汇聚交换机DHCP中继代理。如果用户已经通过802. Ix认证,则取出 Radius服务器通过feidiusAccess-Acc印t报文的洸属性下发的已认证0ption82选项(其中子选项1来自沈属性,子选项2存放接入交换机的MAC地址)放到DHCP请求报文尾部交给汇聚交换机DHCP中继代理,DHCP服务器收到DHCP请求后,根据预先配置的0ption82内容从对应的地址池中分配IP,例如Option 82子选项1为” unauth”,预设的地址池是IPl/ MASK1,接入交换机的DHCP Snooping接到回复的DHCP回应后,提取其中的IP、MAC和端口信息发送给802. Ix模块,DHCP Snooping模块转发该DHCP回应到用户终端,第一次获取IP 的用户即可通过汇聚交换机的硬件ACL表项进行过滤转发,此时接入交换机虽然已经允许该用户的流量通过汇聚交换机,但流量经过汇聚交换机时其IP地址要受硬件ACL表项的限制,即只能访问IP1/MASK1能访问的网段。如果想访问全网段,只有通过再次IP获取才能获得全网段通行的权限。第一次用户认证成功后,接入交换机会保存通过Radius服务器的 RadiusAccess-Accept 艮文的 26 属性(艮口 vendor-type 为 2 的 vendor 属性携带 0ption82 选项)下发Option 82选项,用户终端的802. Ix模块会再次主动发起DHCP请求,接入交换机的DHCP Snooping模块收到该DHCP请求并查询到该用户已经认证后,会附加已经通过认证的Option 82选项到DHCP请求尾部,然后传给汇聚交换机中继给DHCP服务器,DHCP服务器对DHCP请求中的Option 82匹配预设的地址池,如果未匹配,DHCP服务器驳回此次DHCP 请求;如果匹配则由DHCP服务器根据新的Option 82选项为DHCP请求分配另一个IP2/ MASK2网段中的IP地址,然后将DHCP请求通过汇聚交换机传送给接入交换机,接入交换机的DHCP Snooping模块截获到DHCP请求后,提取里面的IP、MAC和端口信息发送给802. Ix 模块(802. Ix控制着每个IP所对应的权限表),802. Ix模块下发用户可访问所有资源的硬件ACL表项,此时接入交换机虽然已经允许该用户的流量通过汇聚交换机,但流量经过汇聚交换机时其IP地址要受硬件ACL表项的限制,比如汇聚交换机ACL这时允许属于网段 IP2/MASK2的IP地址可访问外网,也可访问内网。以上显示和描述了本发明的基本原理、主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。
权利要求
1.一种基于DHCP Option 82的用户接入权限控制方法,其中,客户端通过接入交换机、汇聚交换机与DHCP服务器连接,汇聚交换机连接有Radius服务器,其特征在于,该方法包括如下步骤步骤1、用户终端DHCP模块向接入交换机发送DHCP请求,接入交换机的DHCP Snooping 模块在DHCP请求的Option 82中附加默认值,然后通过汇聚交换机向DHCP服务器转送 DHCP请求;步骤2、DHCP服务器将接收到的DHCP请求的Option 82信息与DHCP服务器中预存的信息进行对比,如果找到相应的信息,则DHCP服务器将其中的地址作为一次IP地址加入到 DHCP回应中,并通过汇聚交换机下发给接入交换机,否则驳回该DHCP请求;步骤3、接入交换机接到返回的DHCP回应后转发给用户终端,用户终端获取一次IP,用户终端发起802. Ix认证,如果认证成功,用户终端的802. Ix模块向DHCP服务器再发送一次DHCP请求,此次的DHCP请求附加有认证后的Option 82信息;步骤4、用户终端的802. Ix认证成功后,DHCP服务器将接收到的DHCP请求中的OPTION 82信息与DHCP服务器中预存的信息进行对比,如果找到相应的信息,则DHCP服务器分配一个二次IP地址给用户终端;否则驳回此次DHCP请求,用户终端仅能使用一次IP地址访问网络;步骤5、用户终端利用二次IP地址通过汇聚交换机配置的访问权限访问网络。
2.如权利要求1所述的一种基于DHCP0ption82的用户接入权限控制方法,其特征在于,所述步骤1中的默认值为将Option 82信息的子选项1设为未认证状态,子选项2设为接入交换机的CPU MAC地址。
3.如权利要求1所述的一种基于DHCP0ption82的用户接入权限控制方法,其特征在于,所述步骤2中DHCP服务器中预存的信息为在DHCP服务中配置有很多Option 82,每个不同的Option 82内容下配置相应的地址池,如果用户终端的DHCP请求中Option 82内容匹配DHCP服务器的其中一个Option 82,则从相应的地址池中分配IP给DHCP请求。
4.如权利要求1所述的一种基于DHCP0ption82的用户接入权限控制方法,其特征在于,所述步骤3中接入交换机接到返回的DHCP回应后,剥离其中的Option 82信息,然后转发给用户终端。用户终端认证通过后的Option 82由Radius服务器利用Access-Accept 报文的26属性下发给接入交换机保存,而用户终端的802. Ix模块再次发送DHCP请求时, 接入交换机的DHCP Snooping模块会将保存的认证后的Option 82信息添加到此次的DHCP 请求的Option 82中。
5.如权利要求1所述的一种基于DHCP0ption82的用户接入权限控制方法,其特征在于,所述步骤3中,接入交换机将一次认证成功后的DHCP请求中的IP地址和MAC地址绑定在接入交换机端口上,以防止ARP欺骗,DHCP Snooping模块在获得DHCP ACK包后更新用户访问所有资源的IP地址和ARP的ACL表项。
6.如权利要求1所述的一种基于DHCP0ption82的用户接入权限控制方法,其特征在于,所述步骤4中,DHCP服务器分配的二次IP地址由DHCP服务器根据DHCP请求中Option 82选择相应的地址池,从中分配给用户终端。
7.如权利要求1所述的一种基于DHCP0ption82的用户接入权限控制方法,其特征在于,所述步骤5中,汇聚交换机中利用硬件ACL表项配置二次IP地址网段的访问权限,在用户终端利用二次IP地址访问时,汇聚交换机根据二次IP地址对应的硬件ACL表项中此二次IP地址所限制的网段,控制用户终端的访问权限。
8.如权利要求7所述的一种基于DHCP 0ption82的用户接入权限控制方法,其特征在于,接入交换机的DHCP Snooping模块接到用户的DHCP请求后,在802. Ix认证表项里查询DHCP请求的源MAC是否通过认证,如果用户未通过认证,接入交换机附加未通过标识到 DHCP请求尾部,对DHCP请求其它部分不作修改而传送到汇聚交换机的DHCP中继代理;如果用户已经通过认证,则取出已认证Option 82放到DHCP请求尾部,交给汇聚交换机DHCP中继代理。
全文摘要
本发明公开一种基于DHCP Option 82的用户接入权限控制方法,属于计算机数据通信领域。本发明利用DHCP Snooping模块在监听用户终端DHCP请求时附加Option 82信息,当用户终端在获取地址成功并且认证通过后,则由Radius服务器下发该用户的Option 82认证信息,用户终端认证成功后,802.1x会重新申请一次地址,DHCP Snooping模块在DHCP请求中附加认证后的Option 82信息,DHCP服务器会根据这个Option 82信息给用户分配另一个地址,汇聚交换机上配置有硬件ACL表项,限制了不同源IP地址用户能够访问的资源,从而实现认证前后用户终端的访问权限控制。
文档编号H04L29/06GK102255918SQ20111024069
公开日2011年11月23日 申请日期2011年8月22日 优先权日2011年8月22日
发明者梁小冰 申请人:神州数码网络(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1