CN111935335A - 一种dhcp地址分配方法及装置 - Google Patents
一种dhcp地址分配方法及装置 Download PDFInfo
- Publication number
- CN111935335A CN111935335A CN202010819778.0A CN202010819778A CN111935335A CN 111935335 A CN111935335 A CN 111935335A CN 202010819778 A CN202010819778 A CN 202010819778A CN 111935335 A CN111935335 A CN 111935335A
- Authority
- CN
- China
- Prior art keywords
- address
- client
- server
- message
- mac
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5007—Internet protocol [IP] addresses
- H04L61/5014—Internet protocol [IP] addresses using dynamic host configuration protocol [DHCP] or bootstrap protocol [BOOTP]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Small-Scale Networks (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明实施例提供一种DHCP地址分配方法及装置,所述方法包括:通过接收客户端发送的携带有客户端的介质访问控制MAC地址第一报文,用于向各服务器请求互联网协议IP地址,服务器根据第一报文中携带的MAC地址,确定服务器之前是否分配过与MAC地址对应的IP地址给该客户端,若是,则服务器将之前分配过的IP地址继续分配给该客户端;若否,则服务器将本地未被使用过的空闲IP地址分配给客户端。本发明实施例服务器在分配地址之前查询本地的IP地址分配记录,可以将客户端使用过的IP地址继续分配给该客户端,保证了组网中的客户端能够保持地址的唯一性,为一系列的业务及管理功能提供了便利。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种DHCP地址分配方法及装置。
背景技术
动态主机配置协议(Dynamic Host Configuration Protocol,以下简称DHCP),是一个局域网的网络协议,使用UDP协议工作,由服务器控制一段IP地址范围,客户机登录服务器时就可以自动获得服务器分配的IP地址和子网掩码。DHCP常用的2个端口包括:67(DHCP server),68(DHCP client)。DHCP通常被用于局域网环境,主要作用是集中的管理、分配IP地址,使client端动态获得IP地址、Gateway地址、DNS服务器地址等信息,并能够提升地址的使用率。简单来说,DHCP就是一个不需要账号密码登录的、自动给内网机器分配IP地址等信息的协议。
现有技术中,在DHCP协议中,当client端向server端请求地址时,server端会根据地址范围从小到大,遍历出未分配或者已过期的地址分配给client端,但这种地址分配方式会导致每次client端的分配地址可能不相同,给管理带来不便。
因此,如何提出一种方法,能够实现将原IP地址分配给client端,是亟待解决的问题。
发明内容
针对现有技术存在的问题,本发明实施例提供一种DHCP地址分配方法及装置。
具体地,本发明实施例提供了如下技术方案:
第一方面,本发明实施例提供一种DHCP地址分配方法,应用于服务器,包括:
接收客户端发送的第一报文;其中,所述第一报文用于向各服务器请求互联网协议IP地址,所述第一报文中携带有所述客户端的介质访问控制MAC地址;
根据所述第一报文中携带的MAC地址,确定本地是否存在与所述MAC地址对应的IP地址分配记录,若存在,则将与所述MAC地址对应的IP地址分配给所述客户端,否则,将本地未被使用过的空闲IP地址分配给所述客户端。
进一步地,在将本地未被使用过的空闲IP地址分配给所述客户端之后,所述方法还包括:在本地存储IP地址分配记录;所述IP地址分配记录包括:已分配的IP地址、已分配的IP地址租赁期限和已分配的IP地址对应的客户端的MAC地址;
相应地,所述方法还包括:
接收客户端发送的第二报文;其中,所述第二报文为所述客户端在接收到各服务器分配的IP地址并从各服务器分配的IP地址中选中一个IP地址后向各服务器发送的报文;所述第二报文用于告知各服务器,所述客户端已选中的IP地址;所述第二报文中携带有所述客户端的MAC地址和所述客户端已选中的IP地址;
根据第二报文中携带的所述客户端的MAC地址,确定本地是否存在与所述MAC地址匹配的IP地址分配记录,若是,则确定第二报文中携带的信息是否与本地存储的IP地址分配记录一致,若是,则向所述客户端发送第三报文;其中,所述第三报文为响应报文,用于告知所述客户端分配过程完成;若否,则继续确定本地是否在预设时间段内是否向所述客户端分配过与所述客户端已选中的IP地址不匹配的IP地址,若是,则清除相应的IP地址分配记录;
若确定本地不存在与所述MAC地址匹配的IP地址分配记录,则检测第二报文中携带的所述客户端已选中的IP地址是否在分配范围内且未被分配,若是,则向所述客户端发送第三报文,同时在本地存储相应的IP地址分配记录。
进一步地,所述第三报文中携带有所述客户端已选中的IP地址的使用租期;
相应地,向所述客户端发送第三报文,包括:
向所述客户端发送第三报文,以使得所述客户端根据所述使用租期自动启动续延过程;其中,所述续延过程包括:在所述使用租期内的不同时间段,分别向分配所述已选中的IP地址的服务器发送第四报文以请求续延租期直至续延成功或使用租期到期。
进一步地,根据所述第一报文中携带的MAC地址,确定本地是否存在与所述MAC地址对应的IP地址分配记录,若存在,则将与所述MAC地址对应的IP地址分配给所述客户端,否则,将本地未被使用过的空闲IP地址分配给所述客户端,包括:
根据所述第一报文中携带的MAC地址,确定本地是否存在与所述MAC地址对应的IP地址分配记录,若存在,则将与所述MAC地址对应的IP地址分配给所述客户端,否则,检测所述第一报文中是否携带有指定的IP地址,若所述第一报文中携带有指定的IP地址,则检测所述指定的IP地址是否在分配范围内且未被分配,若所述指定的IP地址在分配范围内且未被分配,则将所述指定的IP地址分配给所述客户端;若所述第一报文中未携带有指定的IP地址,则将本地未被使用过的空闲IP地址分配给所述客户端。
第二方面,本发明实施例提供又一种DHCP地址分配方法,其特征在于,应用于客户端,包括:
确定客户端的介质访问控制MAC地址,并将携带有所述MAC地址的第一报文发送至服务器,以使服务器根据所述MAC地址,确定本地是否存在与所述MAC地址对应的IP地址分配记录,若存在,则使服务器将与所述MAC地址对应的IP地址分配给客户端,否则,使服务器将本地未被使用过的空闲IP地址分配给所述客户端;其中,所述第一报文用于向各服务器请求互联网协议IP地址。
进一步地,在使服务器将本地未被使用过的空闲IP地址分配给所述客户端之后,所述方法还包括:使服务器在本地存储IP地址分配记录;所述IP地址分配记录包括:已分配的IP地址、已分配的IP地址租赁期限和已分配的IP地址对应的客户端的MAC地址;
相应地,所述方法还包括:
接收各服务器分配的IP地址并从各服务器分配的IP地址中选中一个IP地址后,向各服务器发送携带有所述客户端的MAC地址和所述客户端已选中的IP地址的第二报文,用于告知各服务器客户端已选中的IP地址,以使服务器根据第二报文中携带的客户端的MAC地址,确定本地是否存在与所述MAC地址匹配的IP地址分配记录,若是,则使服务器确定第二报文中携带的信息是否与本地存储的IP地址分配记录一致,若是,则使服务器向所述客户端发送第三报文;其中,所述第三报文为响应报文,用于告知所述客户端分配过程完成;若否,则使服务器继续确定本地是否在预设时间段内是否向所述客户端分配过与所述客户端已选中的IP地址不匹配的IP地址,若是,则使服务器清除相应的IP地址分配记录;
若确定本地不存在与所述MAC地址匹配的IP地址分配记录,则使服务器检测第二报文中携带的所述客户端已选中的IP地址是否在分配范围内且未被分配,若是,则接收服务器发送的第三报文,同时在本地存储相应的IP地址分配记录。
进一步地,所述第三报文中携带有所述客户端已选中的IP地址的使用租期;
相应地,接收服务器发送的第三报文,包括:
接收服务器发送的第三报文,并根据所述使用租期自动启动续延过程;其中,所述续延过程包括:在所述使用租期内的不同时间段,分别向分配所述已选中的IP地址的服务器发送第四报文以请求续延租期直至续延成功或使用租期到期。
进一步地,在所述使用租期内的不同时间段,分别向分配所述已选中的IP地址的服务器发送第四报文以请求续延租期直至续延成功或使用租期到期,包括:
在使用租期过去50%时刻,向分配所述已选中的IP地址的服务器发送第四报文以请求续延租期,若收到分配所述已选中的IP地址的服务器发送的用于告知客户端成功续延租期的第五报文,则租期续延成功;否则,在使用租期过去87.5%时刻,再次向分配所述已选中的IP地址的服务器发送第四报文以请求续延租期,若收到分配所述已选中的IP地址的服务器发送的第五报文,则租期续延成功,否则使用租期到期。
进一步地,将携带有所述MAC地址的第一报文发送至服务器,以使服务器根据所述MAC地址,确定本地是否存在与所述MAC地址对应的IP地址分配记录,若存在,则使服务器将与所述MAC地址对应的IP地址分配给客户端,否则,使服务器将本地未被使用过的空闲IP地址分配给所述客户端,包括:
将携带有所述MAC地址的第一报文发送至服务器,以使服务器根据所述MAC地址,确定本地是否存在与所述MAC地址对应的IP地址分配记录,若存在,则使服务器将与所述MAC地址对应的IP地址分配给所述客户端,否则,使服务器检测所述第一报文中是否携带有指定的IP地址,若所述第一报文中携带有指定的IP地址,则使服务器检测所述指定的IP地址是否在分配范围内且未被分配,若所述指定的IP地址在分配范围内且未被分配,则使服务器将所述指定的IP地址分配给所述客户端;若所述第一报文中未携带有指定的IP地址,则使服务器将本地未被使用过的空闲IP地址分配给所述客户端。
第三方面,本发明实施例提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如第一方面所述DHCP地址分配方法的步骤;和/或,所述处理器执行所述程序时实现如第二方面所述DHCP地址分配方法的步骤。
本发明实施例提供的DHCP地址分配方法及装置,通过接收客户端发送的携带有客户端的介质访问控制MAC地址第一报文,用于向各服务器请求互联网协议IP地址,服务器根据第一报文中携带的MAC地址,通过查询本地的IP地址分配记录,可以确定服务器之前是否分配过与MAC地址对应的IP地址给该客户端,若是,则服务器将之前分配过的IP地址继续分配给该客户端,避免客户端频繁变换IP地址;若否,则服务器将本地未被使用过的空闲IP地址分配给客户端,从而在该服务器上没有MAC地址对应的IP地址分配记录的情况下,保证客户端能够有IP地址使用;此外,服务器将本地未被使用过的空闲IP地址分配给客户端,而不是使用已过期的可用IP地址分配,可以使得已过期的可用IP地址继续保留有为原来对应服务过的客户端继续服务的可能性,并且使用新的未使用过的空闲IP地址使得可以建立IP地址与客户端的唯一对应性。由此可见,本发明实施例服务器在分配地址之前查询本地的IP地址分配记录,确定是否存在与MAC地址对应的IP地址分配记录,从而可以将客户端使用过的IP地址继续分配给该客户端,避免客户端频繁变换IP地址,保证了组网中的客户端能够保持地址的唯一性,为一系列的业务及管理功能提供了便利。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明第一个实施例提供的DHCP地址分配方法的流程示意图;
图2是本发明第一个实施例提供的DHCP地址分配的基本原理示意图;
图3是本发明第一个实施例提供的server端收到client端发送第一报文后的处理流程示意图;
图4是本发明第一个实施例提供的server端收到client端发送第二报文后的处理流程示意图;
图5是本发明第二个实施例提供的DHCP地址分配方法的流程示意图;
图6是本发明实施例提供的DHCP地址分配装置的结构示意图;
图7是本发明实施例提供的又一DHCP地址分配装置的结构示意图;
图8是本发明实施例提供的DHCP地址分配系统的结构示意图;
图9是本发明实施例提供的电子设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1是本发明第一个实施例提供的DHCP地址分配方法的流程示意图,如图1所示,本发明第一个实施例提供的一种DHCP地址分配方法,应用于服务器,包括如下步骤:
步骤110、接收客户端发送的第一报文;其中,第一报文用于向各服务器请求互联网协议IP地址,第一报文中携带有客户端的介质访问控制MAC地址。
在本步骤中,需要说明的是,DHCP是一种运行在客户端和服务器之间的协议,DHCP客户端(以下简称client端)向DHCP服务器(以下简称server端)动态地请求网络配置信息,server端根据策略返回相应的配置信息(如IP地址、子网掩码、缺省网关等网络参数)。然而,传统方法在client端向server端动态请求网络配置信息时,server端会根据地址范围从小到大,遍历出未分配或者已过期的地址分配给client端,这种分配方式会导致每次client端的分配地址可能不相同,从而不便于统一管理。
因此,本实施例通过在服务器本地存储IP地址分配记录,在分配地址之前查询分配记录中是否存在客户端MAC地址对应的IP地址分配记录,从而保证能够将客户端使用过的IP地址继续分配给该客户端,避免客户端频繁更换IP地址。
具体地,当client端启动时,会主动将自己的IP地址配置成0.0.0.0。因为使用0.0.0.0不能进行正常通信,所以client端就必须通过server端来获取一个合法的地址。图2是本发明第一个实施例提供的DHCP地址分配的基本原理示意图,如图2所示,client端请求地址时,并不知道DHCP服务器的位置,因此client端会在本地网络内以广播方式发送第一报文,第一报文即为DHCP Discover报文,是client端首次登录网络时进行DHCP过程的第一个报文,目的是发现网络中的server端以及向各server端请求互联网协议IP地址,所有收到第一报文的server端都会发送回应报文(即DHCP Offer报文),client端据此可以知道网络中存在的server端的位置。其中,第一报文中携带有client端的介质访问控制MAC地址,用于server端根据MAC地址参数信息匹配对应的IP地址。
步骤120、根据第一报文中携带的MAC地址,确定本地是否存在与MAC地址对应的IP地址分配记录,若存在,则将与MAC地址对应的IP地址分配给客户端,否则,将本地未被使用过的空闲IP地址分配给客户端。
在本步骤中,图3是本发明第一个实施例提供的server端收到client端发送第一报文后的处理流程示意图,如图3所示,server端接收到client端发送的第一报文后,会获取client端的介质访问控制MAC地址,由于IP地址分配记录中记录有server端向各client端成功分配IP地址的记录,从而server端可以根据MAC地址在本地的IP地址分配记录中查找,确定在分配记录中是否存在一个与MAC地址对应的IP地址,且该IP地址之前被client端使用过,若存在,则将该IP地址继续分配给client端,从而保证client端能够继续使用原有的IP地址,避免频繁变换IP地址。当然,若在分配记录中不存在一个与MAC地址对应的IP地址,为了保证client端能够正常工作,server端将本地未被使用过的空闲IP地址分配给client端。此外,服务器将本地未被使用过的空闲IP地址分配给客户端,而不是使用已过期的可用IP地址分配,可以使得已过期的可用IP地址继续保留有为原来对应服务过的客户端继续服务的可能性,并且使用新的未使用过的空闲IP地址使得可以建立IP地址与客户端的唯一对应性。
本发明实施例提供的DHCP地址分配方法,通过接收客户端发送的携带有客户端的介质访问控制MAC地址第一报文,用于向各服务器请求互联网协议IP地址,服务器根据第一报文中携带的MAC地址,通过查询本地的IP地址分配记录,可以确定服务器之前是否分配过与MAC地址对应的IP地址给该客户端,若是,则服务器将之前分配过的IP地址继续分配给该客户端,避免客户端频繁变换IP地址;若否,则服务器将本地未被使用过的空闲IP地址分配给客户端,从而在该服务器上没有MAC地址对应的IP地址分配记录的情况下,保证客户端能够有IP地址使用;此外,服务器将本地未被使用过的空闲IP地址分配给客户端,而不是使用已过期的可用IP地址分配,可以使得已过期的可用IP地址继续保留有为原来对应服务过的客户端继续服务的可能性,并且使用新的未使用过的空闲IP地址使得可以建立IP地址与客户端的唯一对应性。由此可见,本发明实施例服务器在分配地址之前查询本地的IP地址分配记录,确定是否存在与MAC地址对应的IP地址分配记录,从而可以将客户端使用过的IP地址继续分配给该客户端,避免客户端频繁变换IP地址,保证了组网中的客户端能够保持地址的唯一性,为一系列的业务及管理功能提供了便利。
基于上述实施例的内容,作为一种可选实施例,在将本地未被使用过的空闲IP地址分配给客户端之后,还包括:在本地存储IP地址分配记录;IP地址分配记录包括:已分配的IP地址、已分配的IP地址租赁期限和已分配的IP地址对应的客户端的MAC地址。
在本步骤中,在server端确定了可以提供给client端的IP地址后,会发送回应报文(即DHCP Offer报文)至client端,而且server端会把自己的IP地址放在DHCP Offer报文的选项字段中,以便client端区分接收到的DHCP Offer报文中携带的IP地址信息,就是对应server端可以提供的IP地址信息,发出DHCP Offer报文后在server端上就会存在一个已分配IP地址的记录,若下次client端再次请求获取该MAC地址对应的IP地址时,就可以在IP地址分配记录中查询到该IP地址的分配记录,从而能够继续将该IP地址分配给client端。其中,IP地址分配记录包括:已分配的IP地址、已分配的IP地址租赁期限和已分配的IP地址对应的客户端的MAC地址;DHCP Offer报文是server端用来响应DHCP Discover报文,此报文携带了各种配置信息。
相应地,还包括:
接收客户端发送的第二报文;其中,第二报文为客户端在接收到各服务器分配的IP地址并从各服务器分配的IP地址中选中一个IP地址后向各服务器发送的报文;第二报文用于告知各服务器,客户端已选中的IP地址;第二报文中携带有客户端的MAC地址和客户端已选中的IP地址。
图4是本发明第一个实施例提供的server端收到client端发送第二报文后的处理流程示意图,如图4所示,server端在确定了可以提供给client端的IP地址后,都会向client端发送一个DHCP Offer报文,由此可见,client端可能会收到很多DHCP Offer报文,所以必须在这些回应报文中选择一个。client端在选用一个DHCP Offer报文中对应的IP地址后,会发送第二报文(即DHCP Request报文),用来向各server端广播,client端已选中的IP地址信息,以便各server端接收到第二报文后,可以进行相应的处理,具体处理过程在下面实施例中会有详细介绍,本实施例对此不作赘述。其中,第二报文中携带有client端的MAC地址、client端已选中的IP地址以及与client端已选中的IP地址对应的server端地址,DHCP Request报文具体用于:client端初始化后,发送广播的DHCP Request报文来回应server端的DHCP Offer报文。client端重启初始化后,发送广播的DHCP Request报文来确认先前被分配的IP地址等配置信息。当client端已经和某个IP地址绑定后,发送DHCPRequest报文来延长IP地址的租期。
需要说明的是,client端可以选择最先接收的DHCP Offer报文对应的IP地址作为选中的IP地址,也可以从所有DHCP Offer报文中选择使用过的IP地址作为选中的IP地址,本实施例对此不作具体限定。
在上述实施例中,服务器接收客户端发送的第二报文后,根据第二报文中携带的客户端的MAC地址,确定本地是否存在与MAC地址匹配的IP地址分配记录,若是,则确定第二报文中携带的信息是否与本地存储的IP地址分配记录一致,若是,则向客户端发送第三报文;其中,第三报文为响应报文,用于告知客户端分配过程完成;若否,则继续确定本地是否在预设时间段内是否向客户端分配过与客户端已选中的IP地址不匹配的IP地址,若是,则清除相应的IP地址分配记录。
在本实施例中,server端收到client端发送的第二报文(DHCP Request报文)后,根据第二报文中携带的用户MAC地址确定与server端本地存储的IP地址分配记录是否一致,若是,则表明client端选中的IP地址为该server端提供的分配地址,server端则发送第三报文(即DHP ACK报文)作为响应报文,用于告知client端分配过程完成。其中,server端会把自己的IP地址放在DHP ACK报文的选项字段中,以便client端根据接收到的DHP ACK报文,就可以确定选中IP地址是由该server端提供分配。其中,DHP ACK报文是server端对client端根的DHCP Request报文的确认响应报文,client端收到此报文后,才真正获得了IP地址和相关的配置信息。当server端对client端的DHCP Request报文拒绝响应时,比如server端对client端分配的IP地址已超过使用租借期限(server端没有找到相应的租约记录)或者由于某些原因无法正常分配IP地址,则发送DHCP NAK报文作为应答(client端移到了另一个新的网络),以通知client端无法分配合适IP地址,DHCP客户端需要重新发送DHCPDiscovery报文来申请新的IP地址。
相应地,若第二报文中携带的用户MAC地址确定与server端本地存储的IP地址分配记录不一致,则表明client端选中的IP地址不是该server端提供的分配地址。由于client端没有选中该server端提供的IP地址,则server端提供的IP地址就不会分配给client端使用,所以需要在server端删除对应的IP地址分配记录。
因此,本实施例中若第二报文中携带的用户MAC地址确定与server端本地存储的IP地址分配记录不一致,server端继续确定本地是否在预设时间段内是否向客户端分配过与客户端已选中的IP地址不匹配的IP地址,若是,则清除相应的IP地址分配记录。
另一方面,若server端确定本地不存在与MAC地址匹配的IP地址分配记录,表明server端向client端提供的可以分配的IP地址已被删除或者IP地址已被占用,因此,server端会检测第二报文中携带的client端已选中的IP地址是否在分配范围内且未被分配,若是,则表明选中的IP地址可用,则向client端发送第三报文(DHP ACK报文),同时在本地存储相应的IP地址分配记录。
本发明实施例提供的DHCP地址分配方法,根据客户端发送的第二报文,确定对应服务器提供的IP地址是否与客户端选中的IP地址一致,从而确定分配IP地址的服务器,准确完成IP地址的分配。
基于上述实施例的内容,作为一种可选实施例,第三报文中携带有客户端已选中的IP地址的使用租期;
相应地,向客户端发送第三报文,包括:
向客户端发送第三报文,以使得客户端根据使用租期自动启动续延过程;其中,续延过程包括:在使用租期内的不同时间段,分别向分配已选中的IP地址的服务器发送第四报文以请求续延租期直至续延成功或使用租期到期。
在本步骤中,由于client端选中的IP地址只有一个,因此,只有提供对应IP地址的server端会向client端发送第三报文(DHP ACK报文),其中,第三报文携带有client端已选中的IP地址的使用租期。
在本实施例中,server端向client端发送第三报文后,client端获取IP地址后,会向server端发送单播报文即第四报文(DHCP Request报文)自动启动续延,直至续延成功或使用租期到期。
在本步骤中,需要说明的是,上述实施例中server端发送DHCP Offer报文至client端,只是告知用户该server端可以为client端提供的IP地址,只是预分配,还需要client通过ARP检测该IP是否重复。因此,server端向client端发送第三报文后,会使client端检查server端分配给自己的IP地址是否能够使用,如在以太网类型的网络中,client端会发出免费的ARP请求来确定server端分配的IP地址是否已经被别人使用。如果可以使用,则client端成功获得IP地址并根据IP地址使用租期自动启动续延过程;如果client端发现server端分配的IP地址已经被别人使用,则client端会发出DHCP Decline报文通知server端禁用这个IP地址以免引起IP地址冲突,然后client端又开始按照上述实施例的步骤重新发送第一报文,向各server端请求IP地址分配。其中,DHCP Decline报文是当client端发现server端分配给它的IP地址发生冲突时会通过发送此报文来通知server端,并且会重新向server端申请地址。
此外,client端在成功获取IP地址后,随时可以向server端发送DHCP Release报文释放自己的IP地址,server端收到DHCP Release报文后,会回收相应的IP地址并重新分配。
本发明实施例提供的DHCP地址分配方法,服务器通过发送第三报文至客户端,以使客户端自动启动租期续延,从而实现客户端获取IP地址后能够自动对使用租期进行续延。
基于上述实施例的内容,作为一种可选实施例,根据第一报文中携带的MAC地址,确定本地是否存在与MAC地址对应的IP地址分配记录,若存在,则将与MAC地址对应的IP地址分配给客户端,否则,将本地未被使用过的空闲IP地址分配给客户端,包括:
根据第一报文中携带的MAC地址,确定本地是否存在与MAC地址对应的IP地址分配记录,若存在,则将与MAC地址对应的IP地址分配给客户端,否则,检测第一报文中是否携带有指定的IP地址,若第一报文中携带有指定的IP地址,则检测指定的IP地址是否在分配范围内且未被分配,若指定的IP地址在分配范围内且未被分配,则将指定的IP地址分配给客户端;若第一报文中未携带有指定的IP地址,则将本地未被使用过的空闲IP地址分配给客户端。
在本步骤中,server端接收到client端发送的第一报文后,会获取client端的介质访问控制MAC地址,由于IP地址分配记录中记录有server端向各client端成功分配IP地址的记录,从而server端可以根据MAC地址在本地的IP地址分配记录中查找,确定在分配记录中是否存在一个与MAC地址对应的IP地址,且该IP地址之前被client端使用过,若存在,则将该IP地址继续分配给client端,从而保证client端能够继续使用原有的IP地址,避免频繁变换IP地址。当然,若在分配记录中不存在一个与MAC地址对应的IP地址,则检测第一报文中是否携带有指定IP的地址(即client端也会将需要的指定IP地址添加至第一报文中),若存在且该IP地址可用,则将指定的IP地址分配给client端,若第一报文中也未携带有指定的IP地址,则将本地未被使用过的空闲IP地址分配给客户端,从而保证client端能够正常获取IP地址。
本发明实施例提供的DHCP地址分配方法,服务器在分配地址之前查询本地的IP地址分配记录,确定是否存在与MAC地址对应的IP地址分配记录,从而可以将客户端使用过的IP地址继续分配给该客户端,避免客户端频繁变换IP地址,便于统一管理。若不存在对应的IP地址分配记录,则优先分配指定可用的IP地址给客户端,若无指定IP地址,则分配未被使用过的空闲IP地址分配给客户端,从而保证客户端能够正常获取IP地址。
图5是本发明第二个实施例提供的DHCP地址分配方法的流程示意图,如图5所示,本发明第二个实施例提供的一种DHCP地址分配方法,应用于客户端,包括如下步骤:
步骤510、确定客户端的介质访问控制MAC地址,并将携带有MAC地址的第一报文发送至服务器,以使服务器根据MAC地址,确定本地是否存在与MAC地址对应的IP地址分配记录,若存在,则使服务器将与MAC地址对应的IP地址分配给客户端,否则,使服务器将本地未被使用过的空闲IP地址分配给客户端;其中,第一报文用于向各服务器请求互联网协议IP地址。
在本步骤中,client端向server端发送第一报文后,会使server端获取client端的介质访问控制MAC地址,由于IP地址分配记录中记录有server端向各client端成功分配IP地址的记录,从而server端可以根据MAC地址在本地的IP地址分配记录中查找,确定在分配记录中是否存在一个与MAC地址对应的IP地址,且该IP地址之前被client端使用过,若存在,则将该IP地址继续分配给client端,从而保证client端能够继续使用原有的IP地址,避免频繁变换IP地址。当然,若在分配记录中不存在一个与MAC地址对应的IP地址,为了保证client端能够正常工作,server端将本地未被使用过的空闲IP地址分配给client端。
本发明实施例提供的DHCP地址分配方法,通过向服务器发送携带有客户端的介质访问控制MAC地址第一报文,用于向各服务器请求互联网协议IP地址,以使服务器根据第一报文中携带的MAC地址,通过查询本地的IP地址分配记录,可以确定服务器之前是否分配过与MAC地址对应的IP地址给该客户端,若是,则服务器将之前分配过的IP地址继续分配给该客户端,避免客户端频繁变换IP地址;若否,则服务器将本地未被使用过的空闲IP地址分配给客户端,从而在该服务器上没有MAC地址对应的IP地址分配记录的情况下,保证客户端能够有IP地址使用;此外,服务器将本地未被使用过的空闲IP地址分配给客户端,而不是使用已过期的可用IP地址分配,可以使得已过期的可用IP地址继续保留有为原来对应服务过的客户端继续服务的可能性,并且使用新的未使用过的空闲IP地址使得可以建立IP地址与客户端的唯一对应性。由此可见,本发明实施例服务器在分配地址之前查询本地的IP地址分配记录,确定是否存在与MAC地址对应的IP地址分配记录,从而可以将客户端使用过的IP地址继续分配给该客户端,避免客户端频繁变换IP地址,保证了组网中的客户端能够保持地址的唯一性,为一系列的业务及管理功能提供了便利。
基于上述实施例的内容,作为一种可选实施例,在使服务器将本地未被使用过的空闲IP地址分配给客户端之后,还包括:使服务器在本地存储IP地址分配记录;IP地址分配记录包括:已分配的IP地址、已分配的IP地址租赁期限和已分配的IP地址对应的客户端的MAC地址。
在本步骤中,在使server端确定了可以提供给client端的IP地址后,会使server端发送回应报文(即DHCP Offer报文)至client端,而且server端会把自己的IP地址放在DHCP Offer报文的选项字段中,以便client端区分接收到的DHCP Offer报文中携带的IP地址信息,就是对应server端可以提供的IP地址信息,发出DHCP Offer报文后在server端上就会存在一个已分配IP地址的记录,若下次client端再次请求获取该MAC地址对应的IP地址时,就可以在IP地址分配记录中查询到该IP地址的分配记录,从而能够继续将该IP地址分配给client端。其中,IP地址分配记录包括:已分配的IP地址、已分配的IP地址租赁期限和已分配的IP地址对应的客户端的MAC地址。
相应地,还包括:
接收各服务器分配的IP地址并从各服务器分配的IP地址中选中一个IP地址后,向各服务器发送携带有客户端的MAC地址和客户端已选中的IP地址的第二报文,用于告知各服务器客户端已选中的IP地址,以使服务器根据第二报文中携带的客户端的MAC地址,确定本地是否存在与MAC地址匹配的IP地址分配记录,若是,则使服务器确定第二报文中携带的信息是否与本地存储的IP地址分配记录一致,若是,则使服务器向客户端发送第三报文;其中,第三报文为响应报文,用于告知客户端分配过程完成;若否,则使服务器继续确定本地是否在预设时间段内是否向客户端分配过与客户端已选中的IP地址不匹配的IP地址,若是,则使服务器清除相应的IP地址分配记录。
在本步骤中,server端在确定了可以提供给client端的IP地址后,都会向client端发送一个DHCP Offer报文,由此可见,client端可能会收到很多DHCP Offer报文,所以必须在这些回应报文中选择一个。client端在选用一个DHCP Offer报文中对应的IP地址后,会发送第二报文(即DHCP Request报文),用来向各server端广播,client端已选中的IP地址信息,以便各server端接收到第二报文后,可以进行相应的处理,具体处理过程在下面实施例中会有详细介绍,本实施例对此不作赘述。其中,第二报文中携带有client端的MAC地址和client端已选中的IP地址。
在上述实施例中,client端向server端发送第二报文(DHCP Request报文)后,会使server端根据第二报文中携带的用户MAC地址确定与server端本地存储的IP地址分配记录是否一致,若是,则表明client端选中的IP地址为该server端提供的分配地址,则使server端发送第三报文(即DHP ACK报文)作为响应报文,用于告知client端分配过程完成。其中,server端会把自己的IP地址放在DHP ACK报文的选项字段中,以便client端根据接收到的DHP ACK报文,就可以确定选中IP地址是由该server端提供分配。
另一方面,若确定本地不存在与MAC地址匹配的IP地址分配记录,表明server端向client端提供的可以分配的IP地址已被删除或者IP地址已被占用,则使server端检测第二报文中携带的客户端已选中的IP地址是否在分配范围内且未被分配,若是,则接收server端发送的第三报文,同时在本地存储相应的IP地址分配记录。
本发明实施例提供的DHCP地址分配方法,通过向服务器发送第二报文,以使服务器确定其提供的IP地址是否与客户端选中的IP地址一致,从而确定分配IP地址的服务器,准确完成IP地址的分配。
基于上述实施例的内容,作为一种可选实施例,第三报文中携带有客户端已选中的IP地址的使用租期;
相应地,接收服务器发送的第三报文,包括:
接收服务器发送的第三报文,并根据使用租期自动启动续延过程;其中,续延过程包括:在使用租期内的不同时间段,分别向分配已选中的IP地址的服务器发送第四报文以请求续延租期直至续延成功或使用租期到期。
在本步骤中,由于client端选中的IP地址只有一个,因此,只有提供对应IP地址的server端会向client端发送第三报文(DHP ACK报文),其中,第三报文携带有client端已选中的IP地址的使用租期。
在本实施例中,client端接收server端发送的第三报文后,client端获取IP地址后,会向server端发送单播报文即第四报文(DHCP Request报文)自动启动续延,直至续延成功或使用租期到期。
在本步骤中,需要说明的是,上述实施例中server端发送DHCP Offer报文至client端,只是告知用户该server端可以为client端提供的IP地址,只是预分配,还需要client通过ARP检测该IP是否重复。因此,server端向client端发送第三报文后,会使client端检查server端分配给自己的IP地址是否能够使用,如在以太网类型的网络中,client端会发出免费的ARP请求来确定server端分配的IP地址是否已经被别人使用。如果可以使用,则client端成功获得IP地址并根据IP地址使用租期自动启动续延过程;如果client端发现server端分配的IP地址已经被别人使用,则client端会发出DHCP Decline报文通知server端禁用这个IP地址以免引起IP地址冲突,然后client端又开始按照上述实施例的步骤重新发送第一报文,向各server端请求IP地址分配。
此外,client端在成功获取IP地址后,随时可以向server端发送DHCP Release报文释放自己的IP地址,server端收到DHCP Release报文后,会回收相应的IP地址并可将这个IP地址分配给其它client端。client端在获得了IP地址后,会发送DHCP Inform报文至server端,目的是为了从server端获得其他的一些网络配置信息,比如网关地址、DNS服务器地址等。
本发明实施例提供的DHCP地址分配方法,客户端根据服务器发送的第三报文,自动启动租期续延,从而实现客户端获取IP地址后能够自动对使用租期进行续延。
基于上述实施例的内容,作为一种可选实施例,在使用租期内的不同时间段,分别向分配已选中的IP地址的服务器发送第四报文以请求续延租期直至续延成功或使用租期到期,包括:
在使用租期过去50%时刻,向分配已选中的IP地址的服务器发送第四报文以请求续延租期,若收到分配已选中的IP地址的服务器发送的用于告知客户端成功续延租期的第五报文,则租期续延成功;否则,在使用租期过去87.5%时刻,再次向分配已选中的IP地址的服务器发送第四报文以请求续延租期,若收到分配已选中的IP地址的服务器发送的第五报文,则租期续延成功,否则使用租期到期。
在本步骤中,当client端成功获取IP地址后,会根据IP地址使用租期自动启动续延过程,在使用租期过去50%时刻处向server端发送第四报文(单播DHCP Request报文)续延租期。如果成功,即收到server端发送的第五报文(DHCP ACK报文),则租期相应向前延长,如果失败,即没有收到DHCP ACK报文,则client端继续使用这个IP地址,在使用租期过去87.5%时刻处向server端发送第四报文续延租期,如果成功即收到server端的DHCP ACK报文,则租期相应向前延长,如果失败即没有收到DHCP ACK报文,则client端继续使用这个IP地址,在使用租期到期时client端自动放弃使用这个IP地址,并按照上述实施例的步骤发送第一报文至各server端以请求IP地址。
本发明实施例提供的DHCP地址分配方法,客户端根据服务器发送的第三报文,自动启动租期续延,从而实现客户端获取IP地址后能够自动对使用租期进行续延。
基于上述实施例的内容,作为一种可选实施例,将携带有MAC地址的第一报文发送至服务器,以使服务器根据MAC地址,确定本地是否存在与MAC地址对应的IP地址分配记录,若存在,则使服务器将与MAC地址对应的IP地址分配给客户端,否则,使服务器将本地未被使用过的空闲IP地址分配给客户端,包括:
将携带有MAC地址的第一报文发送至服务器,以使服务器根据MAC地址,确定本地是否存在与MAC地址对应的IP地址分配记录,若存在,则使服务器将与MAC地址对应的IP地址分配给客户端,否则,使服务器检测第一报文中是否携带有指定的IP地址,若第一报文中携带有指定的IP地址,则使服务器检测指定的IP地址是否在分配范围内且未被分配,若指定的IP地址在分配范围内且未被分配,则使服务器将指定的IP地址分配给客户端;若第一报文中未携带有指定的IP地址,则使服务器将本地未被使用过的空闲IP地址分配给客户端。
在本步骤中,client端向server端发送第一报文后,会使server端获取client端的介质访问控制MAC地址,由于IP地址分配记录中记录有server端向各client端成功分配IP地址的记录,从而server端可以根据MAC地址在本地的IP地址分配记录中查找,确定在分配记录中是否存在一个与MAC地址对应的IP地址,且该IP地址之前被client端使用过,若存在,则将该IP地址继续分配给client端,从而保证client端能够继续使用原有的IP地址,避免频繁变换IP地址。当然,若在分配记录中不存在一个与MAC地址对应的IP地址,则检测第一报文中是否携带有指定IP的地址(即client端也会将需要的指定IP地址添加至第一报文中),若存在且该IP地址可用,则将指定的IP地址分配给client端,若第一报文中也未携带有指定的IP地址,则将本地未被使用过的空闲IP地址分配给客户端,从而保证client端能够正常获取IP地址。
本发明实施例提供的DHCP地址分配方法,服务器在分配地址之前查询本地的IP地址分配记录,确定是否存在与MAC地址对应的IP地址分配记录,从而可以将客户端使用过的IP地址继续分配给该客户端,避免客户端频繁变换IP地址,便于统一管理。若不存在对应的IP地址分配记录,则优先分配指定可用的IP地址给客户端,若无指定IP地址,则分配未被使用过的空闲IP地址分配给客户端,从而保证客户端能够正常获取IP地址。
图6是本发明实施例提供的DHCP地址分配装置的结构示意图,如图6所示,本发明实施例提供的DHCP地址分配装置,应用于服务器,包括:
接收单元610,用于接收客户端发送的第一报文;其中,第一报文用于向各服务器请求互联网协议IP地址,第一报文中携带有客户端的介质访问控制MAC地址;
分配单元620,用于根据第一报文中携带的MAC地址,确定本地是否存在与MAC地址对应的IP地址分配记录,若存在,则将与MAC地址对应的IP地址分配给客户端,否则,将本地未被使用过的空闲IP地址分配给客户端。
本实施例所述的DHCP地址分配装置可以用于执行上述第一个实施例所述的DHCP地址分配方法,其原理和技术效果类似,此处不再详述。
图7是本发明实施例提供的又一DHCP地址分配装置的结构示意图,如图7所示,本发明实施例提供的DHCP地址分配装置,应用于客户端,包括:
发送单元710,用于确定客户端的介质访问控制MAC地址,并将携带有MAC地址的第一报文发送至服务器,以使服务器根据MAC地址,确定本地是否存在与MAC地址对应的IP地址分配记录,若存在,则使服务器将与MAC地址对应的IP地址分配给客户端,否则,使服务器将本地未被使用过的空闲IP地址分配给客户端;其中,第一报文用于向各服务器请求互联网协议IP地址。
本实施例所述的DHCP地址分配装置可以用于执行上述第二个实施例所述的DHCP地址分配方法,其原理和技术效果类似,此处不再详述。
图8是本发明实施例提供的DHCP地址分配系统的结构示意图,如图8所示,本发明实施例提供的DHCP地址分配系统,包括:服务器810和客户端820。其中,服务器用于执行上述第一个实施例中DHCP地址分配方法,该方法包括:接收客户端发送的第一报文;其中,第一报文用于向各服务器请求互联网协议IP地址,第一报文中携带有客户端的介质访问控制MAC地址;根据第一报文中携带的MAC地址,确定本地是否存在与MAC地址对应的IP地址分配记录,若存在,则将与MAC地址对应的IP地址分配给客户端,否则,将本地未被使用过的空闲IP地址分配给客户端。客户端用于执行上述第二个实施例中DHCP地址分配方法,该方法包括:确定客户端的介质访问控制MAC地址,并将携带有MAC地址的第一报文发送至服务器,以使服务器根据MAC地址,确定本地是否存在与MAC地址对应的IP地址分配记录,若存在,则使服务器将与MAC地址对应的IP地址分配给客户端,否则,使服务器将本地未被使用过的空闲IP地址分配给客户端;其中,第一报文用于向各服务器请求互联网协议IP地址。
图9是本发明实施例提供的电子设备的结构示意图,如图9所示,该电子设备可以包括:处理器(processor)910、通信接口(Communications Interface)920、存储器(memory)930和通信总线940,其中,处理器910,通信接口920,存储器930通过通信总线940完成相互间的通信。处理器910可以调用存储器930中的逻辑指令,以执行DHCP地址分配方法,该方法包括:接收客户端发送的第一报文;其中,第一报文用于向各服务器请求互联网协议IP地址,第一报文中携带有客户端的介质访问控制MAC地址;根据第一报文中携带的MAC地址,确定本地是否存在与MAC地址对应的IP地址分配记录,若存在,则将与MAC地址对应的IP地址分配给客户端,否则,将本地未被使用过的空闲IP地址分配给客户端。
此外,上述的存储器930中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明实施例还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的DHCP地址分配方法,该方法包括:接收客户端发送的第一报文;其中,第一报文用于向各服务器请求互联网协议IP地址,第一报文中携带有客户端的介质访问控制MAC地址;根据第一报文中携带的MAC地址,确定本地是否存在与MAC地址对应的IP地址分配记录,若存在,则将与MAC地址对应的IP地址分配给客户端,否则,将本地未被使用过的空闲IP地址分配给客户端。
又一方面,本发明实施例还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例提供的DHCP地址分配方法,该方法包括:接收客户端发送的第一报文;其中,第一报文用于向各服务器请求互联网协议IP地址,第一报文中携带有客户端的介质访问控制MAC地址;根据第一报文中携带的MAC地址,确定本地是否存在与MAC地址对应的IP地址分配记录,若存在,则将与MAC地址对应的IP地址分配给客户端,否则,将本地未被使用过的空闲IP地址分配给客户端。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种DHCP地址分配方法,其特征在于,应用于服务器,包括:
接收客户端发送的第一报文;其中,所述第一报文用于向各服务器请求互联网协议IP地址,所述第一报文中携带有所述客户端的介质访问控制MAC地址;
根据所述第一报文中携带的MAC地址,确定本地是否存在与所述MAC地址对应的IP地址分配记录,若存在,则将与所述MAC地址对应的IP地址分配给所述客户端,否则,将本地未被使用过的空闲IP地址分配给所述客户端。
2.根据权利要求1所述的DHCP地址分配方法,其特征在于,在将本地未被使用过的空闲IP地址分配给所述客户端之后,所述方法还包括:在本地存储IP地址分配记录;所述IP地址分配记录包括:已分配的IP地址、已分配的IP地址租赁期限和已分配的IP地址对应的客户端的MAC地址;
相应地,所述方法还包括:
接收客户端发送的第二报文;其中,所述第二报文为所述客户端在接收到各服务器分配的IP地址并从各服务器分配的IP地址中选中一个IP地址后向各服务器发送的报文;所述第二报文用于告知各服务器,所述客户端已选中的IP地址;所述第二报文中携带有所述客户端的MAC地址和所述客户端已选中的IP地址;
根据第二报文中携带的所述客户端的MAC地址,确定本地是否存在与所述MAC地址匹配的IP地址分配记录,若是,则确定第二报文中携带的信息是否与本地存储的IP地址分配记录一致,若是,则向所述客户端发送第三报文;其中,所述第三报文为响应报文,用于告知所述客户端分配过程完成;若否,则继续确定本地是否在预设时间段内是否向所述客户端分配过与所述客户端已选中的IP地址不匹配的IP地址,若是,则清除相应的IP地址分配记录;
若确定本地不存在与所述MAC地址匹配的IP地址分配记录,则检测第二报文中携带的所述客户端已选中的IP地址是否在分配范围内且未被分配,若是,则向所述客户端发送第三报文,同时在本地存储相应的IP地址分配记录。
3.根据权利要求2所述的DHCP地址分配方法,其特征在于,所述第三报文中携带有所述客户端已选中的IP地址的使用租期;
相应地,向所述客户端发送第三报文,包括:
向所述客户端发送第三报文,以使得所述客户端根据所述使用租期自动启动续延过程;其中,所述续延过程包括:在所述使用租期内的不同时间段,分别向分配所述已选中的IP地址的服务器发送第四报文以请求续延租期直至续延成功或使用租期到期。
4.根据权利要求1所述的DHCP地址分配方法,其特征在于,根据所述第一报文中携带的MAC地址,确定本地是否存在与所述MAC地址对应的IP地址分配记录,若存在,则将与所述MAC地址对应的IP地址分配给所述客户端,否则,将本地未被使用过的空闲IP地址分配给所述客户端,包括:
根据所述第一报文中携带的MAC地址,确定本地是否存在与所述MAC地址对应的IP地址分配记录,若存在,则将与所述MAC地址对应的IP地址分配给所述客户端,否则,检测所述第一报文中是否携带有指定的IP地址,若所述第一报文中携带有指定的IP地址,则检测所述指定的IP地址是否在分配范围内且未被分配,若所述指定的IP地址在分配范围内且未被分配,则将所述指定的IP地址分配给所述客户端;若所述第一报文中未携带有指定的IP地址,则将本地未被使用过的空闲IP地址分配给所述客户端。
5.一种DHCP地址分配方法,其特征在于,应用于客户端,包括:
确定客户端的介质访问控制MAC地址,并将携带有所述MAC地址的第一报文发送至服务器,以使服务器根据所述MAC地址,确定本地是否存在与所述MAC地址对应的IP地址分配记录,若存在,则使服务器将与所述MAC地址对应的IP地址分配给客户端,否则,使服务器将本地未被使用过的空闲IP地址分配给所述客户端;其中,所述第一报文用于向各服务器请求互联网协议IP地址。
6.根据权利要求5所述的DHCP地址分配方法,其特征在于,在使服务器将本地未被使用过的空闲IP地址分配给所述客户端之后,所述方法还包括:使服务器在本地存储IP地址分配记录;所述IP地址分配记录包括:已分配的IP地址、已分配的IP地址租赁期限和已分配的IP地址对应的客户端的MAC地址;
相应地,所述方法还包括:
接收各服务器分配的IP地址并从各服务器分配的IP地址中选中一个IP地址后,向各服务器发送携带有所述客户端的MAC地址和所述客户端已选中的IP地址的第二报文,用于告知各服务器客户端已选中的IP地址,以使服务器根据第二报文中携带的客户端的MAC地址,确定本地是否存在与所述MAC地址匹配的IP地址分配记录,若是,则使服务器确定第二报文中携带的信息是否与本地存储的IP地址分配记录一致,若是,则使服务器向所述客户端发送第三报文;其中,所述第三报文为响应报文,用于告知所述客户端分配过程完成;若否,则使服务器继续确定本地是否在预设时间段内是否向所述客户端分配过与所述客户端已选中的IP地址不匹配的IP地址,若是,则使服务器清除相应的IP地址分配记录;
若确定本地不存在与所述MAC地址匹配的IP地址分配记录,则使服务器检测第二报文中携带的所述客户端已选中的IP地址是否在分配范围内且未被分配,若是,则接收服务器发送的第三报文,同时在本地存储相应的IP地址分配记录。
7.根据权利要求6所述的DHCP地址分配方法,其特征在于,所述第三报文中携带有所述客户端已选中的IP地址的使用租期;
相应地,接收服务器发送的第三报文,包括:
接收服务器发送的第三报文,并根据所述使用租期自动启动续延过程;其中,所述续延过程包括:在所述使用租期内的不同时间段,分别向分配所述已选中的IP地址的服务器发送第四报文以请求续延租期直至续延成功或使用租期到期。
8.根据权利要求7所述的DHCP地址分配方法,其特征在于,在所述使用租期内的不同时间段,分别向分配所述已选中的IP地址的服务器发送第四报文以请求续延租期直至续延成功或使用租期到期,包括:
在使用租期过去50%时刻,向分配所述已选中的IP地址的服务器发送第四报文以请求续延租期,若收到分配所述已选中的IP地址的服务器发送的用于告知客户端成功续延租期的第五报文,则租期续延成功;否则,在使用租期过去87.5%时刻,再次向分配所述已选中的IP地址的服务器发送第四报文以请求续延租期,若收到分配所述已选中的IP地址的服务器发送的第五报文,则租期续延成功,否则使用租期到期。
9.根据权利要求5所述的DHCP地址分配方法,其特征在于,将携带有所述MAC地址的第一报文发送至服务器,以使服务器根据所述MAC地址,确定本地是否存在与所述MAC地址对应的IP地址分配记录,若存在,则使服务器将与所述MAC地址对应的IP地址分配给客户端,否则,使服务器将本地未被使用过的空闲IP地址分配给所述客户端,包括:
将携带有所述MAC地址的第一报文发送至服务器,以使服务器根据所述MAC地址,确定本地是否存在与所述MAC地址对应的IP地址分配记录,若存在,则使服务器将与所述MAC地址对应的IP地址分配给所述客户端,否则,使服务器检测所述第一报文中是否携带有指定的IP地址,若所述第一报文中携带有指定的IP地址,则使服务器检测所述指定的IP地址是否在分配范围内且未被分配,若所述指定的IP地址在分配范围内且未被分配,则使服务器将所述指定的IP地址分配给所述客户端;若所述第一报文中未携带有指定的IP地址,则使服务器将本地未被使用过的空闲IP地址分配给所述客户端。
10.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至4任一项所述DHCP地址分配方法的步骤;和/或,所述处理器执行所述程序时实现如权利要求5至9任一项所述DHCP地址分配方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010819778.0A CN111935335B (zh) | 2020-08-14 | 2020-08-14 | 一种dhcp地址分配方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010819778.0A CN111935335B (zh) | 2020-08-14 | 2020-08-14 | 一种dhcp地址分配方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111935335A true CN111935335A (zh) | 2020-11-13 |
CN111935335B CN111935335B (zh) | 2023-06-09 |
Family
ID=73310371
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010819778.0A Active CN111935335B (zh) | 2020-08-14 | 2020-08-14 | 一种dhcp地址分配方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111935335B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112689031A (zh) * | 2021-01-08 | 2021-04-20 | 杭州雾联科技有限公司 | 一种ip地址分配方法、装置及介质 |
CN113242477A (zh) * | 2021-05-17 | 2021-08-10 | 珠海市亿鸿通信工程有限公司 | 楼宇对讲布线管理方法及系统 |
CN114448932A (zh) * | 2021-12-29 | 2022-05-06 | 锐捷网络股份有限公司 | 地址分配方法、装置及电子设备 |
CN115297091A (zh) * | 2022-08-03 | 2022-11-04 | 国核自仪系统工程有限公司 | Ip地址管理方法及ip地址管理系统 |
CN115314468A (zh) * | 2022-08-05 | 2022-11-08 | 成都道客数字科技有限公司 | 一种容器云平台的ip地址分配方法和系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101330531A (zh) * | 2008-07-31 | 2008-12-24 | 杭州华三通信技术有限公司 | Dhcp地址分配处理方法和dhcp中继 |
CN106254574A (zh) * | 2016-09-09 | 2016-12-21 | 杭州华三通信技术有限公司 | 一种地址分配方法和装置 |
CN108632399A (zh) * | 2017-08-24 | 2018-10-09 | 新华三技术有限公司 | 一种地址分配方法和装置 |
CN108933847A (zh) * | 2018-06-29 | 2018-12-04 | 杭州迪普科技股份有限公司 | 一种地址快速分配的方法及装置 |
-
2020
- 2020-08-14 CN CN202010819778.0A patent/CN111935335B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101330531A (zh) * | 2008-07-31 | 2008-12-24 | 杭州华三通信技术有限公司 | Dhcp地址分配处理方法和dhcp中继 |
CN106254574A (zh) * | 2016-09-09 | 2016-12-21 | 杭州华三通信技术有限公司 | 一种地址分配方法和装置 |
CN108632399A (zh) * | 2017-08-24 | 2018-10-09 | 新华三技术有限公司 | 一种地址分配方法和装置 |
CN108933847A (zh) * | 2018-06-29 | 2018-12-04 | 杭州迪普科技股份有限公司 | 一种地址快速分配的方法及装置 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112689031A (zh) * | 2021-01-08 | 2021-04-20 | 杭州雾联科技有限公司 | 一种ip地址分配方法、装置及介质 |
CN113242477A (zh) * | 2021-05-17 | 2021-08-10 | 珠海市亿鸿通信工程有限公司 | 楼宇对讲布线管理方法及系统 |
CN113242477B (zh) * | 2021-05-17 | 2022-05-17 | 珠海市亿鸿通信工程有限公司 | 楼宇对讲布线管理方法及系统 |
CN114448932A (zh) * | 2021-12-29 | 2022-05-06 | 锐捷网络股份有限公司 | 地址分配方法、装置及电子设备 |
CN115297091A (zh) * | 2022-08-03 | 2022-11-04 | 国核自仪系统工程有限公司 | Ip地址管理方法及ip地址管理系统 |
CN115297091B (zh) * | 2022-08-03 | 2024-03-12 | 国核自仪系统工程有限公司 | Ip地址管理方法及ip地址管理系统 |
CN115314468A (zh) * | 2022-08-05 | 2022-11-08 | 成都道客数字科技有限公司 | 一种容器云平台的ip地址分配方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN111935335B (zh) | 2023-06-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111935335B (zh) | 一种dhcp地址分配方法及装置 | |
US9210124B2 (en) | Method, apparatus, and system for allocating public IP address | |
US11343224B2 (en) | Method for renewing IP address and apparatus | |
US10122679B2 (en) | Method, relay agent, and system for acquiring internet protocol address in network | |
US20080028071A1 (en) | Communication load reducing method and computer system | |
US20040006712A1 (en) | Method for preventing IP address cheating in dynamic address allocation | |
US20210119965A1 (en) | Address Management Method and Apparatus | |
US8356173B2 (en) | Configuration method, system and device of cryptographically generated address | |
EP2888863B1 (en) | Method and apparatus for configuring dhcp client | |
EP3358785B1 (en) | Method and device for acquiring resource | |
CN107615723B (zh) | 一种互联网协议地址分配方法和中继设备 | |
JP2009529257A (ja) | IPv6アドレス取得装置、方法、及びシステム | |
CN101237460A (zh) | DHCP Server端租约状态发生变化时的处理方法、系统及装置 | |
EP3048756B1 (en) | Management method and apparatus for dynamic host configuration protocol server and relay | |
CN106878479B (zh) | 一种地址分配方法及装置 | |
CN115174528A (zh) | 一种设备地址管控方法、装置及系统 | |
WO2012139283A1 (zh) | 地址分配方法及装置 | |
US11765128B2 (en) | DHCP server IP address allocation improvement to nullify the impact of mac randomization | |
CN114785755B (zh) | 一种ipv6上网iapd自适应的方法与系统 | |
CN117812045A (zh) | Ip地址分配方法及装置 | |
JP2005033302A (ja) | Ipアドレスの自動割当て方法および端末装置 | |
CN118264645A (zh) | 一种基于dhcp的路由器下挂设备地址分配方法及系统 | |
CN116827907A (zh) | 一种家庭网关dhcpv6-pd前缀代理系统及方法 | |
CN103581345A (zh) | 一种基于动态主机配置协议的ip地址分配方法及装置 | |
CN116527635A (zh) | 一种网络设备下dhcp策略中继的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |