google 云是否有内部 DNS 服务

Does google cloud have internal dns service

GCP 是否支持内部 DNS 服务?我不需要我的区域 public 但我希望我的 gce 实例使用它来解析内部服务。

根据 this VPC doc 看来您需要设置自己的 DNS 服务器。

DNS server Each instance's metadata server acts as a DNS server. It stores the DNS entries for all VPC network IP addresses in the local VPC network and calls Google's public DNS server for entries outside the VPC network. You cannot configure this DNS server, but you can set up your own DNS server if you like and configure your instances to use that server instead by editing the /etc/resolv.conf file.

编辑: 正如最近的答案所指出的那样,Cloud DNS now supports private zones.

我不是很清楚你的要求,但如果你只是想让项目 VPC 中的两个 vm 实例相互通信,那么你可以使用内部 dns,而不是使用内部 IP 地址,当 vm实例被重新创建。

GCP 提供 internal dns 可被同一 VPC 中的两个 VM 实例用于通信。

请注意,两个不同VPC中的vm实例无法使用此方法跨VPC相互通信(除非配置了VPN或其他机制来连接VPC)

有两种方法access/configure内部DNS

  • 全球 DNS
  • 区域 DNS(2018 年 9 月 6 日之后启用计算引擎 API 的所有组织或独立项目的默认设置。)

实例的内部完全限定域名 (FQDN) 具有以下格式:

Instances using the default global DNS : [HOST_NAME]       .c.[PROJECT_ID].internal
Instances enabled for Zonal DNS        : [HOST_NAME].[ZONE].c.[PROJECT_ID].internal

您可以使用此 FQDN 通过内部 VPC 网络寻址实例。

例如,如果您的实例启用了区域 DNS,您可以使用区域完全限定域名通过内部 VPC 网络从一个实例 ping 到另一个实例:

ping example-instance.us-west1-c.c.example-project.internal -c 1

是的,自 2018 年 10 月起,Google Cloud DNS 现在支持私有 DNS 区域。

您可以创建域和 DNS 条目(指向任何实例、负载均衡器、服务),它们仅对您允许的 VPC 网络内部可见,并且在 Internet 上不可用。