CN107547665A - 一种dhcp地址分配的方法、设备及系统 - Google Patents
一种dhcp地址分配的方法、设备及系统 Download PDFInfo
- Publication number
- CN107547665A CN107547665A CN201610465081.1A CN201610465081A CN107547665A CN 107547665 A CN107547665 A CN 107547665A CN 201610465081 A CN201610465081 A CN 201610465081A CN 107547665 A CN107547665 A CN 107547665A
- Authority
- CN
- China
- Prior art keywords
- address
- distributed network
- host configuration
- dynamic host
- configuration protocol
- 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
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
Abstract
一种DHCP地址分配的方法、设备及系统。所述方法包括:第一分布式网关设备接收DHCP客户端向DHCP服务器发送的用于请求分配IP地址的第一请求报文,根据所述第一请求报文生成第二请求报文,所述第二请求报文携带第一子选项信息,所述第一子选项信息包括第一Back tracking IP地址,所述第一Back tracking IP地址作为所述第一分布式网关设备用于与所述DHCP服务器通信的接口IP地址;所述第一分布式网关设备向所述DHCP服务器发送所述第二请求报文,并且接收来自所述DHCP服务器的应答报文,所述应答报文携带第二子选项信息,所述第二子选项信息包括第二Back tracking IP地址;所述第一分布式网关设备根据所述第二Back tracking IP地址转发所述应答报文。从而解决在分布式网关的网络架构中,无需DHCP服务器支持相应功能的情况下,也能确保IP地址的正确分配。
Description
技术领域
本申请涉及通信技术领域,尤其涉及一种用于分布式网关(Distributedgateway)的动态主机配置协议(Dynamic Host Configuration Protocol,DHCP)地址分配的方法、设备及系统。
背景技术
DHCP是一个局域网的网络协议,使用用户数据报协议(User DatagramProtocol,UDP)协议工作,主要有两个用途:给内部网络或网络服务供应商自动分配互联网协议(Internet Protocol,IP)地址,给用户或者内部网络管理员作为对所有计算机进行中央管理的手段。
在分布式网关的网络架构中,DHCP客户端和DHCP服务器不在同一网段中,分布式网关设备作为DHCP中继(Dynamic Host Configuration Protocol relay,DHCP relay),位于DHCP客户端和DHCP服务器之间实现对DHCP广播报文的跨网段转发。DHCP服务器在向DHCP客户端发送DHCP Offer或DHCPACK报文,为了使DHCP Offer或DHCP ACK报文能够到达正确的分布式网关设备,通常采用以下两种方法:方法一,DHCP服务器将接收的请求报文的源IP地址作为发送DHCP Offer或DHCP ACK报文的目的IP地址;方法二,利用DHCP中定义的选项82(Option 82)的子选项5(Sub option 5)实现DHCPOffer或DHCP ACK报文的传送。
但是,在实际应用中,上述方式至少存在如下问题:DHCP服务器必须支持相应的功能,才能保证上述操作正确执行,当DHCP服务器不支持相应功能时,将导致IP地址分配错误。
发明内容
有鉴于此,本申请实施例提供了一种DHCP地址分配的方法、设备及系统,以解决在分布式网关的网络架构中,无需DHCP服务器支持相应功能的情况下,也能确保IP地址的正确分配。
本申请实施例提供的技术方案如下。
第一方面,提供了一种DHCP地址分配的方法,所述方法用于分布式网关,所述方法包括:
第一分布式网关设备接收DHCP客户端向DHCP服务器发送的第一请求报文,所述第一请求报文用于请求分配IP地址,所述DHCP客户端与所述DHCP服务器不属于同一个网段;
所述第一分布式网关设备根据所述第一请求报文生成第二请求报文,所述第二请求报文携带第一子选项信息,所述第一子选项信息包括第一回程因特网协议Back tracking IP地址,所述第一Back tracking IP地址作为所述第一分布式网关设备用于与所述DHCP服务器通信的接口IP地址;
所述第一分布式网关设备向所述DHCP服务器发送所述第二请求报文;
所述第一分布式网关设备接收来自所述DHCP服务器的应答报文,所述应答报文携带第二子选项信息,所述第二子选项信息包括第二Backtracking IP地址;
所述第一分布式网关设备根据所述第二Back tracking IP地址转发所述应答报文。
基于实施例提供的方案,以解决在分布式网关的网络架构中,无需DHCP服务器支持相应功能的情况下,也能确保IP地址的正确分配。
可选的,所述第一分布式网关设备根据所述第二Back tracking IP地址转发所述应答报文,包括:所述第一分布式网关设备确定所述第二Backtracking IP地址和所述第一分布式网关设备用于与所述DHCP服务器通信的接口IP地址不相同时,将所述应答报文转发给第二分布式网关设备,其中,所述第二Back tracking IP地址作为所述第二分布式网关设备用于与所述DHCP服务器通信的接口IP地址。
可选的,所述第一分布式网关设备根据所述第二Back tracking IP地址转发所述应答报文,包括:所述第一分布式网关设备确定所述第二Backtracking IP地址和所述第一分布式网关设备用于与所述DHCP服务器通信的接口IP地址相同时,将所述应答报文发送给所述DHCP客户端。
第二方面,提供了一种DHCP地址分配的方法,所述方法用于分布式网关,所述方法包括:
DHCP服务器接收来自分布式网关设备的请求报文,所述请求报文携带子选项信息以及Giaddr信息,所述子选项信息包括Back tracking IP地址,所述Back tracking IP地址作为所述分布式网关设备用于与所述DHCP服务器通信的接口IP地址;
所述DHCP服务器确定是否能够解析所述请求报文中的所述子选项信息;
当所述DHCP服务器不能解析所述请求报文中的所述子选项信息时,生成第一应答报文,所述第一应答报文包括所述子选项信息和根据所述Giaddr信息为DHCP客户端分配的IP地址,所述第一应答报文的目的IP地址为所述Giaddr信息中的地址,所述DHCP客户端与所述DHCP服务器不属于同一个网段;
所述DHCP服务器根据所述第一应答报文的目的IP地址发送所述第一应答报文。
基于实施例提供的方案,以解决在分布式网关的网络架构中,无需DHCP服务器支持相应功能的情况下,也能确保IP地址的正确分配。
可选的,所述方法还包括:当所述DHCP服务器能够解析所述请求报文中的所述子选项信息时,生成第二应答报文,所述第二应答报文包括所述子选项信息和根据所述Back tracking IP地址为DHCP客户端分配的IP地址,所述第二应答报文的目的IP地址为所述Back tracking IP地址;所述DHCP服务器根据所述第二应答报文的目的IP地址发送所述第二应答报文。
第三方面,提供了一种第一分布式网关设备,所述第一分布式网关设备为分布式网关中的网关设备,所述第一分布式网关设备包括:
接收单元,用于接收DHCP客户端向DHCP服务器发送的第一请求报文,所述第一请求报文用于请求分配IP地址,所述DHCP客户端与所述DHCP服务器不属于同一个网段;
处理单元,用于根据所述第一请求报文生成第二请求报文,所述第二请求报文携带第一子选项信息,所述第一子选项信息包括第一Back trackingIP地址,所述第一Back tracking IP地址作为所述第一分布式网关设备用于与所述DHCP服务器通信的接口IP地址;
发送单元,用于向所述DHCP服务器发送所述第二请求报文;
所述接收单元,还用于接收来自所述DHCP服务器的应答报文,所述应答报文携带第二子选项信息,所述第二子选项信息包括第二Back trackingIP地址;
所述发送单元,还用于根据所述第二Back tracking IP地址转发所述应答报文。
可选的,所述发送单元,还用于在所述处理单元确定所述第二Backtracking IP地址和所述第一分布式网关设备用于与所述DHCP服务器通信的接口IP地址不相同时,将所述应答报文转发给第二分布式网关设备,其中,所述第二Back tracking IP地址作为所述第二分布式网关设备用于与所述DHCP服务器通信的接口IP地址。
可选的,所述发送单元,还用于在所述处理单元确定所述第二Backtracking IP地址和所述第一分布式网关设备用于与所述DHCP服务器通信的接口IP地址相同时,将所述应答报文发送给所述DHCP客户端。
第四方面,提供了一种DHCP服务器,所述DHCP服务器用于经由分布式网关向DHCP客户端分配IP地址,其特征在于,所述DHCP服务器包括:
接收单元,用于接收来自分布式网关设备的请求报文,所述请求报文携带子选项信息以及Giaddr信息,所述子选项信息包括Back tracking IP地址,所述Back tracking IP地址作为所述分布式网关设备用于与所述DHCP服务器通信的接口IP地址;
处理单元,用于确定是否能够解析所述请求报文中的所述子选项信息;
当所述处理单元不能解析所述请求报文中的所述子选项信息时,所述处理单元还用于生成第一应答报文,所述第一应答报文包括所述子选项信息和根据所述Giaddr信息为所述DHCP客户端分配的IP地址,所述第一应答报文的目的IP地址为所述Giaddr信息中的地址,所述DHCP客户端与所述DHCP服务器不属于同一个网段;
发送单元,用于根据所述第一应答报文的目的IP地址发送所述第一应答报文。
可选的,当所述处理单元能够解析所述请求报文中的所述子选项信息时,所述处理单元还用于生成第二应答报文,所述第二应答报文包括所述子选项信息和根据所述Back tracking IP地址为DHCP客户端分配的IP地址,所述第二应答报文的目的IP地址为所述Back tracking IP地址;所述发送单元,还用于根据所述第二应答报文的目的IP地址发送所述第二应答报文。
在上述第一方面、第二方面、第三方面或第四方面中,可选的,所述第一请求报文和所述第二请求报文是DHCP Discover报文,所述应答报文是DHCP Offer报文。
在上述第一方面、第二方面、第三方面或第四方面中,可选的,所述第一请求报文和所述第二请求报文是DHCP Request报文,所述应答报文是DHCP ACK报文。
在上述第一方面、第二方面、第三方面或第四方面中,可选的,所述分布式网关为以下任意一种:虚拟扩展局域网VXLAN分布式网关、虚拟局域网VLAN分布式网关、多协议标记交换MPLS分布式网关和网络虚拟化通用路由封装NVGRE分布式网关。
在上述第一方面或第三方面中,可选的,所述第一子选项信息还包括第一子网因特网协议SubnetIP地址,所述第一Subnet地址是所述第一分布式网关设备用于与所述DHCP客户端通信的接口IP地址;所述第二子选项信息还包括第二SubnetIP地址。
在上述第二方面或第四方面中,可选的,所述子选项信息还包括子网因特网协议SubnetIP地址,所述Subnet地址是所述分布式网关设备用于与所述DHCP客户端通信的接口IP地址。
第五方面,提供了一种网络系统,所述网络系统包括第一分布式网关设备和DHCP服务器,所述第一分布式网关设备为第三方面所述的第一分布式网关设备,所述DHCP服务器为第四方面所述的DHCP服务器。
第六方面,提供了一种计算机存储介质,用于储存为上述第一分布式网关设备所用的程序、代码或指令,当处理器或硬件设备执行这些程序、代码或指令时可以完成上述方面中第一分布式网关设备的功能或步骤。
第七方面,提供了一种计算机存储介质,用于储存为上述DHCP服务器所用的程序、代码或指令,当处理器或硬件设备执行这些程序、代码或指令时可以完成上述方面中DHCP服务器的功能或步骤。
通过本申请实施方式,通过分布式网关设备在接收到DHCP客户端向DHCP服务器发送用于请求分配IP地址的请求报文后,在请求报文中插入子选项信息,所述子选项信息包括Back tracking IP,使得所述分布式网关设备在接收到应答报文后,可以根据应答报文中的子选项信息对应答报文进行相应的转发,从而在无需DHCP服务器支持相应功能的情况下,也能确保IP地址的正确分配。
附图说明
图1为本申请实施例的分布式网关的网络架构示意图;
图2为本申请实施例的分布式网关与DHCP服务器交互示意图;
图3为本申请实施例DHCP地址分配的方法的流程图;
图4为本申请实施例的另一种分布式网关与DHCP服务器交互示意图;
图5为本申请实施例的又一种分布式网关与DHCP服务器交互示意图;
图6为本申请实施例的子选项信息字段格式的示意图;
图7为本申请实施例的第一分布式网关设备的结构示意图;
图8为本申请实施例的第一分布式网关设备的硬件结构示意图;
图9为本申请实施例的DHCP服务器的结构示意图;
图10为本申请实施例的DHCP服务器的硬件结构示意图。
具体实施方式
本申请实施例提供了一种DHCP地址分配的方法、设备及系统,以解决在分布式网关的网络架构中,无需DHCP服务器支持相应功能的情况下,也能确保IP地址的正确分配。
下面通过具体实施例,分别进行详细的说明。
为使得本申请的发明目的、特征、优点能更加的明显和易懂,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚地描述,显然下面所描述的实施例仅仅是本申请一部分实施例,而非全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及附图中的术语“第一”、“第二”、“第三”和“第四”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”不是排他的。例如包括了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,还可以包括没有列出的步骤或单元。
图1为本申请实施例的分布式网关的网络架构示意图。如图1所示,该网络架构汇聚节点、叶子节点和客户端。
其中,汇聚节点又可以称为Spine节点,汇聚节点包括由路由器或三层交换机。图1中示出了2个汇聚节点,在实际的网络场景中,汇聚节点的个数可以为1个,也可以为2个以上。当采用2个以上汇聚节点时,汇聚节点可以采用主备的方式设置,也可以采用负载分担的方式设置,还可以采用主备和负载分担的组合方式设置。例如,图1所示出的2个汇聚节点,汇聚节点1和汇聚节点2分别连接5个叶子节点,汇聚节点1和汇聚节点2可以进行通信。在一种可能的实现方式中,汇聚节点1作为5个叶子节点的主汇聚节点,汇聚节点2作为5个叶子节点的备汇聚节点。在另一种可能的实现方式中,汇聚节点1作为叶子节点1、叶子节点2和叶子节点3的汇聚节点,汇聚节点2作为叶子节点4和叶子节点5的汇聚节点。在又一种可能的实现方式中,汇聚节点1作为叶子节点1、叶子节点2和叶子节点3的主汇聚节点,汇聚节点2作为叶子节点4和叶子节点5的主汇聚节点;同时,汇聚节点2作为叶子节点1、叶子节点2和叶子节点3的备汇聚节点,汇聚节点1作为叶子节点4和叶子节点5的备汇聚节点。
其中,叶子(Leaf)节点包括由路由器或三层交换机。在本申请实施例中,多个叶子节点组成了分布式网关,每个叶子节点上部署有分布式网关设备。因此,在本申请实施例中,不加特殊说明的情况下,“叶子节点”的表述等同于“分布式网关设备”的表述。图1中示出了5个叶子节点,在实际的网络场景中,对叶子节点的个数不进行限定,一般情况下,叶子节点的个数为2个以上。在图1中,叶子节点1、叶子节点2、叶子节点3和叶子节点4组成了分布式网关,叶子节点1-叶子节点4用于与客户端通信。叶子节点5用于连接广域网(WAN),以便于连接其他网段的叶子节点,例如两个企业的分布式网关设备通过广域网连接。因此叶子节点5也称为边界叶子(Border-leaf)节点。
其中,客户端可以为终端设备、物理服务器、由虚拟交换机和虚拟机组成的虚拟服务器、增值业务设备等。其中终端设备为手机、台式计算机、平板电脑、笔记本电脑、超级移动个人计算机(英文:Ultra-mobile Personal Computer,简称:UMPC)、上网本、个人数字助理(英文:Personal Digital Assistant,简称:PDA)等等。
如图1所示,汇聚节点与叶子节点进行通信,负责将来自叶子节点的业务流量汇聚和处理,发送到汇聚节点的上层设备。汇聚节点还负责接收来自上层设备的业务流量,并将所述业务流量下发给叶子节点。叶子节点与公网侧的汇聚节点通信,同时,叶子节点还与私网侧的客户端进行通信。叶子节点负责将来自客户端的业务流量传输到汇聚节点,叶子节点还负责接收来自汇聚节点的业务流量,并且下发给客户端。多个叶子节点组成了分布式网关,图1示出了一种基于虚拟可扩展局域网(Virtual Extensible Local Area Network,VXLAN)的分布式网关。在实际的场景中,除去使用基于VXLAN的分布式网关外,还可以采用基于虚拟局域网(virtual Local Area Network,VLAN)的分布式网关、基于多协议标记交换(Multiprotocol Label Switching,MPLS)的分布式网关或基于网络虚拟化通用路由封装(Network Virtualization usingGeneric Routing Encapsulation,NVGRE)的分布式网关。每个叶子节点可以连接至少一个客户端,每个叶子节点上部署有分布式网关设备,每个叶子节点的分布式网关设备包括有相同的私网侧的网关IP地址,所述私网侧的网关IP地址是指分布式网关设备用于与客户端通信的接口IP地址。例如,在图1所示的网络架构中,叶子节点1、叶子节点2、叶子节点3和叶子节点4组成了分布式网关,叶子节点1-叶子节点4的私网侧的网关IP地址均为10.1.1.1。叶子节点1连接物理服务器,叶子节点2和叶子节点3连接由虚拟交换机和虚拟机组成的虚拟服务器,叶子节点4连接增值业务设备。需要说明的是,图1所示的叶子节点连接的客户端的类型和数量仅仅是举例说明,在实际的应用场景中每个叶子节点可以根据实际的需求部署客户端的类型和数量。
在图1所示的网络架构中,还可以包括DHCP服务器(图1中未示出)。DHCP服务器负责为叶子节点连接的客户端分配IP地址。在IP地址分配阶段,客户端也称为DHCP客户端,因此,在本申请实施例中,不加特殊说明的情况下,“客户端”的表述等同于“DHCP客户端”的表述。本申请对DHCP服务器位于网络架构中的位置并不进行限定。在一种可能的实施方式中,DHCP服务器可以位于一个叶子节点的下游设备中,例如,位于叶子节点1的物理服务器中。在另一种可能的实施方式中,DHCP服务器可以位于一个叶子节点中。在又一种可能的实施方式中,DHCP服务器位于叶子节点与汇聚节点之间。具体的,DHCP服务器与分布式网关的交互示意图可以参见图2。
图2为本申请实施例的分布式网关与DHCP服务器交互示意图。图2应被理解为在图1的基础上,示意的展示出DHCP服务器、分布式网关设备和DHCP客户端的连接关系。示例性的,图2中的第一分布式网关设备可以被理解为部署在图1中的叶子节点1上的分布式网关设备,第二分布式网关设备可以被理解为部署在图1中的叶子节点2上的分布式网关设备;图2中的DHCP客户端1和DHCP客户端2可以被理解为分别连接叶子节点1和叶子节点2的客户端。如图2所示,DHCP服务器分别连接第一分布式网关设备和第二分布式网关设备,第一分布式网关设备和第二分布式网关设备分别连接各自的DHCP客户端,两个分布式网关设备可以相互通信。示例性的,DHCP服务器的IP地址为100.1.1.254。第一分布式网关设备的公网侧的网关IP地址为100.1.1.1,私网侧的网关IP地址为10.1.1.1;第二分布式网关设备的公网侧的网关IP地址为100.1.1.2,私网侧的网关IP地址为10.1.1.1。其中,所述第一分布式网关设备的公网侧的网关IP地址是指第一分布式网关设备用于与所述DHCP服务器通信的接口IP地址,所述第二分布式网关设备的公网侧的网关IP地址是指第二分布式网关设备用于与所述DHCP服务器通信的接口IP地址。可见,第一分布式网关设备和第二分布式网关设备具有相同的私网侧的网关IP地址。其中,DHCP客户端与DHCP服务器不属于同一个网段;第一分布式网关设备和第二分布式网关设备的私网侧网关IP地址与DHCP客户端属于同一个网段;第一分布式网关设备和第二分布式网关设备的公网侧网关IP地址与DHCP服务器属于同一个网段。其中,网段(network segment)指一个计算机网络中使用同一物理层设备(传输介质,中继器,集线器等)能够直接通讯的那一部分。同一个网段指的是IP地址和子网掩码做相与运算得到的相同的网络地址。需要说明的是,图2中示出了两个分布式网关设备和每个分布式网关设备连接一个DHCP客户端,在实际的应用场景中,分布式网关设备和每个分布式网关设备连接的DHCP客户端的数量可以根据需求部署。
如图2所示,DHCP客户端可以向DHCP服务器发送用于请求分配IP地址的请求报文,所述请求报文包括DHCP Discover报文或DHCP Request报文,并且,DHCP客户端接收来自DHCP服务器的应答报文,所述应答报文包括DHCP Offer报文或DHCP Ack报文,以便于DHCP客户端获得DHCP服务器分配的IP地址。分布式网关设备作为DHCP中继,位于DHCP客户端和DHCP服务器之间实现对DHCP报文的跨网段转发。由于,每个分布式网关设备具有相同的私网侧的网关IP地址,因此,应答报文可能无法到达正确的分布式网关设备,从而导致无法到达正确的DHCP客户端。例如,DHCP客户端1向DHCP服务器发送用于请求分配IP地址的DHCP Discover报文,第一分布式网关设备将DHCP Discover报文“中继”到DHCP服务器。DHCP服务器接收到DHCP Discover报文后作出响应,向DHCP客户端1发送DHCP Offer报文。由于第一分布式网关设备和第二分布式网关设备的私网侧的网关IP地址相同,当DHCP服务器发送DHCP Offer报文时,DHCP Offer报文可能到达第一分布式网关设备,也可能到达第二分布式网关设备。如果DHCP Offer报文到达第二分布式网关设备,DHCP Offer报文将无法传送到DHCP客户端1,导致IP地址分配错误。
为了使应答报文能够到达正确的分布式网关设备,已有技术通常采用两种方法解决上述问题:
方法一,DHCP服务器将接收的请求报文的源IP地址作为发送应答报文的目的IP地址。如图2所示,DHCP客户端1通过第一分布式网关设备向DHCP服务器请求分配IP地址。DHCP服务器接收到的请求报文的源IP地址为100.1.1.1。DHCP服务器在发送应答报文时,将源IP地址100.1.1.1作为应答报文目的IP地址发送应答报文,从而确保第一分布式网关设备能够接收到应答报文。然而,这样的操作并不符合DHCP协议的规定,因此需要对DHCP服务器进行改造,以便实现上述功能。但在实际的应用中,由于DHCP服务器的数量和软件版本的问题,造成这种改造变得难以进行。特别对于DHCP客户端与DHCP服务器之间存在多级DHCP中继设备时,例如3级DHCP中继设备,可能导致应答报文被传送到第二级或第三级DHCP中继设备。
方法二,利用DHCP中定义的选项82(Option 82)的子选项5(Sub option5)实现应答报文的传送。如图2所示,DHCP客户端1通过第一分布式网关设备向DHCP服务器请求分配IP地址。第一分布式网关设备在接收到DHCP客户端1向DHCP服务器发送的请求报文时,不会按照DHCP协议在请求报文中的Giaddr信息中填写第一分布式网关设备的私网侧的网关IP地址10.1.1.1,而是根据Sub option 5的要求,在Giaddr信息中填写第一分布式网关设备的公网侧的网关IP地址100.1.1.1,并按照Sub option 5的要求在请求报文中携带第一分布式网关设备的私网侧的网关IP地址10.1.1.1。DHCP服务器接收到请求报文后,在支持Option 82功能情况下,按照Giaddr信息中的地址作为应答报文的目的IP地址发送应答报文,从而确保第一分布式网关设备能够接收到应答报文。然而,这需要DHCP服务器支持Option 82功能。但在实际的应用中,由于DHCP服务器的数量和软件版本的问题,造成网络管理人员无法确切的知道哪些DHCP服务器支持Option 82功能,哪些DHCP服务器不支持Option 82功能,造成相应的升级改造工作变得尤为困难。
本申请实施例提供了一种DHCP地址分配的方法、设备及系统,可以解决上述问题,应用在分布式网关的DHCP地址分配过程,无需DHCP服务器支持相应功能的情况下,也能确保IP地址的正确分配。
在本申请的实施例中,不加特殊说明的情况下,DHCP是指第四版动态主机配置协议(Dynamic Host Configuration Protocol version 4,DHCPv4),IP是指第四版因特网协议(Internet Protocol version 4,IPv4)。
图3为本申请实施例DHCP地址分配的方法的流程图。为了清楚的描述申请实施例DHCP地址分配的方法,本实施例将结合图4和图5所示的分布式网关与DHCP服务器交互示意图进行说明。并且,本实施例将以请求报文为DHCP Discover报文,应答报文为DHCP Offer报文为例进行举例说明,应当理解,当请求报文为DHCP Request报文,应答报文为DHCP Ack报文。由于在本申请中,DHCP Request报文和DHCP Ack报文的交互过程与DHCPDiscover报文和DHCP Offer报文的交互过程相同,因此不进行重复描述。应当理解,图4和图5的设备部署及连接关系与图2相同,因此本实施例中不在对图4和图5的设备部署及连接关系进行赘述。如图3所示,该方法包括:
S301、第一分布式网关设备接收DHCP客户端向DHCP服务器发送的第一请求报文。
在DHCP地址分配过程中,所述DHCP客户端以广播的方式向所述DHCP服务器发送用于请求分配IP地址的所述第一请求报文,所述第一分布式网关设备接收所述第一请求报文。
例如图4和图5中的步骤(1)所示,DHCP客户端1向DHCP服务器广播DHCP Discover报文,所述DHCP Discover报文的源IP(Src IP)地址为0.0.0.0,目的IP(Dst IP)地址为255.255.255.255。第一分布式网关设备接收所述DHCP Discover报文。其中,所述第一分布式网关设备与第二分布式网关设备具有相同的私网侧的网关IP地址,例如10.1.1.1。其中,所述DHCP客户端与所述DHCP服务器不属于同一个网段;所述第一分布式网关设备和所述第二分布式网关设备的私网侧网关IP地址与所述DHCP客户端属于同一个网段;所述第一分布式网关设备和所述第二分布式网关设备的公网侧网关IP地址与所述DHCP服务器属于同一个网段。
S302、所述第一分布式网关设备根据所述第一请求报文生成第二请求报文,所述第二请求报文携带第一子选项信息,所述第一子选项信息包括第一回程因特网协议Back tracking IP地址。
所述第一分布式网关设备在接收所述第一请求报文后,在所述第一请求报文中插入第一子选项信息,从而生成所述第二请求报文。所述第一子选项信息包括第一Back tracking IP地址。所述第一Back tracking IP地址作为所述第一分布式网关设备的公网侧的网关IP地址,即所述第一分布式网关设备用于与所述DHCP服务器通信的接口IP地址。
另外,根据DHCP协议规定,所述第一子选项信息还包括第一子网因特网协议Subnet IP地址。所述第一Subnet IP地址作为所述第一分布式网关设备的私网侧的网关IP地址,即所述第一分布式网关设备用于与所述DHCP客户端通信的接口IP地址。
例如图4和图5中的步骤(2)所涉及的IP地址,所述第一分布式网关设备在接收所述DHCP Discover报文后,将第一子选项信息插入到所述第一请求报文中,生成所述第二请求报文。其中,Subnet IP地址为10.1.1.1,Backtracking IP地址为100.1.1.1。应当理解,所述第二请求报文并没有改变所述第一请求报文的属性,因此,所述第二请求报文仍然是DHCP Discover报文。
其中,所述第一子选项信息的格式可以参见图6。图6示出了一种子选项信息的实现方式。该子选项可以设置在现有的Option 82中,作为Option 82的一个子选项存在。其中,SubOpt字段表示该子选项的编号,例如设置为“27”,则该子选项可以称为Sub option 27。Len字段表示该子选项的长度为8字节。Subnet IP表示子网因特网协议地址,占用4个字节,a1-a4分别表示4个字节对应的数值,例如Subnet IP为a1.a2.a3.a4。Back tracking IP表示回程因特网协议地址,占用4个字节,b1-b4分别表示4个字节对应的数值,例如Back tracking IP为b1.b2.b3.b4。本申请实施例可以通过该子选项信息实现在无需DHCP服务器支持相应功能的情况下,确保IP地址的正确分配。需要说明的是,在不加特殊说明的情况下,本申请实施例所提及的“子选项”或“子选项信息”均是指图6所示的Sub option 27,其中编号“27”并不能成为本申请的限制,具体的编号数值可以根据相应的标准组织进行确定。
S303、所述第一分布式网关设备向所述DHCP服务器发送所述第二请求报文。
其中,所述二请求报文的源IP地址为所述第一分布式网关的公网侧的网关IP地址,目的IP地址为所述DHCP服务器的IP地址。另外,根据DHCP的协议规定,所述第一分布式网关设备在发送所述第二请求报文时,还会在所述第二请求报文的Giaddr信息中填写所述第一分布式网关设备的私网侧的网关IP地址。所述第一分布式网关设备在发送所述第二请求报文时,起到了DHCP中继的作用。
例如图4和图5中的步骤(2)所示,所述第一分布式网关设备向所述DHCP服务器发送所述第二请求报文。其中,所述第二请求报文的源IP地址为100.1.1.1,目的IP地址为100.1.1.254,Giaddr信息中的地址为10.1.1.1。
S304、所述DHCP服务器接收所述第二请求报文。
由于,所述第二请求报文的目的IP地址为所述DHCP服务器的IP地址,从而确保所述DHCP服务器能够正确的接收到所述第二请求报文。例如图4和图5中的步骤(2)所示。
S305、所述DHCP服务器判断能否解析所述第二请求报文中的第一子选项信息。
实施例中,所述第一分布式网关设备在生成所述第二请求报文时,在第二请求报文中插入了第一子选项信息,例如图6所示的Sub option 27,以确保IP地址的正确分配。所述DHCP服务器在接收到所述第二请求报文后,无需判断自身是否支持Sub option 27功能,而是判断能否解析所述第二请求报文中的第一子选项信息。其中所述“判断”的具体实现方式是:所述DHCP服务器在处理所述第二请求报文时,直接执行对所述第二请求报文的解析操作。如果所述DHCP服务器能够识别所述第一子选项信息,则对所述第一子选项信息进行相应的解析;如果所述DHCP服务器不能识别所述第一子选项信息,则对所述第一子选项信息进行忽略。
接下来的步骤S306-S307针对所述DHCP服务器不能解析所述第一子选项信息的情况进行说明。
S306、所述DHCP服务器不能解析所述第一子选项信息,生成第一应答报文,所述第一应答报文的目的IP地址为Giaddr信息中的地址。
当所述DHCP服务器不能解析所述第二请求报文中的所述第一子选项信息时,所述DHCP服务器根据所述第二请求报文中的Giaddr信息为所述DHCP客户端分配IP地址,并生成所述第一应答报文。其中,所述第一应答报文包括所述第一子选项信息和根据Giaddr信息为所述DHCP客户端分配的IP地址。也就是说,虽然所述DHCP服务器不能解析所述第二请求报文中的所述第一子选项信息,也会将所述第一子选项信息携带在第一应答报文中。并且,所述DHCP服务器会将所述第一应答报文中的目的IP地址设置为所述Giaddr信息中的地址。
例如图4中的步骤(3)所涉及的IP地址,图4示出了所述DHCP服务器在不支持Sub option 27功能情况下的分布式网关与所述DHCP服务器的交互过程。在所述DHCP服务器生成的DHCP Offer报文中,Subnet IP地址为10.1.1.1,Back tracking IP地址为100.1.1.1,也就是说,所述DHCP Offer报文中的第一子选项信息与所述第二请求报文中的第一子选项信息相同。所述DHCP Offer报文的源IP地址是100.1.1.254,目的IP地址为10.1.1.1。另外,所述DHCP服务器还会根据DHCP的协议规定,在所述DHCP Offer报文中携带Giaddr信息,Giaddr信息中的地址例如是10.1.1.1。
S307、所述DHCP服务器发送所述第一应答报文。
所述DHCP服务器根据所述第一应答报文的目的IP地址发送所述第一应答报文。
例如图4中的步骤(3)所示,所述DHCP Offer报文的目的IP地址为10.1.1.1。由于所述第一分布式网关设备和所述第二分布式网关设备的私网侧的网关IP地址相同,均为10.1.1.1。当所述DHCP服务器根据所述DHCP Offer报文的目的IP地址10.1.1.1发送所述DHCP Offer报文时,所述DHCP Offer报文可能被所述第一分布式网关设备接收,如图4中的实线步骤(3)所示;或者,所述DHCP Offer报文可能被所述第二分布式网关设备接收,如图4中的虚线步骤(3)所示。
S308、所述第一分布式网关设备接收所述第一应答报文。
根据实施例前面的描述,在一种可能的实施方式中,所述第一应答报文可能被所述第一分布式网关设备接收。当所述第一分布式网关设备接收到所述第一应答报文时,将触发步骤S309。
S309、所述第一分布式网关设备根据所述第一应答报文中的Back trackingIP地址转发所述第一应答报文。
所述第一分布式网关设备接收到所述第一应答报文后,根据所述第一应答报文中的Back tracking IP地址转发所述第一应答报文。更为具体的实现方式是:所述第一分布式网关设备确定所述第一应答报文中的Back tracking IP地址是否与所述第一分布式网关设备的公网侧的网关IP地址相同。显然,对于本实施例中的所述第一应答报文,所述第一应答报文中的Back tracking IP地址与所述第一分布式网关设备的公网侧的网关IP地址相同。从而说明所述第一应答报文是所述第一分布式网关设备发出的所述第二请求报文的应答报文。所述第一分布式网关设备会将所述第一应答报文发送到所述第一分布式网关设备下游连接的所述DHCP客户端。
例如图4中的步骤(4)所示,所述第一分布式网关设备将所述DHCPOffer报文的源IP地址设置为10.1.1.1,目的IP地址设置为255.255.255.255,以便将所述DHCP Offer报文发送到DHCP客户端1。
在另一种可能的实现方式中,由于分布式网关中的所有分布式网关设备的私网侧的网关IP地址相同,因此,所述第一分布式网关设备接收到的应答报文可能不是所述第一应答报文。例如,所述第一分布式网关设备接收到的应答报文是第三应答报文。其中,所述第三应答报文是其他分布式网关设备发出的请求报文的应答报文,例如,所述第三应答报文是第二分布式网关设备发出的请求报文的应答报文。在这一种可能的实现方式中,步骤S308和S309按照以下方式执行:所述第一分布式网关设备接收到所述第三应答报文后,能够确定所述第三应答报文中的Back tracking IP地址与所述第一分布式网关设备的公网侧的网关IP地址不相同。从而说明所述第三应答报文不是所述第一分布式网关设备发出的所述第二请求报文的应答报文。因此,所述第一分布式网关设备会将所述第三应答报文中的Back tracking IP地址设置为所述第三应答报文的目的IP地址,并将所述第三应答报文转发到其他分布式网关设备,例如转发到所述第二分布式网关设备。从而确保其他分布式网关设备,例如所述第二分布式网关设备,对所述第三应答报文进行正确的处理。
在接下来的步骤S310-S313中,针对上述所提及的分布式网关设备接收到不属于自身处理的应答报文的可能的实现方式,结合所述第一应答报文,进行举例说明。
S310、所述第二分布式网关设备接收所述第一应答报文。
根据实施例前面的描述,所述第一应答报文可能被所述第二分布式网关设备接收。如图4中的虚线步骤(3)所示。当所述第一分布式网关设备接收到所述第一应答报文时,将触发步骤S311。
S311、所述第二分布式网关设备确定所述第一应答报文中的Back trackingIP地址和自身用于与所述DHCP服务器通信的接口IP地址不相同,向所述第一分布式网关设备转发所述第一应答报文。
所述第二分布式网关设备在接收到所述第一应答报文后,确定所述第一应答报文中的Back tracking IP地址是否与所述第二分布式网关设备的公网侧的网关IP地址相同。显然,对于本实施例中的所述第一应答报文,所述第一应答报文中的Back tracking IP地址与所述第二分布式网关设备的公网侧的网关IP地址不相同。从而说明所述第一应答报文不是所述第二分布式网关设备发出的请求报文的应答报文。因此,所述第二分布式网关设备会将所述第一应答报文中的Back tracking IP地址设置为所述第一应答报文的目的IP地址,并将所述第一应答报文转发到所述第一分布式网关设备。
例如图4中的步骤(5)所示,所述第二分布式网关设备在确定所述DHCPOffer报文中的Back tracking IP地址与所述第二分布式网关设备的公网侧的网关IP地址不相同时,将所述DHCP Offer报文的目的IP地址设置为100.1.1.1,向所述第一分布式网关设备转发所述DHCP Offer报文。
S312、所述第一分布式网关设备接收所述第一应答报文。
S313、所述第一分布式网关设备根据所述第一应答报文中的Back trackingIP地址转发所述第一应答报文。
所述第一分布式网关设备接收所述第一应答报文,并根据所述第一应答报文中的Back tracking IP地址转发所述第一应答报文的过程类似前述步骤S308-S309,此处不再进行赘述。
在一种可能的实现方式中,所述DHCP服务器在执行上述步骤S305时,可能得出能够解析所述第一子选项信息的结论。接下来的步骤S314-S317针对所述DHCP服务器能够解析所述第一子选项信息的情况进行说明。
S314、所述DHCP服务器能够解析所述第一子选项信息,生成第二应答报文,所述第二应答报文的目的地址为Back tracking IP地址。
当所述DHCP服务器能够解析所述第二请求报文中的所述第一子选项信息时,所述DHCP服务器根据所述第一子选项信息中的Back tracking IP地址为所述DHCP客户端分配IP地址,并生成所述第二应答报文。其中,所述第二应答报文包括所述第一子选项信息和根据Back tracking IP地址为DHCP客户端分配的IP地址。也就是说,所述DHCP服务器在能够解析所述第二请求报文中的所述第一子选项信息的情况下,也会将所述第一子选项信息携带在第二应答报文中。并且,所述DHCP服务器会将所述第二应答报文中的目的IP地址设置为所述Back tracking IP地址。
例如图5中的步骤(3)所涉及的IP地址,图5示出了所述DHCP服务器在支持Sub option 27功能情况下的分布式网关与所述DHCP服务器的交互过程。在所述DHCP服务器生成的DHCP Offer报文中,Subnet IP地址为10.1.1.1,Back tracking IP地址为100.1.1.1,也就是说,所述DHCP Offer报文中的第一子选项信息与所述第二请求报文中的第一子选项信息相同。所述DHCP Offer报文的源IP地址是100.1.1.254,目的IP地址为100.1.1.1。另外,所述DHCP服务器还会根据DHCP的协议规定,在所述DHCP Offer报文中携带Giaddr信息,Giaddr信息中的地址例如是10.1.1.1。
S315、所述DHCP服务器发送所述第二应答报文。
所述DHCP服务器根据所述第二应答报文的目的IP地址发送所述第二应答报文。
例如图5中的步骤(3)所示,所述DHCP Offer报文的目的IP地址为100.1.1.1。因此,所述DHCP服务器根据所述DHCP Offer报文的目的IP地址100.1.1.1发送的所述DHCP Offer报文,可以被所述第一分布式网关设备接收。
S316、所述第一分布式网关设备接收所述第二应答报文。
S317、所述第一分布式网关设备根据所述第二应答报文中的Back trackingIP地址转发所述第二应答报文。
所述第一分布式网关设备会根据所述第二应答报文中的Back trackingIP地址,将所述第二应答报文发送到所述第一分布式网关设备下游连接的所述DHCP客户端。所述第一分布式网关设备接收所述第二应答报文,并根据所述第二应答报文中的Back tracking IP地址转发所述第二应答报文的过程类似前述步骤S308-S309,此处不再进行赘述。
本实施例提供的DHCP地址分配的方法,通过分布式网关设备在接收到DHCP客户端向DHCP服务器发送用于请求分配IP地址的请求报文后,在请求报文中插入子选项信息,所述子选项信息包括Back tracking IP,使得所述分布式网关设备在接收到应答报文后,可以根据应答报文中的子选项信息对应答报文进行相应的转发,从而在无需DHCP服务器支持相应功能的情况下,也能确保IP地址的正确分配。
可选的,所述第一请求报文和所述第二请求报文是DHCP Discover报文,所述第一应答报文和第二应答报文是DHCP Offer报文。
可选的,所述第一请求报文和所述第二请求报文是DHCP Request报文,所述第一应答报文和第二应答报文是DHCP Ack报文。
可选的,所述分布式网关为以下任意一种:VXLAN分布式网关、VLAN分布式网关、MPLS分布式网关和NVGRE分布式网关。
图7为本申请实施例的第一分布式网关设备700的结构示意图。图7所示的第一分布式网关设备可以执行上述实施例的方法中第一分布式网关设备执行的相应步骤。如图7所示,所述第一分布式网关设备700包括接收单元702,处理单元704和发送单元706,其中:
所述接收单元702,用于接收DHCP客户端向DHCP服务器发送的第一请求报文,所述第一请求报文用于请求分配IP地址,所述DHCP客户端与所述DHCP服务器不属于同一个网段;
所述处理单元704,用于根据所述第一请求报文生成第二请求报文,所述第二请求报文携带第一子选项信息,所述第一子选项信息包括第一Backtracking IP地址,所述第一Back tracking IP地址作为所述第一分布式网关设备用于与所述DHCP服务器通信的接口IP地址;
所述发送单元706,用于向所述DHCP服务器发送所述第二请求报文;
所述接收单元702,还用于接收来自所述DHCP服务器的应答报文,所述应答报文携带第二子选项信息,所述第二子选项信息包括第二Backtracking IP地址;
所述发送单元706,还用于根据所述第二Back tracking IP地址转发所述应答报文。
可选的,所述发送单元706,还用于在所述处理单元704确定所述第二Back tracking IP地址和所述第一分布式网关设备用于与所述DHCP服务器通信的接口IP地址不相同时,将所述应答报文转发给第二分布式网关设备,其中,所述第二Back tracking IP地址作为所述第二分布式网关设备用于与所述DHCP服务器通信的接口IP地址。
可选的,所述发送单元706,还用于在所述处理单元704确定所述第二Back tracking IP地址和所述第一分布式网关设备用于与所述DHCP服务器通信的接口IP地址相同时,将所述应答报文发送给所述DHCP客户端。
图7所示的第一分布式网关设备可以执行上述实施例的方法中第一分布式网关设备执行的相应步骤。从而,实现在无需DHCP服务器支持相应功能的情况下,确保IP地址的正确分配。
图8为本发明实施例的第一分布式网关设备800的硬件结构示意图。图8所示的第一分布式网关设备可以执行上述实施例的方法中第一分布式网关设备执行的相应步骤。
如图8所示,所述第一分布式网关设备800包括处理器801、存储器802、接口803和总线804,其中接口803可以通过无线或有线的方式实现,具体来讲可以是例如网卡等元件,上述处理器801、存储器802和接口803通过总线804连接。
所述接口803具体可以包括发送器和接收器,用于第一分布式网关设备与上述实施例中的所述DHCP客户端或所述DHCP服务器之间收发信息;或者用于第一分布式网关设备向上述实施例中的所述第二分布式网关设备发送信息。其中,所述发送器和接收器均可以由多个硬件单元实现或者由一个独立的硬件单元实现。作为举例,所述接口803用于支持图3中的过程S301、S303、S308、S309、S312、S313、S316和S317。所述处理器801用于执行上述实施例中由第一分布式网关设备进行的处理。作为举例,所述处理器801用于支持图3中的过程S302、S313和S317。存储器802包括操作系统8021和应用程序8022,用于存储程序、代码或指令,当处理器或硬件设备执行这些程序、代码或指令时可以完成图3中涉及第一分布式网关设备的处理过程。
可以理解的是,图8仅仅示出了第一分布式网关设备的简化设计。在实际应用中,第一分布式网关设备可以包含任意数量的接口,处理器,存储器等,而所有可以实现本发明的第一分布式网关设备都在本发明的保护范围之内。
另外,本发明实施例提供了一种计算机存储介质,用于储存为上述第一分布式网关设备所用的计算机软件指令,其包含用于执行上述图3所示实施例所设计的程序。
图9为本申请实施例的DHCP服务器900的结构示意图。图9所示的DHCP服务器可以执行上述实施例的方法中DHCP服务器执行的相应步骤。如图9所示,所述DHCP服务器900包括接收单元902,处理单元904和发送单元906,其中:
所述接收单元902,用于接收来自分布式网关设备的请求报文,所述请求报文携带子选项信息以及Giaddr信息,所述子选项信息包括Back trackingIP地址,所述Back tracking IP地址作为所述分布式网关设备用于与所述DHCP服务器通信的接口IP地址;
所述处理单元904,用于确定是否能够解析所述请求报文中的所述子选项信息;
当所述处理单元904不能解析所述请求报文中的所述子选项信息时,所述处理单元904还用于生成第一应答报文,所述第一应答报文包括所述子选项信息和根据所述Giaddr信息为所述DHCP客户端分配的IP地址,所述第一应答报文的目的IP地址为所述Giaddr信息中的地址,所述DHCP客户端与所述DHCP服务器不属于同一个网段;
所述发送单元906,用于根据所述第一应答报文的目的IP地址发送所述第一应答报文。
可选的,当所述处理单元904能够解析所述请求报文中的所述子选项信息时,所述处理单元904还用于生成第二应答报文,所述第二应答报文包括所述子选项信息和根据所述Back tracking IP地址为DHCP客户端分配的IP地址,所述第二应答报文的目的IP地址为所述Back tracking IP地址;
所述发送单元906,还用于根据所述第二应答报文的目的IP地址发送所述第二应答报文。
图9所示的DHCP服务器可以执行上述实施例的方法中DHCP服务器执行的相应步骤。从而,实现在无需DHCP服务器支持相应功能的情况下,确保IP地址的正确分配。
图10为本发明实施例的DHCP服务器1000的硬件结构示意图。图10所示的DHCP服务器可以执行上述实施例的方法中DHCP服务器执行的相应步骤。
如图10所示,所述DHCP服务器1000包括处理器1001、存储器1002、接口1003和总线1004,其中接口1003可以通过无线或有线的方式实现,具体来讲可以是例如网卡等元件,上述处理器1001、存储器1002和接口1003通过总线1004连接。
所述接口1003具体可以包括发送器和接收器,用于DHCP服务器与上述实施例中的所述分布式网关设备之间收发信息。其中,所述发送器和接收器均可以由多个硬件单元实现或者由一个独立的硬件单元实现。作为举例,所述接口1003用于支持图3中的过程S304、S307和S315。所述处理器1001用于执行上述实施例中由DHCP服务器进行的处理。作为举例,所述处理器1001用于支持图3中的过程S305、S306和S314。存储器1002包括操作系统10021和应用程序10022,用于存储程序、代码或指令,当处理器或硬件设备执行这些程序、代码或指令时可以完成图3中涉及DHCP服务器的处理过程。
可以理解的是,图10仅仅示出了DHCP服务器的简化设计。在实际应用中,DHCP服务器可以包含任意数量的接口,处理器,存储器等,而所有可以实现本发明的DHCP服务器都在本发明的保护范围之内。
另外,本发明实施例提供了一种计算机存储介质,用于储存为上述DHCP服务器所用的计算机软件指令,其包含用于执行上述图3所示实施例所设计的程序。
在上述图7-图10所示的实现方式的任一种实现方式中,可选的,所述第一请求报文和所述第二请求报文是DHCP Discover报文,所述应答报文是DHCP Offer报文。
在上述图7-图10所示的实现方式的任一种实现方式中,可选的,所述第一请求报文和所述第二请求报文是DHCP Request报文,所述应答报文是DHCP ACK报文。
在上述图7-图10所示的实现方式的任一种实现方式中,可选的,所述分布式网关为以下任意一种:VXLAN分布式网关、VLAN分布式网关、MPLS分布式网关和NVGRE分布式网关。
另外,本发明实施例还提供了一种网络系统,如图4或图5所示。所述网络系统可以包括前述图7或图8对应的实施例提供的第一分布式网关设备、图9或图10对应的实施例提供的DHCP服务器。在此不再对第一分布式网关设备和DHCP服务器进行赘述。
结合本发明公开内容所描述的方法或者算法的步骤可以硬件的方式来实现,也可以是由处理器执行软件指令的方式来实现。软件指令可以由相应的软件模块组成,软件模块可以被存放于RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、移动硬盘、CD-ROM或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于ASIC中。另外,该ASIC可以位于用户设备中。当然,处理器和存储介质也可以作为分立组件存在于用户设备中。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。
Claims (20)
1.一种动态主机配置协议DHCP地址分配的方法,所述方法用于分布式网关,其特征在于,所述方法包括:
第一分布式网关设备接收DHCP客户端向DHCP服务器发送的第一请求报文,所述第一请求报文用于请求分配因特网协议IP地址,所述DHCP客户端与所述DHCP服务器不属于同一个网段;
所述第一分布式网关设备根据所述第一请求报文生成第二请求报文,所述第二请求报文携带第一子选项信息,所述第一子选项信息包括第一回程因特网协议Back tracking IP地址,所述第一Back tracking IP地址作为所述第一分布式网关设备用于与所述DHCP服务器通信的接口IP地址;
所述第一分布式网关设备向所述DHCP服务器发送所述第二请求报文;
所述第一分布式网关设备接收来自所述DHCP服务器的应答报文,所述应答报文携带第二子选项信息,所述第二子选项信息包括第二Back trackingIP地址;
所述第一分布式网关设备根据所述第二Back tracking IP地址转发所述应答报文。
2.根据权利要求1所述的方法,其特征在于,所述第一分布式网关设备根据所述第二Back tracking IP地址转发所述应答报文,包括:
所述第一分布式网关设备确定所述第二Back tracking IP地址和所述第一分布式网关设备用于与所述DHCP服务器通信的接口IP地址不相同时,将所述应答报文转发给第二分布式网关设备,其中,所述第二Back trackingIP地址作为所述第二分布式网关设备用于与所述DHCP服务器通信的接口IP地址。
3.根据权利要求1所述的方法,其特征在于,所述第一分布式网关设备根据所述第二Back tracking IP地址转发所述应答报文,包括:
所述第一分布式网关设备确定所述第二Back tracking IP地址和所述第一分布式网关设备用于与所述DHCP服务器通信的接口IP地址相同时,将所述应答报文发送给所述DHCP客户端。
4.根据权利要求1至3任一项所述的方法,其特征在于,
所述第一请求报文和所述第二请求报文是DHCP Discover报文,所述应答报文是DHCP Offer报文。
5.根据权利要求1至3任一项所述的方法,其特征在于,
所述第一请求报文和所述第二请求报文是DHCP Request报文,所述应答报文是DHCP ACK报文。
6.根据权利要求1至5任一项所述的方法,其特征在于,
所述第一子选项信息还包括第一子网因特网协议SubnetIP地址,所述第一Subnet地址是所述第一分布式网关设备用于与所述DHCP客户端通信的接口IP地址;
所述第二子选项信息还包括第二SubnetIP地址。
7.根据权利要求1至6任一项所述的方法,其特征在于,
所述分布式网关为以下任意一种:虚拟扩展局域网VXLAN分布式网关、虚拟局域网VLAN分布式网关、多协议标记交换MPLS分布式网关和网络虚拟化通用路由封装NVGRE分布式网关。
8.一种动态主机配置协议DHCP地址分配的方法,所述方法用于分布式网关,其特征在于,所述方法包括:
DHCP服务器接收来自分布式网关设备的请求报文,所述请求报文携带子选项信息以及Giaddr信息,所述子选项信息包括回程因特网协议Backtracking IP地址,所述Back tracking IP地址作为所述分布式网关设备用于与所述DHCP服务器通信的接口因特网协议IP地址;
所述DHCP服务器确定是否能够解析所述请求报文中的所述子选项信息;
当所述DHCP服务器不能解析所述请求报文中的所述子选项信息时,生成第一应答报文,所述第一应答报文包括所述子选项信息和根据所述Giaddr信息为DHCP客户端分配的IP地址,所述第一应答报文的目的IP地址为所述Giaddr信息中的地址,所述DHCP客户端与所述DHCP服务器不属于同一个网段;
所述DHCP服务器根据所述第一应答报文的目的IP地址发送所述第一应答报文。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:
当所述DHCP服务器能够解析所述请求报文中的所述子选项信息时,生成第二应答报文,所述第二应答报文包括所述子选项信息和根据所述Backtracking IP地址为DHCP客户端分配的IP地址,所述第二应答报文的目的IP地址为所述Back tracking IP地址;
所述DHCP服务器根据所述第二应答报文的目的IP地址发送所述第二应答报文。
10.根据权利要求8或9所述的方法,其特征在于,
所述请求报文是DHCP Discover报文,所述第一应答报文和所述第二应答报文是DHCP Offer报文。
11.根据权利要求8或9所述的方法,其特征在于,
所述请求报文是DHCP Request报文,所述第一应答报文和所述第二应答报文是DHCP ACK报文。
12.根据权利要求8至11任一项所述的方法,其特征在于,
所述子选项信息还包括子网因特网协议SubnetIP地址,所述Subnet地址是所述分布式网关设备用于与所述DHCP客户端通信的接口IP地址。
13.根据权利要求8至12任一项所述的方法,其特征在于,
所述分布式网关为以下任意一种:虚拟扩展局域网VXLAN分布式网关、虚拟局域网VLAN分布式网关、多协议标记交换MPLS分布式网关和网络虚拟化通用路由封装NVGRE分布式网关。
14.一种第一分布式网关设备,所述第一分布式网关设备为分布式网关中的网关设备,其特征在于,所述第一分布式网关设备包括:
接收单元,用于接收动态主机配置协议DHCP客户端向DHCP服务器发送的第一请求报文,所述第一请求报文用于请求分配因特网协议IP地址,所述DHCP客户端与所述DHCP服务器不属于同一个网段;
处理单元,用于根据所述第一请求报文生成第二请求报文,所述第二请求报文携带第一子选项信息,所述第一子选项信息包括第一回程因特网协议Back tracking IP地址,所述第一Back tracking IP地址作为所述第一分布式网关设备用于与所述DHCP服务器通信的接口IP地址;
发送单元,用于向所述DHCP服务器发送所述第二请求报文;
所述接收单元,还用于接收来自所述DHCP服务器的应答报文,所述应答报文携带第二子选项信息,所述第二子选项信息包括第二Back tracking IP地址;
所述发送单元,还用于根据所述第二Back tracking IP地址转发所述应答报文。
15.根据权利要求14所述的第一分布式网关设备,其特征在于,
所述发送单元,还用于在所述处理单元确定所述第二Back tracking IP地址和所述第一分布式网关设备用于与所述DHCP服务器通信的接口IP地址不相同时,将所述应答报文转发给第二分布式网关设备,其中,所述第二Back tracking IP地址作为所述第二分布式网关设备用于与所述DHCP服务器通信的接口IP地址。
16.根据权利要求14所述的第一分布式网关设备,其特征在于,
所述发送单元,还用于在所述处理单元确定所述第二Back tracking IP地址和所述第一分布式网关设备用于与所述DHCP服务器通信的接口IP地址相同时,将所述应答报文发送给所述DHCP客户端。
17.根据权利要求14至16任一项所述的方法,其特征在于,
所述分布式网关为以下任意一种:虚拟扩展局域网VXLAN分布式网关、虚拟局域网VLAN分布式网关、多协议标记交换MPLS分布式网关和网络虚拟化通用路由封装NVGRE分布式网关。
18.一种动态主机配置协议DHCP服务器,所述DHCP服务器用于经由分布式网关向DHCP客户端分配因特网协议IP地址,其特征在于,所述DHCP服务器包括:
接收单元,用于接收来自分布式网关设备的请求报文,所述请求报文携带子选项信息以及Giaddr信息,所述子选项信息包括回程因特网协议Backtracking IP地址,所述Back tracking IP地址作为所述分布式网关设备用于与所述DHCP服务器通信的接口IP地址;
处理单元,用于确定是否能够解析所述请求报文中的所述子选项信息;
当所述处理单元不能解析所述请求报文中的所述子选项信息时,所述处理单元还用于生成第一应答报文,所述第一应答报文包括所述子选项信息和根据所述Giaddr信息为所述DHCP客户端分配的IP地址,所述第一应答报文的目的IP地址为所述Giaddr信息中的地址,所述DHCP客户端与所述DHCP服务器不属于同一个网段;
发送单元,用于根据所述第一应答报文的目的IP地址发送所述第一应答报文。
19.根据权利要求18所述的DHCP服务器,其特征在于,
当所述处理单元能够解析所述请求报文中的所述子选项信息时,所述处理单元还用于生成第二应答报文,所述第二应答报文包括所述子选项信息和根据所述Back tracking IP地址为DHCP客户端分配的IP地址,所述第二应答报文的目的IP地址为所述Back tracking IP地址;
所述发送单元,还用于根据所述第二应答报文的目的IP地址发送所述第二应答报文。
20.根据权利要求18或19所述的DHCP服务器,其特征在于,
所述分布式网关为以下任意一种:虚拟扩展局域网VXLAN分布式网关、虚拟局域网VLAN分布式网关、多协议标记交换MPLS分布式网关和网络虚拟化通用路由封装NVGRE分布式网关。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610465081.1A CN107547665B (zh) | 2016-06-23 | 2016-06-23 | 一种dhcp地址分配的方法、设备及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610465081.1A CN107547665B (zh) | 2016-06-23 | 2016-06-23 | 一种dhcp地址分配的方法、设备及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107547665A true CN107547665A (zh) | 2018-01-05 |
CN107547665B CN107547665B (zh) | 2021-02-09 |
Family
ID=60959820
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610465081.1A Active CN107547665B (zh) | 2016-06-23 | 2016-06-23 | 一种dhcp地址分配的方法、设备及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107547665B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108429822A (zh) * | 2018-02-12 | 2018-08-21 | 新华三技术有限公司 | 通信系统、IPv6地址分配方法、装置及分布式网关 |
CN108600408A (zh) * | 2018-03-30 | 2018-09-28 | 新华三技术有限公司 | 请求地址的方法及装置 |
CN109495369A (zh) * | 2018-12-27 | 2019-03-19 | 新华三技术有限公司 | 一种报文转发方法及装置 |
CN110493135A (zh) * | 2018-05-15 | 2019-11-22 | 佳能株式会社 | 通信装置、控制方法以及计算机可读存储介质 |
CN111835879A (zh) * | 2020-06-18 | 2020-10-27 | 烽火通信科技股份有限公司 | 一种基于dhcp relay协议的报文处理方法及中继设备 |
CN113194162A (zh) * | 2021-04-28 | 2021-07-30 | 浙江宇视科技有限公司 | 一种数据传输方法、装置、电子设备及介质 |
CN117527569A (zh) * | 2023-12-05 | 2024-02-06 | 深圳市皖通邮电科技有限公司 | Dhcp客户机自动适配dhcp网关的方法、设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101527740A (zh) * | 2009-05-05 | 2009-09-09 | 杭州华三通信技术有限公司 | 一种动态地址分配的方法、装置及系统 |
CN102404418A (zh) * | 2011-11-18 | 2012-04-04 | 华为数字技术有限公司 | 为用户终端分配ip地址的方法、装置和系统 |
CN103533091A (zh) * | 2012-07-02 | 2014-01-22 | 杭州华三通信技术有限公司 | DHCP中继relay处理单播报文的方法和设备 |
CN104104747A (zh) * | 2014-07-28 | 2014-10-15 | 杭州华三通信技术有限公司 | 报文传输方法及装置 |
US20150124823A1 (en) * | 2013-11-05 | 2015-05-07 | Cisco Technology, Inc. | Tenant dhcp in an overlay network |
-
2016
- 2016-06-23 CN CN201610465081.1A patent/CN107547665B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101527740A (zh) * | 2009-05-05 | 2009-09-09 | 杭州华三通信技术有限公司 | 一种动态地址分配的方法、装置及系统 |
CN102404418A (zh) * | 2011-11-18 | 2012-04-04 | 华为数字技术有限公司 | 为用户终端分配ip地址的方法、装置和系统 |
CN103533091A (zh) * | 2012-07-02 | 2014-01-22 | 杭州华三通信技术有限公司 | DHCP中继relay处理单播报文的方法和设备 |
US20150124823A1 (en) * | 2013-11-05 | 2015-05-07 | Cisco Technology, Inc. | Tenant dhcp in an overlay network |
CN104104747A (zh) * | 2014-07-28 | 2014-10-15 | 杭州华三通信技术有限公司 | 报文传输方法及装置 |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108429822A (zh) * | 2018-02-12 | 2018-08-21 | 新华三技术有限公司 | 通信系统、IPv6地址分配方法、装置及分布式网关 |
CN108600408A (zh) * | 2018-03-30 | 2018-09-28 | 新华三技术有限公司 | 请求地址的方法及装置 |
CN110493135A (zh) * | 2018-05-15 | 2019-11-22 | 佳能株式会社 | 通信装置、控制方法以及计算机可读存储介质 |
US11509625B2 (en) | 2018-05-15 | 2022-11-22 | Canon Kabushiki Kaisha | Communication apparatus, control method, and computer-readable storage medium |
CN109495369A (zh) * | 2018-12-27 | 2019-03-19 | 新华三技术有限公司 | 一种报文转发方法及装置 |
CN109495369B (zh) * | 2018-12-27 | 2020-11-27 | 新华三技术有限公司 | 一种报文转发方法及装置 |
CN111835879A (zh) * | 2020-06-18 | 2020-10-27 | 烽火通信科技股份有限公司 | 一种基于dhcp relay协议的报文处理方法及中继设备 |
CN111835879B (zh) * | 2020-06-18 | 2022-06-24 | 烽火通信科技股份有限公司 | 一种基于dhcp relay协议的报文处理方法及中继设备 |
CN113194162A (zh) * | 2021-04-28 | 2021-07-30 | 浙江宇视科技有限公司 | 一种数据传输方法、装置、电子设备及介质 |
CN117527569A (zh) * | 2023-12-05 | 2024-02-06 | 深圳市皖通邮电科技有限公司 | Dhcp客户机自动适配dhcp网关的方法、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN107547665B (zh) | 2021-02-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112470436B (zh) | 用于提供多云连通性的系统、方法、以及计算机可读介质 | |
CN111917649B (zh) | 虚拟私有云通信及配置方法以及相关装置 | |
CN107547665A (zh) | 一种dhcp地址分配的方法、设备及系统 | |
CN103200069B (zh) | 一种报文处理的方法和设备 | |
CN106101023B (zh) | 一种vpls报文处理方法及设备 | |
CN105763385B (zh) | 流量调度方法及装置 | |
JP6722816B2 (ja) | パケット転送 | |
KR101995145B1 (ko) | Ue들 및 고정 액세스 네트워크에서 작동하는 방법 | |
CN102469004A (zh) | 虚拟机网络系统及其创建方法 | |
CN106209553A (zh) | 报文处理方法、设备及系统 | |
CN105227466B (zh) | 通信处理方法和装置 | |
US11088869B2 (en) | Virtual private network interworking | |
EP3420687B1 (en) | Addressing for customer premises lan expansion | |
CN104079486A (zh) | 一种网关及其传送数据的方法 | |
CN103825826B (zh) | 一种动态路由的实现方法和装置 | |
WO2020209099A1 (ja) | 通信システム及び通信方法 | |
CN110213148A (zh) | 一种数据传输的方法、系统及装置 | |
CN104539902A (zh) | 一种ipc的远程访问方法和系统 | |
CN107809386A (zh) | Ip地址转换方法、路由设备和通信系统 | |
CN109462537B (zh) | 一种跨网络互通方法和装置 | |
CN111130978B (zh) | 网络流量转发方法、装置、电子设备及机器可读存储介质 | |
CN109728926A (zh) | 通信方法以及网络设备 | |
CN108259205A (zh) | 一种路由发布方法及网络设备 | |
CN105871676A (zh) | 一种桌面云中远端虚拟机的网络连接方法及系统 | |
CN115665026A (zh) | 一种集群组网的方法和装置 |
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 |