一种地址的管理方法和设备的制作方法

文档序号:7680303阅读:127来源:国知局
专利名称:一种地址的管理方法和设备的制作方法
技术领域
本发明涉及通信技术领域,特别是涉及一种地址的管理方法和设备。
背景技术
DHCP (Dynamic Host Configuration Protocol,动态主机配置协议)是一种动态分配IP地址的方法,如图1所示的DHCP组网示意图,每个局域网中设置有一台DHCP ServeH服务器),各DHCP Client (客户端,即主机)通过DHCP服务器申请IP地址。如图2所示的DHCP报文交互示意图,IP地址的申请过程由DHCP客户端发起, 通过DHCP_DISC0VER(发现)报文寻找合适的DHCP服务器,若DHCP服务器存在可分配的 IP地址,则会回复DHCP_0FFER(提供)报文,DHCP客户端针对此DHCP服务器的地址发送 DHCP-REQUEST (请求)报文,由DHCP服务器回应DHCP-ACK (确认)报文,以完成IP地址的申请过程。需要注意的是,DHCP服务器分配IP地址时,需要为每个IP地址建立地址租约,每条租约状态迁移的情况如图3所示,地址租约在发送DHCP-0FFER报文之后由Empty (空) 状态变为Offered(提供)状态,表示提供给DHCP客户端但未最终确认;在发送DHCP-ACK 报文之后由Offered状态变为CommittecK已分配)状态,表示地址正式分配成功。现有技术中,在存在攻击者的情况下,由于DHCP服务器根据MAC(MediaAccess Control,介质访问控制)地址来识别不同DHCP客户端,则攻击者只需要知道DHCP服务器的IP地址和地址池网段,即可伪造出多组成对的DHCPDISC0VER报文和DHCP-REQUEST报文,并使其中的MAC地址递增或随机产生,广播到DHCP服务器,之后DHCP服务器会给这样的MAC地址分配IP地址,从而使攻击者达到冒领IP地址,耗尽地址池的目的。

发明内容
本发明提供一种地址的管理方法和设备,以尽快回收为攻击者分配的IP地址。为了达到上述目的,本发明提供一种地址的管理方法,应用于包括DHCP客户端、 接入设备和DHCP服务器的系统中,所述DHCP服务器为所述DHCP客户端分配地址,并将所述地址通过所述接入设备通知给所述DHCP客户端,该方法包括以下步骤所述接入设备监听到所述DHCP服务器向DHCP客户端发送的携带所述地址的第一报文时,从所述第一报文中获取所述地址,并获取向DHCP客户端发送所述第一报文的端口信息,以及维护记录有所述端口信息和所述地址的DHCP安全表;当在预设第一周期内所述DHCP安全表中对应同一个端口的地址数量超过预设第一阈值时,所述接入设备向所述DHCP服务器发送请求回收地址的第二报文,所述第二报文中携带对应所述端口的地址信息,由所述DHCP服务器回收对应所述端口的地址。所述接入设备维护记录有所述端口信息和所述地址的DHCP安全表,之后还包括当在预设第一周期内所述DHCP安全表中对应同一个端口的地址数量没有超过预设第一阈值时,所述接入设备监听所述DHCP安全表中对应所述端口的各地址的流量;
如果在预设第二周期内没有接收到对应所述端口的各地址的流量,所述接入设备向所述DHCP服务器发送所述第二报文。所述接入设备监听所述DHCP安全表中对应所述端口的各地址的流量,之后还包括如果在预设第二周期内接收到对应所述端口的各地址的流量,所述接入设备在所述DHCP安全表中删除所述端口与对应所述端口的各地址的记录。所述接入设备维护记录有所述端口信息和所述地址的DHCP安全表,之后还包括当在预设第一周期内所述DHCP安全表中对应同一个端口的地址数量小于预设第二阈值时,所述接入设备确定对应所述端口的地址为合法地址;当在预设第一周期内所述DHCP安全表中对应同一个端口的地址数量大于预设第二阈值且小于预设第一阈值时,所述接入设备向对应所述端口的地址发起探测;如果接收到探测响应,则确定对应所述端口的地址为合法地址;其中,预设第二阈值小于预设第一阈值。所述接入设备向对应所述端口的地址发起探测,之后还包括如果没有接收到探测响应,则所述接入设备监听对应所述端口的地址的流量;如果在预设第三周期内接收到对应所述端口的地址的流量,则确定对应所述端口的地址为合法地址;否则,所述接入设备向所述DHCP服务器发送所述第二报文。所述接入设备向所述DHCP服务器发送请求回收地址的第二报文,之后还包括
所述接入设备阻塞所述端口,并通过网管系统或日志系统记录所述端口下存在攻击者的信息。一种接入设备,应用于包括DHCP客户端、所述接入设备和DHCP服务器的系统中, 所述DHCP服务器为所述DHCP客户端分配地址,并将所述地址通过所述接入设备通知给所述DHCP客户端,所述接入设备包括监听模块,用于监听所述DHCP服务器向DHCP客户端发送的携带所述地址的第一报文;获取模块,用于从所述第一报文中获取所述地址,并获取向DHCP客户端发送所述第一报文的端口信息;维护模块,用于维护记录有所述端口信息和所述地址的DHCP安全表;发送模块,用于当在预设第一周期内所述DHCP安全表中对应同一个端口的地址数量超过预设第一阈值时,向所述DHCP服务器发送请求回收地址的第二报文,所述第二报文中携带对应所述端口的地址信息。所述监听模块,还用于当在预设第一周期内所述DHCP安全表中对应同一个端口的地址数量没有超过预设第一阈值时,监听所述DHCP安全表中对应所述端口的各地址的
流量;所述发送模块,还用于如果在预设第二周期内没有接收到对应所述端口的各地址的流量,则向所述DHCP服务器发送所述第二报文。所述维护模块,还用于如果在预设第二周期内接收到对应所述端口的各地址的流量,则在所述DHCP安全表中删除所述端口与对应所述端口的各地址的记录。还包括确定模块,用于当在预设第一周期内所述DHCP安全表中对应同一个端口的地址数量小于预设第二阈值时,确定对应所述端口的地址为合法地址;当在预设第一周期内所述DHCP安全表中对应同一个端口的地址数量大于预设第二阈值且小于预设第一阈值时,向对应所述端口的地址发起探测;如果接收到探测响应,则确定对应所述端口的地址为合法地址;其中,预设第二阈值小于预设第一阈值。所述监听模块,还用于如果没有接收到探测响应,则监听对应所述端口的地址的流量;所述确定模块,还用于如果在预设第三周期内接收到对应所述端口的地址的流量,则确定对应所述端口的地址为合法地址;所述发送模块,还用于如果在预设第三周期内没有接收到对应所述端口的地址的流量,则向所述DHCP服务器发送所述第二报文。还包括处理模块,用于阻塞所述端口,并通过网管系统或日志系统记录所述端口下存在攻击者的信息。与现有技术相比,本发明至少具有以下优点在DHCP服务器分配IP地址后,通过监听对应同一个端口的IP地址的数量,从而可确定该端口下的DHCP客户端是否为攻击者,如果是攻击者,则回收为DHCP客户端分配的 IP地址,否则,允许DHCP客户端继续使用分配的IP地址;从而能够有效识别出伪造的DHCP 客户端,找出攻击DHCP地址池资源的攻击者,并回收为攻击者分发的IP地址,有效的阻止了对DHCP地址池资源的攻击,并避免DHCP服务器上IP地址的耗尽。


图1是现有技术中的DHCP组网示意图;图2是现有技术中的DHCP报文交互示意图;图3是现有技术中的租约状态迁移的情况示意图;图4是本发明所采用的应用场景示意图;图5是本发明基于图4所示的应用场景所提供的一种地址的分配方法流程图;图6是本发明提出的一种接入设备结构图。
具体实施例方式本发明提出一种地址的管理方法,应用于包括DHCP客户端、接入设备和DHCP服务器的系统中,下面结合附图,对本发明具体实施方式
进行详细说明。以图4为参考网络模型图,接入设备的端口 Pl下为攻击者(将自身伪造为DHCP客户端申请IP地址),接入设备的端口 P2下为DHCP客户端。DHCP服务器用于为DHCP客户端分配地址,并将该地址通过接入设备通知给DHCP 客户端,针对地址的分配过程,可采用图2所示的地址分配流程,即通过DHCP-0FFER报文携带该地址,并通知给DHCP客户端。需要注意的是,在DHCP客户端发送DHCP-DISC0VER报文时,为广播报文,目的MAC 地址填充ffff. ffff. fffT,DHCP服务器回应DHCP-0FFER报文时,可采用单播或广播方式来回应,如果DHCP-DISC0VER报文中的flags字段(即广播响应标识位)为1,则以广播方式回应DHCP-0FFER报文,如果为0,则以单播方式回应DHCP-0FFER报文。
本发明中,通过将DHCP-DISC0VER报文中的flags字段设置为0,使得以单播方式回应DHCP-0FFER报文,目的MAC地址为DHCP-DISC0VER报文中的源MAC地址。因此,当接收到DHCP-0FFER报文后,接入设备将采用单播方式将DHCP-0FFER报文发送给对应的DHCP 客户端。例如,通过端口 Pl接收到来自DHCP客户端的DHCP-DISC0VER报文时,可维护DHCP 客户端的MAC地址及端口 Pl的对应关系,在接收到来自DHCP服务器的DHCP-0FFER报文后, 以单播方式通过端口 Pl将DHCP-0FFER报文发送给DHCP客户端。本发明中,通过部署DHCP安全代理可找到DHCP攻击者,该DHCP安全代理可部署在最接近DHCP客户端的网络设备上。为了方便描述,以网络设备为图4中的接入设备(如接入层交换机)为例,则接入设备的端口 Pl和端口 P2下直接连接有DHCP客户端。当在接入设备上启动DHCP安全代理特性后,如图5所示,该方法包括以下步骤步骤501,在DHCP服务器为DHCP客户端分配了地址后,接入设备监听携带该地址的第一报文(即DHCP-0FFER报文)。步骤502,当监听到DHCP-0FFER报文时,接入设备从该DHCP-0FFER报文中获取为 DHCP客户端所分配的地址,以及向DHCP客户端发送该DHCP-0FFER报文的端口信息(如端
口号)。步骤503,接入设备维护记录有端口信息和地址的DHCP安全表,如表1和表2所示的DHCP安全表的示意情况。表 权利要求
1.一种地址的管理方法,应用于包括DHCP客户端、接入设备和DHCP服务器的系统中, 所述DHCP服务器为所述DHCP客户端分配地址,并将所述地址通过所述接入设备通知给所述DHCP客户端,其特征在于,该方法包括以下步骤所述接入设备监听到所述DHCP服务器向DHCP客户端发送的携带所述地址的第一报文时,从所述第一报文中获取所述地址,并获取向DHCP客户端发送所述第一报文的端口信息,以及维护记录有所述端口信息和所述地址的DHCP安全表;当在预设第一周期内所述DHCP安全表中对应同一个端口的地址数量超过预设第一阈值时,所述接入设备向所述DHCP服务器发送请求回收地址的第二报文,所述第二报文中携带对应所述端口的地址信息,由所述DHCP服务器回收对应所述端口的地址。
2.如权利要求1所述的方法,其特征在于,所述接入设备维护记录有所述端口信息和所述地址的DHCP安全表,之后还包括当在预设第一周期内所述DHCP安全表中对应同一个端口的地址数量没有超过预设第一阈值时,所述接入设备监听所述DHCP安全表中对应所述端口的各地址的流量;如果在预设第二周期内没有接收到对应所述端口的各地址的流量,所述接入设备向所述DHCP服务器发送所述第二报文。
3.如权利要求2所述的方法,其特征在于,所述接入设备监听所述DHCP安全表中对应所述端口的各地址的流量,之后还包括如果在预设第二周期内接收到对应所述端口的各地址的流量,所述接入设备在所述 DHCP安全表中删除所述端口与对应所述端口的各地址的记录。
4.如权利要求1所述的方法,其特征在于,所述接入设备维护记录有所述端口信息和所述地址的DHCP安全表,之后还包括当在预设第一周期内所述DHCP安全表中对应同一个端口的地址数量小于预设第二阈值时,所述接入设备确定对应所述端口的地址为合法地址;当在预设第一周期内所述DHCP安全表中对应同一个端口的地址数量大于预设第二阈值且小于预设第一阈值时,所述接入设备向对应所述端口的地址发起探测;如果接收到探测响应,则确定对应所述端口的地址为合法地址;其中,预设第二阈值小于预设第一阈值。
5.如权利要求4所述的方法,其特征在于,所述接入设备向对应所述端口的地址发起探测,之后还包括如果没有接收到探测响应,则所述接入设备监听对应所述端口的地址的流量;如果在预设第三周期内接收到对应所述端口的地址的流量,则确定对应所述端口的地址为合法地址;否则,所述接入设备向所述DHCP服务器发送所述第二报文。
6.如权利要求1-5任一项所述的方法,其特征在于,所述接入设备向所述DHCP服务器发送请求回收地址的第二报文,之后还包括所述接入设备阻塞所述端口,并通过网管系统或日志系统记录所述端口下存在攻击者的信息。
7.一种接入设备,应用于包括DHCP客户端、所述接入设备和DHCP服务器的系统中,所述DHCP服务器为所述DHCP客户端分配地址,并将所述地址通过所述接入设备通知给所述 DHCP客户端,其特征在于,所述接入设备包括监听模块,用于监听所述DHCP服务器向DHCP客户端发送的携带所述地址的第一报文;获取模块,用于从所述第一报文中获取所述地址,并获取向DHCP客户端发送所述第一报文的端口信息;维护模块,用于维护记录有所述端口信息和所述地址的DHCP安全表;发送模块,用于当在预设第一周期内所述DHCP安全表中对应同一个端口的地址数量超过预设第一阈值时,向所述DHCP服务器发送请求回收地址的第二报文,所述第二报文中携带对应所述端口的地址信息。
8.如权利要求7所述的接入设备,其特征在于,所述监听模块,还用于当在预设第一周期内所述DHCP安全表中对应同一个端口的地址数量没有超过预设第一阈值时,监听所述DHCP安全表中对应所述端口的各地址的流量;所述发送模块,还用于如果在预设第二周期内没有接收到对应所述端口的各地址的流量,则向所述DHCP服务器发送所述第二报文。
9.如权利要求8所述的接入设备,其特征在于,所述维护模块,还用于如果在预设第二周期内接收到对应所述端口的各地址的流量, 则在所述DHCP安全表中删除所述端口与对应所述端口的各地址的记录。
10.如权利要求7所述的接入设备,其特征在于,还包括确定模块,用于当在预设第一周期内所述DHCP安全表中对应同一个端口的地址数量小于预设第二阈值时,确定对应所述端口的地址为合法地址;当在预设第一周期内所述DHCP安全表中对应同一个端口的地址数量大于预设第二阈值且小于预设第一阈值时,向对应所述端口的地址发起探测;如果接收到探测响应,则确定对应所述端口的地址为合法地址;其中,预设第二阈值小于预设第一阈值。
11.如权利要求10所述的接入设备,其特征在于,所述监听模块,还用于如果没有接收到探测响应,则监听对应所述端口的地址的流量;所述确定模块,还用于如果在预设第三周期内接收到对应所述端口的地址的流量,则确定对应所述端口的地址为合法地址;所述发送模块,还用于如果在预设第三周期内没有接收到对应所述端口的地址的流量,则向所述DHCP服务器发送所述第二报文。
12.如权利要求7-11任一项所述的接入设备,其特征在于,还包括处理模块,用于阻塞所述端口,并通过网管系统或日志系统记录所述端口下存在攻击者的信息。
全文摘要
本发明公开了一种地址的管理方法和设备,该方法包括接入设备从第一报文中获取地址,并获取向DHCP客户端发送所述第一报文的端口信息,以及维护记录有所述端口信息和所述地址的DHCP安全表;当所述DHCP安全表中对应同一个端口的地址数量超过预设第一阈值时,所述接入设备向所述DHCP服务器发送请求回收地址的第二报文,所述第二报文中携带对应所述端口的地址信息。本发明中,能够有效识别出伪造的DHCP客户端,避免DHCP服务器上IP地址的耗尽。
文档编号H04L29/12GK102185724SQ20111014210
公开日2011年9月14日 申请日期2011年5月30日 优先权日2011年5月30日
发明者周迪, 顾雷雷 申请人:杭州华三通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1