We have a slightly unusual use case where we need to routinely recycle public IPs attached to our Compute Engine instances as part of a cybersecurity ASM scanning platform used for client assets.
In practice, when we release external IPs and recreate instances or reassign addresses, we consistently receive the same IPs back, even after deleting the instance and releasing the address. From prior experience, it appears that external IP allocation is at least partially project-scoped or pool-affined, which would explain this behaviour.
Historically, creating a new GCP project results in access to a fresh IP pool, however this is not a scalable or practical approach for us due to project limits, operational overhead, and IAM complexity.
We are trying to understand:
-
Whether there is any supported way to request or rotate into different external IP pools within the same project
-
Whether IP affinity is expected behaviour and if so how long it persists
-
If there are any recommended architectures for workloads that legitimately require high IP churn without creating new projects