Ip地址回收方法及系统、dhcp中继器、dhcp服务器的制作方法

文档序号:7718524阅读:867来源:国知局

专利名称::Ip地址回收方法及系统、dhcp中继器、dhcp服务器的制作方法
技术领域
:本发明涉及通信
技术领域
,特别涉及一种IP地址回收方法及系统、DHCP中继器、DHCP服务器。
背景技术
:目前,随着网络的不断普及,互联网用户不断增长,越来越多使用动态主机配置协议(DHCP,DynamicHostConfigureProtocol)服务器(Server)给网络客户端分配动态的IP地址。其中,当DHCP服务器与DHCP客户端不在同一个网段时,需要在DHCP客户端同一个网段内配置一个DHCP中继(Relay)设备,DHCP服务器通过该中继设备给DHCP客户端分配IP地址。DHCP服务器除了为客户端动态分配IP地址,还能够下发其他如租约信息、网关、域名系统(DNS,DomainNameSystem)等参数信息。当一个客户端通过DHCP服务器获取到IP地址后,若直接关机下电或是拔掉网线,此时该DHCP服务器无法获知该IP地址已经释放,只有等待租约时间过期后才能将该IP地址回收重新分配。这样,将造成DHCPServer的DHCP地址池中已分配的IP地址不能及时回收,最后有可能DHCP地址池中可分配的IP地址不足。中国申请号为200610125734.8、公开号为CN1941722A的专利申请公开了一种通过探测客户端维护DHCP安全特性表的方法与装置,在中继器上通过窥探DHCP客户端和DHCP服务器之间的DHCP报文来创建并维护安全特性表,该安全特性表中含有关于通过DHCP服务器获取IP地址的用户信息;中继器对该安全特性表的所有表项进行周期性轮询,探测客户端在线情况,对于探测到的实际未在线的客户端,中继器通知DHCP服务器释放该客户端的IP地址。上述专利申请虽然能够回收IP地址,但是在实现本发明的过程中发明人发现现有技术的缺陷在于中继设备通过窥探DHCP客户端和DHCP服务器之间的报文并提取报文中的关键字段创建安全特性表,因此,中继设备负荷较大;此外,该中继设备需要对该安全特性表中相应的表项进行周期性探测,因此,当安全特性表中存在大量用户信息时,对表中所有用户进行逐一探测会进一步增加该中继设备的负荷。当存在客户端恶意创建大量虚拟用户进行DHCP申请时,中继设备需要针对表中每一个不存在的DHCP用户进行检测,并构造DHCPRelease报文通知DHCP服务器,这样加大了中继设备的负荷;并且,同一时间内构造并发送大量DHCPRelease报文将会使得设备处于高负荷状态。在安全特性表表项庞大的情况下,将导致中继设备遍历安全特性表的周期过长,或者一次性触发大量用户探测导致中继设备压力过大。若为了减缓压力增长遍历周期,就会令安全特性表的实时性不足,同时使得DHCP地址池有效期的实时性不足。
发明内容本发明实施例提供一种IP地址回收方法及系统、DHCP中继器、DHCP服务器。DHCP6中继器通过接收DHCP服务器发送的地址分配表确定不在线的客户端以生成相应的地址释放表,可降低DHCP中继器的负荷,可在受到DHCP攻击时不会因为同时产生大量的报文而使设备处于高负荷状态。本发明实施例提供一种IP地址回收方法,该方法包括DHCP中继器接收DHCP服务器发送的地址分配表,该地址分配表包括该DHCP服务器通过该DHCP中继器分配的IP地址、以及该IP地址对应的客户端地址;确定该地址分配表中IP地址对应的客户端是否在线;将不在线的客户端对应的IP地址、或者IP地址和该IP地址对应的客户端地址进行记录,以生成地址释放表;将生成的地址释放表发送给该DHCP服务器。本发明实施例提供一种IP地址回收方法,该方法包括DHCP服务器根据申请IP地址的客户端所属的DHCP中继器的标识信息生成该DHCP中继器对应的地址分配表;该地址分配表包括该DHCP服务器通过该DHCP中继器分配的IP地址、以及该IP地址对应的客户端地址;发送该地址分配表至该DHCP中继器;接收DHCP中继器返回的根据地址分配表生成的地址释放表,该地址释放表包括待释放的IP地址、或者待释放的IP地址和该待释放的IP地址对应的客户端地址;根据该地址释放表释放相应的IP地址。本发明实施例提供一种DHCP中继器,其特征在于,该DHCP中继器包括第一接收单元,用于接收DHCP服务器发送的地址分配表,该地址分配表包括该DHCP服务器通过该DHCP中继器分配的IP地址、以及该IP地址对应的客户端地址;在线确定单元,与该第一接收单元连接,用于确定该地址分配表中所述IP地址对应的客户端是否在线;地址记录单元,与所述在线确定单元连接,用于将所述在线确定单元确定的不在线的客户端对应的IP地址、或者IP地址和所述IP地址对应的客户端地址进行记录,以生成地址释放表;第一发送单元,与所述地址记录单元连接,用于将生成的所述地址释放表发送给所述DHCP服务器。本发明实施例提供一种DHCP服务器,该DHCP服务器包括信息生成单元,用于根据申请IP地址的客户端所属的DHCP中继器的标识信息生成该DHCP中继器对应的地址分配表;该地址分配表包括DHCP服务器通过DHCP中继器分配的IP地址、以及该IP地址对应的客户端地址;第二发送单元,与该信息生成单元连接,用于向DHCP中继器发送地址分配表;第二接收单元,用于接收DHCP中继器返回的根据地址分配表生成的地址释放表,该地址释放表包括待释放的IP地址、或者待释放的IP地址和该待释放的IP地址对应的客户端地址;地址回收单元,用于根据该第二接收单元接收的地址释放表释放相应的IP地址。本发明实施例的有益效果在于,DHCP中继器通过接收DHCP服务器发送的地址分配表确定不在线的客户端以生成相应的地址释放表,可降低DHCP中继器的负荷,可在受到DHCP攻击时不会因为同时产生大量的报文而使设备处于高负荷状态。此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,并不构成对本发明的限定。在附图中图1是本发明实施例1的IP地址回收方法的流程图;图2是本发明实施例2的IP地址回收方法的流程图;图3是本发明实施例3的IP地址回收方法的流程图;图4是本发明实施例3的确定是否在线方法的流程图;图5是本发明实施例3的实例的拓扑构成图;图6是本发明实施例4的DHCP中继器的构成图;图7是本发明实施例5的在线确定单元的构成图;图8是本发明实施例6的DHCP服务器的构成图;图9是本发明实施例7的DHCP服务器的构成图;图10是本发明实施例8的IP地址回收系统的构成图。具体实施例方式为使本发明的目的、技术方案和优点更加清楚明白,下面结合附图对本发明实施例作进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。实施例1本发明实施例提供一种IP地址回收方法,如图1所示,该方法包括步骤101,DHCP中继器接收DHCP服务器发送的地址分配表,该地址分配表包括DHCP服务器通过DHCP中继器分配的IP地址、以及IP地址对应的客户端地址;步骤102,DHCP中继器确定该地址分配表中IP地址对应的客户端是否在线;步骤103,DHCP中继器将不在线的客户端对应的IP地址、或者IP地址和该IP地址对应的客户端地址进行记录,以生成地址释放表;步骤104,DHCP中继器将生成的该地址释放表发送给DHCP服务器。在本实施例中,该地址分配表可包括一个或一个以上表项。其中,该客户端地址可为该客户端的介质访问控制(MAC,MediaAccessControl)地址,以标识该客户端。在本实施例中,DHCP中继器可依次选取该地址分配表中的一个IP地址,若确定该IP地址对应的客户端不在线,则该DHCP中继器将该IP地址、或者该IP地址和该IP地址对应的客户端地址进行记录,来生成地址释放表。由上述实施例可知,DHCP中继器通过接收DHCP服务器发送的地址分配表确定不在线的客户端以生成相应的地址释放表,不需要窥探DHCP客户端和DHCP服务器之间的报文并提取报文中的关键字段创建相应的表项,也不需要对所有IP地址进行周期性轮询,因此,可降低DHCP中继器的负荷,增加IP地址的实时性,并且在受到DHCP攻击时不会因为同时产生大量的报文而使设备处于高负荷状态。实施例2本发明实施例提供一种IP地址回收方法,如图2所示,该方法包括步骤201,DHCP服务器根据申请IP地址的客户端所属的DHCP中继器的标识信息生成该DHCP中继器对应的地址分配表;该地址分配表包含通过该DHCP中继器分配的IP地址、以及IP地址对应的客户端地址;步骤202,DHCP服务器发送地址分配表至该DHCP中继器;步骤203,DHCP服务器接收该DHCP中继器返回的根据该地址分配表生成的地址释放表,该地址释放表包括待释放的IP地址、或者待释放的IP地址和所述待释放的IP地址对应的客户端地址;步骤204,DHCP服务器根据该地址释放表释放相应的IP地址。在本实施例中,当客户端通过DHCP中继器向DHCP服务器申请IP地址时,DHCP服务器通过DHCP中继器为DHCP客户端分配IP地址,并且记录已分配的IP地址、以及申请该IP地址的DHCP中继器的标识信息和该DHCP客户端的地址。这样,在本实施例中,当DHCP服务器接收到生成地址分配表的指令或者DHCP服务器确定到达预设地址更新时间时,可根据DHCP中继器的标识信息提取通过该DHCP中继器分配的IP地址,以及每个IP地址对应的客户端地址,来生成该DHCP中继器对应的地址分配表。因此,对于没有为其所属区域的客户端申请IP地址的DHCP中继器来讲,不需要生成地址分配表,可减小DHCP服务器的负荷。此外,在DHCP服务器存在大量已分配IP地址的情况下,不需同时检测这些IP地址,而是针对不同的DHCP中继器生成相应的地址分配表,因此,避免了DHCP服务器负载突然激增的情况发生。在本实施例中,DHCP服务器在接收到DHCP中继器返回的地址释放表后,可根据地址该释放表释放相应的IP地址,以及时地回收未使用的IP地址。由上述实施例可知,通过DHCP服务器生成DHCP中继器对应的地址分配表,可降低DHCP中继器的负荷;通过接收DHCP中继器返回的地址释放表,可及时地根据该地址释放表回收未使用的IP地址,增加了DHCP服务器地址池中IP地址的实时性。实施例3本发明实施例提供一种IP地址回收方法,以下结合附图3、4、5对该过程进行详细说明。如图3所示,该方法包括步骤301,当客户端通过DHCP中继器向DHCP服务器申请IP地址时,DHCP服务器通过DHCP中继器为DHCP客户端分配IP地址,DHCP服务器记录该DHCP中继器的标识信息、为客户端分配的IP地址和该IP地址对应的客户端的地址;在本实施例中,该DHCP中继器的标识信息可为该DHCP中继器的IP地址,或者为该DHCP中继器的名称等信息;该客户端的地址可为客户端的MAC地址,但不限于此,还可为其他标识客户端的信息;在本实施例中,DHCP服务器除了记录已分配的IP地址和该IP地址对应的客户端地址、DHCP中继器的标识信息外,还可记录其它信息,例如,该IP地址的租期(LeaseExpiration)、客户端标识符(ClientIdentifier)、类型(Type)、地址更新时间(RefreshTime)等信息,如表l所示。其中,类型是指分配地址的方式,可包括静态分配的方式和自动分配的方式;地址更新时间表示触发DHCP服务器生成地址分配表的时间。如表1所示,为DHCP服务器记录的相关信息。表1<table>tableseeoriginaldocumentpage10</column></row><table>步骤302,DHCP服务器确定是否已设置该DHCP中继器对应的地址更新时间,若未设置则执行步骤303;若设置则执行步骤304。步骤303,在步骤302中若未设置该DHCP中继器对应的地址更新时间,则该DHCP服务器对该DHCP中继器对应的地址更新时间进行设置;其中,该DHCP服务器可通过定时器设置该地址更新时间,例如,设置为15分钟;在本实施例中,若在该地址更新时间内,还存在要记录的该DHCP中继器对应的已分配的IP地址和该IP地址对应的客户端地址时,不需再设置该地址更新时间。步骤304,若DHCP服务器确定到达地址更新时间,则根据申请IP地址的客户端所属的DHCP中继器的标识信息生成该DHCP中继器对应的地址分配表;该地址分配表包括该DHCP服务器通过该DHCP中继器分配的IP地址、以及所述IP地址对应的客户端地址;如表2所示,为该DHCP中继器对应的地址分配表。表2<table>tableseeoriginaldocumentpage10</column></row><table>在本实施例中,由于设置每个DHCP中继器对应的地址更新时间的时刻不同,当DHCP服务器中存在通过不同的、大量的DHCP中继器所申请的IP地址时,不会同一时间生成这些DHCP中继器对应的地址分配表,避免了DHCP地址更新时段内DHCP服务器的负载突然激增的情况。并且,对于没有为其所属区域的客户端申请IP地址的DHCP中继器来讲,不需要生成地址分配表,可减小DHCP服务器的负荷。步骤305,DHCP服务器将地址分配表发送至相应的DHCP中继器;在本实施例中,可通过DHCP信息报文来发送地址分配表。步骤306,DHCP中继器接收该DHCP服务器发送的地址分配表;在本实施例中,DHCP中继器可在收到DHCP信息报文后,对该DHCP信息报文进行解析,提取出DHCP服务器下发的该DHCP中继器对应的地址分配表。步骤307,DHCP中继器确定该地址分配表中IP地址对应的客户端是否在线;在本实施例中,确定IP地址对应的客户端是否在线可采用多种方式,可通过将该地址分配表与该DHCP中继器的地址解析协议ARP表进行比对来实现。但不限于此,还可根据实际情况采用其他的方式。步骤308,DHCP中继器将不在线的客户端对应的IP地址、或者该IP地址和该IP地址对应的客户端地址进行记录,以生成地址释放表;在本实施例中,该地址释放表的每一个表项包括待释放的IP地址;或者包括待释放的IP地址以及该IP地址对应的客户端地址。步骤309,DHCP中继器将生成的地址释放表向DHCP服务器发送;在本实施例中,DHCP中继器可通过DHCP信息响应报文发送给DHCP服务器。步骤310,DHCP服务器根据地址释放表回收相应的IP地址;在本实施例中,DHCP服务器接收到DHCP信息响应报文后,可从该DHCP信息响应报文中提取出地址释放表,DHCP服务器将该地址释放表中记录的IP地址释放并重新置为可分配状态。在步骤307中,DHCP中继器对地址分配表中的表项可逐一进行探测,以确定IP地址对应的客户端是否在线。以下结合图4,以将地址分配表与DHCP中继器的地址解析协议ARP表进行比对的方式为例,对步骤307进行详细说明。如图4所示,该过程包括步骤401,DHCP中继器从地址分配表中选取一个IP地址。步骤402,DHCP中继器确定该IP地址是否存在于ARP表中,若该IP地址存在于该DHCP中继器的ARP表中,则执行步骤403;若该IP地址不存在于该DHCP中继器的ARP表中,则执行步骤404。步骤403,在步骤402中确定该IP地址存在于该DHCP中继器的ARP表中时,DHCP中继器进一步确定该IP地址在该ARP表中对应的客户端地址是否与该IP地址在该地址分配表中对应的客户端地址相同;若相同,则执行步骤408,重新选取地址分配表中的一个待探测的IP地址;若不相同,则执行步骤404。步骤404,DHCP中继器对该IP地址发出地址解析协议ARP请求报文;在本实施例中,DHCP中继器可发送目的地址为该IP地址的地址解析协议ARP请求报文,但不限于此,可根据实际情况采用其他探测方式,例如,发送因特网信息控制协议ICMP请求报文进行探测。步骤405,DHCP中继器确定在预设时间内是否收到根据该地址解析协议ARP请求报文返回的地址解析协议ARP应答报文,若在预设时间内未收到根据该地址解析协议ARP请求报文返回的地址解析协议ARP应答报文,则执行步骤407;若在预设时间内收到根据该地址解析协议ARP请求报文返回的地址解析协议ARP应答报文,则执行步骤406。步骤406,在步骤405中确定在预设时间内收到根据该地址解析协议ARP请求报文返回的地址解析协议ARP应答报文后,DHCP中继器确定该地址解析协议ARP应答报文携带IP地址对应的客户端地址是否与该IP地址在该地址分配表中对应的客户端地址相同;若相同,则执行步骤408,若不相同,则执行步骤407。步骤407,DHCP中继器确定该IP地址不在线。步骤408,DHCP中继器确定该地址分配表中是否还存在待探测的IP地址,若确定还存在待探测的IP地址,则执行步骤401,重新选取地址分配表中的一个待探测的IP地址;否则该探测过程结束。在本实施例中,在步骤404中发送ARP请求报文后,若在预设时间内收到根据该地址解析协议ARP请求报文返回的地址解析协议ARP应答报文,则DHCP中继器可将该地址解析协议ARP应答报文携带的IP地址对应的客户端地址储存于该地址解析协议ARP表中。由上述实施例可知,当DHCP服务器通过DHCP中继器为客户端分配IP地址时,可记录已分配IP地址、该IP地址对应的客户端地址以及该DHCP中继器的地址,并且通过定时器设置地址更新时间,当DHCP服务器确定到达地址更新时间时,生成地址分配表。此外,还可采用手动方式生成该地址分配表,即当DHCP服务器接收到生成地址分配表的指令时,可生成该地址分配表,这样,根据需要触发对DHCP服务器生成地址分配表,增加了灵活性。以下结合附图5、以通过定时器设置地址更新时间来触发生成地址分配表为例来说明该IP地址回收的全过程。如图5所示,在网络环境中包括一个DHCP服务器Server;三个DHCP中继器Relayl、Relay2和Relay3;八个客户端PC1_PC8。由于这八台客户端都是通过同一台DHCP服务器获取地址,那么在DHCP服务器中存在对应IP地址已经被分配出去的记录信息。当初始时刻t=0时,DHCP服务器通过DHCP中继器Relayl为客户端PCI分配IP地址,此时DHCP服务器为Relayl设置定时器,预设地址更新时间RefreshTime为15分钟,则此时该DHCP服务器记录的相关信息如下表所示表3IPaddressHardwareaddressClient-IdentifierexpirationTypeDHCPRelayRefreshtimeIP1Mac1ID1XXAutomaticRelayl15在5分钟内,DHCP服务器已经通过Relayl为客户端PC2,PC3,PC4,PC5,PC6,PC7分配了IP地址。其中PC7的地址是在DHCP服务器中静态指定,其他PC都是在DHCP服务器中动态分配。在为这些客户端分配IP地址时,没有超出Relayl对应的地址更新时间,因此,不需重新设置该地址更新时间。在t=5时,DHCP服务器通过DHCP中继器Relay3为客户端PC8获取IP地址,并为Relay3设置定时器,预设地址更新时间。这样,在t=5时亥lj,DHCP服务器记录的相关信息如下表4IPaddressHardwareaddressClient-IdentifierL6aS6expirationTypeDHCPRelayRefreshtimeIP1Mac1ID1XXAutomaticRelayl10IP2Mac2ID2XXAutomaticRelayl10IP3Mac3ID3XXAutomaticRelayl10IP4Mac4ID4XXAutomaticRelayl10IP5Mac5ID5XXAutomaticRelayl10IP6Mac6ID6XXAutomaticRelayl1012<table>tableseeoriginaldocumentpage13</column></row><table>在t=15时,DHCP中继器Relayl对应的地址更新时间到达。此时,触发DHCP服务器生成该Relayl对应的地址分配表。DHCP服务器将记录的所有与Relayl相关联的表项提取出来,组成一张地址分配表;其中,该地址分配表中的IP地址的租期(Leaseexpiration)为一个有效时间。这样,符合条件的有IP1、IP2、IP3、IP4、IP5、IP6,由这六条表项组成的地址分配表为表5<table>tableseeoriginaldocumentpage13</column></row><table>DHCP服务器将该地址分配表发送给DHCP中继器Relayl;其中,可通过DHCP信息报文发送。DHCP中继器Relayl收到该DHCP信息报文后,提取出DHCP服务器下发的地址分配表,将该地址分配表与本地的ARP表进行比对。如表6所示,为本地的ARP表表6[O川]<table>tableseeoriginaldocumentpage13</column></row><table>DHCP中继器Relayl根据地址分配表中的IP逐一进行比对,并对相应的IP地址发送ARP请求进行探测,具体过程如下(l)Relayl从地址分配表中选取IPl。Relay1确定IP1存在于ARP表中,则进一步确定IP1在地址分配表中对应的客户端地址为Macl,IP1在ARP表中对应的客户端地址也为Macl;因此,Relayl不进行任何操作,继续选取下一个IP地址。(2)Relayl从地址分配表中选取IP2。Relayl确定IP2存在于ARP表中,则进一步确定IP2在地址分配表中对应的客户端地址为Mac2,IP2在ARP表中对应的客户端地址为Macl2,二者并不相同;则Relayl对IP2发起一次ARP请求探测,ARP探测报文的目的IP地址为IP2;PC2收到该ARP探测报文后,在预设时间内响应该ARP请求,回应的地址信息为Mac2;Relayl根据收到的ARP响应报文将更新自己的ARP表,IP2在ARP表中对应的地址信息更新为Mac2;同时Relayl进一步确定IP2在地址分配表和该ARP响应报文中对应的客户端地址都为Mac2;因此,Relayl继续选取下一个IP地址。(3)Relayl从地址分配表中选取IP3。Relayl确定IP3存在于ARP表中,则进一步确定IP3在地址分配表中对应的客户端地址为Mac3,IP2在ARP表中对应的客户端地址为Macl3,二者并不相同;则Relayl对IP3发起一次ARP请求探测,ARP探测报文的目的IP地址为IP3;PC3收到该ARP探测报文后,在预设时间内响应该ARP请求,回应的地址信息为Macl3;Relayl根据收到的ARP响应报文将更新自己的ARP表,IP3在ARP表中对应的地址信息更新为Macl3;同时Relayl进一步确定IP3在地址分配表中对应的客户端地址Mac3和该ARP响应报文中对应的客户端地址Macl3不同;因此,Relayl将IP3对应的表项添加到地址释放表中。(4)Relayl从地址分配表中选取IP4。Relayl确定IP4不存在于ARP表中,则Relayl对IP4发起一次ARP请求探测,ARP探测报文的目的IP地址为IP4;PC4收到该ARP探测报文后,在预设时间内响应该ARP请求,回应的地址信息为Mac4;Relayl根据收到的ARP响应报文将更新自己的ARP表,将IP4与对应的地址信息Mac4添加到ARP表中;同时Relayl进一步确定IP4在地址分配表和该ARP响应报文中对应的客户端地址都为Mac4;因此,Relayl继续选取下一个IP地址。(5)Relayl从地址分配表中选取IP5。Relayl确定IP5不存在于ARP表中,则Relayl对IP5发起一次ARP请求探测,ARP探测报文的目的IP地址为IP5;PC5收到该ARP探测报文后,在预设时间内响应该ARP请求,回应的地址信息为Macl5;Relayl根据收到的ARP响应报文将更新自己的ARP表,将IP5与对应的地址信息Mac15添加到ARP表中;然后Relayl进一步确定IP5在地址分配表中对应的客户端地址Mac5和ARP表中对应的客户端地址Macl5不同;因此,Relayl将IP5对应的表项添加到地址释放表中。(6)Relayl从地址分配表中选取IP6。Relayl确定IP6不存在于ARP表中,则Relayl对IP6发起一次ARP请求探测,ARP探测报文的目的IP地址为IP6;Relayl在预设时间内没有收到该ARP请求的响应;因此,Relayl将IP6对应的表项添加到地址释放表中。在上述过程完成后,该DHCP中继器Relayl的本地ARP表更新为如下表714<table>tableseeoriginaldocumentpage15</column></row><table>DHCP中继器Relayl根据该地址释放表构造一份DHCP信息响应报文,发送给DHCP服务器。DHCP服务器接受到由DHCP中继器Relayl返回的DHCP信息响应报文后,可确认IP3、IP5、IP6已经不再使用,该DHCP服务器对其进行释放。同时,DHCP服务器将与Relayl关联的RefreshTime值设置回初始值15分钟。更新后的DHCP服务器记录的相关信息如下表9<table>tableseeoriginaldocumentpage15</column></row><table>此时,在DHCP地址池中,IP3、IP5、IP6已经被释放,可以重新分配给申请IP地址的客户端。此外,在必要时,管理员可以直接在DHCP服务器上发送指令,手动使得DHCP服务器触发生成该DHCP中继器对应的地址分配表,而不必等待地址更新时间到达。由上述实施例可知,通过DHCP服务器生成DHCP中继器对应的地址分配表并发送至DHCP中继器,不需要DHCP中继器对DHCP服务器和客户端之间的报文进行窥探,这样可降低DHCP中继器的负荷;该DHCP中继器可根据ARP表确定地址分配表中的IP地址对应的客户端是否在线,不需要对所有IP地址进行周期性轮询,因此,可进一步降低DHCP中继器的负荷,增加IP地址的实时性,并且在受到DHCP攻击时不会因为同时产生大量的报文而使设备处于高负荷状态。实施例4本发明实施例提供一种DHCP中继器,如图6所示,该DHCP中继器包括第一接收单元601、在线确定单元602、地址记录单元603和第一发送单元604;其中,该第一接收单元601用于接收DHCP服务器发送的地址分配表,该地址分配表包括该DHCP服务器通过该DHCP中继器分配的IP地址、以及IP地址对应的客户端地址;该在线确定单元602与该第一接收单元601连接,用于确定该地址分配表中IP地址对应的客户端是否在线;该地址记录单元603与该在线确定单元602连接,用于将在线确定单元602确定的不在线的客户端对应的IP地址、或者IP地址和该IP地址对应的客户端地址进行记录,以生成地址释放表;该第一发送单元604与地址记录单元603连接,用于将生成的地址释放表发送给DHCP服务器。在本实施例中,该DHCP中继器的工作流程可如实施例1所述,此处不再赘述。由上述实施例可知,DHCP中继器通过接收DHCP服务器发送的地址分配表确定不在线的客户端以生成相应的地址释放表,不需要窥探DHCP客户端和DHCP服务器之间的报文并提取报文中的关键字段创建相应的表项,也不需要对所有IP地址进行周期性轮询,因此,可降低DHCP中继器的负荷,增加IP地址的实时性,并且在受到DHCP攻击时不会因为同时产生大量的报文而使设备处于高负荷状态。实施例5本发明实施例提供一种DHCP中继器,该DHCP中继器包括第一接收单元601、在线确定单元602、地址记录单元603和第一发送单元604;如实施例4所述,此处不再赘述。在本实施例中,如图7所示,该在线确定单元602包括第一确定单元701、报文发送单元702、第二确定单元703和第三确定单元704;其中,该第一确定单元701用于确定地址分配表中的IP地址是否存在于预存的地址解析协议ARP表中;该报文发送单元702与该第一确定单元701连接,用于当第一确定单元701确定该地址分配表中的IP地址不存在于地址解析协议ARP表时,将该地址分配表中的IP地址作为目的地址发送地址解析协议ARP请求报文;该第二确定单元703用于确定在预设时间内是否收到根据该地址解析协议ARP请求报文返回的地址解析协议ARP应答报文;该第三确定单元704用于在该第二确定单元703确定在预设时间内未收到根据地址解析协议ARP请求报文返回的地址解析协议ARP应答报文时,确定该IP地址对应的客户端不在线。16在本实施例中,该在线确定单元602还包括第四确定单元705;该第四确定单元705用于当该第一确定单元701确定地址分配表中的IP地址存在于地址解析协议ARP表时,进一步确定该IP地址对应的客户端地址与地址解析协议ARP表中该IP地址对应的客户端地址是否相同;该报文发送单元702还用于当该第四确定单元705确定IP地址对应的客户端地址与地址解析协议ARP表中该IP地址对应的客户端地址不同时,将地址分配表中的IP地址作为目的地址发送地址解析协议ARP请求报文。如图7所示,该在线确定单元602还包括第五确定单元706和第六确定单元707;该第五确定单元706用于该第二确定单元703确定在预设时间内收到根据地址解析协议ARP请求报文返回的携带IP地址对应的客户端地址的地址解析协议ARP应答报文时,确定地址分配表中的该IP地址对应的客户端地址与地址解析协议ARP应答报文携带的该IP地址对应的客户端地址是否一致;该第六确定单元707用于当第五确定单元706确定地址分配表中的IP地址对应的客户端地址与地址解析协议ARP应答报文携带的IP地址对应的客户端地址不一致时,确定地址分配表中的IP地址对应的客户端不在线。如图7所示,该DHCP中继器还包括存储单元708;该存储单元708用于将地址解析协议ARP应答报文携带的IP地址对应的客户端地址储存于地址解析协议ARP表中。由上述实施例可知,DHCP中继器通过接收DHCP服务器发送的地址分配表确定不在线的客户端以生成相应的地址释放表,不需要窥探DHCP客户端和DHCP服务器之间的报文并提取报文中的关键字段创建相应的表项,也不需要对所有IP地址进行周期性轮询,因此,可降低DHCP中继器的负荷,增加IP地址的实时性,并且在受到DHCP攻击时不会因为同时产生大量的报文而使设备处于高负荷状态。实施例6本发明实施例提供一种DHCP服务器,如图8所示,该DHCP服务器包括信息生成单元801、第二发送单元802、第二接收单元803和地址回收单元804;其中,该信息生成单元801用于根据申请IP地址的客户端所属的DHCP中继器的标识信息生成该DHCP中继器对应的地址分配表;该地址分配表包含通过DHCP中继器分配的IP地址、以及该IP地址对应的客户端地址;该第二发送单元802与信息生成单元801连接,用于发送地址分配表至DHCP中继器;第二接收单元803用于接收DHCP中继器返回的根据该地址分配表生成的地址释放表,该地址释放表包括待释放的IP地址、或者待释放的IP地址和该待释放的IP地址对应的客户端地址;地址回收单元804与第二接收单元803连接,用于根据该第二接收单元803接收的地址释放表释放相应的IP地址。在本实施例中,该DHCP服务器的工作流程可如实施例2所述,此处不再赘述。由上述实施例可知,通过DHCP服务器生成DHCP中继器对应的地址分配表,可降低DHCP中继器的负荷;通过接收DHCP中继器返回的地址释放表,可及时地根据该地址释放表回收未使用的IP地址,增加了DHCP服务器地址池中IP地址的实时性。实施例7本发明实施例提供一种DHCP服务器,如图9所示,该DHCP服务器包括信息生成单元901、第二发送单元902、第二接收单元903和地址回收单元904;如实施例6所述,此处不再赘述。如图9所示,该DHCP服务器还包括地址分配单元905和信息记录单元906;该地址分配单元905用于通过DHCP中继器为客户端分配IP地址;该信息记录单元906用于记录已分配的IP地址、申请IP地址的客户端所属的DHCP中继器的标识信息和该客户端的地址。由上述实施例可知,通过DHCP服务器生成DHCP中继器对应的地址分配表,可降低DHCP中继器的负荷;通过接收DHCP中继器返回的地址释放表,可及时地根据该地址释放表回收未使用的IP地址,增加了DHCP服务器地址池中IP地址的实时性。实施例8本发明实施例提供一种IP地址回收系统,如图10所示,该IP地址回收系统包括DHCP服务器1001和DHCP中继器1002。在本实施例中,该DHCP服务器1001可为实施例6或7中所述的DHCP服务器;该DHCP中继器1002可为实施例4或5所述的DHCP中继器;此处不再赘述。在本实施例中,如图IO所示,该IP地址回收系统还包括客户端1003;该DHCP服务器1001通过该DHCP中继器1002为该客户端1003分配IP地址。在本实施例中,该IP地址回收系统的工作流程可如实施例3所述,此处不再赘述。由上述实施例可知,通过DHCP服务器生成DHCP中继器对应的地址分配表并发送至DHCP中继器,不需要DHCP中继器对DHCP服务器和客户端之间的报文进行窥探,这样可降低DHCP中继器的负荷;该DHCP中继器可根据ARP表确定地址分配表中的IP地址对应的客户端是否在线,不需要对所有IP地址进行周期性轮询,因此,可进一步降低DHCP中继器的负荷,增加IP地址的实时性,并且在受到DHCP攻击时不会因为同时产生大量的报文而使设备处于高负荷状态。专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或
技术领域
内所公知的任意其它形式的存储介质中。以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。18权利要求一种IP地址回收方法,其特征在于,所述方法包括DHCP中继器接收DHCP服务器发送的地址分配表,所述地址分配表包括所述DHCP服务器通过所述DHCP中继器分配的IP地址、以及所述IP地址对应的客户端地址;确定所述地址分配表中所述IP地址对应的客户端是否在线;将不在线的客户端对应的IP地址、或者IP地址和所述IP地址对应的客户端地址进行记录,以生成地址释放表;将生成的所述地址释放表发送给所述DHCP服务器。2.根据权利要求1所述的方法,其特征在于,所述确定所述地址分配表中的一个IP地址对应的客户端是否在线,包括确定所述地址分配表中的IP地址是否存在于预存的地址解析协议ARP表中;若确定所述地址分配表中的IP地址不存在于所述地址解析协议ARP表中,则将所述地址分配表中的IP地址作为目的地址发送地址解析协议ARP请求报文;若在预设时间内未收到根据所述地址解析协议ARP请求报文返回的地址解析协议ARP应答报文,则确定所述IP地址对应的客户端不在线。3.根据权利要求2所述的方法,其特征在于,若确定所述地址分配表中的IP地址存在于所述地址解析协议ARP表中,则进一步确定所述IP地址对应的客户端地址与所述地址解析协议ARP表中所述IP地址对应的客户端地址是否相同;若所述IP地址对应的客户端地址与所述地址解析协议ARP表中所述IP地址对应的客户端地址不同,则将所述地址分配表中的IP地址作为目的地址发送地址解析协议ARP请求报文;若在预设时间内未收到根据所述地址解析协议ARP请求报文返回的地址解析协议ARP应答报文,则确定所述IP地址对应的客户端不在线。4.根据权利要求2或3所述的方法,其特征在于,所述方法还包括若在预设时间内收到根据所述地址解析协议ARP请求报文返回的携带所述IP地址对应的客户端地址的地址解析协议ARP应答报文,则确定所述地址分配表中的IP地址对应的客户端地址与所述地址解析协议ARP应答报文携带的所述IP地址对应的客户端地址是否一致;若所述地址分配表中的IP地址对应的客户端地址与所述地址解析协议ARP应答报文携带的所述IP地址对应的客户端地址不一致,则确定所述地址分配表中的IP地址对应的客户端不在线。5.根据权利要求4所述的方法,其特征在于,当在预设时间内收到根据所述地址解析协议ARP请求报文返回的携带所述IP地址对应的客户端地址的地址解析协议ARP应答报文时,所述方法还包括将所述IP地址和所述地址解析协议ARP应答报文携带的所述IP地址对应的客户端地址储存于所述地址解析协议ARP表中。6.—种IP地址回收方法,其特征在于,所述方法包括DHCP服务器根据申请IP地址的客户端所属的DHCP中继器的标识信息生成所述DHCP中继器对应的地址分配表;所述地址分配表包括所述DHCP服务器通过所述DHCP中继器分配的IP地址、以及所述IP地址对应的客户端地址;发送所述地址分配表至所述DHCP中继器;接收所述DHCP中继器返回的根据所述地址分配表生成的地址释放表,所述地址释放表包括待释放的IP地址、或者待释放的IP地址和所述待释放的IP地址对应的客户端地址;根据所述地址释放表释放相应的IP地址。7.根据权利要求6所述的方法,其特征在于,在DHCP服务器根据申请IP地址的客户端所属的DHCP中继器的标识信息生成所述DHCP中继器对应的地址分配表之前,所述方法包括DHCP服务器通过所述DHCP中继器为客户端分配IP地址;记录已分配的IP地址、申请所述IP地址的客户端所属的所述DHCP中继器的标识信息和所述客户端的地址。8.根据权利要求6所述的方法,其特征在于,所述DHCP服务器根据申请IP地址的客户端所属的DHCP中继器生成所述DHCP中继器对应的地址分配表,包括所述DHCP服务器在接收到生成地址分配表的指令或者确定到达预设的地址更新时间时,根据申请所述IP地址的客户端所属的DHCP中继器的标识信息生成所述DHCP中继器对应的地址分配表。9.一种DHCP中继器,其特征在于,所述DHCP中继器包括第一接收单元,用于接收DHCP服务器发送的地址分配表,所述地址分配表包括所述DHCP服务器通过所述DHCP中继器分配的IP地址、以及所述IP地址对应的客户端地址;在线确定单元,与所述第一接收单元连接,用于确定所述地址分配表中所述IP地址对应的客户端是否在线;地址记录单元,与所述在线确定单元连接,用于将所述在线确定单元确定的不在线的客户端对应的IP地址、或者IP地址和所述IP地址对应的客户端地址进行记录,以生成地址释放表;第一发送单元,与所述地址记录单元连接,用于将生成的所述地址释放表发送给所述DHCP服务器。10.根据权利要求9所述的DHCP中继器,其特征在于,所述在线确定单元包括第一确定单元,用于确定所述地址分配表中的IP地址是否存在于预存的地址解析协议ARP表中;报文发送单元,与所述第一确定单元连接,用于当第一确定单元确定所述地址分配表中的IP地址不存在于所述地址解析协议ARP表时,将所述地址分配表中的IP地址作为目的地址发送地址解析协议ARP请求报文;第二确定单元,用于确定是在预设时间内是否收到根据所述地址解析协议ARP请求报文返回的地址解析协议ARP应答报文;第三确定单元,用于在所述第二确定单元确定在预设时间内未收到根据所述地址解析协议ARP请求报文返回的地址解析协议ARP应答报文时,确定所述IP地址对应的客户端不在线。11.根据权利要求10所述的DHCP中继器,其特征在于,所述在线确定单元还包括第四确定单元,所述第四确定单元用于在所述第一确定单元确定所述地址分配表中的IP地址存在于所述地址解析协议ARP表时,进一步确定所述IP地址对应的客户端地址与所述地址解析协议ARP表中所述IP地址对应的客户端地址是否相同;所述报文发送单元还用于当所述第四确定单元确定所述IP地址对应的客户端地址与所述地址解析协议ARP表中所述IP地址对应的客户端地址不同时,将所述地址分配表中的IP地址作为目的地址发送地址解析协议ARP请求报文。12.根据权利要求10或11所述的DHCP中继器,其特征在于,所述在线确定单元还包括第五确定单元,用于在第二确定单元确定在预设时间内收到根据所述地址解析协议ARP请求报文返回的携带所述IP地址对应的客户端地址的地址解析协议ARP应答报文时,确定所述地址分配表中的IP地址对应的客户端地址与所述地址解析协议ARP应答报文携带的所述IP地址对应的客户端地址是否一致;第六确定单元,用于当第五确定单元确定所述地址分配表中的IP地址对应的客户端地址与所述地址解析协议ARP应答报文携带的所述IP地址对应的客户端地址不一致时,确定所述地址分配表中的IP地址对应的客户端不在线。13.根据权利要求12所述的DHCP中继器,其特征在于,所述DHCP中继器还包括存储单元,所述存储单元用于将所述地址解析协议ARP应答报文携带的所述IP地址对应的客户端地址储存于所述地址解析协议ARP表中。14.一种DHCP服务器,其特征在于,所述DHCP服务器包括信息生成单元,用于根据申请IP地址的客户端所属的DHCP中继器的标识信息生成所述DHCP中继器对应的地址分配表;所述地址分配表包括所述DHCP服务器通过所述DHCP中继器分配的IP地址、以及所述IP地址对应的客户端地址;第二发送单元,与所述信息生成单元连接,用于向所述DHCP中继器发送所述地址分配表;第二接收单元,用于接收所述DHCP中继器返回的根据所述地址分配表生成的地址释放表,所述地址释放表包括待释放的IP地址、或者待释放的IP地址和所述待释放的IP地址对应的客户端地址;地址回收单元,用于根据所述第二接收单元接收的所述地址释放表释放相应的IP地址。15.根据权利要求14所述的DHCP服务器,其特征在于,所述DHCP服务器还包括地址分配单元,用于通过所述DHCP中继器为客户端分配IP地址;信息记录单元,用于记录已分配的IP地址、申请所述IP地址的客户端所属的所述DHCP中继器的标识信息和所述客户端的地址。16.—种IP地址回收系统,其特征在于,所述IP地址回收系统包括DHCP中继器,所述DHCP中继器包括第一接收单元,用于接收DHCP服务器发送的地址分配表,所述地址分配表包括所述DHCP服务器通过所述DHCP中继器分配的IP地址、以及所述IP地址对应的客户端地址;在线确定单元,与所述第一接收单元连接,用于确定所述地址分配表中所述IP地址对应的客户端是否在线;地址记录单元,与所述在线确定单元连接,用于将所述在线确定单元确定的不在线的客户端对应的IP地址、或者IP地址和所述IP地址对应的客户端地址进行记录,以生成地址释放表;第一发送单元,与所述地址记录单元连接,用于将生成的所述地址释放表发送给所述DHCP服务器。17.根据权利要求16所述的IP地址回收系统,其特征在于,所述DHCP中继器为如权利要求10至权利要求13所述的任意一项DHCP中继器。18.根据权利要求16所述的IP地址回收系统,其特征在于,所述IP地址回收系统还包括如权利要求14或15所述的DHCP服务器。全文摘要本发明实施例提供一种IP地址回收方法及系统、DHCP中继器、DHCP服务器,该IP地址回收方法包括DHCP中继器接收DHCP服务器发送的地址分配表,该地址分配表包括DHCP服务器通过DHCP中继器分配的IP地址、以及IP地址对应的客户端地址;确定该地址分配表中IP地址对应的客户端是否在线;将不在线的客户端对应的IP地址、或者IP地址和该IP地址对应的客户端地址进行记录,以生成地址释放表;将生成的地址释放表发送给DHCP服务器。通过本发明实施例,可降低DHCP中继器的负荷;并可在受到DHCP攻击时不会因为同时产生大量的报文而使设备处于高负荷状态。文档编号H04L12/24GK101795300SQ200910221649公开日2010年8月4日申请日期2009年11月11日优先权日2009年11月11日发明者俞啸东申请人:福建星网锐捷网络有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1