將外部 IPv4 位址移至其他專案

靜態外部 IPv4 位址會與 Google Cloud 專案建立關聯,且只能在該專案中使用。不過,您可以將靜態外部 IPv4 位址從一個專案移至另一個專案。

IAM 角色和權限

如要移動區域 IP 位址,您必須具備下列權限:

  • 來源專案中的 compute.addresses.delete
  • compute.addresses.create 在目的專案中

如要移動全球 IP 位址,您必須具備下列權限:

  • 來源專案中的 compute.globalAddresses.delete
  • compute.globalAddresses.create 在目的專案中

包含這些權限的角色範例:

事前準備

限制

  • 如果您取消指派 IP 位址,則必須等待一段時間才能移動:

    • 針對全球 IP 位址,請等待 10 分鐘。
    • 如果是區域性 IP 位址,請等候 20 分鐘。
  • 您無法變更區域 IP 位址的地區。

  • 您無法將全球 IP 位址轉換為地區 IP 位址,也無法將地區 IP 位址轉換為全球 IP 位址。

將外部 IPv4 位址移至其他專案

您可以將地區或全球外部 IPv4 位址從一個專案移至另一個專案。移動 IP 位址時,系統會預設為 IP 位址資源指派相同的名稱和說明。不過,您可以選擇指派新名稱或說明。將外部 IPv4 位址移至新專案後,您可以將該位址指派給該專案中的符合資格的資源

主控台

  1. 前往 Google Cloud 控制台的「IP addresses」(IP 位址) 頁面。

    前往「IP addresses」(IP 位址) 頁面

  2. 在要移動的 IP 位址的「更多動作」選單 () 中,選取「移至其他專案」

  3. 按一下「選取專案」,然後選取要移至的專案。

  4. 選用:輸入 IP 位址的新名稱

  5. 選用:輸入 IP 位址的新說明

  6. 按一下 [移動]

gcloud

指令選項會因您是移動區域 IP 位址或全域 IP 位址,以及您是要保留或取代位址名稱或說明而有所不同。以下範例說明其中一些組合。

  • 將區域性外部 IPv4 位址移至其他專案:

    gcloud compute addresses move ADDRESS_NAME \
        --target-project=TARGET_PROJECT \
        --region=REGION
    
  • 將區域性外部 IPv4 位址移至其他專案,並在新的專案中指派新的名稱和說明:

    gcloud compute addresses move ADDRESS_NAME \
        --target-project=TARGET_PROJECT \
        --new-name=NEW_NAME \
        --description=NEW_DESCRIPTION \
        --region=REGION
    
  • 將全域外部 IPv4 位址移至其他專案:

    gcloud compute addresses move ADDRESS_NAME \
        --target-project=TARGET_PROJECT \
        --global
    

更改下列內容:

  • ADDRESS_NAME:要移動的 IP 位址資源名稱。
  • TARGET_PROJECT:要將 IP 位址移至的專案名稱或 ID。
  • REGION:IP 位址的區域。
  • NEW_NAME:新專案中 IP 位址資源的新名稱。
  • NEW_DESCRIPTION:新專案中 IP 位址資源的新名稱。如果省略,系統會使用資源的現有說明 (如有)。

詳情請參閱 gcloud compute addresses move 參考說明文件。

API

請注意,要求詳細資料的內容會因您要移動的 IP 位址是區域或全球 IP 位址,以及您要保留或取代地址名稱或說明而有所不同。以下範例說明其中一些組合。

  • 將區域性外部 IPv4 位址移至其他專案:

    POST https://www.googleapis.com/compute/v1/projects/SOURCE_PROJECT/regions/REGION/addresses/ADDRESS_NAME/move
    {
      "destination_address": "projects/TARGET_PROJECT/global/addresses/ADDRESS_NAME",
    }
    
  • 將區域性外部 IPv4 位址移至其他專案,並在新的專案中指派新的名稱和說明:

    POST https://www.googleapis.com/compute/v1/projects/SOURCE_PROJECT/regions/REGION/addresses/ADDRESS_NAME/move
    {
      "destination_address": "projects/TARGET_PROJECT/global/addresses/NEW_NAME",
      "description": "NEW_DESCRIPTION",
    }
    
  • 將全域外部 IPv4 位址移至其他專案:

    POST https://www.googleapis.com/compute/v1/projects/SOURCE_PROJECT/global/addresses/ADDRESS_NAME/move
    {
      "destination_address": "projects/TARGET_PROJECT/global/addresses/ADDRESS_NAME",
    }
    

更改下列內容:

  • ADDRESS_NAME:要移動的 IP 位址資源名稱。
  • SOURCE_PROJECT:要將 IP 位址移至的專案名稱或 ID。
  • TARGET_PROJECT:要將 IP 位址移至的專案名稱或 ID。
  • REGION:IP 位址的區域。
  • NEW_NAME:新專案中 IP 位址資源的新名稱。
  • NEW_DESCRIPTION:新專案中 IP 位址資源的新名稱。如果省略,系統會使用資源的現有說明 (如有)。

疑難排解

移動外部 IPv4 位址失敗

嘗試移動外部 IPv4 位址時,可能會看到下列錯誤訊息:

Invalid resource usage: 'Cannot move address that belongs to a reserved address range. Address range must be disassembled first.'

如果您看到這則訊息,表示 Cloud 支援團隊已將 IP 位址保留為相鄰 IP 位址範圍的一部分。如要移動這類 IP 位址,請與 Cloud 支援團隊聯絡。Cloud 支援團隊可以將整個 IP 位址範圍移至其他專案。系統不支援移動部分範圍。

如要檢查 IP 位址是否屬於 Cloud Support 保留的範圍,請按照下列步驟操作:

  1. 列出靜態外部 IP 位址,然後找出要檢查的 IP 位址。
  2. 檢查 IP 位址的名稱。如果 IP 位址是由 Cloud 支援團隊預留,其名稱會由字串和四個字節的 IP 位址組成,兩者以連字號分隔。舉例來說,如果 IP 位址為 198.51.100.2,且由 Cloud 支援團隊保留,則名稱會採用以下格式:STRING-198-51-100-2。其他 IP 位址 (在同一個範圍內保留) 會使用相同的字串,後面加上 IP 位址。