GCP中新建VM无法使用未分配静态内部IP问题排查
GCP静态内部IP分配问题排查与解决
一、IP显示In Use By: None但提示被占用的原因及处理
In Use By列仅统计GCP计算类资源(VM、容器实例等),子网内的负载均衡后端、VPN网关、云SQL私有IP等资源占用的IP不会在此列显示。可通过以下方式排查:- 执行gcloud命令查询子网内已分配的IP:
gcloud compute addresses list --filter="region=us-central1 AND network=default AND subnetwork=default" - 查看VPC控制台的子网详情,确认该静态IP在子网CIDR范围内,同时检查子网已用IP统计数据
- 执行gcloud命令查询子网内已分配的IP:
- 静态IP预留后无冷却期,预留成功即可分配。若排查后无资源占用,可能是控制台缓存问题,可刷新页面或用命令重新查看IP状态:
gcloud compute addresses describe [静态IP名称] --region=us-central1
二、升级现有VM内部IP到静态IP时报错的解决
报错Specified IP address is not allocated to the project or does not belong to the specified scope的核心是静态IP与VM的子网/区域不匹配,处理步骤:
- 确认静态IP的区域为
us-central1,且所属子网为default,与目标VM所在子网完全一致 - 目标VM必须和静态IP处于同一区域、同一子网,且VM的网络配置为
default网络 - 若VM在不同子网,需先将VM迁移至
default子网,或在VM所在子网重新预留静态IP - 可尝试用gcloud命令分配,规避控制台缓存问题:
gcloud compute instances network-interfaces update [VM名称] \ --region=us-central1 \ --network-interface=nic0 \ --address=[静态IP地址]
内容的提问来源于stack exchange,提问作者harrolee
相关产品推荐
相关产品推荐

