CN108259218A - 一种ip地址分配方法和装置 - Google Patents
一种ip地址分配方法和装置 Download PDFInfo
- Publication number
- CN108259218A CN108259218A CN201711052086.2A CN201711052086A CN108259218A CN 108259218 A CN108259218 A CN 108259218A CN 201711052086 A CN201711052086 A CN 201711052086A CN 108259218 A CN108259218 A CN 108259218A
- Authority
- CN
- China
- Prior art keywords
- address
- node
- mark
- network topology
- distributed
- 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
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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0876—Aspects of the degree of configuration automation
- H04L41/0886—Fully automatic configuration
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/12—Discovery or management of network topologies
-
- 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/5046—Resolving address allocation conflicts; Testing of addresses
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Automation & Control Theory (AREA)
- Small-Scale Networks (AREA)
Abstract
本申请提供一种IP地址分配方法和装置,该方法包括:获取全局网络拓扑,所述全局网络拓扑包括数据中心中所有节点的标识;针对所述全局网络拓扑中的每个节点的标识,查询已分配地址表;其中,所述已分配地址表用于记录节点的标识与IP地址的对应关系;若所述已分配地址表中不存在该节点的标识,则选择空闲的IP地址分配给该节点的Loopback接口,并在所述已分配地址表中记录该节点的标识与所述选择的IP地址的对应关系。通过本申请的技术方案,避免不同节点的Loopback接口的IP地址出现冲突,不用管理员手工配置Loopback接口的IP地址。
Description
技术领域
本申请涉及通信技术领域,尤其涉及一种IP地址分配方法和装置。
背景技术
Loopback(环回)接口是应用最广泛的虚接口,网络设备可以配置Loopback接口,且LoopBack接口具有全网唯一的IP地址。LoopBack接口的IP地址的作用可以包括:管理员可以使用LoopBack接口的IP地址,远程登录到网络设备;网络设备可以将LoopBack接口的IP地址,作为OSPF(Open Shortest Path First,开放式最短路径优先)、BGP(BorderGateway Protocol,边界网关协议)等路由协议的路由标识;网络设备可以将LoopBack接口的IP地址,作为建立TCP(Transmission Control Protocol传输控制协议)连接的源地址。
为了使LoopBack接口具有全网唯一的IP地址,则管理员可以为网络设备的LoopBack接口配置全网唯一的IP地址。由于需要管理员手工配置IP地址,因此配置工作量很大,且可能会配置错误的IP地址,无法保证IP地址的唯一性。
发明内容
本申请提供一种IP地址分配方法,从数据中心中任选一节点,该方法应用于所述选中的节点,所述方法包括:
获取全局网络拓扑,所述全局网络拓扑包括数据中心中所有节点的标识;
针对所述全局网络拓扑中的每个节点的标识,查询已分配地址表;其中,所述已分配地址表用于记录节点的标识与IP地址的对应关系;
若所述已分配地址表中不存在该节点的标识,则选择空闲的IP地址分配给该节点的Loopback接口,并在所述已分配地址表中记录该节点的标识与所述选择的IP地址的对应关系。
本申请提供一种IP地址分配装置,应用于从数据中心中任选的一节点,所述装置包括:
获取模块,用于获取全局网络拓扑,所述全局网络拓扑包括数据中心中所有节点的标识;
查询模块,用于针对所述全局网络拓扑中的每个节点的标识,查询已分配地址表;其中,所述已分配地址表用于记录节点的标识与IP地址的对应关系;
处理模块,用于当所述已分配地址表中不存在该节点的标识时,则选择空闲的IP地址分配给该节点的Loopback接口,并在所述已分配地址表中记录该节点的标识与所述选择的IP地址的对应关系。
基于上述技术方案,本申请实施例中,可以根据全局网络拓扑获取新加入的节点,并为新加入的节点的Loopback接口分配IP地址,可以保证IP地址的唯一性,避免不同节点的Loopback接口的IP地址出现冲突,不用管理员手工配置Loopback接口的IP地址,可以减轻管理员的配置工作量。
附图说明
为了更加清楚地说明本申请实施例或者现有技术中的技术方案,下面将对本申请实施例或者现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据本申请实施例的这些附图获得其他的附图。
图1是本申请一种实施方式中的IP地址分配方法的流程图;
图2A和图2B是本申请一种实施方式中的应用场景示意图;
图3是本申请一种实施方式中的IP地址分配装置的结构图;
图4是本申请一种实施方式中的管理节点的硬件结构图。
具体实施方式
在本申请实施例使用的术语仅仅是出于描述特定实施例的目的,而非限制本申请。本申请和权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其它含义。还应当理解,本文中使用的术语“和/或”是指包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请实施例可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,此外,所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
本申请实施例中提出了一种IP地址分配方法,可以应用于VXLAN(VirtualeXtensible Local Area Network,可扩展虚拟局域网)中,如基于VXLAN的数据中心网络。在基于VXLAN的数据中心网络,可以包括多个网络设备(如路由器、交换机等),将这些网络设备划分为Spine(脊)节点和Leaf(叶子)节点。
在一个例子中,可以为Spine节点和Leaf节点配置Loopback接口,为了使LoopBack接口具有全网唯一的IP地址,本申请实施例中提出一种IP地址分配方法,参见图1所示,为该方法的流程示意图,该方法可以包括:
步骤101,获取全局网络拓扑,该全局网络拓扑可以包括但不限于数据中心中所有节点的标识。其中,节点的标识可以包括但不限于:该节点的管理IP地址和/或桥MAC(MediaAccess Control,介质访问控制)地址。
参见图2A和图2B所示,为本申请实施例的应用场景示意图,图2B与图2A相比,多了一个控制器,这个控制器能够管理所有Spine节点和Leaf节点。
在图2A中,可以从数据中心的所有Spine节点、Leaf节点中,任选一个Spine节点或者Leaf节点,并将选择的节点作为管理节点,由管理节点执行上述步骤101以及后续步骤。例如,可以选取Spine节点201为管理节点,当然,也可以选取其它Spine节点或者Leaf节点为管理节点,对此不做限制。在图2B中,可以从数据中心的所有Spine节点、Leaf节点中,任选一个Spine节点或者Leaf节点,并将选择的节点作为管理节点。或者,可以选取控制器为管理节点。
在一个例子中,假设控制器为管理节点,针对“获取全局网络拓扑”的过程,由于管理节点与Spine节点、Leaf节点连接,如管理节点通过OpenFlow通道与每个节点连接,因此,管理节点可以通过OpenFlow通道获取全局网络拓扑。
例如,控制器221可以通过与Spine节点201连接的OpenFlow通道,获取Spine节点201的信息,同理,控制器221也可以获取到Spine节点202、Leaf节点211、Leaf节点212、Leaf节点213等节点的信息,基于获取到的这些信息,就可以得到全局网络拓扑,而所述全局网络拓扑可以包括上述所有节点的标识。
假设Spine节点或者Leaf节点为管理节点,针对“获取全局网络拓扑”的过程,可以包括但不限于:获取本地网络拓扑,本地网络拓扑包括本节点的标识以及与本节点连接的所有节点的标识。然后,将该本地网络拓扑中所有节点的标识添加到搜索列表。进一步的,遍历该搜索列表,对于访问到的标识,执行如下操作:向该标识对应的节点发送请求消息;接收节点针对该请求消息返回的响应消息;若从该响应消息中携带的节点的本地网络拓扑中获取到该搜索列表中不存在的标识,则可以将获取的标识添加到所述搜索列表,并继续访问搜索列表中下一个标识;否则,可以继续访问搜索列表中下一个标识。
在一个例子中,针对“获取本地网络拓扑”的过程,可以包括但不限于如下方式:接收与自身连接的节点发送的LLDP(Link Layer Discovery Protocol,链路层发现协议)报文;从该LLDP报文中解析与自身连接的节点的标识。
以下结合具体应用场景,对上述全局网络拓扑的获取过程进行说明。
本应用场景下,假设管理节点为Spine节点201,数据中心中的所有节点包括Spine节点201、Spine节点202、Leaf节点211、Leaf节点212、Leaf节点213,且节点的标识可以包括桥MAC地址,全局网络拓扑可以包括所有节点的信息,如可以包括每个节点的桥MAC地址、管理IP地址、设备角色等。
在上述应用场景下,则全局网络拓扑的获取过程可以包括以下步骤:
步骤a、各Spine节点/Leaf节点收集本地网络拓扑,该本地网络拓扑可以包括与自身连接的其它Spine节点/Leaf节点的信息,如其它Spine节点/Leaf节点的桥MAC地址、管理IP地址、设备角色等信息。
参见图2A和图2B所示,Spine节点202可以通过接口2021向Spine节点201发送LLDP报文,该LLDP报文携带Spine节点202的桥MAC地址、管理IP地址、设备角色(如Spine角色)。当然,该LLDP报文还可以携带其它内容,对此不做限制。Spine节点201在接收到该LLDP报文后,可以从该LLDP报文中解析出Spine节点202的桥MAC地址、管理IP地址、设备角色。
Spine节点201还可以从Leaf节点211发送的LLDP报文中,解析出Leaf节点211的桥MAC地址、管理IP地址、设备角色,并从Leaf节点212发送的LLDP报文中,解析出Leaf节点212的桥MAC地址、管理IP地址、设备角色。
综上所述,Spine节点201的本地网络拓扑可以包括:Spine节点202的桥MAC地址、管理IP地址、设备角色;Leaf节点211的桥MAC地址、管理IP地址、设备角色;Leaf节点212的桥MAC地址、管理IP地址、设备角色。
类似的,Spine节点202获取到的本地网络拓扑可以包括:Spine节点201的桥MAC地址、管理IP地址、设备角色;Leaf节点213的桥MAC地址、管理IP地址、设备角色。Leaf节点211获取到的本地网络拓扑可以包括:Spine节点201的桥MAC地址、管理IP地址、设备角色。Leaf节点212获取到的本地网络拓扑可以包括:Spine节点201的桥MAC地址、管理IP地址、设备角色;Leaf节点213的桥MAC地址、管理IP地址、设备角色。而且,Leaf节点213获取到的本地网络拓扑可以包括:Spine节点202的桥MAC地址、管理IP地址、设备角色;以及Leaf节点212的桥MAC地址、管理IP地址、设备角色。
此外,当有节点(如Spine节点202)离开时,则Spine节点201的接口2012会发生DOWN,这样,Spine节点201还可以从本地网络拓扑中删除Spine节点202的桥MAC地址、管理IP地址、设备角色。同理,Leaf节点213也可以从本地网络拓扑中删除Spine节点202的桥MAC地址、管理IP地址、设备角色。
步骤b、Spine节点201(即管理节点)创建一个搜索列表。
步骤c、基于Spine节点201的本地网络拓扑,Spine节点201将Spine节点201的桥MAC地址、管理IP地址、设备角色添加到该搜索列表,将Spine节点202的桥MAC地址、管理IP地址、设备角色等添加到该搜索列表;将Leaf节点211的桥MAC地址、管理IP地址、设备角色等添加到该搜索列表;将Leaf节点212的桥MAC地址、管理IP地址、设备角色等添加到该搜索列表。
参见表1所示,为搜索列表的一个示例,该搜索列表可以只包括桥MAC地址。当然,搜索列表还可以包括其它内容,如管理IP地址、设备角色等内容,对此不做限制。在表1中,以包括桥MAC地址、管理IP地址、设备角色为例。
表1
桥MAC地址 | 管理IP地址 | 设备角色 |
Spine节点201的桥MAC地址 | Spine节点201的管理IP地址 | Spine角色 |
Spine节点202的桥MAC地址 | Spine节点202的管理IP地址 | Spine角色 |
Leaf节点211的桥MAC地址 | Leaf节点211的管理IP地址 | Leaf角色 |
Leaf节点212的桥MAC地址 | Leaf节点212的管理IP地址 | Leaf角色 |
步骤d、Spine节点201遍历该搜索列表中的每个桥MAC地址,并向该桥MAC地址对应的Spine节点或者Leaf节点发送请求消息,该请求消息可以用于请求该桥MAC地址对应的Spine节点或者Leaf节点的本地网络拓扑。
在遍历到Spine节点201的桥MAC地址后,由于是本节点的桥MAC地址,且搜索列表中已经存在Spine节点201的本地网络拓扑,不再发送请求消息。
Spine节点201在遍历到Spine节点202的桥MAC地址后,可以向Spine节点202发送请求消息1,如基于Spine节点202的桥MAC地址或者Spine节点202的管理IP地址向Spine节点202发送请求消息1。Spine节点201在遍历到Leaf节点211的桥MAC地址后,可以向Leaf节点211发送请求消息2;在遍历到Leaf节点212的桥MAC地址后,可以向Leaf节点212发送请求消息3。
步骤e、Spine节点202在接收到请求消息1后,向Spine节点201发送响应消息1,该响应消息1携带Spine节点202的本地网络拓扑。Leaf节点211向Spine节点201发送响应消息2,Leaf节点212向Spine节点201发送响应消息3。
步骤f、Spine节点201在接收到响应消息1后,从响应消息1解析出Spine节点202的本地网络拓扑,从该本地网络拓扑中获取搜索列表(表1所示)中不存在的信息,即Leaf节点213的桥MAC地址、管理IP地址、设备角色,将这些信息添加到搜索列表,如表2所示。此外,Spine节点201在接收到响应消息2/响应消息3后,解析出Leaf节点211/Leaf节点212的本地网络拓扑,由于该本地网络拓扑没有搜索列表(如表2所示)中不存在的信息,因此结束处理。
表2
桥MAC地址 | 管理IP地址 | 设备角色 |
Spine节点201的桥MAC地址 | Spine节点201的管理IP地址 | Spine角色 |
Spine节点202的桥MAC地址 | Spine节点202的管理IP地址 | Spine角色 |
Leaf节点211的桥MAC地址 | Leaf节点211的管理IP地址 | Leaf角色 |
Leaf节点212的桥MAC地址 | Leaf节点212的管理IP地址 | Leaf角色 |
Leaf节点213的桥MAC地址 | Leaf节点213的管理IP地址 | Leaf角色 |
步骤g、Spine节点201在遍历到Leaf节点213的桥MAC地址后,可以向Leaf节点213发送请求消息4。Leaf节点213向Spine节点201发送响应消息4。Spine节点201从响应消息4中解析出Leaf节点213的本地网络拓扑,由于该本地网络拓扑没有搜索列表(如表2所示)中不存在的信息,因此结束处理。
步骤h、Spine节点201将搜索列表中的所有信息确定为全局网络拓扑。
在一个例子中,Spine节点201可以创建全局网络拓扑的刷新定时器,该刷新定时器的时间可以根据经验配置。在该刷新定时器超时时,则Spine节点201清空搜索列表的所有信息,并重新执行步骤b-步骤h,得到新的全局网络拓扑。
在一个例子中,Spine节点201第一次收集全局网络拓扑时,由于各Spine节点/Leaf节点当前不存在Loopback接口的IP地址,因此全局网络拓扑中不包括Loopback接口的IP地址。当Spine节点201再次收集全局网络拓扑时,Spine节点/Leaf节点可能存在Loopback接口的IP地址,也可能不存在Loopback接口的IP地址,对于存在Loopback接口的IP地址的Spine节点/Leaf节点,则全局网络拓扑中包括Loopback接口的IP地址,对于不存在Loopback接口的IP地址的Spine节点/Leaf节点,则全局网络拓扑中不包括Loopback接口的IP地址。
其中,若Spine节点/Leaf节点存在Loopback接口的IP地址,则发送的LLDP报文中可以携带Loopback接口的IP地址,使得本地网络拓扑中携带Loopback接口的IP地址,这样,全局网络拓扑就可以包括Loopback接口的IP地址。
步骤102,针对全局网络拓扑中的每个节点的标识,查询已分配地址表;若该已分配地址表中不存在该节点的标识,则选择空闲的IP地址分配给该节点的Loopback接口,并在该已分配地址表中记录该节点的标识与选择的IP地址的对应关系。
在一个例子中,在管理节点配置有IP地址池,IP地址池包括多个IP地址,如IP地址1-IP地址100,且该IP地址池内的IP地址用于分配给LoopBack接口。
在一个例子中,管理节点可以维护已分配地址表和已释放地址表,在初始状态下,所述已分配地址表的内容为空,所述已释放地址表的内容为空。
其中,该已分配地址表用于记录当前在线的节点的标识、该节点的Loopback接口的IP地址的对应关系;此外,该已释放地址表用于记录当前离线的节点的标识、该节点的Loopback接口的IP地址的对应关系。
针对“选择空闲的IP地址分配给该节点的Loopback接口”的过程,可以包括:通过该节点的标识查询已释放地址表;若该已释放地址表中存在该节点的标识,则将该已释放地址表中的该节点的标识对应的IP地址,选择为所述空闲的IP地址,并分配给该节点的Loopback接口,并从已释放地址表中删除该节点的标识与IP地址的对应关系;若该已释放地址表中不存在该节点的标识,则从预配置的IP地址池中选择空闲的IP地址,并分配给该节点的Loopback接口。
在通过全局网络拓扑中的每个节点的标识查询已分配地址表后,还可以确定该已分配地址表中存在、且该全局网络拓扑中不存在的节点的标识。然后,可以从该已分配地址表中删除该节点的标识与IP地址的对应关系,并在该已释放地址表中记录该节点的标识与IP地址的对应关系。
以下结合具体应用场景,对上述Loopback接口的IP地址分配过程进行说明。假设管理节点为Spine节点201,Spine节点201第一次得到的全局网络拓扑如表2所示,已分配地址表和已释放地址表为空,节点的标识为桥MAC地址。
Spine节点201通过Spine节点201的桥MAC地址查询已分配地址表,由于不存在Spine节点201的桥MAC地址,因此,通过Spine节点201的桥MAC地址查询已释放地址表,由于不存在Spine节点201的桥MAC地址,因此,从预配置的IP地址池(IP地址1-IP地址100)中选择空闲的IP地址,如IP地址1,将IP地址1分配给Spine节点201的Loopback接口,并在已分配地址表中记录Spine节点201的桥MAC地址、IP地址1的对应关系。当然,还可以在已分配地址表中记录Spine节点201的管理IP地址等其它内容,对此不做限制。
同理,Spine节点201还可以为Spine节点202、Leaf节点211、Leaf节点212、Leaf节点213选择空闲的IP地址,并更新已分配地址表,如表3所示。
表3
桥MAC地址 | 管理IP地址 | Loopback接口的IP地址 |
Spine节点201的桥MAC地址 | Spine节点201的管理IP地址 | IP地址1 |
Spine节点202的桥MAC地址 | Spine节点202的管理IP地址 | IP地址2 |
Leaf节点211的桥MAC地址 | Leaf节点211的管理IP地址 | IP地址3 |
Leaf节点212的桥MAC地址 | Leaf节点212的管理IP地址 | IP地址4 |
Leaf节点213的桥MAC地址 | Leaf节点213的管理IP地址 | IP地址5 |
在Leaf节点213离开后,Spine节点201得到的全局网络拓扑中,存在Spine节点201、Spine节点202、Leaf节点211、Leaf节点212的桥MAC地址。因此,Spine节点201可以通过Spine节点201、Spine节点202、Leaf节点211、Leaf节点212的桥MAC地址查询已分配地址表时,已分配地址表中已经存在这些桥MAC地址,因此,不再为这些节点的Loopback接口选择空闲的IP地址。
此外,由于已分配地址表中存在Leaf节点213的桥MAC地址,而全局网络拓扑中不存在Leaf节点213的桥MAC地址,因此,Spine节点201可以回收为Leaf节点213的Loopback接口分配的IP地址5,从已分配地址表中删除对应的内容,如表4所示,并在已释放地址表中记录对应的内容,如表5所示。
表4
表5
桥MAC地址 | 管理IP地址 | Loopback接口IP地址 | 时间戳 |
Leaf节点213的桥MAC地址 | Leaf节点213的管理IP地址 | IP地址5 |
进一步的,参见表5所示,Spine节点201还可以为Leaf节点213的桥MAC地址、Leaf节点213的管理IP地址、IP地址5的对应关系记录时间戳,并基于该时间戳确定该对应关系的存在时间。若该存在时间已经达到预设阈值时,则可以从已释放地址表中删除该对应关系,将IP地址5回收到IP地址池,允许将IP地址5分配给其它节点。若该存在时间没有达到预设阈值时,则不会已释放地址表中删除该对应关系,即不允许将IP地址5分配给其它节点。
在Leaf节点213重新上线后,Spine节点201得到的全局网络拓扑中,存在Spine节点201、Spine节点202、Leaf节点211、Leaf节点212、Leaf节点213的桥MAC地址。由于已分配地址表不存在Leaf节点213的桥MAC地址,已释放地址表存在Leaf节点213的桥MAC地址,因此,Spine节点201将已释放地址表中的IP地址5分配给Leaf节点213,并从已释放地址表中删除对应的内容,删除后的已释放地址表为空,在已分配地址表中记录对应的内容,如表3所示。
综上可以看出,在Leaf节点213离开又重新上线后,Spine节点201是将IP地址5分配给Leaf节点213的Loopback接口,即Leaf节点213离开又重新上线时,Loopback接口具有同样的IP地址,避免Loopback接口的地址变化。
在上述的实施例中,在通过全局网络拓扑中的节点的标识查询已分配地址表后,若已分配地址表中存在该节点的标识、且全局网络拓扑中还包括该节点的Loopback接口的IP地址,则还可以从全局网络拓扑中获取该节点的Loopback接口的IP地址。进一步的,若该节点的标识在该已分配地址表中对应的IP地址,与全局网络拓扑中该节点的Loopback接口的IP地址不同,则可以将该节点的标识在该已分配地址表中对应的IP地址,分配给该节点的Loopback接口。此外,若该节点的标识在该已分配地址表中对应的IP地址,与全局网络拓扑中该节点的Loopback接口的IP地址相同,则不再为该节点的Loopback接口分配IP地址。
例如,在Leaf节点213离开后,Spine节点201得到的全局网络拓扑中存在Spine节点202(以Spine节点202为例进行说明)的桥MAC地址,因此,Spine节点201通过Spine节点202的桥MAC地址查询已分配地址表时,已分配地址表中已经存在Spine节点202的桥MAC地址,Spine节点201还可以从全局网络拓扑中获取Spine节点202的Loopback接口的IP地址。若获取的IP地址与表4中记录的IP地址2相同,则结束对Spine节点202的处理;若获取的IP地址与IP地址2不同,即Spine节点202没有使用Spine节点201分配的IP地址2,则Spine节点201继续将IP地址2分配给Spine节点202的Loopback接口。
在上述的实施例中,管理节点将IP地址分配给节点的Loopback接口时,管理节点可以根据该节点的桥MAC地址和/或管理IP地址,将分配的IP地址发送给该节点,以使该节点将该IP地址分配给Loopback接口。
基于上述技术方案,本申请实施例中,可以根据全局网络拓扑获取新加入的节点,并为新加入的节点的Loopback接口分配IP地址,可以保证IP地址的唯一性,避免不同节点的Loopback接口的IP地址出现冲突,不用管理员手工配置Loopback接口的IP地址,可以减轻管理员的配置工作量。
基于与上述方法同样的申请构思,本申请实施例中还提出一种IP地址分配装置,应用于从数据中心中任选的一节点(如上述的管理节点),如图3所示,为所述装置的结构图,所述装置包括:
获取模块301,用于获取全局网络拓扑,所述全局网络拓扑包括数据中心中所有节点的标识;
查询模块302,用于针对所述全局网络拓扑中的每个节点的标识,查询已分配地址表;其中,所述已分配地址表用于记录节点的标识与IP地址的对应关系;
处理模块303,用于当所述已分配地址表中不存在该节点的标识时,则选择空闲的IP地址分配给该节点的Loopback接口,并在所述已分配地址表中记录该节点的标识与所述选择的IP地址的对应关系。
所述获取模块301,具体用于在获取全局网络拓扑的过程中,获取本地网络拓扑,所述本地网络拓扑包括本节点的标识以及与本节点连接的所有节点的标识;将本地网络拓扑中所有节点的标识添加到搜索列表;
遍历搜索列表,对于访问到的标识,执行如下操作:
向该标识对应的节点发送请求消息;接收节点针对所述请求消息返回的响应消息;若从所述响应消息中携带的节点的本地网络拓扑中获取到所述搜索列表中不存在的标识,则将获取的标识添加到所述搜索列表,继续访问搜索列表中下一个标识;否则,继续访问搜索列表中下一个标识。
所述获取模块301,具体用于在获取本地网络拓扑的过程中,接收与自身连接的节点发送的链路层发现协议LLDP报文;从所述LLDP报文中解析与自身连接的节点的标识。
所述处理模块303,具体用于在选择空闲的IP地址分配给该节点的Loopback接口的过程中,通过该节点的标识查询已释放地址表;其中,所述已释放地址表用于记录节点的标识与IP地址的对应关系;
若所述已释放地址表中存在该节点的标识,则将所述已释放地址表中的该节点的标识对应的IP地址,选择为所述空闲的IP地址,并分配给该节点的Loopback接口,并从已释放地址表中删除该节点的标识与IP地址的对应关系;
若所述已释放地址表中不存在该节点的标识,则从预配置的IP地址池中选择空闲的IP地址,并分配给该节点的Loopback接口。
所述处理模块303,还用于确定所述已分配地址表中存在、且全局网络拓扑中不存在的节点的标识;从所述已分配地址表中删除该节点的标识与IP地址的对应关系;在所述已释放地址表中记录该节点的标识与IP地址的对应关系。
所述处理模块303,还用于在所述已分配地址表中存在该节点的标识、且所述全局网络拓扑中还包括该节点的Loopback接口的IP地址时,若该节点的标识在所述已分配地址表中对应的IP地址,与全局网络拓扑中该节点的Loopback接口的IP地址不同,则将该节点的标识在所述已分配地址表中对应的IP地址分配给该节点的Loopback接口。
本申请实施例中提供的管理节点,从硬件层面而言,其硬件架构示意图具体可以参见图4所示。包括:机器可读存储介质和处理器,其中:
机器可读存储介质:存储指令代码。
处理器:与机器可读存储介质通信,读取和执行机器可读存储介质中存储的所述指令代码,实现本申请上述示例公开的IP地址分配操作。
这里,机器可读存储介质可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,机器可读存储介质可以是:RAM(RadomAccess Memory,随机存取存储器)、易失存储器、非易失性存储器、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、dvd等),或者类似的存储介质,或者它们的组合。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可以由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其它可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其它可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
而且,这些计算机程序指令也可以存储在能引导计算机或其它可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或者多个流程和/或方框图一个方框或者多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其它可编程数据处理设备上,使得在计算机或者其它可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其它可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (12)
1.一种IP地址分配方法,其特征在于,从数据中心中任选一节点,该方法应用于所述选中的节点,包括:
获取全局网络拓扑,所述全局网络拓扑包括数据中心中所有节点的标识;
针对所述全局网络拓扑中的每个节点的标识,查询已分配地址表;其中,所述已分配地址表用于记录节点的标识与IP地址的对应关系;
若所述已分配地址表中不存在该节点的标识,则选择空闲的IP地址分配给该节点的Loopback接口,并在所述已分配地址表中记录该节点的标识与所述选择的IP地址的对应关系。
2.根据权利要求1所述的方法,其特征在于,
所述获取全局网络拓扑的过程,具体包括:
获取本地网络拓扑,所述本地网络拓扑包括本节点的标识以及与本节点连接的所有节点的标识;
将本地网络拓扑中所有节点的标识添加到搜索列表;
遍历搜索列表,对于访问到的标识,执行如下操作:
向该标识对应的节点发送请求消息;接收节点针对所述请求消息返回的响应消息;若从所述响应消息中携带的节点的本地网络拓扑中获取到所述搜索列表中不存在的标识,则将获取的标识添加到所述搜索列表,继续访问搜索列表中下一个标识;否则,继续访问搜索列表中下一个标识。
3.根据权利要求2所述的方法,其特征在于,
所述获取本地网络拓扑的过程,具体包括:
接收与自身连接的节点发送的链路层发现协议LLDP报文;
从所述LLDP报文中解析与自身连接的节点的标识。
4.根据权利要求1所述的方法,其特征在于,
若所述已分配地址表中不存在该节点的标识,所述选择空闲的IP地址分配给该节点的Loopback接口的过程,具体包括:
通过该节点的标识查询已释放地址表;其中,所述已释放地址表用于记录节点的标识与IP地址的对应关系;
若所述已释放地址表中存在该节点的标识,则将所述已释放地址表中的该节点的标识对应的IP地址,选择为所述空闲的IP地址,并分配给该节点的Loopback接口,并从已释放地址表中删除该节点的标识与IP地址的对应关系;
若所述已释放地址表中不存在该节点的标识,则从预配置的IP地址池中选择空闲的IP地址,并分配给该节点的Loopback接口。
5.根据权利要求1或4所述的方法,其特征在于,还包括:
确定所述已分配地址表中存在、且全局网络拓扑中不存在的节点的标识;
从所述已分配地址表中删除该节点的标识与IP地址的对应关系;
在所述已释放地址表中记录该节点的标识与IP地址的对应关系。
6.根据权利要求1所述的方法,其特征在于,
若所述已分配地址表中存在该节点的标识、且所述全局网络拓扑中还包括该节点的Loopback接口的IP地址,该方法还包括:
若该节点的标识在所述已分配地址表中对应的IP地址,与全局网络拓扑中该节点的Loopback接口的IP地址不同,则将该节点的标识在所述已分配地址表中对应的IP地址分配给该节点的Loopback接口。
7.一种IP地址分配装置,其特征在于,应用于从数据中心中任选的一节点,所述装置包括:
获取模块,用于获取全局网络拓扑,所述全局网络拓扑包括数据中心中所有节点的标识;
查询模块,用于针对所述全局网络拓扑中的每个节点的标识,查询已分配地址表;其中,所述已分配地址表用于记录节点的标识与IP地址的对应关系;
处理模块,用于当所述已分配地址表中不存在该节点的标识时,则选择空闲的IP地址分配给该节点的Loopback接口,并在所述已分配地址表中记录该节点的标识与所述选择的IP地址的对应关系。
8.根据权利要求7所述的装置,其特征在于,
所述获取模块,具体用于在获取全局网络拓扑的过程中,获取本地网络拓扑,所述本地网络拓扑包括本节点的标识以及与本节点连接的所有节点的标识;将本地网络拓扑中所有节点的标识添加到搜索列表;
遍历搜索列表,对于访问到的标识,执行如下操作:
向该标识对应的节点发送请求消息;接收节点针对所述请求消息返回的响应消息;若从所述响应消息中携带的节点的本地网络拓扑中获取到所述搜索列表中不存在的标识,则将获取的标识添加到所述搜索列表,继续访问搜索列表中下一个标识;否则,继续访问搜索列表中下一个标识。
9.根据权利要求8所述的装置,其特征在于,所述获取模块,具体用于在获取本地网络拓扑的过程中,接收与自身连接的节点发送的链路层发现协议LLDP报文;从所述LLDP报文中解析与自身连接的节点的标识。
10.根据权利要求7所述的装置,其特征在于,
所述处理模块,具体用于在选择空闲的IP地址分配给该节点的Loopback接口的过程中,通过该节点的标识查询已释放地址表;其中,所述已释放地址表用于记录节点的标识与IP地址的对应关系;
若所述已释放地址表中存在该节点的标识,则将所述已释放地址表中的该节点的标识对应的IP地址,选择为所述空闲的IP地址,并分配给该节点的Loopback接口,并从已释放地址表中删除该节点的标识与IP地址的对应关系;
若所述已释放地址表中不存在该节点的标识,则从预配置的IP地址池中选择空闲的IP地址,并分配给该节点的Loopback接口。
11.根据权利要求7或10所述的装置,其特征在于,
所述处理模块,还用于确定所述已分配地址表中存在、且全局网络拓扑中不存在的节点的标识;从所述已分配地址表中删除该节点的标识与IP地址的对应关系;在所述已释放地址表中记录该节点的标识与IP地址的对应关系。
12.根据权利要求7所述的装置,其特征在于,所述处理模块,还用于在所述已分配地址表中存在该节点的标识、且所述全局网络拓扑中还包括该节点的Loopback接口的IP地址时,若该节点的标识在所述已分配地址表中对应的IP地址,与全局网络拓扑中该节点的Loopback接口的IP地址不同,则将该节点的标识在所述已分配地址表中对应的IP地址分配给该节点的Loopback接口。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711052086.2A CN108259218B (zh) | 2017-10-30 | 2017-10-30 | 一种ip地址分配方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711052086.2A CN108259218B (zh) | 2017-10-30 | 2017-10-30 | 一种ip地址分配方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108259218A true CN108259218A (zh) | 2018-07-06 |
CN108259218B CN108259218B (zh) | 2021-04-27 |
Family
ID=62722154
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711052086.2A Active CN108259218B (zh) | 2017-10-30 | 2017-10-30 | 一种ip地址分配方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108259218B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109451093A (zh) * | 2018-12-13 | 2019-03-08 | 新华三技术有限公司 | 一种环回口地址分配方法及装置 |
CN111064818A (zh) * | 2019-12-11 | 2020-04-24 | 新华三大数据技术有限公司 | 一种配置方法和装置 |
CN113347285A (zh) * | 2021-06-10 | 2021-09-03 | 新华三大数据技术有限公司 | 一种管理ip地址的自动分配方法、装置及设备 |
CN114257594A (zh) * | 2021-12-21 | 2022-03-29 | 四川灵通电讯有限公司 | 对分布式系统中对用户网络侧进行网络资源分配的方法 |
CN114500467A (zh) * | 2021-12-23 | 2022-05-13 | 云洲(盐城)创新科技有限公司 | 一种地址冲突检测方法、地址冲突检测装置及电子设备 |
CN114598735A (zh) * | 2022-01-30 | 2022-06-07 | 阿里巴巴(中国)有限公司 | 数据处理方法和系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090282283A1 (en) * | 2008-05-09 | 2009-11-12 | Hitachi, Ltd. | Management server in information processing system and cluster management method |
CN101621414A (zh) * | 2009-08-21 | 2010-01-06 | 杭州华三通信技术有限公司 | 一种网络资源及拓扑的发现方法及装置 |
CN103595566A (zh) * | 2013-11-12 | 2014-02-19 | 杭州华三通信技术有限公司 | 一种检测空闲ip地址的方法及装置 |
CN104486457A (zh) * | 2014-12-11 | 2015-04-01 | 电信科学技术研究院 | 一种地址分配、获取方法及装置 |
CN106550060A (zh) * | 2016-10-28 | 2017-03-29 | 杭州华三通信技术有限公司 | 一种网络管理接口地址分配方法及装置 |
-
2017
- 2017-10-30 CN CN201711052086.2A patent/CN108259218B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090282283A1 (en) * | 2008-05-09 | 2009-11-12 | Hitachi, Ltd. | Management server in information processing system and cluster management method |
CN101621414A (zh) * | 2009-08-21 | 2010-01-06 | 杭州华三通信技术有限公司 | 一种网络资源及拓扑的发现方法及装置 |
CN103595566A (zh) * | 2013-11-12 | 2014-02-19 | 杭州华三通信技术有限公司 | 一种检测空闲ip地址的方法及装置 |
CN104486457A (zh) * | 2014-12-11 | 2015-04-01 | 电信科学技术研究院 | 一种地址分配、获取方法及装置 |
CN106550060A (zh) * | 2016-10-28 | 2017-03-29 | 杭州华三通信技术有限公司 | 一种网络管理接口地址分配方法及装置 |
Non-Patent Citations (1)
Title |
---|
游小刚: ""IPRAN网络IP地址规划浅析"", 《电信传输》 * |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109451093A (zh) * | 2018-12-13 | 2019-03-08 | 新华三技术有限公司 | 一种环回口地址分配方法及装置 |
CN109451093B (zh) * | 2018-12-13 | 2022-01-28 | 新华三技术有限公司 | 一种环回口地址分配方法及装置 |
CN111064818A (zh) * | 2019-12-11 | 2020-04-24 | 新华三大数据技术有限公司 | 一种配置方法和装置 |
CN111064818B (zh) * | 2019-12-11 | 2022-03-25 | 新华三大数据技术有限公司 | 一种配置方法和装置 |
CN113347285A (zh) * | 2021-06-10 | 2021-09-03 | 新华三大数据技术有限公司 | 一种管理ip地址的自动分配方法、装置及设备 |
CN113347285B (zh) * | 2021-06-10 | 2022-05-31 | 新华三大数据技术有限公司 | 一种管理ip地址的自动分配方法、装置及设备 |
CN114257594A (zh) * | 2021-12-21 | 2022-03-29 | 四川灵通电讯有限公司 | 对分布式系统中对用户网络侧进行网络资源分配的方法 |
CN114257594B (zh) * | 2021-12-21 | 2023-12-01 | 四川灵通电讯有限公司 | 分布式系统中对用户网络侧进行网络资源分配的方法 |
CN114500467A (zh) * | 2021-12-23 | 2022-05-13 | 云洲(盐城)创新科技有限公司 | 一种地址冲突检测方法、地址冲突检测装置及电子设备 |
CN114598735A (zh) * | 2022-01-30 | 2022-06-07 | 阿里巴巴(中国)有限公司 | 数据处理方法和系统 |
CN114598735B (zh) * | 2022-01-30 | 2024-05-14 | 阿里巴巴(中国)有限公司 | 数据处理方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN108259218B (zh) | 2021-04-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108259218A (zh) | 一种ip地址分配方法和装置 | |
CN107547242B (zh) | Vm配置信息的获取方法及装置 | |
CN109905251B (zh) | 网络管理方法、装置、电子设备和存储介质 | |
CN105391628B (zh) | 数据传送系统及数据传送方法 | |
CN104301251A (zh) | 一种QoS处理方法、系统及设备 | |
CN105282003B (zh) | 建立隧道的方法和系统以及隧道控制器和虚拟交换机 | |
CN109802985A (zh) | 数据传输方法、装置、设备及可读取存储介质 | |
CN103795644B (zh) | 策略表表项配置方法、装置及系统 | |
CN105191215A (zh) | 双向服务链的数据平面学习 | |
JP6633775B2 (ja) | パケット伝送 | |
CN108259347A (zh) | 一种报文传输方法和装置 | |
CN104350467A (zh) | 用于使用sdn的云安全性的弹性实行层 | |
CN107547391A (zh) | 一种报文传输方法和装置 | |
CN104468368B (zh) | 配置bgp邻居的方法及装置 | |
US10574570B2 (en) | Communication processing method and apparatus | |
CN107846358A (zh) | 一种数据传输方法、装置及网络系统 | |
CN108718278A (zh) | 一种报文传输方法和装置 | |
CN109361606A (zh) | 一种报文处理系统及网络设备 | |
CN109729012A (zh) | 一种单播报文传输方法和装置 | |
US9197598B2 (en) | MAC address distribution | |
CN112272145A (zh) | 一种报文处理方法、装置、设备及机器可读存储介质 | |
US20150146525A1 (en) | Transfer apparatus, server, and route changing method | |
CN108964964A (zh) | 一种网络拓扑显示方法和装置 | |
CN108390954A (zh) | 一种报文传输方法和设备 | |
CN107612702A (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 |