将临时 IP 地址释放回 GCE 池需要多长时间?

Fly*_*uin 1 ip google-compute-engine google-cloud-platform google-vpc

临时外部 IP 地址:这些地址可供虚拟机实例和转发规则使用。仅在 VM 停止并重新启动或实例终止之前,临时外部 IP 地址仍保留附加到 VM 实例。如果实例停止,分配给该实例的任何临时外部 IP 地址都会被释放回通用 Compute Engine 池,并可供其他项目使用。当已停止的实例再次启动时,会为该实例分配一个新的临时外部 IP 地址。

我认为是瞬时的,一旦虚拟机停止,我们将无法恢复相同的临时 IP 地址。然而,临时外部 IP 地址似乎仍会在一段时间内分配给项目。例如,我前两天删除了一个虚拟机并释放了一个IP地址。今天,相同的 IP 地址被分配给新的虚拟机。

  1. 将临时 IP 地址释放回 GCE 池需要多长时间?

  2. 临时外部 IP 地址是否“分配”给VPC或项目?如果一个 VPC 内有多个项目,临时 IP 地址是否会在项目内轮换,直到它们被释放到 GCE 池中?

Joh*_*ley 5

答案是“是否为您的实例重用临时地址并不重要”。

不保证您的实例将获得相同的地址或不会获得相同的地址。如果您正在设计的东西依赖于某种短暂的 IP 地址行为,那么您的设计在某些时候将会失败。

您的问题引用了 Google 的官方临时 IP 地址政策。根据该声明进行设计,并且不依赖于环境级别的行为。

如果您需要固定 IP 地址,请为您的实例分配静态 IP 地址。否则,您的实例将具有 Google Cloud 决定的任何地址,该地址在重新启动或重新创建之间可能是同一地址,也可能不是同一地址。

如果您的目标是随机化公共 IP 地址,那么您不能指望临时地址行为来实现这一目标。您可以分配一组静态 IP 地址,然后更改分配给实例的一个。请注意,未使用的 IP 地址是收费的(不是免费的)。另一种方法是在不同地域和可用区创建实例,这些实例将具有不同的公共 IP 地址。您还可以编写脚本来创建虚拟机,直到地址不同(不属于之前一组地址的一部分),然后删除其他虚拟机(受配额限制)。

从客户支持的角度来看,重新分配相同的地址给您对 Google 有利。这最大限度地减少了一个常见问题。一些客户不明白默认 IP 地址是短暂的以及这意味着什么。他们重新启动实例并且 IP 地址发生变化。这会破坏他们的 SSH 脚本、DNS 设置等。临时地址行为无法一致部署,但在可能的情况下是积极的。