一种IP地址的分配方法和装置与流程

文档序号:12279036阅读:143来源:国知局
一种IP地址的分配方法和装置与流程

本申请涉及通信技术领域,尤其涉及一种IP地址的分配方法和装置。



背景技术:

目前,IP地址的分配方式包括静态配置IP地址和动态申请IP地址。其中,静态配置IP地址是指:管理员在业务服务器上直接配置IP地址,这种方式的优势是配置简单,而劣势在于:当业务服务器的数量很多时,需要逐一在每个业务服务器上配置IP地址,配置工作量很大,而且容易出现配置错误等问题。动态申请IP地址是指:业务服务器向DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)服务器发送DHCP请求报文,DHCP服务器在接收到DHCP请求报文后,从DHCP地址池内选择一个可用的IP地址,并通过DHCP响应报文将该IP地址发送给业务服务器,从而将该IP地址分配给业务服务器。

在DHCP服务器选择可用的IP地址时,DHCP服务器是随机选择IP地址的,这样会增加管理的复杂度。例如,业务服务器1上包括端口1-端口3,业务服务器2上包括端口1和端口2,假设将100.1.1.3分配给业务服务器1的端口1,将100.1.1.200分配给业务服务器1的端口2,将100.1.2.123分配给业务服务器1的端口3,又将100.1.1.4分配给业务服务器2的端口1,将100.2.1.155分配给业务服务器2的端口1。显然,这种IP地址的分配方式没有任何规律,每个业务服务器的IP地址都是无序的,不同业务服务器之间的IP地址也是无序的。



技术实现要素:

本申请提供一种IP地址的分配方法,应用于DHCP服务器,该方法包括:

接收来自DHCP客户端的DHCP请求报文;其中,所述DHCP请求报文中携带了所述DHCP客户端的物理位置信息;

从所述DHCP请求报文中解析出所述DHCP客户端的物理位置信息;

利用所述物理位置信息为所述DHCP客户端分配IP地址;

向所述DHCP客户端发送携带已经分配给所述DHCP客户端的IP地址的DHCP响应报文。

本申请提供一种IP地址的分配方法,应用于DHCP客户端,该方法包括:

确定所述DHCP客户端的物理位置信息;

生成包括所述物理位置信息的DHCP请求报文;

向DHCP服务器发送所述DHCP请求报文;

接收所述DHCP服务器返回的DHCP响应报文,其中,所述DHCP响应报文中携带已经分配给所述DHCP客户端的IP地址,且所述DHCP服务器利用所述物理位置信息为所述DHCP客户端分配IP地址。

本申请提供一种IP地址的分配装置,应用于DHCP服务器,该装置包括:

接收模块,用于接收来自DHCP客户端的DHCP请求报文;其中,所述DHCP请求报文中携带了所述DHCP客户端的物理位置信息;

解析模块,用于从所述DHCP请求报文中解析出所述DHCP客户端的物理位置信息;

分配模块,用于利用所述物理位置信息为所述DHCP客户端分配IP地址;

发送模块,用于向所述DHCP客户端发送携带已经分配给所述DHCP客户端的IP地址的DHCP响应报文。

本申请提供一种IP地址的分配装置,应用于DHCP客户端,该装置包括:

确定模块,用于确定所述DHCP客户端的物理位置信息;

生成模块,用于生成包括所述物理位置信息的DHCP请求报文;

发送模块,用于向DHCP服务器发送所述DHCP请求报文;

接收模块,用于接收所述DHCP服务器返回的DHCP响应报文,其中,所述DHCP响应报文中携带已经分配给所述DHCP客户端的IP地址,且所述DHCP服务器利用所述物理位置信息为所述DHCP客户端分配IP地址。

基于上述技术方案,本申请实施例中,DHCP服务器在接收到DHCP请求报文后,不是随机为DHCP客户端(即业务服务器)分配IP地址,而是利用业务服务器的物理位置信息为业务服务器分配IP地址,这样,业务服务器分配到的IP地址具有某种规律,也就是相对固定,减少管理的复杂度,操作简单,可以帮助管理员快速部署批量的业务服务器。由于业务服务器的物理位置信息与IP地址具有对应关系,因此可通过业务服务器的IP地址反查出物理位置信息。

附图说明

为了更加清楚地说明本申请实施例或者现有技术中的技术方案,下面将对本申请实施例或者现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。

图1是一种数据中心内的业务服务器的部署结构示意图;

图2是本申请一种实施方式中的IP地址的分配方法的流程图;

图3是本申请另一种实施方式中的IP地址的分配方法的流程图;

图4是本申请一种实施方式中的DHCP服务器的硬件结构图;

图5是本申请一种实施方式中的IP地址的分配装置的结构图;

图6是本申请一种实施方式中的DHCP客户端的硬件结构图;

图7是本申请一种实施方式中的IP地址的分配装置的结构图。

具体实施方式

在本申请使用的术语仅仅是出于描述特定实施例的目的,而非限制本申请。本申请和权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其它含义。还应当理解,本文中使用的术语“和/或”是指包含一个或多个相关联的列出项目的任何或所有可能组合。

应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,此外,所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。

如图1所示,为数据中心内的业务服务器的部署结构示意图。在大型数据中心内,通常将大量业务服务器放置在机架上,每个业务服务器位于机架的一个槽位上。为方便管理,每个机架均有唯一的机架标识(即机架号),且机架上的每个槽位均有唯一的槽位标识(即槽位号)。因此,可以通过机架标识和槽位标识来唯一表示一个业务服务器的物理位置,即业务服务器的物理位置信息包括:业务服务器所在机架的机架标识、业务服务器在机架上的槽位标识。在图1中,业务服务器1的物理位置信息为机架0和槽位0,业务服务器2的物理位置信息为机架0和槽位1,以此类推,业务服务器8的物理位置信息为机架0和槽位7,业务服务器9的物理位置信息为机架1和槽位0,以此类推。

在每个业务服务器上,可包括一个或者两个以上的端口,如NIC(Network Interface Card,网络适配器)端口和BMC(Baseboard Management Controller,基板管理控制器)端口等,且业务服务器需要为这些端口申请IP地址。在传统的动态申请IP地址的过程中,业务服务器为这些端口申请到的IP地址是杂乱无序的,这些IP地址没有任何规律可言。例如,业务服务器1的端口1的IP地址为100.1.1.3,端口2的IP地址为100.1.1.200,端口3的IP地址为100.1.2.123。

针对上述发现,本申请实施例中提出了一种IP地址的分配方法,该方法可以应用于包括DHCP服务器和DHCP客户端的网络中。在一个例子中,该DHCP客户端可以是业务服务器,只是在向DHCP服务器申请IP地址时,作为DHCP客户端。而在申请到IP地址之后,就可以执行业务服务器的相关功能。

参见图2所示,为本申请实施例中提出的IP地址的分配方法的流程图,该方法可以应用于DHCP服务器上,且该方法可以包括以下步骤:

步骤201,接收来自DHCP客户端的DHCP请求报文;其中,该DHCP请求报文中携带了该DHCP客户端的物理位置信息。

步骤202,从该DHCP请求报文中解析出DHCP客户端的物理位置信息。

步骤203,利用该物理位置信息为该DHCP客户端分配IP地址。

步骤204,向该DHCP客户端发送携带已经分配给该DHCP客户端的IP地址的DHCP响应报文。

针对步骤201和步骤202,在一个例子中,DHCP客户端在需要申请IP地址时,先确定本DHCP客户端的物理位置信息,并生成包括该物理位置信息的DHCP请求报文,并向DHCP服务器发送该DHCP请求报文。这样,DHCP服务器就可以接收到来自DHCP客户端的DHCP请求报文,并从该DHCP请求报文中解析出DHCP客户端的物理位置信息。其中,该物理位置信息可以包括:DHCP客户端所在机架的机架标识、DHCP客户端在该机架上的槽位标识。

如图1所示,当DHCP客户端是业务服务器1时,则机架0可以将业务服务器1的物理位置信息(如业务服务器1所在机架的机架标识(机架0)、业务服务器1在该机架0上的槽位标识(槽位0)等)发送给业务服务器1。业务服务器1生成包括机架0和槽位0的DHCP请求报文,并发送该DHCP请求报文。当然,在实际应用中,并不局限于机架0通知物理位置信息的方式,业务服务器1也可以采用其它方式获得自身的物理位置信息,对此不做限制。

在一个例子中,机架0可以将业务服务器1的物理位置信息发送给业务服务器1的BMC,BMC将物理位置信息发送给业务服务器1的BIOS(Basic Input Output System,基础输入输出系统)和OS(Operating System,操作系统)。这样,业务服务器1的BMC、BIOS、OS均可以获知业务服务器1的物理位置信息。当业务服务器1的BMC需要为端口申请IP地址时,则BMC发送携带物理位置信息的DHCP请求报文。当业务服务器1的BIOS需要为端口申请IP地址时,则BIOS发送携带物理位置信息的DHCP请求报文。当业务服务器1的OS需要为端口申请IP地址时,则OS发送携带物理位置信息的DHCP请求报文。

针对步骤203,在一个例子中,DHCP服务器利用物理位置信息为DHCP客户端分配IP地址的过程,可以包括但不限于如下方式:

方式一、DHCP服务器通过查询预先配置的地址表,得到该物理位置信息对应的IP集合,并从该IP集合中选择一个可用的IP地址,并将该选择出的可用的IP地址分配给DHCP客户端。其中,该地址表中记录了物理位置信息与IP集合的映射关系。该IP集合内可以包含连续的多个IP地址,如可以包含最大端口数量个IP地址。

在一个例子中,如图1所示,当DHCP客户端是机架上的业务服务器时,针对所有机架上的所有业务服务器,假设最大端口数量是8时,由于业务服务器可以为自身的一个端口或者多个端口申请一个IP地址,因此,该业务服务器最多申请8个IP地址。基于此,可以预先配置每个业务服务器的物理位置信息与IP集合的映射关系,得到地址表,该IP集合中包含连续的8个IP地址。例如,该地址表中记录了业务服务器1的物理位置信息与IP集合1的映射关系,该IP集合1包含100.1.1.3-100.1.1.10,记录了业务服务器2的物理位置信息与IP集合2的映射关系,该IP集合2包含100.1.1.10-100.1.1.17,以此类推。

基于此,DHCP服务器在从DHCP请求报文中解析出业务服务器1的物理位置信息后,则从IP集合1中选择可用的IP地址,并将该选择出的可用的IP地址分配给业务服务器1。这样,如果业务服务器1为自身的8个端口申请了8个IP地址,则这8个IP地址就是IP集合1内包含的100.1.1.3-100.1.1.10。因此,业务服务器1申请到的8个IP地址是连续的8个IP地址,具有某种规律,而且相对固定。

方式二、DHCP服务器从本地查询最大端口数量、最大业务服务器数量;利用物理位置信息、端口信息、该最大端口数量、该最大业务服务器数量,获得一个IP地址,并将获得的IP地址分配给DHCP客户端。

其中,可以预先在DHCP服务器上配置最大端口数量,如图1所示,当DHCP客户端是机架上的业务服务器时,则最大端口数量可以是指:确定所有机架上的所有业务服务器的端口数量,并选取确定出的最大端口数量。例如,当业务服务器1包含8个端口,业务服务器2-业务服务器14均包含6个端口时,最大端口数量可以是8个。假设最大端口数量是8时,由于业务服务器可以为自身的一个端口或者多个端口申请一个IP地址,因此,对于所有机架上的所有业务服务器来说,最多只会申请8个IP地址,不会申请超过8个IP地址。

其中,可以预先在DHCP服务器上配置最大业务服务器数量,如图1所示,当DHCP客户端是机架上的业务服务器时,则最大业务服务器数量可以是指:确定每个机架上的业务服务器数量,并选取确定出的最大数量,并将该最大数量确定为最大业务服务器数量。例如,机架0包含8个业务服务器,机架1包含6个业务服务器时,则最大业务服务器数量可以是8。假设最大业务服务器数量是8时,则对于所有机架来说,最多只会有8个业务服务器申请IP地址。

其中,物理位置信息和端口信息是DHCP服务器从DHCP请求报文中解析出的。在一个例子中,DHCP客户端在需要申请IP地址时,DHCP客户端可以确定本DHCP客户端的物理位置信息、当前申请IP地址的指定端口的端口信息,并生成包括该物理位置信息和该端口信息的DHCP请求报文,向DHCP服务器发送该DHCP请求报文。DHCP服务器在接收到来自DHCP客户端的DHCP请求报文之后,从该DHCP请求报文中解析出该物理位置信息和该端口信息。

在一个例子中,该指定端口是指当前申请IP地址的端口,该端口信息包括该指定端口在DHCP客户端上的唯一标识。例如,DHCP客户端包括8个端口,为这8个端口编号,这8个端口的标识可以分别为端口0-端口7。基于此,假设当前需要为端口5申请IP地址,指定端口为端口5,该端口信息为端口5。

在一个例子中,DHCP服务器利用物理位置信息、端口信息、最大端口数量、最大业务服务器数量,获得一个IP地址的过程,可以包括但不限于:利用如下公式获得IP地址:初始IP地址+(R*MaxS*M+S*M+K)。该R为DHCP客户端所在机架的机架标识,该MaxS为最大业务服务器数量,该M为最大端口数量,该S为DHCP客户端在机架上的槽位标识,该K为端口信息。

其中,初始IP地址可以根据实际情况进行配置,例如,当DHCP服务器的DHCP地址池为100.1.1.3-200.255.255.255时,则可以配置初始IP地址100.1.1.3。在此基础上,如图1所示,针对业务服务器1为端口0申请IP地址的过程,则R为0,MaxS为8,M为8,S为0,K为0,因此,获得的IP地址为100.1.1.3。针对业务服务器1为端口1申请IP地址的过程,则R为0,MaxS为8,M为8,S为0,K为1,因此,获得的IP地址为100.1.1.4。以此类推,业务服务器1为8个端口申请的IP地址分别为100.1.1.3-100.1.1.10。针对业务服务器2为端口0申请IP地址的过程,则R为0,MaxS为8,M为8,S为1,K为0,因此,获得的IP地址为100.1.1.11。针对业务服务器9为端口0申请IP地址的过程,则R为1,MaxS为8,M为8,S为0,K为0,因此,获得的IP地址为100.1.1.67。上述过程只是给出了几个申请IP地址的示例,对于其它申请过程,与此类似,在此不再赘述。经过上述方式申请的IP地址,对于每个业务服务器来说,该业务服务器申请到的多个IP地址是连续的IP地址,具有某种规律,而且相对固定。

本申请实施例中,对于上述公式,机架标识、槽位标识、端口信息均是从0开始编号,若机架标识、槽位标识、端口信息不是从0开始编号,则还可以对上述公式进行修改。例如,当机架标识从1开始编号时,则上述公式可以修改为:初始IP地址+[(R-1)*MaxS*M+S*M+K]。当机架标识和槽位标识均从1开始编号时,则上述公式可以修改为:初始IP地址+[(R-1)*MaxS*M+(S-1)*M+K]。当机架标识、槽位标识和端口信息均从1开始编号时,则上述公式可以修改为:初始IP地址+[(R-1)*MaxS*M+(S-1)*M+(K-1)]。

当然,上述过程中只是给出了几个IP地址的获得方式,在实际应用中,还可以采用其它获得方式,本申请实施例对此不做限制,以上述公式为例。

在一个例子中,在采用上述公式得到IP地址后,考虑到全0和全1的地址不能使用,因此若得到全0或者全1的IP地址,则还可以对得到的IP地址进行调整。例如,DHCP服务器保留几个IP地址,在得到全0或者全1的IP地址后,则从保留的IP地址中选择一个可用的IP地址,以代替当前得到的IP地址。

在一个例子中,DHCP客户端在向DHCP服务器发送DHCP请求报文时,还可以在该DHCP请求报文中添加本机的端口数量,如当本机有6个端口时,则在DHCP请求报文中添加本机的端口数量6。基于此,DHCP服务器还可以从该DHCP请求报文中解析出DHCP客户端本机的端口数量,并比较该端口数量与预先配置的最大端口数量。若该端口数量大于该最大端口数量,则说明之前配置的最大端口数量存在错误,通知管理员修改配置的最大端口数量。

针对步骤204,在一个例子中,DHCP服务器可以向DHCP客户端发送携带已经分配给DHCP客户端的IP地址的DHCP响应报文,由DHCP客户端接收该DHCP响应报文,并从该DHCP响应报文中解析出已经分配给DHCP客户端的IP地址,并将该IP地址分配给对应的端口。

在一个例子中,DHCP客户端可以将上述物理位置信息和上述端口信息添加到DHCP请求报文的指定选项字段中。而与此相对应的,DHCP服务器可以从该DHCP请求报文的指定选项字段中解析出该物理位置信息和该端口信息。

其中,该指定选项字段可以包括但不限于DHCP请求报文中的DHCP选项60字段或者DHCP选项77字段。当然,在实际应用中,指定选项字段还可以为其它DHCP选项字段,本申请实施例中对此指定选项字段不做限制。

对于DHCP选项60字段,可以携带厂商类型信息和配置信息等内容。例如,可以包括1个字节的Option Code(选项码)字段,1个字节的Length(长度)字段,n个字节的Vendor class Identifier(厂商类别标识)字段。其中,对于Vendor class Identifier字段,其内容可以包括:3个字节的Vendor Name(厂商名称)字段,如厂商的ASCII(American Standard Code for Information Interchange,美国信息交换标准代码)值,如通过483343表示厂商A。1个字节的Device Category(设备类型)字段,如通过01表示服务器,通过02表示交换机等。1个字节的Device Model(设备型号)字段,如通过01表示型号1,通过02表示型号2。1个字节的Port Name(端口名称)字段,如通过01表示NIC端口,通过02表示BMC端口。3个字节或其它长度的Reserved(预留)字段。当然,上述只是给出了DHCP选项60字段的一个示例,DHCP选项60字段还可以包括其它内容,且各字段的长度也可以进行改变,对此DHCP选项60字段的内容不做限制。

在上述DHCP选项60字段的基础上,在一个例子中,还可以在Vendor class Identifier字段中添加三个字段,这三个字段分别为:2个字节的Rack No(机架标识)字段,用于携带机架标识。1个字节的Slot No(槽位标识)字段,用于携带槽位标识。1个字节的Port No(端口标识)字段,用于携带端口信息。

对于DHCP选项77字段,与DHCP选项60字段类似,也可以在DHCP选项77字段中添加2个字节的Rack No字段,用于携带机架标识。1个字节的Slot No字段,用于携带槽位标识。1个字节的Port No字段,用于携带端口信息。

在一个例子中,DHCP服务器在从DHCP请求报文中解析出物理位置信息和端口信息之前,还可以判断本DHCP服务器是否开启解析功能。如果是,则采用本申请实施例的技术方案,执行从DHCP请求报文中解析出物理位置信息和端口信息的过程。如果否,则采用传统方式进行处理,不再执行从DHCP请求报文中解析出物理位置信息和端口信息的过程以及后续过程,而是直接从DHCP地址池内选择一个可用的IP地址,并向DHCP客户端发送携带该选择出的可用的IP地址的DHCP响应报文,即DHCP服务器不关注物理位置信息和端口信息。

在一个例子中,上述的DHCP请求报文可以为DHCP Discovery(发现)报文,且该DHCP Discovery报文是一个广播报文。上述的DHCP响应报文可以为DHCP Offer(提供)报文,该DHCP Offer报文是一个单播报文。

基于上述技术方案,本申请实施例中,DHCP服务器在接收到DHCP请求报文后,不是随机为DHCP客户端(即业务服务器)分配IP地址,而是利用业务服务器的物理位置信息为业务服务器分配IP地址,这样,业务服务器分配到的IP地址具有某种规律,也就是相对固定,减少管理的复杂度,操作简单,可以帮助管理员快速部署批量的业务服务器。由于业务服务器的物理位置信息与IP地址具有对应关系,因此可通过业务服务器的IP地址反查出物理位置信息。

参见图3所示,为本申请实施例中提出的IP地址的分配方法的流程图,该方法可以应用于DHCP客户端上,且该方法可以包括以下步骤:

步骤301,确定本DHCP客户端的物理位置信息。

步骤302,生成包括该物理位置信息的DHCP请求报文。

步骤303,向DHCP服务器发送该DHCP请求报文。

步骤304,接收DHCP服务器返回的DHCP响应报文,其中,该DHCP响应报文中携带已经分配给该DHCP客户端的IP地址,且该DHCP服务器利用该物理位置信息为该DHCP客户端分配IP地址。

在一个例子中,DHCP客户端在生成包括物理位置信息的DHCP请求报文之前,DHCP客户端还可以确定当前申请IP地址的指定端口的端口信息。基于此,DHCP客户端生成包括物理位置信息的DHCP请求报文的过程,可以包括:DHCP客户端生成包括物理位置信息和端口信息的DHCP请求报文。其中,该端口信息包括:指定端口在DHCP客户端上的唯一标识;该物理位置信息包括:DHCP客户端所在机架的机架标识、DHCP客户端在机架上的槽位标识。

基于上述技术方案,本申请实施例中,DHCP服务器在接收到DHCP请求报文后,不是随机为DHCP客户端(即业务服务器)分配IP地址,而是利用业务服务器的物理位置信息为业务服务器分配IP地址,这样,业务服务器分配到的IP地址具有某种规律,也就是相对固定,减少管理的复杂度,操作简单,可以帮助管理员快速部署批量的业务服务器。由于业务服务器的物理位置信息与IP地址具有对应关系,因此可通过业务服务器的IP地址反查出物理位置信息。

基于与上述方法同样的申请构思,本申请实施例还提供一种IP地址的分配装置,应用在DHCP服务器上。该IP地址的分配装置可通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在的DHCP服务器的处理器,读取非易失性存储器中对应的计算机程序指令形成的。从硬件层面而言,如图4所示,为本申请提出的IP地址的分配装置所在的DHCP服务器的一种硬件结构图,除了图4所示的处理器、非易失性存储器外,DHCP服务器还可以包括其他硬件,如负责处理报文的转发芯片、网络接口、内存等;从硬件结构上来讲,DHCP服务器还可能是分布式设备,可能包括多个接口卡,以便在硬件层面进行报文处理的扩展。

如图5所示,为本申请提出的IP地址的分配装置的结构图,该装置包括:

接收模块11,用于接收来自DHCP客户端的DHCP请求报文;其中,所述DHCP请求报文中携带了所述DHCP客户端的物理位置信息;解析模块12,用于从所述DHCP请求报文中解析出所述DHCP客户端的物理位置信息;分配模块13,用于利用所述物理位置信息为所述DHCP客户端分配IP地址;发送模块14,用于向所述DHCP客户端发送携带已经分配给所述DHCP客户端的IP地址的DHCP响应报文。

在一个例子中,所述分配模块13,具体用于在利用所述物理位置信息为所述DHCP客户端分配IP地址的过程中,通过查询预先配置的地址表,得到所述物理位置信息对应的IP集合,并从所述IP集合中选择一个可用的IP地址,将选择出的可用的IP地址分配给所述DHCP客户端;其中,所述地址表中记录了物理位置信息与IP集合的映射关系。

在一个例子中,所述DHCP请求报文中还携带指定端口的端口信息;所述解析模块12,还用于从所述DHCP请求报文中解析出所述指定端口的端口信息;其中,所述指定端口是指当前申请IP地址的端口;

所述端口信息包括:所述指定端口在所述DHCP客户端上的唯一标识。

所述分配模块13,具体用于在利用所述物理位置信息为所述DHCP客户端分配IP地址的过程中,从本地查询最大端口数量、最大业务服务器数量;

利用所述物理位置信息、所述端口信息、所述最大端口数量、所述最大业务服务器数量,获得一个IP地址,并将获得的IP地址分配给所述DHCP客户端;其中,所述物理位置信息包括:所述DHCP客户端所在机架的机架标识、所述DHCP客户端在所述机架上的槽位标识。

在一个例子中,所述分配模块13,具体用于在利用所述物理位置信息、所述端口信息、所述最大端口数量、所述最大业务服务器数量,获得一个IP地址的过程中,利用如下公式获得IP地址:初始IP地址+(R*MaxS*M+S*M+K);其中,所述R为所述DHCP客户端所在机架的机架标识,所述MaxS为所述最大业务服务器数量,所述M为所述最大端口数量,所述S为所述DHCP客户端在所述机架上的槽位标识,所述K为所述端口信息。

基于与上述方法同样的申请构思,本申请实施例还提供一种IP地址的分配装置,应用在DHCP客户端上。该IP地址的分配装置可通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在的DHCP客户端的处理器,读取非易失性存储器中对应的计算机程序指令形成的。从硬件层面而言,如图6所示,为本申请提出的IP地址的分配装置所在的DHCP客户端的一种硬件结构图,除了图6所示的处理器、非易失性存储器外,DHCP客户端还可以包括其他硬件,如负责处理报文的转发芯片、网络接口、内存等;从硬件结构上来讲,DHCP客户端还可能是分布式设备,可能包括多个接口卡,以便在硬件层面进行报文处理的扩展。

如图7所示,为本申请提出的IP地址的分配装置的结构图,包括:

确定模块21,用于确定所述DHCP客户端的物理位置信息;生成模块22,用于生成包括所述物理位置信息的DHCP请求报文;发送模块23,用于向DHCP服务器发送所述DHCP请求报文;接收模块24,用于接收所述DHCP服务器返回的DHCP响应报文,其中,所述DHCP响应报文中携带已经分配给所述DHCP客户端的IP地址,且所述DHCP服务器利用所述物理位置信息为所述DHCP客户端分配IP地址。

在一个例子中,所述确定模块21,还用于在所述生成模块生成包括所述物理位置信息的DHCP请求报文之前,确定当前申请IP地址的指定端口的端口信息;所述生成模块22,具体用于在生成包括所述物理位置信息的DHCP请求报文的过程中,生成包括所述物理位置信息和所述端口信息的DHCP请求报文;其中,所述端口信息可以包括:所述指定端口在所述DHCP客户端上的唯一标识;所述物理位置信息可以包括:所述DHCP客户端所在机架的机架标识、所述DHCP客户端在所述机架上的槽位标识。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。本领域技术人员可以理解附图只是一个优选实施例的示意图,附图中的模块或流程并不一定是实施本申请所必须的。

本领域技术人员可以理解实施例中的装置中的模块可以按照实施例描述进行分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可进一步拆分成多个子模块。上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。

以上公开的仅为本申请的几个具体实施例,但是,本申请并非局限于此,任何本领域的技术人员能思之的变化都应落入本申请的保护范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1