计算实例虚拟机中无法解析私有 DNS 记录

计算实例虚拟机中无法解析私有 DNS 记录

背景故事
我们刚刚设置了 GCP 项目。我们有几个 Compute Engine VM(centOS)正在运行。我们在生产 co-lo 和 GCP 之间设置了 VPN。一切似乎都运行良好。
我们确实在一个项目中设置了网络(VPC),并与拥有 VM 的项目共享。

问题
我使用 Cloud DNS 设置了私有 DNS,并添加了一个包含我们的一个 co-lo IP 地址的测试 A 记录。DNS 中的 NS IP 与 resolv.conf 文件中的名称服务器匹配。
当我尝试 ping DNS 记录时,我收到“名称或服务未知”的消息。
我相信我们已经正确设置了所有内容,但我们没有获得名称解析。

任何帮助都将不胜感激。谢谢!

更新日期:2018 年 12 月 4 日
将 DNS 添加到两个项目中,DNS 解析。如果我们从其中一个中删除它,那么它就不起作用了。听起来仍然不对,但无论如何。

答案1

你会发现云 DNS 文档很有用,它解释了使用共享 VPC 的私有区域的先决条件。

  • 您必须在宿主项目中创建您的私有区域,并且必须将适当的共享 VPC 网络添加到该区域的授权网络列表中。

  • 您必须在每个服务项目中激活私有区域支持。即使宿主项目包含您的私有区域,并且服务项目中的虚拟机使用您的共享 VPC 网络(也在宿主项目中),您也必须在每个项目(包括服务项目)中激活私有区域支持。要为项目激活私有区域支持,您可以在其中手动创建至少一个私有区域。对每个服务项目重复此步骤,以确保您在每个项目中都激活了私有区域支持。您在每个服务项目中创建的私有区域不需要有任何资源记录;您可以将其留空。只需创建私有区域就足以启用私有区域支持。

答案2

与 Rackspace 合作修复了这个问题。这是我从他们那里得到的答案:

Ok, final word from google shows that we will need to create the private zone and the records on the Host project (Shared VPC) and duplicate the zone only on the service project.
因此,我在共享 VPC 项目中拥有包含 A 记录的完整 DNS,并且只在项目中定义了包含虚拟机的区域。
现在一切都正常了。真奇怪。

相关内容