CN110213391A - 一种网络协议地址的配置方法及装置 - Google Patents

一种网络协议地址的配置方法及装置 Download PDF

Info

Publication number
CN110213391A
CN110213391A CN201910629139.5A CN201910629139A CN110213391A CN 110213391 A CN110213391 A CN 110213391A CN 201910629139 A CN201910629139 A CN 201910629139A CN 110213391 A CN110213391 A CN 110213391A
Authority
CN
China
Prior art keywords
virtual machine
address
network protocol
protocol address
network
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
Application number
CN201910629139.5A
Other languages
English (en)
Other versions
CN110213391B (zh
Inventor
赵世济
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201910629139.5A priority Critical patent/CN110213391B/zh
Publication of CN110213391A publication Critical patent/CN110213391A/zh
Application granted granted Critical
Publication of CN110213391B publication Critical patent/CN110213391B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5007Internet protocol [IP] addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/686Types of network addresses using dual-stack hosts, e.g. in Internet protocol version 4 [IPv4]/Internet protocol version 6 [IPv6] networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请实施例公开了一种网络协议地址的配置方法及装置,该方法包括:确定虚拟机的虚拟机标识,基于虚拟机标识从数据库中查询虚拟机的第一网络协议配置信息,其中第一网络协议配置信息包括虚拟机的媒体访问控制物理地址和虚拟机所属主网络的网络标识;确定网络标识对应的配置文件;获取目标网络协议地址,将物理地址和目标网络协议地址添加至配置文件中;根据包含目标网络协议地址的配置文件,为虚拟机配置目标网络协议地址。采用本申请实施例,可实现在线虚拟机从IPv4平滑升级至IPv4/IPv6双协议栈,降低升级成本,适用性强。

Description

一种网络协议地址的配置方法及装置
技术领域
本申请涉及计算机技术领域,尤其涉及一种网络协议地址的配置方法及装置。
背景技术
随着互联网的迅速发展,网际协议版本4(Internet Protocol version 4,IPv4)地址空间短缺的矛盾日益凸显,因此互联网协议第6版(Internet Protocol version 6,IPv6)被设计并提出作为下一代互联网协议,以重新定义地址空间,解决地址短缺问题。与此同时,云计算的发展对IPv6地址资源产生了极大需求,目前大多数企业多采用第三方设备或者自主研发一个IPv4/IPv6转换中间件以实现同一虚拟机既能够与IPv4***通信,又能够与IPv6***通信。但是这种方式对硬件依赖较为严重,且不利于***稳定性,因此如何在不中断业务的情况下实现虚拟机从IPv4到IPv4/IPv6双协议栈的平滑过渡成为当前亟待解决的问题。
发明内容
本申请实施例提供一种网络协议地址的配置方法及装置。可实现在线虚拟机从IPv4平滑升级至IPv4/IPv6双协议栈,降低升级成本,适用性强。
第一方面,本申请实施例提供了一种网络协议地址的配置方法,该方法包括:
确定虚拟机的虚拟机标识,基于上述虚拟机标识从数据库中查询上述虚拟机的第一网络协议配置信息,其中上述第一网络协议配置信息包括上述虚拟机的物理地址、上述虚拟机的第一网络协议地址以及上述虚拟机所属主网络的网络标识,上述第一网络协议地址为基于第一网络协议进行通信的网络协议地址;
确定上述网络标识对应的配置文件;
获取目标网络协议地址,将上述物理地址和上述目标网络协议地址添加至上述配置文件中,上述目标网络协议地址为基于第二网络协议进行通信的网络协议地址,上述第二网络协议与上述第一网络协议不相同;
根据包含上述目标网络协议地址的配置文件,为上述虚拟机配置上述目标网络协议地址。
本申请实施例通过将获取的目标网络协议地址以及物理地址添加至配置文件,以根据更新后的配置文件配置虚拟机的目标网络地址,操作方式简便且不易出错,同时降低了IPv4平滑升级至IPv4/IPv6的升级成本,适用性强。
结合第一方面,在一种可能的实施方式中,上述获取目标网络协议地址之后,上述方法还包括:
建立上述物理地址与上述目标网络协议地址的对应关系,并将上述对应关系添加至上述配置文件;
其中,上述对应关系用于基于上述物理地址查找得到上述目标网络协议地址。
本申请实施例通过建立物理地址与目标网络协议地址的对应关系,可提高配置虚拟机的目标网络地址的准确性,易于理解且操作方式简便,适用性强。
结合第一方面,在一种可能的实施方式中,上述根据包含上述目标网络协议地址的配置文件,为上述虚拟机配置上述目标网络协议地址,包括:
重置网络协议地址配置进程;
基于重置后的上述网络协议地址配置进程获取上述虚拟机发送的网络协议地址配置请求,上述网络协议地址配置请求用于请求获取基于上述第二网络协议进行通信的网络协议地址,上述网络协议地址配置请求中包括上述物理地址;
基于上述网络协议地址配置进程、结合上述物理地址和上述对应关系从上述配置文件中获取上述物理地址对应的上述目标网络协议地址,并将上述目标网络协议地址发送给上述虚拟机。
本申请实施例通过重置网络协议地址配置进程使配置文件生效,且基于网络协议地址配置进程为虚拟机配置目标网络协议地址,操作简便且不易出错,适用性强。
结合第一方面,在一种可能的实施方式中,上述方法还包括:
当上述虚拟机关闭重启且上述配置文件中的配置信息被清空时,从上述数据库中获取上述虚拟机的历史配置信息,上述历史配置信息至少包括上述物理地址、上述目标网络协议地址以及上述对应关系;
将上述历史配置信息添加至上述配置文件。
本申请实施例通过将数据库中的历史配置信息添加至配置文件,可提高虚拟机配置的效率,易于理解且操作简便,适用性高。
结合第一方面,在一种可能的实施方式中,上述虚拟机属于上述主网络中的第一网络协议子网,上述第一网络协议子网中的虚拟机基于上述第一网络协议进行通信;
上述获取目标网络协议地址,包括:
创建第二网络协议子网,上述第二网络协议子网为上述主网络中的一个子网,上述第二网络协议子网中的虚拟机基于上述第二网络协议进行通信,上述第二网络协议子网中包括多个第二网络协议地址;
从上述多个第二网络协议地址中获取任一第二网络协议地址作为目标网络协议地址。
本申请实施例通过创建第二网络协议子网可确定出第二网络协议子网中包括多个第二网络协议地址,提高了目标网络协议地址的选择灵活性,同时可有效抑制广播风暴,适用性高。
结合第一方面,在一种可能的实施方式中,上述建立上述物理地址与上述目标网络协议地址的对应关系,包括:
获取上述配置文件包括的数据格式;
按照上述数据格式将上述物理地址和上述目标网络协议地址进行组合以建立上述物理地址与上述目标网络协议地址的对应关系。
本申请实施例根据获取的数据格式建立物理地址与目标网络协议地址的对应关系,规范了配置文件中的配置信息的格式,操作方式简便且不易出错,适用性高。
第二方面,本申请实施例提供了一种网络协议地址的配置装置,该装置包括:
第一网络协议配置信息获取模块,用于确定虚拟机的虚拟机标识,基于上述虚拟机标识从数据库中查询上述虚拟机的第一网络协议配置信息,其中上述第一网络协议配置信息包括上述虚拟机的物理地址、上述虚拟机的第一网络协议地址以及上述虚拟机所属主网络的网络标识,上述第一网络协议地址为基于第一网络协议进行通信的网络协议地址;
配置文件确定模块,用于确定上述第一网络协议配置信息获取模块确定的上述网络标识对应的配置文件;
配置文件更新模块,用于获取目标网络协议地址,将上述第一网络协议配置信息获取模块确定的上述物理地址和上述目标网络协议地址添加至上述配置文件确定模块确定的上述配置文件中,上述目标网络协议地址为基于第二网络协议进行通信的网络协议地址,上述第二网络协议与上述第一网络协议不相同;
目标网络协议地址配置模块,用于根据包含上述目标网络协议地址的上述配置文件更新模块确定的配置文件,为上述虚拟机配置上述目标网络协议地址。
结合第二方面,在一种可能的实施方式中,上述装置还包括:
对应关系建立模块,用于建立上述第一网络协议配置信息获取模块确定的上述物理地址与上述配置文件更新模块确定的上述目标网络协议地址的对应关系,并将上述对应关系添加至上述配置文件;
其中,上述对应关系用于基于上述物理地址查找得到上述目标网络协议地址。
结合第二方面,在一种可能的实施方式中,上述目标网络协议地址配置模块包括:
网络协议地址配置进程重置单元,用于重置网络协议地址配置进程;
网络协议地址配置请求获取单元,用于基于重置后的上述网络协议地址配置进程获取上述虚拟机发送的网络协议地址配置请求,上述网络协议地址配置请求用于请求获取基于上述第二网络协议进行通信的网络协议地址,上述网络协议地址配置请求中包括上述物理地址;
目标网络协议地址发送单元,用于基于上述网络协议地址配置进程、结合上述物理地址和上述对应关系从上述配置文件中获取上述物理地址对应的上述目标网络协议地址,并将上述目标网络协议地址发送给上述虚拟机。
结合第二方面,在一种可能的实施方式中,上述网络协议地址的配置装置还包括:
配置文件加载模块,用于当上述虚拟机关闭重启且上述配置文件中的配置信息被清空时,从上述数据库中获取上述虚拟机的历史配置信息,上述历史配置信息至少包括上述物理地址、上述目标网络协议地址以及上述对应关系;将上述历史配置信息添加至上述配置文件。
结合第二方面,在一种可能的实施方式中,上述虚拟机属于上述主网络中的第一网络协议子网,上述第一网络协议子网中的虚拟机基于上述第一网络协议进行通信;上述网络协议地址的配置装置还包括:
第二网络协议子网创建模块,用于创建第二网络协议子网,上述第二网络协议子网为上述主网络中的一个子网,上述第二网络协议子网中的虚拟机基于上述第二网络协议进行通信,上述第二网络协议子网中包括多个第二网络协议地址;从上述多个第二网络协议地址中获取任一第二网络协议地址作为目标网络协议地址。
结合第二方面,在一种可能的实施方式中,上述对应关系建立模块具体用于:
获取上述配置文件包括的数据格式;
按照上述数据格式将上述物理地址和上述目标网络协议地址进行组合以建立上述物理地址与上述目标网络协议地址的对应关系。
第三方面,本申请实施例提供了一种终端设备,该终端设备包括处理器和存储器,该处理器和存储器相互连接。该存储器用于存储支持该终端设备执行上述第一方面和/或第一方面任一种可能的实现方式提供的方法的计算机程序,该计算机程序包括程序指令,该处理器被配置用于调用上述程序指令,执行上述第一方面和/或第一方面任一种可能的实施方式所提供的方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序包括程序指令,该程序指令当被处理器执行时使该处理器执行上述第一方面和/或第一方面任一种可能的实施方式所提供的方法。
实施本申请实施例,具有如下有益效果:
本申请实施例通过确定虚拟机的虚拟机标识,可基于虚拟机标识从数据库中查询到包括物理地址和网络标识的第一网络协议配置信息。通过获取目标网络协议地址,可将物理地址和目标网络协议地址添加至网络标识对应的配置文件中,然后基于该配置文件为虚拟机配置目标网络协议地址。采用本申请实施例,可实现在线虚拟机从IPv4平滑升级至IPv4/IPv6,降低升级成本,适用性强。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的通信***的架构示意图;
图2是本申请实施例提供的IPv4网络的***架构示意图;
图3是本申请实施例提供的网络协议地址的配置方法一流程示意图;
图4是本申请实施例提供的配置文件的应用场景示意图;
图5是本申请实施例提供的同一主网络下创建IPv6子网的应用场景示意图;
图6是本申请实施例提供的更新配置文件的应用场景示意图;
图7是本申请实施例提供的网络协议地址的配置方法的应用场景示意图;
图8是本申请实施例提供的IPv4/IPv6网络的***架构示意图;
图9是本申请实施例提供的网络协议地址的配置方法另一流程示意图;
图10是本申请实施例提供的实现IPv4/IPv6双协议栈的装置的结构示意图;
图11是本申请实施例提供的终端设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例提供的网络协议地址的配置方法,可广泛适用于各种能够对在线虚拟机配置网络协议地址的云平台、服务器或终端设备。其中,在线虚拟机是指已创建好IPv4网络或IPv6网络且能够正常运行业务的虚拟机,即已创建好且运行中的虚拟机。终端设备包括但不限于智能手机、平板电脑、笔记本电脑和台式计算机等,在此不做限制。云平台包括但不限于OpenStack云平台等,在此不做限制,为方便描述,下面都将以云平台为例进行说明。参见图1,图1是本申请实施例提供的通信***的架构示意图。如图1所示,本申请实施例提供的通信***包括云平台和虚拟机,其中虚拟机包括虚拟机A,虚拟机B,…,虚拟机C。云平台通过接收任一虚拟机发送的网络协议地址配置请求,可根据网络协议地址配置请求中包括的物理地址,将该物理地址对应的网络协议地址发送给该虚拟机。
为方便理解,下面在对本申请实施例提供的方法进行说明之前,对本申请实施例提供的方法所涉及的相关知识进行简单介绍如下:
1、企业和服务供应商的信息技术(Information Technology,IT)环境正在不断的发生演变,云计算作为企业IT未来发展的必然趋势,为企业客户提供了全新的服务选择,同时也对服务交付提出了敏捷性的要求。云计算是基于互联网相关服务的增加、使用和交付模式,它通过互联网来提供动态易扩展而且是虚拟化的资源。简单的来说,云计算利用互联网的传输能力,将数据的存储和处理过程从本地服务器转移到互联网上,它不是一种新技术,而是分布式计算、并行计算、网络存储、虚拟化等传统IT技术发展融合的产物,是一种服务模式。云计算分为狭义云计算和广义云计算。狭义云计算是指IT基础设施的交付和使用模式,指通过网络以按需、易扩展的方式获得所需的资源(硬件、平台、软件)。提供资源的网络被称为“云”。广义云计算是指服务的交付和使用模式,指通过网络以按需、易扩展的方式获得所需的服务,这种服务可以是IT基础设施和软件、也可以是任意其他的服务。
虚拟化技术一直是云计算发展的重要推动因素。作为云计算的基础架构,桌面、存储和服务器的虚拟化都已经发展的如火如荼,而网络虚拟化,使得同为基础架构的网络交换设备支持网络虚拟化多租户架构,将物理网络和逻辑网络有效分离,满足了云计算的服务特性,同时提升了网络资源的利用率。简单来说,利用主机虚拟化技术,能够在一台物理主机上运行多个虚拟机,并且各个虚拟机之间相互独立、互不影响,用户可以在虚拟机上灵活的安装任何软件。主机虚拟化技术隔离了同一台主机上运行的应用程序,避免了资源冲突,同时可以动态将没有充分利用的硬件资源迁移到最需要的应用程序中,从而提高了底层硬件资源的利用率。伴随着虚拟机的数量不断增加,导致云计算所需的IP地址数量也成比例增长。
2、传输控制协议/网络协议(Transfer Control Protocol/Internet Protocol,TCP/IP)是目前世界上最成功的网络体系和协议规范,也是网络中最基本的通信协议。IP协议是TCP/IP协议族中网络层的协议,它是TCP/IP协议族的核心协议,当前IP协议的版本号是4,即IPv4。IPv4是国际互联网工程任务组(The Internet Engineering Task Force,IETF)在网际协议开发过程中的第四个修订版本,也是此协议第一个被广泛部署的版本。IPv4发展至今已经使用了三十几年,IPv4采用32位(4字节)地址长度,理论上能够为整个Internet上的40多亿台主机分配地址。但是随着互联网的蓬勃发展,IPv4定义的有限的地址空间将很快被耗尽,而地址空间的不足必将阻碍互联网的进一步发展。因此IPv6被设计并提出作为替代IPv4的下一代IP协议,以重新定义地址空间,解决地址短缺问题。IPv6采用128位(16字节)地址长度,对IPv6实际可分配的地址按保守方法估算,整个地球的每平方米面积上可以分配1000多个IP地址。除了一劳永逸地解决了IP地址短缺问题以外,在IPv6的设计过程中还对在IPv4中难以解决的其它问题进行了考虑,例如端到端IP连接、服务质量(QoS)、安全性、多播、移动性、即插即用等问题。
在本申请实施例中,第一网络协议可包括IPv4协议或IPv6协议,在此不做限制,第二网络协议也可包括IPv4协议或IPv6协议,在此不做限制,且第一网络协议和第二网络协议不同。例如当第一网络协议为IPv4协议时,第二网络协议为IPv6协议;当第一网络协议为IPv6协议时,第二网络协议为IPv4协议。为方便描述,以下本申请所描述的所有实施例都以第一网络协议为IPv4协议,第二网络协议为IPv6协议为例进行说明。
3、OpenStack是OpenStack社区开发人员和云计算技术专家开发的开源云计算平台,旨在为公有云和私有云的云基础架构提供简单,可大规模扩展以及丰富功能的解决方案。OpenStack发展至今,总共集成了下面几个组件:Nova(计算服务)、Neutron(网络服务)、Swift(对象存储服务)、Cinder(块存储服务)、Glance(镜像服务)、Keystone(认证服务)、Horizon(UI服务)、Ceilometer(监控服务)、Heat(集群服务)以及Trove(数据库服务)。
4、Neutron作为OpenStack的一个核心组件,它可以为整个OpenStack环境提供网络支持,包括二层交换,三层路由,负载均衡,防火墙和虚拟专用网络(Virtual PrivateNetwork,VPN)等。Neutron提供了一个灵活的框架,通过配置,无论是开源还是商业软件都可以被用来实现这些功能。Neutron管理的网络资源包括主网络(network),子网(subnet)和端口(port)。其中,network可以看作是一个隔离的二层广播域,subnet可以看作是一个IP地址池(IPv4地址池或IPv6地址池)。network与subnet间是一对多的关系,即一个network下可以有多个不同的subnet,但一个subnet只能属于一个network,本申请实施例中构建的IPv4子网(即IPv4subnet)和IPv6子网(即IPv6subnet)皆属于同一个network,即IPv4subnet和IPv6subnet共用一个隔离的二层广播域。port可以看作是虚拟交换机上的一个端口,port上定义了物理地址和网络协议地址,即介质访问控制(Media AccessControl,MAC)地址和IP地址(IPv4地址和/或IPv6地址),这里port的IP地址(IPv4地址或IPv6地址)是从subnet(即IPv4地址池或IPv6地址池)中分配的。当虚拟机的虚拟网卡(Virtual Interface,VIF)连接到port上时,即虚拟机的VIF与port进行绑定时,port会将物理地址和IP地址(IPv4地址和/或IPv6地址)分配给VIF,这里port与VIF之间是一对一的关系。
5、Neutron提供动态主机配置协议(Dynamic Host Configuration Protocol,DHCP)服务的组件是DHCP agent。DHCP agent在网络节点上运行时,默认通过dnsmasq实现DHCP功能。dnsmasq是一个提供DHCP和DNS服务的开源软件,当它作为DNS域名解析服务器时,可通过缓存DNS请求来提高对访问过的网址的连接速度,当它作为DHCP服务器时,可用于分配IP地址和提供路由等。本申请实施例只关注dnsmasq提供DHCP服务的功能,即当创建network并在subnet上使能DHCP时,网络节点上的DHCP agent会启动一个dnsmasq进程为该network提供DHCP服务。dnsmasq进程与network是一对一关系,即一个dnsmasq进程可以为同一network中所有subnet提供DHCP服务。
本申请实施例提供的网络协议地址的配置方法,通过确定虚拟机的虚拟机标识,可基于虚拟机标识从数据库中查询到该虚拟机的第一网络协议配置信息(即IPv4配置信息),其中第一网络协议配置信息包括虚拟机的物理地址、虚拟机的第一网络协议地址(即IPv4地址)以及虚拟机所属主网络的网络标识。确定出网络标识对应的配置文件,通过获取目标网络协议地址(即IPv6地址),将物理地址和目标网络协议地址添加至配置文件中,然后根据包含目标网络协议地址的配置文件,为虚拟机配置目标网络协议地址。采用本申请实施例,可实现在线虚拟机从IPv4平滑升级至IPv4/IPv6双协议栈,降低升级成本,适用性强。
在本申请实施例中,虚拟机为已创建好IPv4网络且能够正常运行业务的在线虚拟机。为便于理解,参见图2,图2是本申请实施例提供的IPv4网络的***架构示意图。如图2所示,本申请实施例中的IPv4网络是在云平台上创建的,其中IPv4网络包括创建出的主网络1,在主网络1下创建的IPv4子网1、端口以及虚拟机。其中端口包括端口1,端口2,…,端口3,虚拟机包括虚拟机A,虚拟机B,…,虚拟机C。虚拟机A与端口1连接,虚拟机B与端口2连接,虚拟机C与端口3连接,其中端口1,端口2,…,端口3与IPv4子网1连接,即端口上的IPv4地址皆来自于IPv4子网1。当创建完成一个IPv4网络时,上述搭建的虚拟机A、虚拟机B,…,虚拟机C就能基于IPv4协议进行通信了。
下面将结合图3至图11分别对本申请实施例提供的方法及相关装置分别进行详细说明。本申请实施例提供的方法可包括用于确定虚拟机标识、获取第一网络协议配置信息、确定配置文件、获取目标网络协议地址、添加目标网络协议地址至配置文件,基于配置文件为虚拟机分配目标网络协议地址等数据处理阶段。其中,上述各个数据处理阶段的实现方式可参见如下图3至图11所示的实现方式。
参见图3,图3为本申请实施例提供的网络协议地址的配置方法一流程示意图。本申请实施例提供的方法可以包括如下步骤101至104:
101、确定虚拟机的虚拟机标识,基于虚拟机标识从数据库中查询虚拟机的第一网络协议配置信息。
在一些可行的实施方式中,若虚拟机属于主网络中的第一网络协议子网,则第一网络协议子网中的虚拟机可基于第一网络协议进行通信。于是通过确定虚拟机的虚拟机标识,可基于虚拟机标识从数据库中查询虚拟机的第一网络协议配置信息,其中第一网络协议配置信息包括虚拟机的物理地址、虚拟机的第一网络协议地址以及虚拟机所属主网络的网络标识等,在此不做限制。这里,第一网络协议地址为基于第一网络协议进行通信的网络协议地址,其中第一网络协议可以是IPv4协议或IPv6协议等,在此不做限制。不难理解的是,当第一网络协议为IPv4协议时,第一网络协议地址为IPv4地址,第一网络协议配置信息为IPv4配置信息,第一网络协议子网为IPv4子网;当第一网络协议为IPv6协议时,第一网络协议地址为IPv6地址,第一网络协议配置信息为IPv6配置信息,第一网络协议子网为IPv6子网。为方便描述,本申请实施例以第一网络协议是IPv4协议,第一网络协议地址是IPv4地址,第一网络协议配置信息是IPv4配置信息,第一网络协议子网是IPv4子网为例进行说明。
具体地,由于本申请实例中的虚拟机为已创建好IPv4网络且能够正常运行业务的在线虚拟机,因此与IPv4网络创建有关的所有信息都已存储在数据库中,即数据库中存储了所有在线虚拟机的IPv4配置信息。通过确定出虚拟机的虚拟机标识,可基于虚拟机标识从数据库中查询到该虚拟机标识对应的IPv4配置信息。其中,一个虚拟机对应一个虚拟机标识,虚拟机标识是在创建虚拟机时生成的一个用于唯一标记虚拟机的字符串,该字符串可由数字、字符和/或字母组成,在此不做限制。IPv4配置信息中可包括虚拟机的物理地址、虚拟机的IPv4地址、虚拟机所属主网络(即network)的网络标识、虚拟机所在IPv4子网(即IPv4subnet)的IPv4子网标识、虚拟机所绑定端口(即port)的端口标识以及端口状态等,在此不做限制。
102、确定网络标识对应的配置文件。
在一些可行的实施方式中,通过获取虚拟机的IPv4配置信息,可得到IPv4配置信息中包括的网络标识,基于该网络标识可在数据库中匹配到网络标识对应的配置文件。可以理解的是,一个网络标识对应一个配置文件,一个配置文件中包括多条记录,其中一条记录对应一台虚拟机的一条配置信息,一条配置信息可由一个物理地址、一个虚拟机名称以及一个网络协议地址组成。也就是说,一个配置文件中存储了一个主网络下所包括的所有虚拟机的所有配置信息。
举例来说,参见图4,图4是本申请实施例提供的配置文件的应用场景示意图。该配置文件为主网络的网络标识是网络标识1对应的配置文件,该配置文件中共包括4条记录,分别为第一条记录,第二条记录,第三条记录以及第四条记录。其中每条记录的数据格式为“物理地址,虚拟机名称,网络协议地址”,图中第一条记录~第四条记录中所包括的网络协议地址皆为第一网络协议地址(即IPv4地址)。
103、获取目标网络协议地址,将物理地址和目标网络协议地址添加至配置文件中。
在一些可行的实施方式中,由于本申请中的在线虚拟机属于主网络中的第一网络协议子网(即IPv4子网),因此,若还需要为在线虚拟机配置第二网络协议地址,则需要创建第二网络协议子网。这里第二网络协议子网为上述主网络中的一个子网,第二网络协议子网中的虚拟机基于第二网络协议进行通信,且第二网络协议与第一网络协议不同。由于本申请实施例中的第一网络协议为IPv4协议,因此第二网络协议为IPv6协议,当第二网络协议为IPv6协议时,第二网络协议地址为IPv6地址,第二网络协议配置信息为IPv6配置信息,第二网络协议子网为IPv6子网(即IPv6subnet)。具体地,通过获取IPv6子网地址段和IPv6子网名称,可创建得到一个IPv6子网。这里,IPv6子网可以看作是一个IPv6地址池或是一个IPv6地址范围,也就是说,IPv6子网中包括多个IPv6地址。在本申请实施例中,由于是实现对在线虚拟机添加第二网络协议地址(即IPv6地址),因此主网络已经存在,只需要在该主网络下继续创建一个IPv6子网即可。也就是说,虚拟机所在的IPv4子网和新创建的IPv6子网属于同一个主网络。例如,参见图5,图5是本申请实施例提供的同一主网络下创建IPv6子网的应用场景示意图。在云平台上已创建好的IPv4网络包括主网络1,主网络1下创建的IPv4子网1、端口以及虚拟机。其中端口包括端口1,端口2,…,端口3,虚拟机包括虚拟机A,虚拟机B,…,虚拟机C,虚拟机A与端口1连接,虚拟机B与端口2连接,虚拟机C与端口3连接。端口1,端口2,…,端口3与IPv4子网1连接,也就是说,端口上的IPv4地址皆来自于IPv4子网1。如图5所示,在主网络1下创建IPv6子网1,则IPv4子网1和IPv6子网1属于相同的主网络1。
在一些可行的实施方式中,在创建好IPv6子网后,通过从创建的上述IPv6子网中随机获取一个未被使用的IPv6地址,可将该IPv6地址确定为目标网络协议地址。然后将虚拟机的物理地址和获取到的该IPv6地址添加至虚拟机所属主网络对应的配置文件中。具体地,可通过上述确定出的虚拟机所属主网络的网络标识,查找或匹配出该网络标识对应的配置文件,通过获取配置文件中包括的配置信息的数据格式,可基于该数据格式以及确定出的虚拟机名称、虚拟机的物理地址以及目标网络协议地址生成一条配置信息以建立物理地址与目标网络协议地址的对应关系。也就是说,可按照上述数据格式将确定出的虚拟机名称、物理地址以及目标网络协议地址添加至配置文件中。可以理解的是,上述将物理地址以及目标网络协议地址添加至配置文件中的这个过程不会影响在线虚拟机的正常运行。
举例来说,参见图6,图6是本申请实施例提供的更新配置文件的应用场景示意图。该配置文件为主网络的网络标识是网络标识1对应的配置文件,该配置文件中共包括4条记录,分别为第一条记录,第二条记录,第三条记录以及第四条记录。其中每条记录的数据格式为“物理地址,虚拟机名称,网络协议地址”,图中第一条记录~第四条记录中所包括的网络协议地址皆为第一网络协议地址(即IPv4地址)。若待配置的虚拟机的物理地址为物理地址1、虚拟机名称为虚拟机名称1、目标网络协议地址为第二网络协议地址1,则可按照数据格式“物理地址,虚拟机名称,网络协议地址”的形式将物理地址1、虚拟机名称1以及第二网络协议地址1以“物理地址1,虚拟机名称1,第二网络协议地址1”的形式添加至配置文件中作为该配置文件中的第五条记录。
104、根据包含目标网络协议地址的配置文件,为虚拟机配置目标网络协议地址。
在一些可行的实施方式中,上述将物理地址和目标网络协议地址添加至配置文件的过程相当于是在配置文件中新增了一条IPv6配置信息,这个过程就像程序员在开发工具中编写源代码一样。但是如果需要使更新后的配置文件生效,则还需要重置网络协议地址配置进程,这就像程序员编写的源代码需要在编译器中先进行编译一样,其中网络协议地址配置进程可以是dnsmasq进程。在本申请实施例中,可通过获取SIGKILL信号,基于该SIGKILL信号重置网络协议地址配置进程。简单来说,由于虚拟机是能够正常运行业务的在线虚拟机,因此网络协议地址配置进程已经被启动,即虚拟机所属主网络已经启动了一个网络协议地址配置进程为该主网络提供DHCP服务。其中由于虚拟机所属的IPv4子网与新建的IPv6子网属于同一个主网络,且网络协议地址配置进程与主网络是一对一关系,即一个网络协议地址配置进程可以为同一主网络中所有子网下的虚拟机提供DHCP服务,因此,重置网络协议地址配置进程需先终止原本已存在的网络协议地址配置进程。在本申请实施例中,通过获取一个SIGKILL信号,该SIGKILL信号可使原本已存在的网络协议地址配置进程立即终止,然后云平台在监测到网络协议地址配置进程异常退出时,可立即重新启动一个网络协议地址配置进程,也就是重置网络协议地址配置进程。
在一些可行的实施方式中,通过重置网络协议地址配置进程可以使更新后的配置文件生效。于是,当接收到虚拟机发送的网络协议地址配置请求时,通过解析该网络协议地址配置请求,可得到网络协议地址配置请求中携带的物理地址以及所请求的网络协议地址的地址类型,这里,所请求的网络协议地址的地址类型为IPv6地址,也就是说,上述网络协议地址配置请求用于请求获取基于第二网络协议(即IPv6协议)进行通信的网络协议地址(即IPv6地址)。因此,基于重置后的网络协议地址配置进程、再结合网络协议地址配置请求中携带的物理地址以及更新后的配置文件,可从更新后的配置文件中获取到物理地址对应的目标网络协议地址,并将该目标网络协议地址发送给所述虚拟机。具体地,网络协议地址配置进程通过查找网络标识对应的配置文件,通过解析该配置文件,可从配置文件中获取虚拟机的物理地址对应的目标网络协议地址(即IPv6地址),然后将该目标网络协议地址发送给虚拟机。基于此,虚拟机上将同时存在IPv4地址和IPv6地址,且上述各个步骤的实施过程不会影响虚拟机的运行,也就是说,基于本申请实施例中的方法可实现虚拟机在不中断业务的情况下完成从IPv4到IPv4/IPv6双协议栈的平滑过渡。
举例来说,参见图7,图7是本申请实施例提供的网络协议地址的配置方法的应用场景示意图。假设虚拟机为虚拟机C,则经过步骤:S01、基于虚拟机标识从数据库中获取虚拟机C的物理地址;S02、从IPv6子网1中获取IPv6地址,并与物理地址、虚拟机名称一同添加至配置文件中;S03、重置网络协议地址配置进程;S04、获取虚拟机C的网络协议地址配置请求;S05、网络协议地址配置进程从配置文件中获取虚拟机C的物理地址对应的IPv6地址,并将该IPv6地址发送给虚拟机C。基于此可实现虚拟机C在拥有IPv4地址的基础上,继续分配到IPv6地址。换句话说,基于上述步骤S01~S05的实施过程能够实现虚拟机C在不中断业务的情况下拥有IPv4/IPv6双协议栈,也就是说,IPv6子网1与端口3之间建立了连接。
进一步地,若IPv4子网下的所有虚拟机都经过上述IPv6地址的配置过程,则能够实现每个虚拟机在不中断业务的情况下都能拥有IPv4/IPv6双协议栈。举例来说,参见图8,图8是本申请实施例提供的IPv4/IPv6网络的***架构示意图。本申请实施例中的IPv4/IPv6网络是在云平台上创建的,其中包括主网络1,主网络1下创建的IPv4子网1、IPv6子网1、端口以及虚拟机。其中端口包括端口1,端口2,…,端口3,虚拟机包括虚拟机A,虚拟机B,…,虚拟机C,虚拟机A与端口1连接,虚拟机B与端口2连接,虚拟机C与端口3连接。端口1,端口2,…,端口3都分别与IPv4子网1和IPv6子网2进行连接。也就是说,端口上的IPv4地址皆来自于IPv4子网1,端口上的IPv6地址皆来自于IPv6子网1,即搭建好IPv4/IPv6网络的虚拟机A、虚拟机B,…,虚拟机C既可以基于IPv4协议进行通信,又可以基于IPv6协议进行通信。
本申请实施例提供的网络协议地址的配置方法,通过确定虚拟机的虚拟机标识,可基于虚拟机标识从数据库中查询到该虚拟机的第一网络协议配置信息(即IPv4配置信息),其中第一网络协议配置信息中至少包括虚拟机的物理地址、虚拟机的第一网络协议地址(即IPv4地址)以及虚拟机所属主网络的网络标识。确定出网络标识对应的配置文件,通过获取目标网络协议地址(即IPv6地址),将物理地址和目标网络协议地址添加至配置文件中,然后通过重置网络协议地址配置进程,使网络协议地址配置进程能够根据包含目标网络协议地址的配置文件,为虚拟机配置目标网络协议地址。采用本申请实施例,可实现在线虚拟机从IPv4平滑升级至IPv4/IPv6双协议栈,降低升级成本,适用性强。
参见图9,图9为本申请实施例提供的实现IPv4/IPv6双协议栈的方法另一流程示意图。本申请实施例提供的方法可以包括如下步骤201至204:
201、确定虚拟机的虚拟机标识,基于虚拟机标识从数据库中查询虚拟机的第一网络协议配置信息。
202、确定网络标识对应的配置文件。
203、获取目标网络协议地址,将物理地址和目标网络协议地址添加至网络标识对应的配置文件中。
204、根据包含目标网络协议地址的配置文件,为虚拟机配置目标网络协议地址。
其中,上述步骤201至步骤204的具体实现方式可参见图3对应的实施例中对步骤101至步骤104的描述,这里不再进行赘述。
205、当虚拟机关闭重启且配置文件中的配置信息被清空时,从数据库中获取虚拟机的历史配置信息并添加至配置文件中。
在一些可行的实施方式中,当云平台关闭重启或是虚拟机关闭重启时,其配置文件配置信息都会消失或清空,因此为了便于后续使用,提高为虚拟机配置网络协议地址的效率,可将包括上述物理地址、目标网络协议地址(即IPv6地址)以及网络标识的信息作为一条历史配置信息保存在数据库中。也就是说,根据虚拟机的物理地址、目标网络协议地址以及虚拟机所属网络的网络标识可生成一条IPv6配置信息,并将该IPv6配置信息更新至数据库中。于是,当下次云平台重启时,云平台能够读取数据库中的配置信息,并把这些配置信息写到配置文件中,以便于虚拟机请求网络协议地址时,网络协议地址配置进程就能够根据虚拟机的物理地址,在配置文件中找到物理地址对应的网络协议地址,以继续租用给虚拟机。
本申请实施例提供的网络协议地址的配置方法,通过确定虚拟机的虚拟机标识,可基于虚拟机标识从数据库中查询到该虚拟机的第一网络协议配置信息(即IPv4配置信息),其中第一网络协议配置信息中至少包括虚拟机的物理地址、虚拟机的第一网络协议地址(即IPv4地址)以及虚拟机所属主网络的网络标识。确定出网络标识对应的配置文件,通过获取目标网络协议地址(即IPv6地址),将物理地址和目标网络协议地址添加至配置文件中,然后通过重置网络协议地址配置进程,使网络协议地址配置进程能够根据包含目标网络协议地址的配置文件,为虚拟机配置目标网络协议地址。最后将包括上述物理地址、目标网络协议地址以及网络标识的IPv6配置信息存储在数据库中,可更新数据库中的配置记录。采用本申请实施例,可实现在线虚拟机从IPv4平滑升级至IPv4/IPv6双协议栈,降低升级成本,适用性强。
参见图10,图10是本申请实施例提供的网络协议地址的配置装置的结构示意图。本申请实施例提供的网络协议地址的配置装置包括:
第一网络协议配置信息获取模块31,用于确定虚拟机的虚拟机标识,基于上述虚拟机标识从数据库中查询上述虚拟机的第一网络协议配置信息,其中上述第一网络协议配置信息包括上述虚拟机的物理地址、上述虚拟机的第一网络协议地址以及上述虚拟机所属主网络的网络标识,上述第一网络协议地址为基于第一网络协议进行通信的网络协议地址;
配置文件确定模块32,用于确定上述第一网络协议配置信息获取模块31确定的上述网络标识对应的配置文件;
配置文件更新模块33,用于获取目标网络协议地址,将上述第一网络协议配置信息获取模块31确定的上述物理地址和上述目标网络协议地址添加至上述配置文件确定模块32确定的上述配置文件中,上述目标网络协议地址为基于第二网络协议进行通信的网络协议地址,上述第二网络协议与上述第一网络协议不相同;
目标网络协议地址配置模块34,用于根据包含上述目标网络协议地址的上述配置文件更新模块33确定的配置文件,为上述虚拟机配置上述目标网络协议地址。
在一些可行的实施方式中,上述装置还包括:
对应关系建立模块35,用于建立上述第一网络协议配置信息获取模块31确定的上述物理地址与上述配置文件更新模块33确定的上述目标网络协议地址的对应关系,并将上述对应关系添加至上述配置文件;其中,上述对应关系用于基于上述物理地址查找得到上述目标网络协议地址。
在一些可行的实施方式中,上述目标网络协议地址配置模块34包括:
网络协议地址配置进程重置单元3401,用于重置网络协议地址配置进程;
网络协议地址配置请求获取单元3402,用于基于重置后的上述网络协议地址配置进程获取上述虚拟机发送的网络协议地址配置请求,上述网络协议地址配置请求用于请求获取基于上述第二网络协议进行通信的网络协议地址,上述网络协议地址配置请求中包括上述物理地址;
目标网络协议地址发送单元3403,用于基于上述网络协议地址配置进程、结合上述物理地址和上述对应关系从上述配置文件中获取上述物理地址对应的上述目标网络协议地址,并将上述目标网络协议地址发送给上述虚拟机。
在一些可行的实施方式中,上述网络协议地址的配置装置还包括:
配置文件加载模块36,用于当上述虚拟机关闭重启且上述配置文件中的配置信息被清空时,从上述数据库中获取上述虚拟机的历史配置信息,上述历史配置信息至少包括上述物理地址、上述目标网络协议地址以及上述对应关系;将上述历史配置信息添加至上述配置文件。
在一些可行的实施方式中,上述虚拟机属于上述主网络中的第一网络协议子网,上述第一网络协议子网中的虚拟机基于上述第一网络协议进行通信;上述网络协议地址的配置装置还包括:
第二网络协议子网创建模块37,用于创建第二网络协议子网,上述第二网络协议子网为上述主网络中的一个子网,上述第二网络协议子网中的虚拟机基于上述第二网络协议进行通信,上述第二网络协议子网中包括多个第二网络协议地址;从上述多个第二网络协议地址中获取任一第二网络协议地址作为目标网络协议地址。
在一些可行的实施方式中,上述对应关系建立模块具体用于:
获取上述配置文件包括的数据格式;
按照上述数据格式将上述物理地址和上述目标网络协议地址进行组合以建立上述物理地址与上述目标网络协议地址的对应关系。
具体实现中,上述网络协议地址的配置装置可通过其内置的各个功能模块执行如上述图3和图9中各个步骤所提供的实现方式。例如,上述第一网络协议配置信息获取模块31可用于执行上述各个步骤中确定虚拟机标识,以及基于虚拟机标识查询第一网络协议配置信息等实现方式,具体可参见上述各个步骤所提供的实现方式,在此不再赘述。上述配置文件确定模块32可用于执行上述各个步骤中根据网络标识确定对应的配置文件等相关步骤所描述的实现方式,具体可参见上述各个步骤所提供的实现方式,在此不再赘述。上述配置文件更新模块33可用于执行上述各个步骤中获取目标网络协议地址、将物理地址和目标网络协议地址更新至配置文件等实现方式,具体可参见上述各个步骤所提供的实现方式,在此不再赘述。上述目标网络协议地址配置模块34可用于执行上述各个步骤中根据配置文件配置虚拟机的目标网络协议地址等实现方式,具体可参见上述各个步骤所提供的实现方式,在此不再赘述。上述对应关系建立模块35可用于执行上述各个步骤中建立物理地址和目标网络协议地址的对应关系等实现方式,具体可参见上述各个步骤所提供的实现方式,在此不再赘述。上述配置文件加载模块36可用于执行上述各个步骤中获取历史配置信息、加载历史配置信息至配置文件等实现方式,具体可参见上述各个步骤所提供的实现方式,在此不再赘述。上述第二网络协议子网创建模块37可用于执行上述各个步骤中创建第二网络协议子网以及从第二网络协议子网中获取目标网络协议地址等实现方式,具体可参见上述各个步骤所提供的实现方式,在此不再赘述。
在本申请实施例中,网络协议地址的配置装置可基于确定出的虚拟机标识从数据库中查询到该虚拟机的第一网络协议配置信息(即IPv4配置信息),其中第一网络协议配置信息中至少包括虚拟机的物理地址、虚拟机的第一网络协议地址(即IPv4地址)以及虚拟机所属主网络的网络标识。确定出网络标识对应的配置文件,通过获取目标网络协议地址(即IPv6地址),将物理地址和目标网络协议地址添加至配置文件中,然后通过重置网络协议地址配置进程,使网络协议地址配置进程能够根据包含目标网络协议地址的配置文件,为虚拟机配置目标网络协议地址。最后将包括上述物理地址、目标网络协议地址以及网络标识的IPv6配置信息存储在数据库中,可更新数据库中的配置记录。采用本申请实施例,可实现在线虚拟机从IPv4平滑升级至IPv4/IPv6双协议栈,降低升级成本,灵活性高,适用范围广。
参见图11,图11是本申请实施例提供的终端设备的结构示意图。如图11所示,本实施例中的终端设备可以包括:一个或多个处理器401和存储器402。上述处理器401和存储器402通过总线403连接。存储器402用于存储计算机程序,该计算机程序包括程序指令,处理器401用于执行存储器402存储的程序指令,执行如下操作:
确定虚拟机的虚拟机标识,基于上述虚拟机标识从数据库中查询上述虚拟机的第一网络协议配置信息,其中上述第一网络协议配置信息包括上述虚拟机的物理地址、上述虚拟机的第一网络协议地址以及上述虚拟机所属主网络的网络标识,上述第一网络协议地址为基于第一网络协议进行通信的网络协议地址;
确定上述网络标识对应的配置文件;
获取目标网络协议地址,将上述物理地址和上述目标网络协议地址添加至上述配置文件中,上述目标网络协议地址为基于第二网络协议进行通信的网络协议地址,上述第二网络协议与上述第一网络协议不相同;
根据包含上述目标网络协议地址的配置文件,为上述虚拟机配置上述目标网络协议地址。
在一些可行的实施方式中,上述处理器401用于:
建立上述物理地址与上述目标网络协议地址的对应关系,并将上述对应关系添加至上述配置文件;
其中,上述对应关系用于基于上述物理地址查找得到上述目标网络协议地址。
在一些可行的实施方式中,上述处理器401用于:
重置网络协议地址配置进程;
基于重置后的上述网络协议地址配置进程获取上述虚拟机发送的网络协议地址配置请求,上述网络协议地址配置请求用于请求获取基于上述第二网络协议进行通信的网络协议地址,上述网络协议地址配置请求中包括上述物理地址;
基于上述网络协议地址配置进程、结合上述物理地址和上述对应关系从上述配置文件中获取上述物理地址对应的上述目标网络协议地址,并将上述目标网络协议地址发送给上述虚拟机。
在一些可行的实施方式中,上述处理器401用于:
当上述虚拟机关闭重启且上述配置文件中的配置信息被清空时,从上述数据库中获取上述虚拟机的历史配置信息,上述历史配置信息至少包括上述物理地址、上述目标网络协议地址以及上述对应关系;
将上述历史配置信息添加至上述配置文件。
在一些可行的实施方式中,上述虚拟机属于上述主网络中的第一网络协议子网,上述第一网络协议子网中的虚拟机基于上述第一网络协议进行通信;上述处理器401用于:
创建第二网络协议子网,上述第二网络协议子网为上述主网络中的一个子网,上述第二网络协议子网中的虚拟机基于上述第二网络协议进行通信,上述第二网络协议子网中包括多个第二网络协议地址;
从上述多个第二网络协议地址中获取任一第二网络协议地址作为目标网络协议地址。
在一些可行的实施方式中,上述处理器401用于:
获取上述配置文件包括的数据格式;
按照上述数据格式将上述物理地址和上述目标网络协议地址进行组合以建立上述物理地址与上述目标网络协议地址的对应关系。
应当理解,在一些可行的实施方式中,上述处理器401可以是中央处理单元(central processing unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(digital signal processor,DSP)、专用集成电路(application specific integratedcircuit,ASIC)、现成可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。该存储器402可以包括只读存储器和随机存取存储器,并向处理器401提供指令和数据。存储器402的一部分还可以包括非易失性随机存取存储器。例如,存储器402还可以存储设备类型的信息。
具体实现中,上述终端设备可通过其内置的各个功能模块执行如上述图3和图9中各个步骤所提供的实现方式,具体可参见上述各个步骤所提供的实现方式,在此不再赘述。
在本申请实施例中,终端设备可基于确定出的虚拟机标识从数据库中查询到该虚拟机的第一网络协议配置信息(即IPv4配置信息),其中第一网络协议配置信息中至少包括虚拟机的物理地址、虚拟机的第一网络协议地址(即IPv4地址)以及虚拟机所属主网络的网络标识。确定出网络标识对应的配置文件,通过获取目标网络协议地址(即IPv6地址),将物理地址和目标网络协议地址添加至配置文件中,然后通过重置网络协议地址配置进程,使网络协议地址配置进程能够根据包含目标网络协议地址的配置文件,为虚拟机配置目标网络协议地址。最后将包括上述物理地址、目标网络协议地址以及网络标识的IPv6配置信息存储在数据库中,可更新数据库中的配置记录。采用本申请实施例,可实现在线虚拟机从IPv4平滑升级至IPv4/IPv6双协议栈,降低升级成本,灵活性高,适用范围广。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序包括程序指令,该程序指令被处理器执行时实现图3和图9中各个步骤所提供的网络协议地址的配置方法,具体可参见上述各个步骤所提供的实现方式,在此不再赘述。
上述计算机可读存储介质可以是前述任一实施例提供的网络协议地址的配置装置或者上述终端设备的内部存储单元,例如电子设备的硬盘或内存。该计算机可读存储介质也可以是该电子设备的外部存储设备,例如该电子设备上配备的插接式硬盘,智能存储卡(smart media card,SMC),安全数字(secure digital,SD)卡,闪存卡(flash card)等。进一步地,该计算机可读存储介质还可以既包括该电子设备的内部存储单元也包括外部存储设备。该计算机可读存储介质用于存储该计算机程序以及该电子设备所需的其他程序和数据。该计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。
本申请的权利要求书和说明书及附图中的术语“第一”、“第二”、“第三”、“第四”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、***、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置展示该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例提供的方法及相关装置是参照本申请实施例提供的方法流程图和/或结构示意图来描述的,具体可由计算机程序指令实现方法流程图和/或结构示意图的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。这些计算机程序指令可提供到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或结构示意图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或结构示意图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或结构示意一个方框或多个方框中指定的功能的步骤。

Claims (10)

1.一种网络协议地址的配置方法,其特征在于,所述方法包括:
确定虚拟机的虚拟机标识,基于所述虚拟机标识从数据库中查询所述虚拟机的第一网络协议配置信息,其中所述第一网络协议配置信息包括所述虚拟机的物理地址、所述虚拟机的第一网络协议地址以及所述虚拟机所属主网络的网络标识,所述第一网络协议地址为基于第一网络协议进行通信的网络协议地址;
确定所述网络标识对应的配置文件;
获取目标网络协议地址,将所述物理地址和所述目标网络协议地址添加至所述配置文件中,所述目标网络协议地址为基于第二网络协议进行通信的网络协议地址,所述第二网络协议与所述第一网络协议不相同;
根据包含所述目标网络协议地址的配置文件,为所述虚拟机配置所述目标网络协议地址。
2.根据权利要求1所述方法,其特征在于,所述获取目标网络协议地址之后,所述方法还包括:
建立所述物理地址与所述目标网络协议地址的对应关系,并将所述对应关系添加至所述配置文件;
其中,所述对应关系用于基于所述物理地址查找得到所述目标网络协议地址。
3.根据权利要求2所述方法,其特征在于,所述根据包含所述目标网络协议地址的配置文件,为所述虚拟机配置所述目标网络协议地址,包括:
重置网络协议地址配置进程;
基于重置后的所述网络协议地址配置进程获取所述虚拟机发送的网络协议地址配置请求,所述网络协议地址配置请求用于请求获取基于所述第二网络协议进行通信的网络协议地址,所述网络协议地址配置请求中包括所述物理地址;
基于所述网络协议地址配置进程、结合所述物理地址和所述对应关系从所述配置文件中获取所述物理地址对应的所述目标网络协议地址,并将所述目标网络协议地址发送给所述虚拟机。
4.根据权利要求2所述方法,其特征在于,所述方法还包括:
当所述虚拟机关闭重启且所述配置文件中的配置信息被清空时,从所述数据库中获取所述虚拟机的历史配置信息,所述历史配置信息至少包括所述物理地址、所述目标网络协议地址以及所述对应关系;
将所述历史配置信息添加至所述配置文件。
5.根据权利要求1-4任一项所述方法,其特征在于,所述虚拟机属于所述主网络中的第一网络协议子网,所述第一网络协议子网中的虚拟机基于所述第一网络协议进行通信;
所述获取目标网络协议地址,包括:
创建第二网络协议子网,所述第二网络协议子网为所述主网络中的一个子网,所述第二网络协议子网中的虚拟机基于所述第二网络协议进行通信,所述第二网络协议子网中包括多个第二网络协议地址;
从所述多个第二网络协议地址中获取任一第二网络协议地址作为目标网络协议地址。
6.根据权利要求2-4任一项所述方法,其特征在于,所述建立所述物理地址与所述目标网络协议地址的对应关系,包括:
获取所述配置文件包括的数据格式;
按照所述数据格式将所述物理地址和所述目标网络协议地址进行组合以建立所述物理地址与所述目标网络协议地址的对应关系。
7.一种网络协议地址的配置装置,其特征在于,所述装置包括:
第一网络协议配置信息获取模块,用于确定虚拟机的虚拟机标识,基于所述虚拟机标识从数据库中查询所述虚拟机的第一网络协议配置信息,其中所述第一网络协议配置信息包括所述虚拟机的物理地址、所述虚拟机的第一网络协议地址以及所述虚拟机所属主网络的网络标识,所述第一网络协议地址为基于第一网络协议进行通信的网络协议地址;
配置文件确定模块,用于确定所述第一网络协议配置信息获取模块确定的所述网络标识对应的配置文件;
配置文件更新模块,用于获取目标网络协议地址,将所述第一网络协议配置信息获取模块确定的所述物理地址和所述目标网络协议地址添加至所述配置文件确定模块确定的所述配置文件中,所述目标网络协议地址为基于第二网络协议进行通信的网络协议地址,所述第二网络协议与所述第一网络协议不相同;
目标网络协议地址配置模块,用于根据包含所述目标网络协议地址的所述配置文件更新模块确定的配置文件,为所述虚拟机配置所述目标网络协议地址。
8.根据权利要求7所述装置,其特征在于,所述装置还包括:
对应关系建立模块,用于建立所述第一网络协议配置信息获取模块确定的所述物理地址与所述配置文件更新模块确定的所述目标网络协议地址的对应关系,并将所述对应关系添加至所述配置文件;
其中,所述对应关系用于基于所述物理地址查找得到所述目标网络协议地址。
9.一种终端设备,其特征在于,包括处理器和存储器,所述处理器和存储器相互连接;
所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行如权利要求1-6任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行如权利要求1-6任一项所述的方法。
CN201910629139.5A 2019-07-12 2019-07-12 一种网络协议地址的配置方法及装置 Active CN110213391B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910629139.5A CN110213391B (zh) 2019-07-12 2019-07-12 一种网络协议地址的配置方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910629139.5A CN110213391B (zh) 2019-07-12 2019-07-12 一种网络协议地址的配置方法及装置

Publications (2)

Publication Number Publication Date
CN110213391A true CN110213391A (zh) 2019-09-06
CN110213391B CN110213391B (zh) 2021-09-28

Family

ID=67797272

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910629139.5A Active CN110213391B (zh) 2019-07-12 2019-07-12 一种网络协议地址的配置方法及装置

Country Status (1)

Country Link
CN (1) CN110213391B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111586196A (zh) * 2020-04-07 2020-08-25 无锡华云数据技术服务有限公司 一种虚拟机网络双栈的实现方法、装置及***
CN111600972A (zh) * 2020-05-15 2020-08-28 咪咕视讯科技有限公司 双栈地址的配置方法、服务器和可读存储介质
CN111629084A (zh) * 2020-07-28 2020-09-04 腾讯科技(深圳)有限公司 数据传输方法和装置、存储介质及电子设备
CN113938459A (zh) * 2021-09-06 2022-01-14 锐捷网络股份有限公司 一种IPv6配置方法及装置
CN115190101A (zh) * 2022-09-08 2022-10-14 北京交通大学 一种设备的网络地址管理及数据传输方法
CN115277639A (zh) * 2022-05-30 2022-11-01 紫光建筑云科技(重庆)有限公司 一种VPC支持IPv6的实现方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040141513A1 (en) * 2003-01-10 2004-07-22 Ryuichi Takechi Address translation device
US20040151202A1 (en) * 2003-01-31 2004-08-05 Mandavilli Swamy J. Method and apparatus for discovering topology information in a network
CN103312828A (zh) * 2012-03-09 2013-09-18 中兴通讯股份有限公司 虚拟机的mac与ip地址对配置方法、装置及***
CN108347493A (zh) * 2017-01-25 2018-07-31 华为技术有限公司 混合云管理方法、装置和计算设备
CN109688241A (zh) * 2018-12-25 2019-04-26 武汉烽火信息集成技术有限公司 基于SDN的IPv4/IPv6双栈转换方法和***

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040141513A1 (en) * 2003-01-10 2004-07-22 Ryuichi Takechi Address translation device
US20040151202A1 (en) * 2003-01-31 2004-08-05 Mandavilli Swamy J. Method and apparatus for discovering topology information in a network
CN103312828A (zh) * 2012-03-09 2013-09-18 中兴通讯股份有限公司 虚拟机的mac与ip地址对配置方法、装置及***
CN108347493A (zh) * 2017-01-25 2018-07-31 华为技术有限公司 混合云管理方法、装置和计算设备
CN109688241A (zh) * 2018-12-25 2019-04-26 武汉烽火信息集成技术有限公司 基于SDN的IPv4/IPv6双栈转换方法和***

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111586196A (zh) * 2020-04-07 2020-08-25 无锡华云数据技术服务有限公司 一种虚拟机网络双栈的实现方法、装置及***
CN111586196B (zh) * 2020-04-07 2022-09-06 华云数据控股集团有限公司 一种虚拟机网络双栈的实现方法、装置及***
CN111600972A (zh) * 2020-05-15 2020-08-28 咪咕视讯科技有限公司 双栈地址的配置方法、服务器和可读存储介质
CN111600972B (zh) * 2020-05-15 2023-04-07 咪咕视讯科技有限公司 双栈地址的配置方法、服务器和可读存储介质
CN111629084A (zh) * 2020-07-28 2020-09-04 腾讯科技(深圳)有限公司 数据传输方法和装置、存储介质及电子设备
CN113938459A (zh) * 2021-09-06 2022-01-14 锐捷网络股份有限公司 一种IPv6配置方法及装置
CN115277639A (zh) * 2022-05-30 2022-11-01 紫光建筑云科技(重庆)有限公司 一种VPC支持IPv6的实现方法
CN115190101A (zh) * 2022-09-08 2022-10-14 北京交通大学 一种设备的网络地址管理及数据传输方法
CN115190101B (zh) * 2022-09-08 2023-01-17 北京交通大学 一种设备的网络地址管理及数据传输方法

Also Published As

Publication number Publication date
CN110213391B (zh) 2021-09-28

Similar Documents

Publication Publication Date Title
CN110213391A (zh) 一种网络协议地址的配置方法及装置
US11956207B2 (en) Multi-tenant aware dynamic host configuration protocol (DHCP) mechanism for cloud networking
CN108510389B (zh) 基于区块链的智能合约调用方法、设备及可读存储介质
CN106301829B (zh) 一种网络业务扩容的方法和装置
US9628328B2 (en) Network controller with integrated resource management capability
CN107911463B (zh) 一种业务跨云架构及其创建方法、管理方法
CN107580083A (zh) 一种容器ip地址分配的方法和***
CN107357660A (zh) 一种虚拟资源的分配方法及装置
CN108462592A (zh) 基于sla的资源分配方法和nfvo
CN103607430A (zh) 一种网络处理的方法和***及网络控制中心
CN106953848B (zh) 一种基于ForCES的软件定义网络实现方法
CN112688814B (zh) 一种设备接入方法、装置、设备及机器可读存储介质
CN110221918A (zh) 一种ns与vnf的关联方法、装置及***
CN112035216B (zh) 一种Kubernetes集群网络和OpenStack网络的打通方法
US11483178B2 (en) Customer activation on edge computing environment
CN107580011A (zh) 一种数据共享方法及桌面云服务端
CN109120444A (zh) 云资源管理方法、处理器以及存储介质
EP3893437B1 (en) Method and device for deploying virtual network function
CN108370329B (zh) 管理功能对象的管理方法及装置
CN116566830A (zh) 一种网络配置方法、装置、***、边缘设备及存储介质
CN116450297A (zh) 一种虚拟机创建方法、装置、设备及存储介质
CN114490393A (zh) 一种单集群多租户管理***
CN118057776A (zh) 部署虚拟化网络功能的方法和通信装置
Yoon et al. Orchestration for multiple domain transport networks
CN115733743A (zh) 网络业务部署方法、nfvo以及nfv***

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