CN115225606A - 一种容器云平台的跨网络协议的域名访问方法和系统 - Google Patents

一种容器云平台的跨网络协议的域名访问方法和系统 Download PDF

Info

Publication number
CN115225606A
CN115225606A CN202210809559.3A CN202210809559A CN115225606A CN 115225606 A CN115225606 A CN 115225606A CN 202210809559 A CN202210809559 A CN 202210809559A CN 115225606 A CN115225606 A CN 115225606A
Authority
CN
China
Prior art keywords
domain name
service
cloud platform
container cloud
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
CN202210809559.3A
Other languages
English (en)
Other versions
CN115225606B (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.)
Shanghai Daoke Network Technology Co ltd
Original Assignee
Shanghai Daoke Network Technology 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 Shanghai Daoke Network Technology Co ltd filed Critical Shanghai Daoke Network Technology Co ltd
Priority to CN202210809559.3A priority Critical patent/CN115225606B/zh
Publication of CN115225606A publication Critical patent/CN115225606A/zh
Application granted granted Critical
Publication of CN115225606B publication Critical patent/CN115225606B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/10Mapping addresses of different types
    • H04L61/103Mapping addresses of different types across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/251Translation of Internet protocol [IP] addresses between different IP versions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/08Protocols for interworking; Protocol conversion

Abstract

本申请涉及容器云平台技术领域,提供了一种容器云平台的跨网络协议的域名访问方法和系统。该方法包括:第一网络协议转换器在收到客户端发出的域名解析请求后,将域名解析请求转发至位于第一容器云平台中的域名解析器;域名解析器对域名解析请求进行响应,以向第一网络协议转换器返回第一服务的第二网络访问地址;响应于收到第二网络访问地址,第一网络协议转换器向客户端返回第一网络访问地址;位于第一容器云平台中的第二网络协议转换器接收到客户端发出的第一访问请求数据包后,将第二访问请求数据包发送至第一服务。如此,使得客户端能够直接使用服务域名对支持不同网络协议的容器云平台中对应的第一服务进行访问。

Description

一种容器云平台的跨网络协议的域名访问方法和系统
技术领域
本申请涉及容器云平台技术领域,特别涉及一种容器云平台的跨网络协议的域名访问方法、系统、计算机可读存储介质和电子设备。
背景技术
目前,互联网协议正处于IPv4向IPv6过渡的时期,虽然新部署的容器云平台(比如Kubernetes集群)能够同时支持IPv4和IPv6两种网络协议,但之前部署的容器云平台大多仅支持IPv4网络协议,使得位于IPv6网络中的客户端不能对容器云平台中的服务(Service)进行访问。
相关技术中,通过对容器云平台进行升级改造,以使其能够同时兼容IPv4网络协议和IPv6网络协议,但升级改造方案的成本和工作量都很高。
因此,需要提供一种针对上述现有技术不足的改进技术方案。
发明内容
本申请的目的在于提供一种容器云平台的跨网络协议的域名访问方法、系统、计算机可读存储介质和电子设备,以解决或缓解上述现有技术中存在的问题。
为了实现上述目的,本申请提供如下技术方案:
本申请实施例提供一种容器云平台的跨网络协议的域名访问方法,包括:
第一网络协议转换器收到客户端发出的域名解析请求后,将所述域名解析请求转发至位于第一容器云平台中的域名解析器;所述域名解析请求用于请求第一服务的第一网络访问地址,所述第一服务位于所述第一容器云平台中;
所述域名解析器对所述域名解析请求进行响应,以向所述第一网络协议转换器返回所述第一服务的第二网络访问地址;
响应于收到所述第二网络访问地址,所述第一网络协议转换器向所述客户端返回所述第一网络访问地址;
位于所述第一容器云平台中的第二网络协议转换器接收到所述客户端发出的第一访问请求数据包后,将第二访问请求数据包发送至所述第一服务;所述第二访问请求数据包由所述第一访问请求数据包转换后生成,所述第一访问请求数据包的目的IP地址为所述第一网络访问地址,所述第二访问请求数据包的目的IP地址为所述第二网络访问地址。
上述方案中,所述第一网络协议转换器中存储有多个容器云平台的标识信息,所述域名解析请求中含有所述第一容器云平台的标识信息,
相应地,所述第一网络协议转换器收到客户端发出的域名解析请求后,将所述域名解析请求转发至位于第一容器云平台中的域名解析器,还包括:
所述第一网络协议转换器根据所述第一容器云平台的标识信息,确定所述第一服务位于所述第一容器云平台中。
上述方案中,所述域名解析请求中含有所述第一服务对应的服务域名,所述第一容器云平台的标识信息为所述服务域名的前缀,
相应地,所述第一网络协议转换器根据所述第一容器云平台的标识信息,确定所述第一服务位于所述第一容器云平台中,包括:
所述第一网络协议转换器对所述第一服务对应的服务域名进行解析,以确定所述服务域名的前缀;
所述第一网络协议转换器根据所述服务域名的前缀,确定所述第一服务位于所述第一容器云平台中。
上述方案中,该方法还包括:
所述域名解析器的域名解析记录中预先记录有所述第一服务对应的服务域名和所述第二网络访问地址的映射关系,以便所述第一容器云平台中的第二服务使用所述服务域名向所述第一服务进行访问。
上述方案中,所述第一网络访问地址为IPv6地址,所述第二网络访问地址为IPv4地址,
相应地,所述响应于收到所述第二网络访问地址,所述第一网络协议转换器向所述客户端返回所述第一网络访问地址,包括:
所述第一网络协议转换器为所述第二网络访问地址添加IPv6前缀,以生成所述第一网络访问地址,并将所述第一网络访问地址返回所述客户端;所述IPv6前缀与所述第一容器云平台对应。
上述方案中,所述客户端中存储有所述IPv6前缀与所述第一容器云平台的映射关系,
相应地,在所述第一网络协议转换器向所述客户端返回所述第一网络访问地址之后,还包括:
所述客户端根据所述IPv6前缀与所述第一容器云平台的映射关系,向所述第一容器云平台发出所述第一访问请求数据包。
上述方案中,所述位于所述第一容器云平台中的第二网络协议转换器接收到所述客户端发出的第一访问请求数据包后,将第二访问请求数据包发送至所述第一服务,包括:
所述第二网络协议转换器将所述第一访问请求数据包的目的IP地址的IPv6前缀去除,以得到所述第二访问请求数据包;
所述第二网络协议转换器根据所述第二访问请求数据包的目的IP地址,将所述第二访问请求数据包发送至所述第一服务。
本申请实施例还提供容器云平台的跨网络协议的域名访问系统,包括:
第一转发单元,配置为第一网络协议转换器收到客户端发出的域名解析请求后,将所述域名解析请求转发至位于第一容器云平台中的域名解析器;所述域名解析请求用于请求第一服务的第一网络访问地址,所述第一服务位于所述第一容器云平台中;
响应单元,配置为所述域名解析器对所述域名解析请求进行响应,以向所述第一网络协议转换器返回所述第一服务的第二网络访问地址;
地址转换单元,配置为响应于收到所述第二网络访问地址,所述第一网络协议转换器向所述客户端返回所述第一网络访问地址;
第二转发单元,配置为位于所述第一容器云平台中的第二网络协议转换器接收到所述客户端发出的第一访问请求数据包后,将第二访问请求数据包发送至所述第一服务;所述第二访问请求数据包由所述第一访问请求数据包转换后生成,所述第一访问请求数据包的目的IP地址为所述第一网络访问地址,所述第二访问请求数据包的目的IP地址为所述第二网络访问地址。
本申请实施例还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序为如上任一所述的容器云平台的跨网络协议的域名访问方法。
本申请实施例还提供一种电子设备,包括:存储器、处理器、以及存储在所述存储器中并可在所述处理器上运行的程序,所述处理器执行所述程序时实现如上任一所述的容器云平台的跨网络协议的域名访问方法。
有益效果:
本发明实施例提供一种容器云平台的跨网络协议的域名访问方法、系统、计算机可读存储介质和电子设备,该方法包括:第一网络协议转换器在收到客户端发出的域名解析请求后,将域名解析请求转发至位于第一容器云平台中的域名解析器;其中,域名解析请求用于请求第一服务的第一网络访问地址,第一服务位于第一容器云平台中;域名解析器对域名解析请求进行响应,以向第一网络协议转换器返回第一服务的第二网络访问地址;响应于收到第二网络访问地址,第一网络协议转换器向客户端返回第一网络访问地址;位于第一容器云平台中的第二网络协议转换器接收到客户端发出的第一访问请求数据包后,将第二访问请求数据包发送至第一服务;第二访问请求数据包由第一访问请求数据包转换后生成,第一访问请求数据包的目的IP地址为第一网络访问地址,第二访问请求数据包的目的IP地址为第二网络访问地址。如此,通过使用第一网络协议转换器和位于第一容器云平台中的第二网络协议转换器作为网络隔离工具,无需对支持不同网络协议的容器云平台进行升级改造,即可实现客户端直接使用对应的服务域名对支持不同网络协议的容器云平台中的第一服务进行访问。
附图说明
构成本申请的一部分的说明书附图用来提供对本申请的进一步理解,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。其中:
图1为客户端通过服务域名访问部署在容器云平台中的Service的逻辑示意图;
图2为根据本申请的一些实施例提供的容器云平台的跨网络协议的域名访问方法的流程示意图;
图3为根据本申请的一些实施例提供的容器云平台的跨网络协议的域名访问方法的逻辑示意图;
图4为根据本申请的一些实施例提供的多容器云平台场景下容器云平台的跨网络协议的域名访问方法的逻辑示意图;
图5为根据本申请的一些实施例提供的容器云平台的跨网络协议的域名访问系统的结构示意图;
图6为根据本申请的一些实施例提供的电子设备的结构示意图;
图7为根据本申请的一些实施例提供的电子设备的硬件结构图。
具体实施方式
下面将参考附图并结合实施例来详细说明本申请。各个示例通过本申请的解释的方式提供而非限制本申请。实际上,本领域的技术人员将清楚,在不脱离本申请的范围或精神的情况下,可在本申请中进行修改和变型。例如,示为或描述为一个实施例的一部分的特征可用于另一个实施例,以产生又一个实施例。因此,所期望的是,本申请包含归入所附权利要求及其等同物的范围内的此类修改和变型。
在以下描述中,所涉及的术语“第一/第二/第三”仅仅是区别类似的对象,不代表对对象的特定排序,可以理解地,“第一/第二/第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的顺序实施。
除另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。
对本申请实施例进行进一步详细说明之前,对本申请实施例中涉及的名词和术语进行说明,本发明实施例中涉及的名词和术语适用如下的解释。
1)云原生(Cloud Native)技术:是一种在云环境中构建和运行应用程序的方法,在实际应用中,可以通过容器、容器编排、微服务、DevOps等云原生技术构建容错性好、易于管理和便于观察的云原生应用。
2)容器技术:是一种操作系统级的虚拟化技术,能够有效的将单个操作系统的资源划分到孤立的资源组中,以便更好地在资源组之间平衡有冲突的资源使用需求。
3)容器云平台:指的是依靠容器技术,结合云原生技术,采用容器、容器编排、服务网格、微服务等技术构建的一种轻量化PaaS平台。容器云平台融合传统云计算的IaaS层和PaaS层,给应用从开发、编排、发布、治理和运维等方面提供全生命周期管理(ApplicationLifecycle Management,ALM)的能力。
4)Kubernetes:Google开源的容器编排引擎,用于管理云平台中多个主机上容器化应用。
5)Kubernetes集群:是指部署有Kubernetes的节点组成集群,Kubernetes将集群中的节点按照功能不同划分为控制节点和工作节点,在控制节点上运行着集群管理相关的一组进程,来自动完成整个集群的资源管理、Pod调度、弹性伸缩、安全控制、系统监控和纠错等管理能力。
6)IP:是Internet Protocol(网际互连协议)的缩写,是TCP/IP体系中的网络层协议。IP是网络之间信息传送的协议,可基于目的设备的IP地址将IP信息包从源设备(例如用户的计算机)传送到目的设备(例如某部门的www服务器)。需要说明的是,所有使用IP协议的网络设备均配置有一个唯一的IP地址。
7)IPv4:是Internet Protocol version 4(互联网协议第4版)的缩写,是互联网中使用广泛的网际协议版本,也是互联网的核心网际协议版本。IPv4地址由4个字段和3个分隔字段的“.”组成,每个字段的取值范围为0~255,例如127.0.0.1。
8)IPv6:是Internet Protocol Version 6(互联网协议第6版)的缩写,是互联网工程任务组(IETF)设计的用于替代IPv4的下一代IP协议。IPv6的地址长度为128位,采用十六进制表示,例如FF01:0:0:0:0:0:0:1101。IPv6能够提供大量的网络地址资源,解决IPv4存在的网络地址资源不足的问题。
9)NAT64转换:IPv6协议与IPv4协议的相互转换,能够将IPv6格式的报文转变为IPv4格式的报文。
10)NAT46转换:IPv4协议与IPv6协议的相互转换,能够将IPv4格式的报文转变为IPv6格式的报文。
IP地址包括IPV4地址和IPV6地址两个版本,无论是IPv4地址还是IPv6地址,均不方便记忆,且不能显示IP地址对应的组织和名称。为了能够更方便地使用IP地址,人们设计了域名。域名(Domain Name)是由一串以点分隔的名字组成的互联网中某一网络设备的名称,其与IP地址具有一一对应的映射关系,并通过域名服务系统(DNS,Domain NameSystem)实现域名和IP地址的相互映射。由于域名能够清晰表明网络设备所属的组织和名称,更符合人们的记忆和使用习惯,使人们无需再记忆枯燥的IP地址就能够方便地使用互联网,因此,在实际应用中,人们通常通过域名访问互联网。
具体到云原生技术领域,允许容器云平台的用户通过客户端使用服务域名直接访问部署在容器云平台中对应的服务(Service)。
相关技术中,以Kubernetes集群为例进行说明,参见图1,Service被部署在Kubernetes集群后,Service控制器从Kubernetes集群的网段中选择(随机选择或者人工指定)某个IP地址作为Service对应的服务虚拟IP地址(Cluster IP),域名解析器通过API-Server获取Service对应的服务域名和Cluster IP,域名解析器根据Service对应的服务域名和Cluster IP创建Service对应的DNS记录,即Service对应的服务域名和Cluster IP的映射关系。
在Kubernetes集群以外的客户端与Kubernetes集群均支持IPv4网络协议的情况下,当客户端要访问部署在集群中的Service时,可以先向该集群中域名解析器发送域名解析请求,其中,域名解析请求包含该Service对应的服务域名(比如Local.ServiceName)。
域名解析器根据预先创建的DNS记录,向客户端反馈该Service对应的Cluster IP(比如192.0.2.1)。
客户端根据该Service对应的Cluster IP,发出指向该Service的访问请求数据包,访问请求数据包的报文源地址为客户端IP地址,报文目的地址为Service对应的Cluster IP(比如192.0.2.1)。由此客户端可以通过Service对应的服务域名向Kubernetes集群中的Service发送访问请求数据包,实现对Kubernetes集群中的Service直接使用对应的服务域名进行访问。
然而,目前互联网处于IPv4向IPv6过渡的时期,虽然新部署的容器云平台能够兼容IPv4和IPv6两种网络协议,但之前部署的容器云平台大多数仅支持IPv4网络协议。当位于IPv6网络中的客户端需要访问只支持IPv4网络协议的容器云平台中的Service时,往往因IPv4网络协议和IPv6网络协议二者不相互兼容而导致客户端无法对容器云平台中的Service直接使用对应的服务域名进行访问。
相关技术通过对只支持IPv4的容器云平台进行升级改造以使其能够同时兼容IPv4网络协议与IPv6网络协议,比如对相关物理设备进行替换、对容器云平台中的各种组件进行升级。然而,升级改造的成本和工作量都很高。
为此,申请人提供了一种容器云平台的跨网络协议的域名访问方法,通过在独立于容器云平台之外设置第一网络协议转换器,在容器云平台中设置第二网络协议转换器,使用第一网络协议转换器和第二网络协议转换器作为网络隔离的工具,解决了现有技术中存在的客户端与容器云平台使用不同的网络协议、客户端无法直接使用域名对容器云平台中的服务进行跨网络协议访问的问题,从而让客户端能够直接使用服务域名对支持不同网络协议的容器云平台中对应的第一服务进行访问。
示例性方法
本申请实施例提供一种容器云平台的跨网络协议的域名访问方法,为了统一描述,本申请实施例将要访问的服务(Service)称作第一服务,将第一服务所在的容器云平台称作第一容器云平台,将第一容器云平台中第一服务以外的其他任一服务称作第二服务。如图2、图3、图4所示,该方法包括:
步骤S101、第一网络协议转换器收到客户端发出的域名解析请求后,将域名解析请求转发至位于第一容器云平台中的域名解析器。
其中,域名解析请求用于请求第一服务的第一网络访问地址,第一服务位于第一容器云平台中。
这里,第一服务可以是第一容器云平台中部署的任一服务。服务(Service)为容器组(Pod)中的应用提供单一不变的接入点资源,从而保证部署在容器云平台中的应用稳定地对外提供处理数据的能力。
本申请中,客户端通过第一服务对应的服务域名对第一服务进行访问,第一服务位于第一容器云平台中。由于容器云平台所使用的网络协议与客户端所使用的网络协议不同,需要对不同的网络协议进行转换,以避免因网络协议不同而导致访问失败。
应当理解,本申请提供的方法,能够处理不同的跨网络协议域名访问的场景,比如,在一示例性场景中,客户端可以使用IPv6网络协议,容器云平台可以使用IPv4网络协议;又比如,在另一示例性场景中,客户端可以使用IPv4网络协议,容器云平台可以使用IPv6网络协议。为了便于理解,下面以客户端使用IPv6网络协议,容器云平台使用IPv4网络协议为例,对本申请的技术方案进行详细说明。
如前所述,对于仅支持IPv4协议的容器云平台,位于IPv6网络中的客户端无法对部署在这些容器云平台中的Service进行访问。实际应用中,申请人经过对现有技术进行分析后发现:在云原生场景下,客户端通过Service对应的服务域名直接访问部署在容器云平台中的Service时,需要先向容器云平台中的域名解析器发送域名解析请求,获取待访问Service对应的Cluster IP,再向Cluster IP发送访问请求数据包,实现对容器云平台中的Service的访问。
这和传统网络中客户端使用域名访问网站服务器的场景存在区别,传统网络中存在独立于客户端和网站服务器的域名解析服务器,客户端首先向域名解析服务器发送域名解析请求(其中包含网站的域名),域名解析服务器向客户端反馈网站的IP地址,客户端再向网站的IP地址发送访问请求数据包。域名解析服务器作为提供域名解析服务的公共服务器,无论网站服务器支持的是IPv4还是IPv6网络协议,域名解析服务器需要能够同时支持IPv4和IPv6网络协议,才能向公众提供域名解析服务。
而在云原生场景下,域名解析器和待访问的Service位于同一个容器云平台中,域名解析器不再是独立于容器云平台的公共域名解析服务提供方,并且与Service使用相同的网络协议,。
也就是说,在发送访问请求数据包的过程中,客户端至少需要向容器云平台发送一次域名解析请求和一次访问请求,而位于IPv6网络中的客户端发出的域名解析请求和访问请求数据包的格式都只符合IPv6网络协议。因此需要对客户端发出的域名解析请求和访问请求数据包进行网络协议转换,将其转换为符合IPv4网络协议的域名解析请求和访问请求数据包,从而能够被容器云平台中对应的组件进行处理。
基于此,为了使仅支持IPv4网络协议的容器云平台能够处理客户端发出的只符合IPv6网络协议的域名解析请求,本申请中,在第一容器云平台之外设置第一网络协议转换器,用于接收客户端发出的域名解析请求,并将该域名解析请求转发到容器平台中的域名解析器。
具体实施时,参见图3,在独立于第一容器云平台之外设置第一网络协议转换器,作为域名解析请求过程中的网络隔离工具,客户端与第一网络协议转换器通过IPv6网络协议进行通信,第一网络协议转换器与域名解析器通过IPv4网络协议进行通信,其中,域名解析器部署在第一容器云平台中,第一容器云平台中的组件都使用IPv4网络协议进行通信。
当位于第一容器云平台之外的IPv6网络的客户端需要访问第一容器云平台中部署的第一服务时,客户端向第一容器云平台中的域名解析器发送域名解析请求,域名解析请求中包括第一服务对应的服务域名(比如Local.ServiceName)。
客户端发出的域名解析请求并不直接送达第一容器云平台中的域名解析器,而是先到达位于第一容器云平台之外的第一网络协议转换器,再由第一网络协议转换器转发至第一容器云平台中的域名解析器。具体来说,客户端使用IPv6网络协议将域名解析请求发送至第一网络协议转换器,第一网络协议转换器接收域名解析请求后,使用IPv4网络协议将域名解析请求转发至域名解析器,并在转发域名解析请求的同时将发出域名解析请求的主体变更为其自身,即第一网络协议转换器。如此,通过改变域名解析请求的主体,使得域名解析器误以为第一网络协议转换器发出域名解析请求,从而实现第一网络协议转换器替代客户端与域名解析器使用IPv4网络协议进行通信。
本申请中,通过在第一容器云平台之外部署的第一网络协议转换器,使得客户端并不直接与第一容器云平台中的域名解析器进行通信,而是通过第一网络转换器代替客户端与域名解析器进行直接通信,从而使位于IPv6网络中的客户端发出的域名解析请求能够被仅支持IPv4网络协议的第一容器云平台正确处理,在域名解析请求过程中实现网络隔离。
步骤S102、域名解析器对域名解析请求进行响应,以向第一网络协议转换器返回第一服务的第二网络访问地址。
需要说明的是,从支持的网络协议来看,常见的域名解析器分为三种:第一种是同时支持IPv4和IPv6两种网络协议的域名解析器;第二种是只支持IPv4网络协议的域名解析器;第三种是只支持IPv6网络协议的域名解析器。
对于同时支持IPv4和IPv6两种网络协议的域名解析器,其能够根据发出域名解析请求的主体所使用的网络协议返回对应形式的IP地址。也就是说,如果域名解析请求的主体使用IPv4网络协议发送域名解析请求,则域名解析器将返回IPv4形式的IP地址;如果域名解析请求的主体使用IPv6网络协议发送域名解析请求,则域名解析器将返回IPv6形式的IP地址。
对于只支持IPv4网络协议的域名解析器,则只能对使用IPv4网络协议发出的域名解析请求进行处理。也就是说,如果域名解析请求的主体使用IPv4网络协议发送域名解析请求,则域名解析器将返回IPv4形式的IP地址;如果域名解析请求的主体使用IPv6网络协议发送域名解析请求,则域名解析器将无法对其进行处理。
对于只支持IPv6网络协议的域名解析器,不能被部署在只支持IPv4网络协议的容器云平台中,在此暂时不对其进行展开说明。
具体到本申请的应用场景中,如果客户端使用IPv6网络协议直接向只支持IPv4网络协议的第一容器云平台中的域名解析器发出域名解析请求,此时,由于第一容器云平台中的域名解析器位于IPv4网络中,客户端发出的域名解析请求将无法直接进入第一容器云平台的内部网络,也就无法到达域名解析器,从而导致容器云平台中的域名解析器无法对域名解析请求进行响应,客户端也无法对容器云平台中的服务进行访问。
本申请实施例中,由于域名解析器与第一网络协议转换器通过IPv4网络协议进行通信,第一网络协议转换器转发来自客户端的域名解析请求时,将域名解析请求的主体变更为第一网络协议转换器,如此,域名解析器对域名解析请求进行响应时,根据请求的主体——第一网络协议转换器所使用的网络协议版本,向第一网络协议转换器返回第一服务的IPv4地址(即第二网络访问地址)。
在一可选的实施方式中,域名解析器的域名解析记录中预先记录有第一服务对应的服务域名和第二网络访问地址的映射关系,以便第一容器云平台中的第二服务使用服务域名向第一服务进行访问,从而在第一容器云平台内通过服务域名实现不同服务之间的便捷访问。
具体地,以容器云平台为Kubernetes集群为例,当第一服务部署在容器云平台后,Service控制器从Kubernetes集群的网段中选择某个IP地址作为第一服务对应的第二网络访问地址(Cluster IP),域名解析器通过API-Server获取第一服务对应的服务域名和Cluster IP,域名解析器根据第一服务对应的服务域名和Cluster IP创建第一服务对应的DNS记录,即第一服务对应的服务域名和第二网络访问地址的映射关系。
当部署在容器云平台中的第二服务使用服务域名对第一服务进行访问时,向域名解析器发送包含第一服务对应的服务域名的域名解析请求,域名解析器根据第一服务对应的服务域名和第二网络访问地址的映射关系(即域名解析器上预先存储的DNS记录),确定第一服务对应的第二网络访问地址,并将该第二网络访问地址返回给第二服务。第二服务根据接收到的第二网络访问地址向第一服务发出访问数据请求包,并接收第一服务返回的反馈数据信息。如此,实现了容器云平台内部各服务之间基于服务域名的相互访问。
当位于容器云平台之外的客户端使用IPv6网络协议通过服务域名对部署在容器云平台中的第一服务进行访问时,客户端向第一网络协议转换器发送包含第一服务对应的服务域名的域名解析请求,域名解析器接收到第一网络协议转换器转发的域名解析请求后,根据预先记录的第一服务对应的服务域名和第二网络访问地址的映射关系(即域名解析器上预先存储的DNS记录)对域名解析请求进行解析,并向第一网络协议转换器返回第一服务对应的第二网络访问地址。如此,通过第一网络协议转换器替代客户端与容器云平台中的域名解析器进行通信,并向客户端返回第一网络访问地址,使得容器云平台能够以统一的方式处理包含服务域名的域名解析请求,而不需要区分该域名解析请求为来自容器云平台内部的另一服务或是来自容器云平台之外的客户端,从而简化了容器云平台的运维管理,提高了工作效率。
步骤S103、响应于收到第二网络访问地址,第一网络协议转换器向客户端返回第一网络访问地址。
本申请实施例中,第一网络协议转换器接收到域名解析器返回的第二网络访问地址后,将第二网络访问地址转换为第一网络访问地址,并返回给客户端。
具体地,作为一种可选的示例,第一网络访问地址为IPv6地址,第二网络访问地址为IPv4地址,相应地,响应于收到第二网络访问地址,第一网络协议转换器向客户端返回第一网络访问地址,包括:第一网络协议转换器为第二网络访问地址添加IPv6前缀,以生成第一网络访问地址,并将第一网络访问地址返回客户端;IPv6前缀与第一容器云平台对应。
具体实施时,第一网络协议转换器收到第一服务对应的IPv4地址(即第二网络访问地址)后,通过添加IPv6前缀的方式将其转换为第一服务对应的IPv6地址,即第一网络访问地址(比如64:ff9b::c000:201),并将第一服务对应的IPv6地址发送给客户端。如此,通过添加IPv6前缀的方式将IPv4地址转换为IPv6地址,使得IP地址的转换过程简单直接、易于实现。
步骤S104、位于第一容器云平台中的第二网络协议转换器接收到客户端发出的第一访问请求数据包后,将第二访问请求数据包发送至第一服务。
其中,第二访问请求数据包由第一访问请求数据包转换后生成,第一访问请求数据包的目的IP地址为第一网络访问地址,第二访问请求数据包的目的IP地址为第二网络访问地址。
具体来说,第二网络协议转换器接收客户端发出的第一访问请求数据包(第一访问请求数据包中的目的IP地址为第一网络访问地址),并将第一访问请求数据包中的目的IP地址修改为第二网络访问地址,从而生成第二访问请求数据包,随后第二网络协议转换器根据第二访问请求数据包中的第二网络访问地址,将第二访问请求数据包发送至第一服务对应的某个具体容器组(Pod),以由该容器组中的应用对第二访问请求数据包进行处理,得到反馈数据结果。
作为一种可选的示例,第一访问请求数据包的源IP地址为客户端的IPv6地址,相应地,在第二网络协议转换器将第一访问请求数据包中的目的IP地址修改为第二网络访问地址的同时,还将第一访问请求数据包中的源IP地址修改为客户端的IPv4地址。
进一步地,在将第一访问请求数据包中的源IP地址修改为客户端的IPv4地址时,第二网络协议转换器可以随机生成一个IPv4地址,将该IPv4地址与客户端的IPv6地址进行绑定,建立客户端的IPv4地址与客户端的IPv6地址的映射关系,并将该映射关系存储在第二网络协议转换器中。
在一种实施方式中,第二网络协议转换器可以为NAT64组件,用于对客户端发出的第一访问请求数据包进行转换,生成第二访问请求数据包,使第一容器云平台中的第一服务能够对第二访问请求数据包进行处理。
具体应用中,部署在第一容器云平台中的NAT64组件作为访问请求过程中的网络隔离工具,客户端与NAT64组件通过IPv6网络协议进行通信,NAT64组件与第一服务通过IPv4网络协议进行通信。
客户端在获得第一服务对应的IPv6地址后,向该IPv6地址发送第一访问请求数据包,其中,第一访问请求数据包中的报文源地址为客户端的IPv6地址,报文目的地址为第一服务对应的IPv6地址。
客户端发出的第一访问请求数据包在进入第一容器云平台后,经由NAT64组件进行网络协议的转换,转换后的访问请求数据包的报文源地址为客户端的IPv4地址,报文目的地址为第一服务对应的IPv4地址。
具体地,NAT64组件接收第一访问请求数据包,对第一访问请求数据包进行网络协议转换,生成第二访问请求数据包,其中,第二访问请求数据包的报文源地址为客户端的IPv4地址,报文目的地址为第一服务对应的IPv4地址。
随后,NAT64组件根据第一服务对应的IPv4地址将第二访问请求数据包发送给第一服务对应的某个具体Pod。
在一具体实施例中,位于第一容器云平台中的第二网络协议转换器接收到客户端发出的第一访问请求数据包后,将第二访问请求数据包发送至第一服务,包括:第二网络协议转换器将第一访问请求数据包的目的IP地址的IPv6前缀去除,以得到第二访问请求数据包;第二网络协议转换器根据第二访问请求数据包的目的IP地址,将第二访问请求数据包发送至第一服务。
具体应用中,第一访问请求数据包中包含第一网络访问地址,即第一服务对应的IPv6地址,在对第一服务对应的IPv6地址进行转换时,直接将第一服务对应的IPv6地址的前缀去除,即可得到第二网络访问地址,即第一服务对应的IPv4地址,从而生成第二访问请求数据包,进而根据第一服务对应的IPv4地址将第二访问请求数据包发送给第一服务对应的某个具体容器组。
在一些实施例中,位于第一容器云平台中的第二网络协议转换器接收到客户端发出的第一访问请求数据包后,将第二访问请求数据包发送至第一服务之后,该方法还包括:第二网络协议转换器接收第一服务返回的第一反馈数据包,并将第二反馈数据包返回客户端。
其中,第一反馈数据包的报文源地址为第二网络访问地址,即第一服务对应的IPv4地址。第二反馈数据包的报文源地址为第一网络访问地址,即第一服务对应的IPv6地址。
具体地,当接收到第一服务返回的第一反馈数据包时,NAT64组件通过增加IPv6前缀的方式将第一反馈数据包的报文源地址转换为第一网络访问地址,得到第二反馈数据包,并根据之前存储的客户端的IPv4地址与客户端的IPv6地址的映射关系,将第二反馈数据包的报文目的地址转换为客户端的IPv6地址,以根据客户端的IPv6地址将第二反馈数据包返回客户端。
在一些可选实施例中,容器云平台有多个,多个容器云中部署有不同的服务,并允许单个客户端访问部署在不同容器云平台中的不同服务,从而形成多容器云平台架构。在多容器云平台场景下,第一容器云平台可以为多个容器云平台中的任一个,其上部署有第一服务。为了将客户端发出的域名解析请求正确转发至第一服务所在的第一容器云平台,第一网络协议转换器中存储有多个容器云平台的标识信息,域名解析请求中含有第一容器云平台的标识信息,相应地,第一网络协议转换器收到客户端发出的域名解析请求后,将域名解析请求转发至位于第一容器云平台中的域名解析器,还包括:第一网络协议转换器根据第一容器云平台的标识信息,确定第一服务位于第一容器云平台中。从而通过标识信息区分不同容器云平台,实现将域名解析请求转发到第一服务所在的容器云平台(即第一容器云平台)中的域名解析器。
在又一实施例中,域名解析请求中含有第一服务对应的服务域名,第一容器云平台的标识信息为服务域名的前缀,相应地,第一网络协议转换器根据第一容器云平台的标识信息,确定第一服务位于第一容器云平台中,具体包括:第一网络协议转换器对第一服务对应的服务域名进行解析,以确定服务域名的前缀;第一网络协议转换器根据服务域名的前缀,确定第一服务位于第一容器云平台中。
参见图4,作为示例,在一个由容器云平台A、容器云平台B、容器云平台C构成的多容器云平台场景中,第一容器云平台为容器云平台A,其上部署有第一服务。客户端向第一网络协议转换器发出域名解析请求,域名解析请求中含有第一服务对应的服务域名(比如A.CLUSTER.LOCAL.ServiceName,其中,服务域名前缀A表示该第一服务部署在容器云平台A上)。第一网络协议转换器中存储有容器云平台A、容器云平台B、容器云平台C对应的标识信息,即服务域名的前缀,比如分别对应A、B、C。第一网络协议转换器对服务域名进行解析,对服务域名前缀进行识别后确定第一服务位于容器云平台A中,从而确定第一服务部署在容器云平台A中,并将该域名解析请求转发给容器云平台A中的域名解析器。
通过在第一网络协议转换器中存储不同容器云平台的标识信息,用于对域名解析请求中的服务域名的前缀进行匹配,来确定不同域名解析请求所指向的容器云平台,如此,通过服务域名的前缀实现对不同的容器云平台进行区分,使得在多容器云平台场景下位于IPv6网络中的客户端能够同时对多个仅支持IPv4网络协议的容器云平台进行访问。
在另一可选的实施方式中,在域名解析请求添加第一容器云平台的标识信息作为域名解析请求的请求参数;相应地,第一网络协议转换器根据第一容器云平台的标识信息,确定第一服务位于第一容器云平台中,包括:第一网络协议转换器对域名解析请求进行解析,以确定域名解析请求的请求参数;第一网络协议转换器根据域名解析请求的请求参数,确定第一服务位于第一容器云平台中。如此,通过在域名解析请求中直接添加第一容器云平台的标识信息作为请求参数,第一网络协议转换器对域名解析请求进行解析以确定第一服务在第一容器云平台中,从而实现在多容器云平台场景下对不同容器云平台进行区分,使得位于IPv6网络的客户端能够同时访问多个仅支持IPv4网络的容器云平台中的服务。
在一些实施例中,客户端中存储有IPv6前缀与第一容器云平台的映射关系,具体可以存储在客户端中的路由列表中,相应地,在第一网络协议转换器向客户端返回第一网络访问地址之后,还包括:客户端根据IPv6前缀与第一容器云平台的映射关系,向第一容器云平台发出第一访问请求数据包。
本申请实施例中,客户端接收到第一网络协议转换器所返回的第一网络访问地址后,通过在路由列表中查询IPv6前缀与第一容器云平台的映射关系,确定第一网络访问地址中的IPv6前缀与第一容器云平台相对应,即可向第一网络访问地址发出第一访问请求数据包。如此,通过IPv6前缀与第一容器云平台的映射关系,使本实施例提供的方法不仅能够处理单容器云平台场景下通过服务域名跨网络协议对容器云平台中的服务进行访问,而且适用于多容器云平台场景。
应当理解,本申请实施例提供的容器云平台的跨网络协议的域名访问方法,同样适用于客户端使用IPv4网络协议,通过服务域名对仅支持IPv6网络协议的容器云平台中的第一服务进行直接访问的应用场景。
在一示例性场景中,客户端使用IPv4网络协议,容器云平台仅支持IPv6网络协议,此时,第一网络协议为IPv4网络协议,第二网络协议为IPv6网络协议。为了使位于IPV4网络中的客户端能够通过服务域名的方式直接访问仅支持IPv6网络协议的容器云平台中部署的第一服务,可以在容器云平台的外部、容器云平台与客户端之间部署第一网络协议转换器。
按照前述任一实施例的步骤,客户端使用IPv4网络协议向容器云平台发送域名解析请求,第一网络协议转换器将该域名解析请求转发至域名解析器,同时将发出域名解析请求的主体改变为自身,即第一网络协议转换器。
需要说明的是,在仅支持IPv6网络协议的容器云平台中,其域名解析器可以是同时支持IPv4和IPv6两种网络协议的域名解析器,也可以是仅支持IPv6网络协议的域名解析器。
无论是同时支持IPv4和IPv6两种网络协议,还是仅支持IPv6网络协议的域名解析器,域名解析器在接收到第一网络协议转换器的域名解析请求后,根据域名解析请求的主体返回第一服务对应的IPv6地址(Cluster IP,即第二网络访问地址)至第一网络协议转换器。
第一网络协议转换器接收第二网络访问地址后,可以通过第一网络协议转换器中设置的地址转换模块,实现将域名解析器返回的第一服务对应的IPv6地址(第二网络访问地址)转换为第一服务对应的IPv4地址(第一网络访问地址)。其中,地址转换模块中设置有IPv4地址池,在接收到域名解析器返回的第一服务对应的IPv6地址后,在IPv4地址池中随机选取未分配的IPv4地址,作为第一服务对应的IPv4地址(即第一网络访问地址),并将第一服务对应的IPv6地址与IPv4地址之间的映射关系发送至第二网络协议转换器。
客户端接收第一网络协议转换器返回的第一网络访问地址,根据第一网络访问地址向第一服务发送访问请求数据包,位于容器云平台中的第二网络协议转换器对访问请求数据包进行网络协议转换,以使容器云平台中的组件能够处理。
其中,第二网络协议转换器对访问请求数据包进行网络协议转换时,先根据接收到的第一服务对应的IPv6地址与IPv4地址之间的映射关系将访问请求数据包中的报文目的地址从第一服务对应的IPv4地址转换为第一服务对应的IPv6地址,然后根据该IPv6地址对第一服务进行访问,得到反馈数据包,接着将反馈数据包中的报文源地址从第一服务对应的IPv6地址转换为第一服务对应的IPv4地址。
综上所述,本发明实施例提供的一种容器云平台的跨网络协议的域名访问方法包括:第一网络协议转换器在收到客户端发出的域名解析请求后,将域名解析请求转发至位于第一容器云平台中的域名解析器;其中,域名解析请求用于请求第一服务的第一网络访问地址,第一服务位于第一容器云平台中;域名解析器对域名解析请求进行响应,以向第一网络协议转换器返回第一服务的第二网络访问地址;响应于收到第二网络访问地址,第一网络协议转换器向客户端返回第一网络访问地址;位于第一容器云平台中的第二网络协议转换器接收到客户端发出的第一访问请求数据包后,将第二访问请求数据包发送至第一服务;第二访问请求数据包由第一访问请求数据包转换后生成,第一访问请求数据包的目的IP地址为第一网络访问地址,第二访问请求数据包的目的IP地址为第二网络访问地址。如此,通过使用第一网络协议转换器和位于第一容器云平台中的第二网络协议转换器作为网络隔离工具,无需对支持不同网络协议的容器云平台进行升级改造,即可实现客户端直接使用对应的服务域名对支持不同网络协议的容器云平台中的第一服务进行访问。
通过第一网络协议转换器代替客户端与仅支持IPv4网络协议的容器云平台中的域名解析器进行直接通信,使其返回第一服务对应的IPv4地址,并采用添加IPv6前缀的方式将IPv4地址转换为IPv6地址,使得IP地址的转换过程直截了当。
在多容器云平台场景下,通过域名前缀和IP前缀对不同容器云平台进行区分,使得位于IPv6网络中的客户端能够同时对多个仅支持IPv4网络协议的容器云平台进行访问。
示例性系统
图5为根据本申请的一些实施例提供的容器云平台的跨网络协议的域名访问系统的结构示意图;如图5所示,该容器云平台的跨网络协议的域名访问系统包括:第一转发单元501、响应单元502、地址转换单元503、第二转发单元504。其中:
第一转发单元501,配置为第一网络协议转换器收到客户端发出的域名解析请求后,将域名解析请求转发至位于第一容器云平台中的域名解析器;域名解析请求用于请求第一服务的第一网络访问地址,第一服务位于第一容器云平台中。
响应单元502,配置为域名解析器对域名解析请求进行响应,以向第一网络协议转换器返回第一服务的第二网络访问地址。
地址转换单元503,配置为响应于收到第二网络访问地址,第一网络协议转换器向客户端返回第一网络访问地址。
第二转发单元504,配置为位于第一容器云平台中的第二网络协议转换器接收到客户端发出的第一访问请求数据包后,将第二访问请求数据包发送至第一服务;第二访问请求数据包由第一访问请求数据包转换后生成,第一访问请求数据包的目的IP地址为第一网络访问地址,第二访问请求数据包的目的IP地址为第二网络访问地址。
本申请实施例提供的基于容器云平台的跨网络协议的域名访问系统能够实现上述任一实施例的基于容器云平台的跨网络协议的域名访问方法的步骤、流程,并达到相同的技术效果,在此不再一一赘述。
示例性设备
图6为根据本申请的一些实施例提供的电子设备的结构示意图;如图6所示,该电子设备包括:
一个或多个处理器601;
计算机可读介质,可以配置为存储一个或多个程序602,一个或多个处理器601执行一个或多个程序602时,实现如下步骤:第一网络协议转换器收到客户端发出的域名解析请求后,将域名解析请求转发至位于第一容器云平台中的域名解析器;域名解析请求用于请求第一服务的第一网络访问地址,第一服务位于第一容器云平台中;域名解析器对域名解析请求进行响应,以向第一网络协议转换器返回第一服务的第二网络访问地址;响应于收到第二网络访问地址,第一网络协议转换器向客户端返回第一网络访问地址;位于第一容器云平台中的第二网络协议转换器接收到客户端发出的第一访问请求数据包后,将第二访问请求数据包发送至第一服务;第二访问请求数据包由第一访问请求数据包转换后生成,第一访问请求数据包的目的IP地址为第一网络访问地址,第二访问请求数据包的目的IP地址为第二网络访问地址。
图7为根据本申请的一些实施例提供的电子设备的硬件结构;如图7所示,该电子设备的硬件结构可以包括:处理器701、通信接口702、计算机可读介质703和通信总线704。
其中,处理器701、通信接口702、计算机可读存储介质703通过通信总线704完成相互间的通信。
可选地,通信接口702可以为通信模块的接口,如GSM模块的接口。
其中,处理器701具体可以配置为:第一网络协议转换器收到客户端发出的域名解析请求后,将域名解析请求转发至位于第一容器云平台中的域名解析器;域名解析请求用于请求第一服务的第一网络访问地址,第一服务位于第一容器云平台中;域名解析器对域名解析请求进行响应,以向第一网络协议转换器返回第一服务的第二网络访问地址;响应于收到第二网络访问地址,第一网络协议转换器向客户端返回第一网络访问地址;位于第一容器云平台中的第二网络协议转换器接收到客户端发出的第一访问请求数据包后,将第二访问请求数据包发送至第一服务;第二访问请求数据包由第一访问请求数据包转换后生成,第一访问请求数据包的目的IP地址为第一网络访问地址,第二访问请求数据包的目的IP地址为第二网络访问地址。
处理器701可以是通用处理器,包括中央处理器(central processing unit,简称CPU)、网络处理器(Network Processor,简称NP)等,还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
本申请实施例的电子设备以多种形式存在,包括但不限于:
(1)移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据通信为主要目标。这类终端包括:智能手机(例如:iPhone)、多媒体手机、功能性手机,以及低端手机等。
(2)超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能,一般也具备移动上网特性。这类终端包括:PDA、MID和UMPC设备等,例如iPad。
(3)便携式娱乐设备:这类设备可以显示和播放多媒体内容。该类设备包括:音频、视频播放器(例如:iPod),掌上游戏机,电子书,以及智能玩具和便携式车载导航设备。
(4)服务器:提供计算服务的设备,服务器的构成包括处理器、硬盘、内存、系统总线等,服务器和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。
(5)其它具有数据交互功能的电子装置。
需要指出,根据实施的需要,可将本申请实施例中描述的各个部件/步骤拆分为更多部件/步骤,也可以将两个或多个部件/步骤或者部件/步骤的部分操作组合成新的部件/步骤,以实现本申请实施例的目的。
上述根据本申请实施例的方法可在硬件、固件中实现,或者被实现为可存储在记录介质(诸如CD ROM、RAM、软盘、硬盘或磁光盘)中的软件或计算机代码,或者被实现通过网络下载的原始存储在远程记录介质或非暂时机器存储介质中并将被存储在本地记录介质中的计算机代码,从而在此描述的方法可被存储在使用通用计算机、专用处理器或者可编程或专用硬件(诸如ASIC或FPGA)的记录介质上的这样的软件处理。可以理解,计算机、处理器、微处理器控制器或可编程硬件包括可存储或接收软件或计算机代码的存储组件(例如,RAM、ROM、闪存等),当软件或计算机代码被计算机、处理器或硬件访问且执行时,实现在此描述的基于容器云平台的跨网络协议的域名访问方法。此外,当通用计算机访问用于实现在此示出的方法的代码时,代码的执行将通用计算机转换为用于执行在此示出的方法的专用计算机。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及方法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和涉及约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请实施例的范围。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其它实施例的不同之处。尤其,对于设备及系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。
以上所描述得设备及系统实施例仅仅是示意性的,其中作为分离不见说明的单元可以使或者也可以不是物理上分开的,作为单元提示的不见可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅为本申请的优选实施例,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (10)

1.一种容器云平台的跨网络协议的域名访问方法,其特征在于,包括:
第一网络协议转换器收到客户端发出的域名解析请求后,将所述域名解析请求转发至位于第一容器云平台中的域名解析器;所述域名解析请求用于请求第一服务的第一网络访问地址,所述第一服务位于所述第一容器云平台中;
所述域名解析器对所述域名解析请求进行响应,以向所述第一网络协议转换器返回所述第一服务的第二网络访问地址;
响应于收到所述第二网络访问地址,所述第一网络协议转换器向所述客户端返回所述第一网络访问地址;
位于所述第一容器云平台中的第二网络协议转换器接收到所述客户端发出的第一访问请求数据包后,将第二访问请求数据包发送至所述第一服务;所述第二访问请求数据包由所述第一访问请求数据包转换后生成,所述第一访问请求数据包的目的IP地址为所述第一网络访问地址,所述第二访问请求数据包的目的IP地址为所述第二网络访问地址。
2.根据权利要求1所述的容器云平台的跨网络协议的域名访问方法,其特征在于,所述第一网络协议转换器中存储有多个容器云平台的标识信息,所述域名解析请求中含有所述第一容器云平台的标识信息,
相应地,所述第一网络协议转换器收到客户端发出的域名解析请求后,将所述域名解析请求转发至位于第一容器云平台中的域名解析器,还包括:
所述第一网络协议转换器根据所述第一容器云平台的标识信息,确定所述第一服务位于所述第一容器云平台中。
3.根据权利要求2所述的容器云平台的跨网络协议的域名访问方法,其特征在于,所述域名解析请求中含有所述第一服务对应的服务域名,所述第一容器云平台的标识信息为所述服务域名的前缀,
相应地,所述第一网络协议转换器根据所述第一容器云平台的标识信息,确定所述第一服务位于所述第一容器云平台中,包括:
所述第一网络协议转换器对所述第一服务对应的服务域名进行解析,以确定所述服务域名的前缀;
所述第一网络协议转换器根据所述服务域名的前缀,确定所述第一服务位于所述第一容器云平台中。
4.根据权利要求3所述的容器云平台的跨网络协议的域名访问方法,其特征在于,还包括:
所述域名解析器的域名解析记录中预先记录有所述第一服务对应的服务域名和所述第二网络访问地址的映射关系,以便所述第一容器云平台中的第二服务使用所述服务域名向所述第一服务进行访问。
5.根据权利要求1所述的容器云平台的跨网络协议的域名访问方法,其特征在于,所述第一网络访问地址为IPv6地址,所述第二网络访问地址为IPv4地址,
相应地,所述响应于收到所述第二网络访问地址,所述第一网络协议转换器向所述客户端返回所述第一网络访问地址,包括:
所述第一网络协议转换器为所述第二网络访问地址添加IPv6前缀,以生成所述第一网络访问地址,并将所述第一网络访问地址返回所述客户端;所述IPv6前缀与所述第一容器云平台对应。
6.根据权利要求5所述的容器云平台的跨网络协议的域名访问方法,其特征在于,所述客户端中存储有所述IPv6前缀与所述第一容器云平台的映射关系,
相应地,在所述第一网络协议转换器向所述客户端返回所述第一网络访问地址之后,还包括:
所述客户端根据所述IPv6前缀与所述第一容器云平台的映射关系,向所述第一容器云平台发出所述第一访问请求数据包。
7.根据权利要求6所述的容器云平台的跨网络协议的域名访问方法,其特征在于,
所述位于所述第一容器云平台中的第二网络协议转换器接收到所述客户端发出的第一访问请求数据包后,将第二访问请求数据包发送至所述第一服务,包括:
所述第二网络协议转换器将所述第一访问请求数据包的目的IP地址的IPv6前缀去除,以得到所述第二访问请求数据包;
所述第二网络协议转换器根据所述第二访问请求数据包的目的IP地址,将所述第二访问请求数据包发送至所述第一服务。
8.一种容器云平台的跨网络协议的域名访问系统,其特征在于,包括:
第一转发单元,配置为第一网络协议转换器收到客户端发出的域名解析请求后,将所述域名解析请求转发至位于第一容器云平台中的域名解析器;所述域名解析请求用于请求第一服务的第一网络访问地址,所述第一服务位于所述第一容器云平台中;
响应单元,配置为所述域名解析器对所述域名解析请求进行响应,以向所述第一网络协议转换器返回所述第一服务的第二网络访问地址;
地址转换单元,配置为响应于收到所述第二网络访问地址,所述第一网络协议转换器向所述客户端返回所述第一网络访问地址;
第二转发单元,配置为位于所述第一容器云平台中的第二网络协议转换器接收到所述客户端发出的第一访问请求数据包后,将第二访问请求数据包发送至所述第一服务;所述第二访问请求数据包由所述第一访问请求数据包转换后生成,所述第一访问请求数据包的目的IP地址为所述第一网络访问地址,所述第二访问请求数据包的目的IP地址为所述第二网络访问地址。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序为如权利要求1-7任一所述的容器云平台的跨网络协议的域名访问方法。
10.一种电子设备,其特征在于,包括:存储器、处理器、以及存储在所述存储器中并可在所述处理器上运行的程序,所述处理器执行所述程序时实现如权利要求1-7任一所述的容器云平台的跨网络协议的域名访问方法。
CN202210809559.3A 2022-07-11 2022-07-11 一种容器云平台的跨网络协议的域名访问方法和系统 Active CN115225606B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210809559.3A CN115225606B (zh) 2022-07-11 2022-07-11 一种容器云平台的跨网络协议的域名访问方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210809559.3A CN115225606B (zh) 2022-07-11 2022-07-11 一种容器云平台的跨网络协议的域名访问方法和系统

Publications (2)

Publication Number Publication Date
CN115225606A true CN115225606A (zh) 2022-10-21
CN115225606B CN115225606B (zh) 2023-09-08

Family

ID=83609768

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210809559.3A Active CN115225606B (zh) 2022-07-11 2022-07-11 一种容器云平台的跨网络协议的域名访问方法和系统

Country Status (1)

Country Link
CN (1) CN115225606B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116455868A (zh) * 2023-03-29 2023-07-18 成都康胜思科技有限公司 一种基于泛域名解析加私有协议内网穿透的集成服务系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004003770A1 (en) * 2002-06-27 2004-01-08 Bea Systems, Inc. System and method for web services java api-based invocation
CN102694754A (zh) * 2012-06-07 2012-09-26 广州睿哲网络科技有限公司 实现IPv4/IPv6网站内容互通的应用网关技术及系统
CN105227687A (zh) * 2014-06-20 2016-01-06 中国电信股份有限公司 IPv4用户访问IPv6资源的通信方法与系统
CN110691150A (zh) * 2019-09-29 2020-01-14 华南理工大学 一种基于SDN的IPv4与IPv6互联方法及系统
CN113709166A (zh) * 2021-08-31 2021-11-26 广州艾美网络科技有限公司 分布式业务网关实现方法、装置、计算机设备及存储介质
CN114422558A (zh) * 2021-12-29 2022-04-29 国网天津市电力公司 基于容器边缘代理的数据报文转换自描述协议mqtt方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004003770A1 (en) * 2002-06-27 2004-01-08 Bea Systems, Inc. System and method for web services java api-based invocation
CN102694754A (zh) * 2012-06-07 2012-09-26 广州睿哲网络科技有限公司 实现IPv4/IPv6网站内容互通的应用网关技术及系统
CN105227687A (zh) * 2014-06-20 2016-01-06 中国电信股份有限公司 IPv4用户访问IPv6资源的通信方法与系统
CN110691150A (zh) * 2019-09-29 2020-01-14 华南理工大学 一种基于SDN的IPv4与IPv6互联方法及系统
CN113709166A (zh) * 2021-08-31 2021-11-26 广州艾美网络科技有限公司 分布式业务网关实现方法、装置、计算机设备及存储介质
CN114422558A (zh) * 2021-12-29 2022-04-29 国网天津市电力公司 基于容器边缘代理的数据报文转换自描述协议mqtt方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116455868A (zh) * 2023-03-29 2023-07-18 成都康胜思科技有限公司 一种基于泛域名解析加私有协议内网穿透的集成服务系统
CN116455868B (zh) * 2023-03-29 2023-11-07 成都康胜思科技有限公司 一种基于泛域名解析加私有协议内网穿透的集成服务系统

Also Published As

Publication number Publication date
CN115225606B (zh) 2023-09-08

Similar Documents

Publication Publication Date Title
US10320738B2 (en) Address allocation method, CGN device, and CGN dual-active system
US9350814B2 (en) Internet protocol connectivity over a service-oriented architecture bus
US10250646B2 (en) Method and device for establishing channel
EP4033729B1 (en) Message forwarding and domain name address query
US9319377B2 (en) Auto-split DNS
US10498694B2 (en) Mapping IPv4 knowledge to IPv6
CN107613037B (zh) 一种域名重定向方法和系统
US11431765B2 (en) Session migration—based scheduling method and server
CN109729187B (zh) 一种代理通信方法、系统、装置及存储介质
CN111212134A (zh) 一种请求报文处理方法、装置、边缘计算系统和电子设备
CN111193773A (zh) 负载均衡方法、装置、设备及存储介质
CN112383481A (zh) 流表生成和端口转发方法、节点、电子设备和存储介质
CN110012118B (zh) 一种提供网络地址转换nat服务的方法及控制器
CN104079682B (zh) 一种基于域名系统dns的地址转换方法及装置
CN115225606B (zh) 一种容器云平台的跨网络协议的域名访问方法和系统
KR100652958B1 (ko) 홈 게이트웨이의 네트워크 주소변환 방법의 개선을 통한 데이터 전송방법 및 그 시스템
CN109951493B (zh) 一种网络互通方法、装置、设备及存储介质
JP6104406B2 (ja) ネットワークのプロトコルアドレスを扱う方法及び処理デバイス
CN112770408B (zh) 一种日志的传输方法、装置、计算机设备和存储介质
CN114338832B (zh) 一种容器云平台的网络协议转换方法及系统
CN113676471A (zh) 基于容器云平台的跨节点通信方法、系统、介质和电子设备
CN113497764A (zh) 业务路由方法、系统、计算机存储介质和电子设备
CN111935336A (zh) 基于IPv6的网络治理方法及系统
CN114268604B (zh) 访问服务的提供方法和系统
JP2014120828A (ja) アドレス変換方法、及びアドレス変換装置

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