'Gcloud could not fetch resource: Specified IP address is not allocated to the project or does not belong to the specified scope
I'm trying to migrate a VM on GCP from one project to another. I succeeded until a point where it came to transferring the static IP address.
I detached it from the old VM and then deleted/released it. I went to the new project and attempted to create the new instance with the command:
gcloud compute instances create <name> --address x.x.x.x
And got error:
ERROR: (gcloud.compute.addresses.create) Could not fetch resource:
- Invalid value for field 'resource.address': 'x.x.x.x'. Specified 
IP address is not allocated to the project or does n
ot belong to the specified scope.
I thought instead maybe I needed to reserve the IP address first, and tried:
gcloud compute addresses create <name> --addresses 
x.x.x.x --region us-east1
And from that, got essentially the same thing --
ERROR: (gcloud.compute.addresses.create) Could not fetch 
resource:- Invalid value for field 'resource.address': 'x.x.x.x'. 
Specified IP address is not allocated to the project or does n
ot belong to the specified scope.
I'm following their docs really closely: - https://cloud.google.com/compute/docs/ip-addresses/reserve-static-external-ip-address
If it had already been claimed in their automatic IP generation by another instance, I would think the error message would be different than this. I also used another gcloud command to look at all my IP reservations and confirm that it is not active on the old project.
Solution 1:[1]
You can only select an IP address that has already been reserved and assigned to your project. You cannot just select any IP address. You will need to reserve a new IP address and update the DNS Resource Records on your DNS servers.
Solution 2:[2]
With your gcloud command, make sure to specify --subnet, i.e.:
gcloud --project=project-id compute addresses create \
    "address-name" \
    --region=us-central1 \
    --subnet=default \
    --addresses=X.X.X.X
You can then specify any X.X.X.X that fits in the default subnet.
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source | 
|---|---|
| Solution 1 | John Hanley | 
| Solution 2 | Gillespie | 
