【发布时间】:2020-09-17 08:36:42
【问题描述】:
我正在使用 Google 的 CloudDNS API 将一堆域批量上传到 Google Cloud。例如,我希望能够覆盖 Google 随机分配的默认名称服务器
- ns-cloud-e1.google.com
- ns-cloud-e2.google.com
- ns-cloud-e3.google.com
- ns-cloud-e4.google.com
到
- n1.domain.com
- n2.domain.com
- n3.domain.com
我注意到 Google 的 CloudDNS API 的文档引用了以下内容
nameServerSet(字符串)-
可以选择指定此 ManagedZone 的 NameServerSet。一种 NameServerSet 是一组 DNS 名称服务器,它们都托管相同的 管理区域。大多数用户不会设置此字段。
虽然尝试通过 CloudDNS 使用此属性时,我收到来自 API 的响应,指出通过 data 提供的数据无效。我以"n1.domain.com.,n2.domain.com.,n3.domain.com."的格式通过。我还尝试通过 Google PHP 包中的一组名称服务器和一个 RecordResourceSet 类,但无济于事。
这是我应该遵循的正确格式,还是无法在创建托管区域时预定义名称服务器,而必须在创建区域后执行此操作?
下面的代码示例,$cloud_dns->service 是Google_Service_Dns的一个实例
$cloud_dns->service->managedZones
->create(
'blah',
new Google_Service_Dns_ManagedZone([
'dnsName' => $dns_name_formatted,
'name' => 'app-' . $domain_name,
'description' => 'Batch Uploaded Domain',
'nameServerSet' => 'n1.domain.com.,n2.domain.com.,n3.domain.com.'
]),
);
【问题讨论】:
-
您能否提供您针对 API 运行的代码 sn-p ?请使用代码详细信息更新您的问题。
-
@Wojtek_B 已经这样做了!
-
你试过没有域名末尾的点吗?像这样
n1.domain.com,n2.domain.com,n3.domain.com -
不幸的是,我收到以下“'entity.managedZone.nameServerSet' 的值无效:'n1.domain.com,n2.domain.com,n3.domain.com',
标签: gcloud nameservers google-cloud-dns