一种对域名服务器测试的方法、装置和计算机设备与流程

未命名 08-02 阅读:82 评论:0


1.本说明书涉及域名系统技术领域,尤其涉及一种对域名服务器测试的方法、装置和计算机设备。


背景技术:

2.dns(domain name system,域名系统)用于实现域名和ip地址相互映射,使用户更方便地访问互联网。域名服务器中保存有多种类型的dns记录,可实现对主机名不同的解析效果,满足了不同场景下的不同需求。对于域名服务器,需要对其进行测试以确保其能解析客户端的查询请求并正确返回资源记录的值。
3.目前的测试方法是在命令行输入命令进行查询,接收查询结果后手动比对查询结果和域名服务器的记录值,根据对比结果确定测试结果。该方法繁琐复杂,耗时多,且对比时容易出现纰漏,导致错误的测试结果。


技术实现要素:

4.有鉴于此,本说明书提供了一种对域名服务器测试的方法、装置及计算机设备。
5.具体地,本说明书是通过如下技术方案实现的:
6.一种对域名服务器测试的方法,所述方法包括:
7.获取域名服务器存储的域名解析数据;
8.从所述域名解析数据中提取出指定字段;
9.基于所述指定字段向所述域名服务器发送域名查询请求;
10.接收所述域名服务器返回的查询结果,根据所述查询结果确定所述域名服务器是否能正确解析所述指定字段所指向的域名。
11.一个实施例中,所述获取域名服务器存储的域名解析数据,包括:
12.从所述域名服务器的网页源数据中提取所述域名解析数据。
13.一个实施例中,所述获取域名服务器存储的域名解析数据,包括:
14.在所述域名服务器支持数据导出时,基于所述域名服务器的导出文件中的数据格式,从所述导出文件中提取出所述域名解析数据。
15.一个实施例中,所述导出文件中的数据格式包括以下任一:json数据格式、csv数据格式或xml数据格式。
16.一个实施例中,所述从所述域名解析数据中提取出指定字段后还包括:
17.将所述指定字段以及与所述指定字段关联的域名解析数据存储到列表中,所述指定字段至少包括域名和记录类型。
18.一个实施例中,所述指定字段关联的域名解析数据包括以下任一:记录值或生存时间。
19.一个实施例中,根据所述查询结果确定所述域名服务器是否能正确解析所述指定字段所指向的域名,包括:
20.所述列表中针对同一域名存在多条记录时,对所述记录以及所述域名的查询结果按照同一规则进行排序,对比排序后的所述域名关联的域名解析数据是否相同,以确定所述域名服务器是否能正确解析所述指定字段所指向的域名。
21.本说明书还公开了一种域名服务器测试装置,包括:
22.数据获取模块,用于获取域名解析数据;
23.数据提取模块,用于从所述域名解析数据中提取出指定字段;
24.查询模块,用于向所述域名服务器发送查询请求,接收查询结果;
25.判断模块,用于根据所述查询结果确定所述域名服务器是否能正确解析所述指定字段所指向的域名。
26.本说明书还公开了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器加载并执行所述程序时实现本说明书实施例任一项方法步骤。
27.应用本说明书实施例方案,从域名服务器存储的域名解析数据中提取出指定字段,基于提取出来的指定字段,执行预设程序向域名服务器发送域名查询请求,再根据返回的结果确定所述域名服务器是否能正确解析所述指定字段所指向的域名。通过这种方法,可实现便捷快速地查询域名服务器的资源记录,减少测试结果出现错误的概率,方便对域名服务器进行测试。
28.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本说明书。
附图说明
29.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本说明书的实施例,并与说明书一起用于解释本说明书的原理。
30.图1是本说明书根据一示例性实施例示出的一种方法的流程图。
31.图2是本说明书根据一示例性实施例示出的一种装置的框图。
32.图3是本说明书根据一示例性实施例示出的一种计算机设备的硬件结构图。
具体实施方式
33.这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本说明书相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本说明书的一些方面相一致的装置和方法的例子。
34.在本说明书使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书。在本说明书和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
35.应当理解,尽管在本说明书可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称
为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在
……
时”或“当
……
时”或“响应于确定”。
36.dns用于实现域名和ip地址的相互映射,使用户更方便地访问互联网。域名服务器中保存有多种类型的dns记录,包括a记录、aaaa记录、cname记录、ns记录、mx记录、txt记录和srv记录等,可实现对主机名不同的解析效果,满足不同场景下的不同需求。比如,针对客户端发出的某个域名的a类型查询请求,域名服务器根据存储的该域名的a类型记录,解析并返回该域名的a类型记录给客户端。对于域名服务器,需要对其进行测试以确保其能解析客户端的查询请求并正确返回资源记录的值。目前的测试方法是在命令行输入命令进行查询并手动对比查询结果和域名服务器的资源记录的值。该方法繁琐复杂,耗时多,且对比时容易出现纰漏,导致错误的测试结果。
37.为了解决上述问题,本说明书根据一示例性实施例示出了一种方法的流程图,如图1所示,包括以下步骤:
38.步骤s101:获取域名服务器存储的域名解析数据;
39.步骤s102:从域名解析数据中提取出指定字段;
40.步骤s103:基于指定字段向域名服务器发送域名查询请求;
41.步骤s104:接收域名服务器返回的查询结果,根据所述查询结果确定域名服务器是否能正确解析指定字段所指向的域名。
42.在步骤s101中,域名解析数据是域名服务器解析客户端发送的域名查询请求的依据,包含了需要进行测试的域名服务器中的各条资源记录,这些资源记录被用于响应客户端的查询请求。比如,主机地址(a)资源记录将dns域名映射到ipv4的32位地址。
43.在步骤s102中,从域名解析数据中提取出指定字段。在客户端使用提取到的域名和记录类型作为参数向域名服务器发送查询请求,域名服务器解析请求并返回查询结果给客户端。比如,域名服务器的某条a类型资源记录中,域名“a.com”的ip地址是1.1.1.1,生存时间(即在域名服务器的存留时间)为3600秒,则客户端使用“a.com”和“a”作为参数向域名服务器发送查询请求时,在域名服务器正确解析并返回结果的情况下,客户端收到的结果应该是“a.com”,“3600”,“a”,“1.1.1.1”。从域名解析数据中提取出指定字段,该指定字段用于向域名服务器发送查询请求。
44.在步骤s103中,基于指定字段向域名服务器发送域名查询请求,正如上文所述,根据提取到的指定字段作为参数向域名服务器发送查询请求,比如,使用记录的域名字段和记录类型字段的值作为参数向域名服务器发送查询请求,域名服务器解析请求并返回该记录的对应记录类型的完整字段信息。在没有指定记录类型时,默认查询的是该域名的a类型记录。在某些情况下,客户端发送查询请求后如果没有接收到域名服务器响应的内容,则将该次无响应的错误信息打印输出。
45.在步骤s104中,接收域名服务器返回的查询结果,根据所述查询结果确定域名服务器是否能正确解析指定字段所指向的域名。域名服务器响应请求并解析返回查询结果,如果是正确解析返回的话查询结果应该包含与请求中指定的参数相对应的资源记录的信息,将该资源记录的信息与域名解析数据进行对比,如果相同的话则域名服务器能够正确解析该次请求并返回正确结果;反之,则是不能正确解析并返回结果。
46.在一个实施例中,获取域名服务器存储的域名解析数据,可从域名服务器的网页
源数据提取域名服务器的域名解析数据。比如,使用python语言提供的requests库,向该域名服务器的网页url(统一资源定位器)地址发送请求。基于该请求,响应的内容中包含有域名服务器的域名解析数据与其他冗余数据,以标签值的形式存储在html文件中,通过对标签的筛选获取包含域名解析数据的标签。可选地,使用python语言提供的beautifulsoup库,逐级读取该html文件中的节点,根据节点的标签和内容,筛选出所需的html标签,最后从筛选出来的html标签中提取文本内容,完成域名解析数据的获取。
47.在上一个实施例中,从网页源数据中筛选标签,获取域名解析数据需要设置筛选条件,效率不高。因此,在一个实施例中,有些域名服务器可能支持数据导出,那么,获取域名服务器存储的域名解析数据,在该域名服务器支持数据导出时,可以基于该域名服务器的导出文件中的数据格式,从导出文件中提取出域名解析数据。比如,域名服务器提供csv数据格式的导出方式,从服务器导出数据文件。导出数据文件后,从数据文件中提取指定字段的方式可以根据本领域技术人员所知晓的各种方式进行提取。作为实施例,可以使用python语言提供的pandas库对导出文件进行处理,具体地,使用pandas库中的read_csv函数读取导出文件并转换为dataframe对象,然后用tolist函数将该dataframe对象转换为常用数据类型,完成域名解析数据的获取。
48.在一个实施例中,导出文件中的数据格式包括以下任一:json数据格式、csv数据格式或xml数据格式。根据导出文件中数据格式的不同,使用不同的处理方式。导出文件为csv格式时对域名解析数据的获取步骤已在上文描述,此处不再赘述。当导出文件的数据格式为json数据格式时,可使用python语言中pandas库的read_json函数读取导出文件并转换为dataframe对象,当导出文件的数据格式为xml数据格式时;可使用python语言中pandas库的read_xml函数读取导出文件并转换为dataframe对象。在上述将json数据格式和xml数据格式的导出文件转换为dataframe对象后,后续的处理可参考上文中将csv数据格式的导出文件转换为dataframe对象后的处理,此处不再赘述。
49.在一个实施例中,所述从所述域名解析数据中提取出指定字段后还包括:将所述指定字段以及与所述指定字段关联的域名解析数据存储到列表中,所述指定字段至少包括域名和记录类型。对于获取到的域名解析数据,需要从中提取出指定字段以及与这些字段关联的域名解析数据,用于作为参数向域名服务器发送查询请求和与查询结果进行对比。具体地,将域名解析数据中每条资源记录的域名和记录类型以及关联的域名解析数据存储到多个列表,其中,每个列表包含一条资源记录的信息,然后将这些列表保存到一个总的列表,作为组成总列表的各个元素。采用上述方法将各条资源记录的信息保存到列表,便于将其作为参数向域名服务器发送查询请求以及与查询结果进行对比。
50.在一个实施例中,指定字段关联的域名解析数据包括以下任一:记录值或生存时间。客户端向域名服务器发送查询请求时,将域名和记录类型的值作为请求中携带的参数,比如域名为“example.com”、记录类型为“a”时,请求查询的是“example.com”的a类型记录,即查询“example.com”的对应的ip地址;再比如域名为“example2.com”、记录类型为“cname”时,请求查询的时“example2.com”的cname类型记录,即查询“example2.com”的规范名字,在没有携带记录类型作为参数时,一般默认解析该域名的a类型记录。在从域名解析数据中提取指定字段时,提取域名和记录类型,关联的域名解析数据包括记录值,在查询阶段,使用域名和记录类型作为参数向域名服务器发送查询请求,接收查询结果后将查询
结果中对应的域名、记录类型和记录值与从域名解析数据中提取的值进行对比。或者,在从域名解析数据中提取指定字段时,提取域名和记录类型,关联的域名解析数据包括生存时间,在查询阶段,使用域名和记录类型作为参数向域名服务器发送查询请求,接收查询结果后将查询结果中对应的域名、记录类型和生存时间与从域名解析数据中提取的值进行对比。
51.在一个实施例中,根据查询结果确定所述域名服务器是否能正确解析所述指定字段所指向的域名,包括:所述列表中针对同一域名存在多条记录时,对所述记录以及所述域名的查询结果按照统一规则排序,对比排序后的所述域名关联的域名解析数据数据是否相同以确定所述域名服务器是否能正确解析所述指定字段所指向的域名。事实上,同一个域名可能会有多条资源记录,比如,出于负载均衡和分散请求的原因,一个域名可能会被配置多个ip地址,此时对于同一个域名会有多条a类型记录。在保存所述指定字段以及与所述指定字段关联的域名解析数据的列表中,对应于单个域名有多条记录的多个元素,其排列顺序与对应的查询结果中的顺序很可能不是相符的,从而导致对比结果出现偏差。因此,需要对所述对应于单个域名有多条记录的多个元素和查询结果先基于同一规则进行排序,比如,基于记录值字段进行排序,排序可通过python语言的sorted函数实现。排序之后才是一一对应的关系,这时再逐条进行对比,如果每一条对比结果都为相同,则能够正确解析,反之,则是不能正确解析。在某些情况中,所述对应于单个域名有多条记录的多个元素,如果所述多个元素的数量与对应的查询结果中的条数不一致,则可以直接判定为不能正确解析。比如,域名“test.com”的a类型记录有3条,其在列表中存储的对应元素依序为(test.com,3600,a,1.1.1.1)、(test.com,3600,a,1.1.1.2)和(test.com,3600,a,1.1.1.3),以“test.com”和“a”作为参数向域名服务器发送查询请求,接收查询结果。当查询结果中的条数不为3时,则判断不能正确解析。返回的查询结果中排序可能是(test.com,3600,a,1.1.1.2)、(test.com,3600,a,1.1.1.1)和(test.com,3600,a,1.1.1.3)。这时,如果依序去对比,将误判为对比不相同,导致测试结果错误。将列表中的对应元素和查询结果基于统一规则排序,它们的记录值字段的值不同,于是,可根据记录值字段的ip地址,使用python语言提供的sorted函数排序。比如,按ip地址顺序排序,排序后对应元素依序为(test.com,3600,a,1.1.1.1)、(test.com,3600,a,1.1.1.2)和(test.com,3600,a,1.1.1.3),查询结果中的排序为
52.(test.com,3600,a,1.1.1.1)、(test.com,3600,a,1.1.1.2)和(test.com,3600,a,1.1.1.3)。一一对应进行对比,摒除因次序带来的测试结果的误判。
53.与前述方法的实施例相对应,本说明书还提供了装置及其所应用的终端的实施例。
54.本说明书域名服务器测试装置的实施例可以应用在计算机设备上,例如服务器或终端设备。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在文件处理的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,包括处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的服务器或电子设备,通常根据该计算机设备的实际功能,还可以包括其他硬件,对此不再赘述。
55.如图2所示,图2是本说明书根据一示例性实施例示出的一种装置的框图,所述装
置包括:
56.数据获取模块201,用于获取域名解析数据;
57.数据提取模块202,用于从所述域名解析数据中提取出指定字段;
58.查询模块203,用于向所述域名服务器发送查询请求,接收查询结果;
59.判断模块204,用于根据所述查询结果确定所述域名服务器是否能正确解析所述指定字段所指向的域名。
60.在一个实施例中,所述数据获取模块201获取域名解析数据,包括:
61.从域名服务器的网页源数据提取域名服务器的域名解析数据。使用python语言提供的requests库,向该域名服务器的网页url(统一资源定位器)地址发送请求。使用python语言提供的beautifulsoup库,逐级读取响应的内容中html文件的节点,根据节点的标签和内容,筛选出所需的html标签,最后从筛选出来的html标签中提取文本内容,完成域名解析数据的获取。
62.在一个实施例中,所述数据获取模块201获取域名解析数据,包括:
63.从域名服务器导出数据文件,使用python语言提供的pandas库对导出文件进行处理。当导出文件的数据格式为csv数据格式时,使用pandas库中的read_csv函数读取导出文件并转换为dataframe对象;当导出文件的数据格式为json数据格式时,使用pandas库中的read_json函数读取导出文件并转换为dataframe对象;当导出文件的数据格式为xml数据格式时,使用pandas库中的read_xml函数读取导出文件并转换为dataframe对象。然后用tolist函数将该dataframe对象转换为常用数据类型,完成域名解析数据的获取。
64.在一个实施例中,所述数据提取模块202从域名解析数据中提取指定字段,包括:
65.将域名解析数据中每条记录的指定字段的值保存到多个列表,其中,每个列表包含一条记录的指定字段的值,然后将这些列表作为子列表保存到一个总的列表。
66.在一个实施例中,所述查询模块203向域名解析服务器发送查询请求,接收查询结果,包括:
67.根据各条记录的指定字段向域名服务器发送查询请求。具体地,将各条记录的域名字段和记录类型字段的值作为参数向域名服务器发送查询请求,接收域名服务器返回的查询结果。
68.在一个实施例中,所述判断模块204根据查询结果确定域名服务器是否能正确解析指定字段所指向的域名,包括:
69.对于单个域名的单个类型只有一条记录的情况,将该记录的域名、记录类型和记录值与查询结果中对应的值进行对比,当对比结果为相同时,判断域名服务器能正确解析,反之则是不能正确解析。对于单个域名有多条同类型的记录的情况,将所述单个域名的多条同类型记录与对应的查询结果基于同一规则进行排序,该同一规则根据实际情况人为预设。比如,基于记录值字段,通过python语言的sorted函数进行排序。排序后逐条进行对比域名、记录类型和记录值,全都相同则判断为能正确解析,反之,则是不能正确解析。在某些情况下,对应于单个域名有多条同类型记录的多个元素,如果所述多个元素的数量与对应的查询结果中的条数不一致,则可以直接判定为不能正确解析。
70.在一个实施例中,所述判断模块204根据查询结果确定域名服务器是否能正确解析指定字段所指向的域名,进行对比时,除了对比域名、记录类型、记录值,还对生存时间进
行对比。
71.上述装置中各个模块的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
72.对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本说明书方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
73.与前述对域名服务器测试的方法对应,本说明书还提供了一种计算机设备,所述计算机设备可以包括:
74.存储器,用于存储可由所处理器执行的计算机程序;
75.处理器;
76.其中,所述处理器执行所述程序时实现前述任一方法实施例中的对域名服务器测试的方法的步骤。
77.本发明实施例所提供的域名服务器测试装置的实施例可以应用在所述计算机设备上。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在电子设备的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图3所示,图3是本发明根据一示例性实施例示出的一种电子设备的硬件结构图,除了图3所示的处理器、内存、网络接口、以及非易失性存储器之外,所述电子设备还可以包括实现前述对域名服务器测试方法的其他硬件,对此不再赘述。
78.上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
79.本领域技术人员在考虑说明书及实践这里申请的发明后,将容易想到本说明书的其它实施方案。本说明书旨在涵盖本说明书的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本说明书的一般性原理并包括本说明书未申请的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本说明书的真正范围和精神由下面的权利要求指出。
80.应当理解的是,本说明书并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本说明书的范围仅由所附的权利要求来限制。
81.以上所述仅为本说明书的较佳实施例而已,并不用以限制本说明书,凡在本说明书的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本说明书保护的范围之内。

技术特征:
1.一种对域名服务器测试的方法,其特征在于,包括:获取域名服务器存储的域名解析数据;从所述域名解析数据中提取出指定字段;基于所述指定字段向所述域名服务器发送域名查询请求;接收所述域名服务器返回的查询结果,根据所述查询结果确定所述域名服务器是否能正确解析所述指定字段所指向的域名。2.根据权利要求1所述的方法,其特征在于,所述获取域名服务器存储的域名解析数据,包括:从所述域名服务器的网页源数据中提取所述域名解析数据。3.根据权利要求1所述的方法,其特征在于,所述获取域名服务器存储的域名解析数据,包括:在所述域名服务器支持数据导出时,基于所述域名服务器的导出文件中的数据格式,从所述导出文件中提取出所述域名解析数据。4.根据权利要求3所述的方法,其特征在于,所述导出文件中的数据格式包括以下任一:json数据格式、csv数据格式或xml数据格式。5.根据权利要求1所述的方法,其特征在于,所述从所述域名解析数据中提取出指定字段后还包括:将所述指定字段以及与所述指定字段关联的域名解析数据存储到列表中,所述指定字段至少包括域名和记录类型。6.根据权利要求1~5任一所述的方法,其特征在于,所述指定字段关联的域名解析数据包括以下任一:记录值或生存时间。7.根据权利要求6所述的方法,其特征在于,根据所述查询结果确定所述域名服务器是否能正确解析所述指定字段所指向的域名,包括:所述列表中针对同一域名存在多条记录时,对所述记录以及所述域名的查询结果按照同一规则进行排序,对比排序后的所述域名关联的域名解析数据是否相同,以确定所述域名服务器是否能正确解析所述指定字段所指向的域名。8.一种域名服务器测试装置,其特征在于,包括:数据获取模块,用于获取域名解析数据;数据提取模块,用于从所述域名解析数据中提取出指定字段;查询模块,用于向所述域名服务器发送查询请求,接收查询结果;判断模块,用于根据所述查询结果确定所述域名服务器是否能正确解析所述指定字段所指向的域名。9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1至7任一项所述的方法。

技术总结
本说明书提供一种对域名服务器测试的方法、装置和计算机设备,所述对域名服务器测试的方法包括:获取域名服务器存储的域名解析数据;从所述域名解析数据中提取出指定字段;基于所述指定字段向所述域名服务器发送域名查询请求;接收所述域名服务器返回的查询结果,根据所述查询结果确定所述域名服务器是否能正确解析所述指定字段所指向的域名。通过这种对域名服务器测试的方法,可实现便捷快速地查询域名服务器的资源记录,减少测试结果出现错误的概率,方便对域名服务器进行测试。方便对域名服务器进行测试。方便对域名服务器进行测试。


技术研发人员:陈巨拓 胡慧东
受保护的技术使用者:杭州迪普科技股份有限公司
技术研发日:2023.04.04
技术公布日:2023/8/1
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐