将 public aws route53 记录导出为私有云 DNS 记录

Exporting public aws route53 records as private cloudDNS records

我想导出 aws route53 中存在的一些 public 域名,并在 google 中的 CloudDns 中使用我的私人网络中的这些域名。

我看到一个选项是将 aws 中的记录列为 yaml :

aws route53 list-resource-record-sets --hosted-zone-id <zoneID> --output yaml

然后在 google 云 dns 中将其导出为私有区域

gcloud dns record-sets import -z=EXAMPLE_ZONE_NAME --zone-file-format path-to-example-zone-file --visibility=private

只是想知道这是否可行,如果其他人尝试过,这是否有任何复杂性。

PS: 还没有 removing/updating aws route53,这只是一个学习示例。

编辑:通过 aws 命令使用记录列表导出为 yaml 格式不起作用,所以我安装了 cli53(管理路由 53 记录的工具)

  1. 然后使用下面的 cli53 命令导出它

    cli53 导出

  2. 后来,我尝试使用以下命令在 google 云中导入:

gcloud dns managed-zones create private-zone --description="private zone" --visibility=private --dns-name="example.com" --networks=default

  1. 我尝试将dns记录导入到云dns私有区域

    gcloud dns record-sets import -z="private-zone" --zone-file-format dns_export_cli53_bind_wedev_tools

但这不会导入任何内容,终端上会出现以下消息。文件中除NS、SOA、alias外还有4条记录

"无所事事,全部记录在"

我删除了顶部的 ns 记录和@origin。的文件,有效