我正在从 Microsoft Azure 迁移到 Google Cloud,并且我希望能够公开访问我的其中一台虚拟机,myapp.uswest.cloudapp.google.com
而不是其外部静态 IP 地址。我希望有人可以让我知道我是否错过了设置中的某些内容以及我对所需内容的理解是否正确。
我进入 Google Cloud DNS 并使用 DNS 名称创建了一个区域,并将其设为uswest.cloudapp.google.com
公共区域,以便可以公开访问。然后我创建了一条 A 记录,其值为我的虚拟机的外部 IP 地址,并将该 A 记录的 DNS 名称设置为myapp.uswest.cloudapp.google.com
.
在这一点上,我是否只需要等待 DNS 传播,还是我错过了什么?
这不是很好,因为免费的“临时”地址将来可能会发生变化。
Microsoft 做得更好 - 对于 Azure 中的动态 VM IP 地址,您可以拥有一个免费的永久 DNS 名称(例如 myapp567.azurewebsites.net),然后只需创建一个指向您自己的域的 CNAME(例如 myapp.mydomain.com)。
只需为遇到相同问题的任何人发布此答案,以防stackoverflow答案被删除。
您配置它的方式不起作用,因为此名称 (myapp.uswest.cloudapp.google.com.) 不会被递归解析。因为它不会在“google.com”下创建任何记录。对于“uswest.cloudapp.google.com”区域。
GCP 具有用于 Compute Engine 虚拟机的内部 FQDN,用于在同一 VPC 网络中的实例之间进行通信,可用于通过指定目标实例的完全限定 DNS 名称 (FQDN) 将数据包发送到实例。VPC 网络自动将名称解析为实例的内部 IP 地址。但是,不能在外部使用它。
对于外部通信,您必须拥有自己的域(如果您还没有域,您可以注册一个)并创建一个 A 记录,该记录将针对您的 VM 的外部 IP 进行解析。但是,在这种情况下,您可以使用Cloud DNS为您的注册域创建一个区域。