CN108429822B - 通信***、IPv6地址分配方法、装置及分布式网关 - Google Patents
通信***、IPv6地址分配方法、装置及分布式网关 Download PDFInfo
- Publication number
- CN108429822B CN108429822B CN201810146289.6A CN201810146289A CN108429822B CN 108429822 B CN108429822 B CN 108429822B CN 201810146289 A CN201810146289 A CN 201810146289A CN 108429822 B CN108429822 B CN 108429822B
- Authority
- CN
- China
- Prior art keywords
- ipv6 address
- dhcpv6
- message
- distributed gateway
- vsi
- 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.)
- Active
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]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4633—Interconnection of networks using encapsulation techniques, e.g. tunneling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4641—Virtual LANs, VLANs, e.g. virtual private networks [VPN]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/66—Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2101/00—Indexing scheme associated with group H04L61/00
- H04L2101/60—Types of network addresses
- H04L2101/618—Details of network addresses
- H04L2101/659—Internet protocol version 6 [IPv6] addresses
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
Abstract
本申请提供一种通信***、IPv6地址分配方法、装置及分布式网关,通信***包括至少两个分布式网关,通信***中的分布式网关在接收到终端设备发送的用于发现DHCPv6服务器的DHCPv6报文时,根据该DHCPv6报文获得终端设备的标识信息以及接收到该DHCPv6报文的VSI接口的网络前缀,根据获得的标识信息及网络前缀生成IPv6地址,并将生成的IPv6地址分配给终端设备。通过分布式网关为终端设备分配IPv6地址,可以避免分布式网关在DHCPv6服务器与终端设备在不同网段时,对终端设备发送的报文进行中继,导致终端设备无法接收到相应的应答报文,所造成的无法为终端设备分配IPv6地址的问题。
Description
技术领域
本申请涉及通信技术领域,具体而言,涉及一种通信***、IPv6地址分配方法、装置及分布式网关。
背景技术
随着互联网应用的快速发展,互联网用户的数量越来越多,而IPv4(InternetProtocol Version 4,互联网协议版本4)地址的网络地址资源有限,严重制约了互联网的应用和发展。为此,IPv6(Internet Protocol Version 6,互联网协议版本6)应运而生,解决了网络地址资源有限的问题。
目前,可以通过部署DHCPv6(Dynamic Host Configuration Protocol for IPv6,支持IPv6的动态主机配置协议)服务器,由DHCPv6服务器为终端设备分配IPv6地址。当终端设备与DHCPv6服务器不在同一网段时,可以通过DHCPv6中继,将终端设备发送的报文中继到DHCPv6服务器。
然而,在分布式网关组网中,当终端设备与DHCPv6服务器在不同网段时,无法为终端设备分配IPv6地址。
发明内容
有鉴于此,本申请的目的在于提供一种通信***、IPv6地址分配方法、装置及分布式网关,以改善上述问题。
为了达到上述目的,本申请实施例提供一种通信***,包括至少两个分布式网关;
分布式网关在接收到终端设备发送的用于发现DHCPv6服务器的DHCPv6报文时,根据该DHCPv6报文获得终端设备的标识信息以及接收到该DHCPv6报文的VSI接口的网络前缀,根据标识信息及VSI接口的网络前缀生成IPv6地址,并将该IPv6地址分配给所述终端设备。
可选地,分布式网关在接收到终端设备发送的用于延续IPv6地址租约的DHCPv6报文时,向该终端设备发送对应的应答报文。
可选地,分布式网关以VSI接口的网络前缀为IPv6地址前缀,以标识信息为接口标识符,生成所述IPv6地址。
可选地,分布式网关判断接收到DHCPv6报文的VSI接口是否为VXLAN隧道接口,当接收到DHCPv6报文的VSI接口不是VXLAN隧道接口时,再执行所述根据标识信息及VSI接口的网络前缀生成IPv6地址的步骤;和/或
禁止分布式网关转发DHCPv6报文。
本申请实施例还提供一种IPv6地址分配方法,应用于包括至少两个分布式网关的通信***,该方法包括:
分布式网关在接收到终端设备发送的用于发现DHCPv6服务器的DHCPv6报文时,根据该DHCPv6报文获得终端设备的标识信息以及接收到该DHCPv6报文的VSI接口的网络前缀;
根据标识信息及VSI接口的网络前缀生成IPv6地址,并将该IPv6地址分配给所述终端设备。
可选地,该方法还包括:
分布式网关在接收到终端设备发送的用于延续IPv6地址租约的报文时,向终端设备发送对应的应答报文。
可选地,根据标识信息及VSI接口的网络前缀生成IPv6地址,包括:
分布式网关以VSI接口的网络前缀为IPv6地址前缀,以标识信息为接口标识符,生成IPv6地址。
可选地,该方法还包括:
分布式网关判断接收到DHCPv6报文的VSI接口是否为VXLAN隧道接口,
当接收到DHCPv6报文的VSI接口不是VXLAN隧道接口时,再执行根据标识信息及VSI接口的网络前缀生成IPv6地址的步骤;和/或
禁止分布式网关转发该DHCPv6报文。
本申请实施例还提供一种IPv6地址分配装置,应用于分布式网关,该装置包括:
获得模块,用于在分布式网关接收到终端设备发送的用于发现DHCPv6服务器的DHCPv6报文时,根据该DHCPv6报文获得终端设备的标识信息以及接收到该DHCPv6报文的VSI接口的网络前缀;
地址分配模块,用于根据标识信息及VSI接口的网络前缀生成IPv6地址,并将该IPv6地址分配给所述终端设备。
可选地,该装置还包括:
应答模块,用于在分布式网关接收到终端设备发送的用于延续IPv6地址租约的报文时,向终端设备发送对应的应答报文。
可选地,该装置还包括:
判断模块,用于判断接收到DHCPv6报文的VSI接口是否为VXLAN隧道接口,若否,再触发地址分配模块根据标识信息及VSI接口的网络前缀生成IPv6地址;和/或
禁止转发模块,用于禁止分布式网关转发该DHCPv6报文。
本申请实施例还提供一种分布式网关,包括存储器、处理器及本申请实施例提供的IPv6地址分配装置,IPv6地址分配装置存储在存储器中,并被配置成由处理器控制执行。
相较于现有技术,本申请具有以下有益效果:
本申请实施例提供一种通信***、IPv6地址分配方法、装置及分布式网关,通信***中的分布式网关在接收到终端设备发送的用于发现DHCPv6服务器的DHCPv6报文时,根据该DHCPv6报文获得终端设备的标识信息以及接收到该DHCPv6报文的VSI接口的网络前缀,根据获得的标识信息及网络前缀生成IPv6地址,并将生成的IPv6地址分配给终端设备。通过分布式网关为终端设备分配IPv6地址,可以避免分布式网关在DHCPv6服务器与终端设备在不同网段时对终端设备发送的报文进行中继,导致终端设备无法接收到相应的应答报文,从而产生的无法成功为终端设备分配IPv6地址的问题。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的一种通信***的示意图;
图2为本申请实施例提供的一种分布式网关的方框示意图;
图3为本申请实施例提供的一种IPv6地址分配方法的流程示意图;
图4为本申请实施例提供的一种IPv6地址分配装置的功能模块框图。
图标:10-通信***;100、101-分布式网关;110-IPv6地址分配装置;111-获得模块;112-地址分配模块;113-应答模块;114-判断模块;115-禁止转发模块;120-存储器;130-处理器;140-转发芯片;200、201、202、203-终端设备;300-DHCPv6服务器。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
VXLAN(Virtual eXtensible Local Area Network,可扩展虚拟局域网络)可以实现跨地域的终端设备之间的二层互联,其中,属于同一VXLAN的终端设备处于同一逻辑二层网络,彼此之间二层互通;属于不同VXLAN的终端设备之间二层隔离。若要实现不同VXLAN内的终端设备之间的通信,或是要实现VXLAN内的终端设备与非VXLAN内的终端设备之间的通信,则需要部署VXLAN IP网关(又称“VXLAN三层网关”)。
VXLAN IP网关分为集中式网关和分布式网关,在集中式网关组网的通信***中,不同VXLAN之间的流量及每个VXLAN访问外界网络的流量均由集中式网关处理,集中式网关的压力较大,网络带宽资源消耗剧烈。为此,通常采用分布式网关组网方式,即部署至少两个分布式网关,每个分布式网关均可以对本地的终端设备的流量进行转发,分担了网关的处理压力。
应当理解,本申请实施例中的分布式网关可以为,但不限于,分布式VXLAN IP网关,即分布式三层网关。
如图1所示,是本申请实施例提供的一种通信***10的示意图。通信***10包括至少两个分布式网关(如图1示出的分布式网关100及分布式网关101)。各分布式网关具有相同的IPv6地址,比如,图1中的分布式网关100和分布式网关101的IPv6地址相同。每个分布式网关上都创建有VSI(Virtual Switch Interface,虚拟交换接口)接口,每个VSI接口对应一个VXLAN。不同分布式网关上的相同VSI接口配置有相同的IPv6地址,以作为该VSI接口对应的VXLAN内的终端设备的网关地址。
以图1所示为例,为了实现终端设备200与终端设备202之间的报文传输,可以为终端设备200和终端设备201划分相同的VXLAN,如VXLAN10,分别在分布式网关100和分布式网关101上创建VSI接口10,并在分布式网关100和分布式网关101中记录VXLAN10与VSI接口10的对应关系。为了实现终端设备201与203之间的报文传输,可以为终端设备201与终端设备203划分相同的VXLAN,如VXLAN20,分别在分布式网关100和分布式网关101上创建VSI接口20,并在分布式网关100和分布式网关101上记录VXLAN20与VSI接口20的对应关系。
其中,分布式网关100上的VSI接口10与分布式网关101上的VSI接口10的IPv6地址相同,例如,可以为2003::1,则2003::1即为VXLAN10的网关地址。分布式网关100上的VSI接口20与分布式网关101上的VSI接口20的IPv6地址相同,例如,可以为2003::2,则2003::2为VXLAN20的网关地址。
在实际应用中,通常可以通过DHCPv6服务器来为上述的终端设备200、终端设备201、终端设备202及终端设备203分配IPv6地址。然而,当DHCPv6服务器与某一终端设备不在同一网段时,则DHCPv6服务器无法成功为该终端设备分配IPv6地址。
请再次参阅图1,假如DHCPv6服务器300与分布式网关101上创建的VSI接口30相连,属于与VSI接口30对应的VXLAN30,则终端设备200、终端设备201、终端设备202及终端设备203与DHCPv6服务器300均不在同一网段,此时需要在分布式网关100与分布式网关101上开启DHCPv6Relay(中继)功能,以将终端设备200、终端设备201、终端设备202及终端设备203发送的DHCPv6协议报文中继到DHCPv6服务器300。
以终端设备200为例,假设终端设备200向DHCPv6服务器300发送DHCPv6请求(Request)报文,则该Request报文会先到达分布式网关100,分布式网关100会将该Request报文中继到DHCPv6服务器300。分布式网关100在对该Request报文进行中继时,会将其源IPv6地址修改为自己的IPv6地址。然而,由于分布式网关100与分布式网关101具有相同的IPv6地址,当DHCPv6服务器300返回应答(Reply)报文时,该Reply报文将无法被发送到分布式网关100,也就无法被返回到终端设备100,从而无法为终端设备100分配IPv6地址。
在IPv4中,上述问题可以通过广播的方式解决,而在IPv6中,并不存在广播机制,因而无法解决上述问题。
基于上述研究,本实施例提供一种IPv6地址分配方法、装置及分布式网关,以改善上述问题,下面以分布式网关100为例进行详细阐述。
如图2所示,是本申请实施例提供的分布式网关100的一种方框示意图。分布式网关100包括IPv6地址分配装置110、存储器120及处理器130。
存储器120及处理器130相互之间可以直接或间接地电性连接,以实现数据的传输或交互。IPv6地址分配装置110包括至少一个可以软件(software)或固件(firmware)的形式存储在存储器120中的计算机程序或软件功能模块,处理器130用于执行存储在存储器120中的可执行模块,如存储在存储器120中的IPv6地址分配装置110。
可选地,分布式网关100还可以包括转发芯片140,各VSI接口接收到的报文可通过转发芯片140上送到处理器130。
应当理解,分布式网关100还可以包括比图2所示更多或更少的组件,也可以具有与图2所示完全不同的配置,本实施例对此不做限制。图2所示的组件可以通过软件、硬件或其组合实现。对应地,分布式网关也可通过硬件和/或软件实现。
值得说明的是,在本实施例中,终端设备既可以是物理机,也可以是运行在物理机上的虚拟机。
如图3所示,是本申请实施例提供的一种可应用于图1所示通信***10的IPv6地址分配方法的流程示意图。下面对该方法的具体流程及步骤做详细阐述。
步骤S301,分布式网关在接收到终端设备发送的用于发现DHCPv6服务器的DHCPv6报文时,根据该DHCPv6报文获得该终端设备的标识信息以及接收到该DHCPv6报文的VSI接口的网络前缀。
其中,用于发现DHCPv6服务器的DHCPv6报文可以是Solicit报文。通过DHCPv6服务器分配IPv6地址时,DHCPv6客户端(如,请求分配IPv6地址的终端设备)会先组播用于发现DHCPv6服务器的Solicit报文,该Solicit报文的目的IPv6地址为组播地址FF02::0:1:2,其中,FF02::0:1:2为网络中所有DHCPv6服务器及DHCPv6中继代理的组播地址。
接收到该Solicit报文的DHCPv6服务器会反馈相应的Advertise报文,当DHCPv6客户端接收到多个Advertise报文时,会根据接收到该多个Advertise报文的先后顺序、发送该多个Advertise报文的DHCPv6服务器的优先级等从中确定一个DHCPv6服务器,并向该DHCPv6服务器单播Request报文,以请求DHCPv6服务器分配IPv6地址。
在本实施例中,仍旧是通过DHCPv6协议实现IPv6地址的分配,只是分配的操作是由分布式网关实现,而非DHCPv6服务器。但DHCPv6客户端仍旧会发送Solicit报文,由于网络中不存在DHCPv6服务器,因此并不会有相应的Advertise报文被发送到DHCPv6客户端,IPv6地址的分配过程将无法完成。
基于此,本实施例中,分布式网关在接收到终端设备发送的Solicit报文时,即为该终端设备分配IPv6地址。
值得说明的是,在本实施例中,每个分布式网关的各VSI接口均配置有开启IPv6地址分配功能的指令,配置有该指令的VSI接口即可识别出DHCPv6协议报文。
实施时,通信***中的各分布式网关在接收到Solicit报文时,均会执行步骤S301。下面以分布式网关100为例,对步骤S301做详细阐述。
假设终端设备200组播一Solicit报文,则该Solicit报文会被发送至分布式网关100的VSI接口10。需要说明的是,该Solicit报文中携带有终端设备200的DUID(DHCPv6Unique Identifier,DHCPv6唯一标识)。当分布式网关的VSI接口10接收到该Solicit报文时,可以将接收到该Solicit报文的VSI接口(即VSI接口10)的IPv6地址携带在该Solicit报文中,并通过转发芯片140上送至处理器130。当处理器130接收到VSI接口10上送的Solicit报文时,即可从中获得终端设备200的DUID及VSI接口10的IPv6地址。
IPv6地址可由网络前缀和接口标识符两部分组成,通常被表示为IPv6地址/前缀长度,其中,前缀长度表示IPv6地址中网络前缀的位数。因此,在获得VSI接口10的IPv6地址后,可以进一步根据VSI接口10的IPv6地址的前缀长度,获得VSI接口10的IPv6地址的网络前缀。例如,假设存在IPv6地址2000::1/64,则根据该IPv6地址的前缀长度64即可得知其网络前缀为2000:0000:0000:0000。
步骤S302,根据标识信息及VSI接口的网络前缀生成IPv6地址,并将该IPv6地址分配给所述终端设备。
实施时,可以以获得的VSI接口的网络前缀为IPv6地址前缀(即,待生成的IPv6地址的网络前缀),以获得的标识信息为接口标识符生成IPv6地址,并将生成的IPv6地址通过Reply报文发送给该终端设备。
仍旧以上述终端设备200及分布式网关100为例,假设,分布式网关100的VSI接口10的IPv6地址为2000::1,前缀长度为64,终端设备200的DUID为0010-8400-0001,则VSI接口10的IPv6地址的网络前缀为2000::/64,则生成的IPv6地址为2000::0010:8400:0001。
可选地,实施时,可以采用相应的算法(如MD5算法)对终端设备200的DUID进行扩展,将扩展得到的信息作为接口标识符,生成IPv6地址。
值得说明的是,本实施例中,分布式网关生成的IPv6地址为全球单播地址。
应当理解,在本实施例中,可以是通信***10中的部分分布式网关执行上述IPv6地址分配方法,如此,可以成功为该部分分布式网关连接的各终端设备成功分配IPv6地址,而不会出现所述各终端设备与DHCPv6服务器在不同网段所导致的无法分配IPv6地址的问题。
也可以是通信***10中的所有分布式网关均执行上述IPv6地址分配方法,如此,可以为***中所有的终端设备成功分配IPv6地址。不会出现终端设备与DHCPv6服务器不在同一网段的情况,也就不会出现因此而产生的终端设备无法成功分配IPv6地址的问题。并且,在此情形下,即便是针对规模较大的局域网,也可以不必单独搭建DHCPv6服务器,大大降低了组网成本。进一步地,由于不必搭建DHCPv6服务器,也就可以不必进行IPv6地址池以及默认网关的配置,就用户而言,简化了操作过程。
此外,相较于通过无状态配置方式为终端设备分配IPv6地址(终端设备根据自己的链路层地址以及路由器通告中的网络前缀自主生成IPv6地址)。本实施例提供的IPv6地址分配方法,一方面,可以避免客户端随意生成大量临时IPv6地址,占用分布式网关过多的存储资源;另一方面,由于每个终端设备的DUID是唯一的,因此不会出现分配的IPv6地址冲突的问题,因而可以不必进行冲突检测,从而减少了分布式网关的处理器的压力。
在实际应用中,通过DHCPv6协议分配的IPv6地址具有一定的租借期限,该租借期限被称作“租约”。在到达该租借期限后,终端设备将不能继续使用该IPv6地址。在到达该租界期限之前,若终端设备希望继续使用该IPv6地址,需要发送相应的报文,以请求延长租约。
具体地,用于请求延长租约的报文包括Renew报文和Rebind报文。其中,Renew报文为终端设备向相应DHCPv6服务器单播的报文,Rebind报文为终端设备未接收到Renew报文的应答报文时向网络中DHCPv6服务器的组播地址组播的报文。
同样地,当DHCPv6服务器与终端设备在不同网段时,终端设备也无法接收到DHCPv6服务器针对Renew报文或Rebind报文的应答报文。
因此,本申请实施例提供的IPv6地址分配方法还可以包括如下步骤:
分布式网关在接收到终端设备发送的用于延长IPv6地址租约的报文时,向所述终端设备发送对应的应答报文。
如此,可以直接通过分布式网关为终端设备延长所分配的IPv6地址的租约,从而避免出现终端设备与DHCPv6服务器不在同一网段的情况,进而解决DHCPv6发出的应答报文无法返回到相应终端设备所导致的续约失败的问题。
在本实施例中,每个分布式网关会对接收到的DHCPv6协议报文进行转发。因此,当一个分布式网关已经根据某一Solicit报文分配了相应的Ipv6地址之后,若该分布式网关继续将该Solicit报文转发给另一分布式网关,则另一分布式网关会再次对该Solicit报文进行处理,从而造成不必要的资源浪费,同时也会给分布式网关的处理器造成较大压力。
基于此,本实施例中,可以通过如下方式改善上述问题。
在一种具体实施方式中,考虑到分布式网关之间是通过VXLAN隧道进行通信,因而,IPv6地址分配方法还可以包括如下步骤:
分布式网关判断接收到DHCPv6报文的VSI接口是否为VXLAN隧道接口,若否,再执行步骤S302。
应当理解,此处的DHCPv6报文包括上述的Solicit报文、Renenw报文及Rebind报文等。
通过上述过程,一旦分布式网关判断出所接收到的DHCPv6报文来自VXLAN隧道,即可确定该DHCPv6报文是其他分布式网关转发过来的,也就不必再次进行处理。
当任意一个VSI接口接收到DHCPv6报文时,会将该DHCPv6报文发送给转发芯片140,由转发芯片140上送给处理器130。实施时,转发芯片140可以判断发送该DHCPv6报文的VSI接口是否为VXLAN隧道接口,若是,则拒绝将该DHCPv6报文上送至处理器130。其中,每个VSI接口上均配置有配置信息,通过该配置信息可以确定该VSI接口是否为VXLAN隧道接口。
在另一种实施方式中,IPv6地址分配方法还可以包括如下步骤:
禁止分布式网关转发DHCPv6报文。
其中,任意一个VSI接口接收到的DHCPv6报文可以直接通过转发芯片140上送至处理器130,并在处理器130通过相应的指令禁止转发该DHCPv6报文。如此,该DHCPv6报文只会被当前的分布式网关处理,而不会到达其他分布式网关。
在本实施例中,可以只实施上述两种方式中的一种,也可以同时实施上述两种方式。
请参阅图4,是本申请实施例提供的一种IPv6地址分配装置110的功能模块框图,该IPv6地址分配装置110应用于分布式网关,如图1所示分布式网关100或分布式网关101。
IPv6地址分配装置110包括获得模块111和地址分配模块112。
获得模块111用于在分布式网关接收到终端设备发送的用于发现DHCPv6服务器的DHCPv6报文时,根据该DHCPv6报文获得终端设备的标识信息以及接收到该DHCPv6报文的VSI接口的网络前缀。
关于获得模块111的详细描述具体可参考对图3所示步骤S301的详细描述,即步骤S301可以由分布式网关的获得模块111执行。
地址分配模块112用于根据所述标识信息及所述VSI接口的网络前缀生成IPv6地址,并将该IPv6地址分配给所述终端设备。
关于地址分配模块112的详细描述具体可参考对图3所示步骤S302的详细描述,即步骤S302可以由分布式网关的地址分配模块112执行。
可选地,IPv6地址分配装置110还可以包括应答模块113。
应答模块113用于在分布式网关接收到终端设备发送的用于延长IPv6地址租约的DHCPv6报文时,向该终端设备发送对应的应答报文。
关于应答模块113的详细描述具体可参考上述内容中对相关步骤的描述。
可选地,IPv6地址分配装置110还可以包括判断模块114和/或禁止转发模块115。
判断模块114判断所述分布式网关接收到所述DHCPv6报文的VSI接口是否为VXLAN隧道接口,若否,再触发地址分配模块112根据所述标识信息及所述VSI接口的网络前缀生成IPv6地址。
禁止转发模块115用于禁止分布式网关转发DHCPv6报文。
关于判断模块114及禁止转发模块115的详细描述具体可参考上述内容中对相关步骤的详细描述。
综上所述,本申请实施例提供的通信***、IPv6地址分配方法、装置及分布式网关,通信***中的分布式网关在接收到终端设备发送的用于发现DHCPv6服务器的DHCPv6报文时,根据该DHCPv6报文获得终端设备的标识信息以及接收到该DHCPv6报文的VSI接口的网络前缀,根据获得的标识信息及网络前缀生成IPv6地址,并将生成的IPv6地址分配给终端设备。通过分布式网关为终端设备分配IPv6地址,可以避免分布式网关在DHCPv6服务器与终端设备在不同网段时对终端设备发送的报文进行中继,所导致的终端设备无法接收到相应的应答报文的问题。
本申请实施例所提供的几个实施例中,应该理解到,所揭露的***、装置和方法,也可以通过其它的方式实现。以上所描述的***、装置和方法实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的***、装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,电子设备,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (9)
1.一种通信***,其特征在于,包括至少两个分布式网关;
所述分布式网关在接收到终端设备发送的用于发现DHCPv6服务器的DHCPv6报文时,根据所述DHCPv6报文获得所述终端设备的标识信息以及接收到所述DHCPv6报文的VSI接口的网络前缀,根据所述标识信息及所述VSI接口的网络前缀生成IPv6地址,并将该IPv6地址分配给所述终端设备;
其中,所述分布式网关判断接收到所述DHCPv6报文的VSI接口是否为VXLAN隧道接口,当接收到所述DHCPv6报文的VSI接口不是VXLAN隧道接口时,再执行所述根据所述标识信息及所述VSI接口的网络前缀生成IPv6地址的步骤;和/或
禁止所述分布式网关转发所述DHCPv6报文。
2.根据权利要求1所述的通信***,其特征在于,
所述分布式网关在接收到所述终端设备发送的用于延续IPv6地址租约的DHCPv6报文时,向所述终端设备发送对应的应答报文。
3.根据权利要求1或2所述的通信***,其特征在于,
所述分布式网关以所述VSI接口的网络前缀为IPv6地址前缀,以所述标识信息为接口标识符,生成所述IPv6地址。
4.一种IPv6地址分配方法,其特征在于,应用于包括至少两个分布式网关的通信***,所述方法包括:
所述分布式网关在接收到终端设备发送的用于发现DHCPv6服务器的DHCPv6报文时,根据所述DHCPv6报文获得所述终端设备的标识信息以及接收到所述DHCPv6报文的VSI接口的网络前缀;
根据所述标识信息及所述VSI接口的网络前缀生成IPv6地址,并将该IPv6地址分配给所述终端设备;
其中,所述方法还包括:
所述分布式网关判断接收到所述DHCPv6报文的VSI接口是否为VXLAN隧道接口,当接收到所述DHCPv6报文的VSI接口不是VXLAN隧道接口时,再执行所述根据所述标识信息及所述VSI接口的网络前缀生成IPv6地址的步骤;和/或
禁止分布式网关转发所述DHCPv6报文。
5.根据权利要求4所述的IPv6地址分配方法,其特征在于,所述方法还包括:
所述分布式网关在接收到所述终端设备发送的用于延长IPv6地址租约的DHCPv6报文时,向所述终端设备发送对应的应答报文。
6.根据权利要求4或5所述的IPv6地址分配方法,其特征在于,所述分布式网关根据所述标识信息及所述VSI接口的网络前缀生成IPv6地址,包括:
所述分布式网关以所述VSI接口的网络前缀为IPv6地址前缀,以所述标识信息为接口标识符,生成所述IPv6地址。
7.一种IPv6地址分配装置,其特征在于,应用于分布式网关,所述装置包括:
获得模块,用于在所述分布式网关接收到终端设备发送的用于发现DHCPv6服务器的DHCPv6报文时,根据所述DHCPv6报文获得所述终端设备的标识信息以及接收到所述DHCPv6报文的VSI接口的网络前缀;
地址分配模块,用于根据所述标识信息及所述VSI接口的网络前缀生成IPv6地址,并将该IPv6地址分配给所述终端设备;
其中,所述装置还包括:
判断模块,用于判断所述分布式网关接收到所述DHCPv6报文的VSI接口是否为VXLAN隧道接口,若否,再触发地址分配模块根据所述标识信息及所述VSI接口的网络前缀生成IPv6地址;和/或
禁止转发模块,用于禁止所述分布式网关转发所述DHCPv6报文。
8.根据权利要求7所述的IPv6地址分配装置,其特征在于,所述装置还包括:
应答模块,用于在所述分布式网关接收到所述终端设备发送的用于延长IPv6地址租约的DHCPv6报文时,向所述终端设备发送对应的应答报文。
9.一种分布式网关,其特征在于,包括存储器、处理器及权利要求7或8所述的IPv6地址分配装置,所述IPv6地址分配装置存储在所述存储器中,并被所述处理器控制执行。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810146289.6A CN108429822B (zh) | 2018-02-12 | 2018-02-12 | 通信***、IPv6地址分配方法、装置及分布式网关 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810146289.6A CN108429822B (zh) | 2018-02-12 | 2018-02-12 | 通信***、IPv6地址分配方法、装置及分布式网关 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108429822A CN108429822A (zh) | 2018-08-21 |
CN108429822B true CN108429822B (zh) | 2021-04-06 |
Family
ID=63156992
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810146289.6A Active CN108429822B (zh) | 2018-02-12 | 2018-02-12 | 通信***、IPv6地址分配方法、装置及分布式网关 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108429822B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112383425B (zh) * | 2020-11-11 | 2022-07-08 | 迈普通信技术股份有限公司 | 一种基于vxlan网络的终端发现***及方法 |
CN114244842B (zh) * | 2021-12-23 | 2023-07-25 | 绿盟科技集团股份有限公司 | 一种安全资源调度方法、装置、电子设备及存储介质 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103108308B (zh) * | 2011-11-15 | 2017-11-07 | 中兴通讯股份有限公司 | 实现身份位置分离、分配接口标识的方法及网元和终端 |
CN102801821A (zh) * | 2012-08-10 | 2012-11-28 | 中国联合网络通信集团有限公司 | 地址生成和解析方法、用户设备和网络节点 |
CN104519029B (zh) * | 2013-09-30 | 2018-10-02 | 中国电信股份有限公司 | 一种同步方法以及分布式协议翻译*** |
CN105554178B (zh) * | 2015-12-31 | 2019-07-19 | 上海华为技术有限公司 | 一种地址分配的方法、网关及*** |
CN107547665B (zh) * | 2016-06-23 | 2021-02-09 | 华为技术有限公司 | 一种dhcp地址分配的方法、设备及*** |
CN107547684B (zh) * | 2017-08-15 | 2021-01-26 | 新华三技术有限公司 | 一种IPv6地址分配方法和装置 |
-
2018
- 2018-02-12 CN CN201810146289.6A patent/CN108429822B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN108429822A (zh) | 2018-08-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5663549B2 (ja) | パブリックipアドレスを割り当てる方法、装置、及びシステム | |
CN101330531B (zh) | Dhcp地址分配处理方法和dhcp中继 | |
KR100657316B1 (ko) | DHCPv4 환경하에서의 핸드오버 방법, 핸드오버 장치및 상기 핸드오버 방법이 저장된 정보저장매체 | |
JP4705650B2 (ja) | 通信ノード | |
US20120324063A1 (en) | Method, network device, and system for automatically configuring network device in ipv6 network | |
EP2775674A1 (en) | Method for mobile node to dynamically acquire location identifier, and lisp network | |
WO2014094633A1 (zh) | 一种网络中的因特网协议地址获取方法、中继设备及*** | |
CN101582888B (zh) | 一种创建邻居发现表项的方法和一种服务器 | |
CN107547665B (zh) | 一种dhcp地址分配的方法、设备及*** | |
CN112654049B (zh) | 用于配置无线通信覆盖扩展***的方法、***、节点和介质 | |
CN111246453A (zh) | 一种数据传输方法、用户面网元及控制面网元 | |
JP2012529802A (ja) | 動的ホスト構成プロトコルバージョン6サーバのipアドレスを取得するための方法、動的ホスト構成プロトコルバージョン6サーバ、および動的ホスト構成プロトコルバージョン6通信システム | |
CN109120741B (zh) | 一种重复地址检测方法及装置、计算机可读存储介质 | |
CN108429822B (zh) | 通信***、IPv6地址分配方法、装置及分布式网关 | |
CN108600407B (zh) | 一种ip地址分配方法、装置、设备及机器可读存储介质 | |
EP3267633B1 (en) | Information processing system, proxy server, address duplication prevention method, and computer-readable recording medium | |
WO2018161795A1 (zh) | 一种路由优先级配置方法、设备以及控制器 | |
CN114338397A (zh) | 云平台网络配置方法、装置、服务器、存储介质及*** | |
EP3703343A1 (en) | Method and device for configuring service flow | |
CN102025797A (zh) | 地址前缀处理方法、装置、***及网络设备 | |
CN102624627A (zh) | 一种报文的传输方法和设备 | |
JP2008502227A (ja) | ドメインに左右されるプレフィックス割当て方法および装置 | |
CN107547684B (zh) | 一种IPv6地址分配方法和装置 | |
JP2016063458A (ja) | ネットワーク機器 | |
JP2007274329A (ja) | 複数のdhcpサーバにおけるアドレス管理方法、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 | ||
TR01 | Transfer of patent right |
Effective date of registration: 20230619 Address after: 310052 11th Floor, 466 Changhe Road, Binjiang District, Hangzhou City, Zhejiang Province Patentee after: H3C INFORMATION TECHNOLOGY Co.,Ltd. Address before: 310052 Changhe Road, Binjiang District, Hangzhou, Zhejiang Province, No. 466 Patentee before: NEW H3C TECHNOLOGIES Co.,Ltd. |
|
TR01 | Transfer of patent right |