設定地端部署主機的私人 Google 存取權

內部部署主機專用的私人 Google 存取權可讓內部部署系統透過 Cloud VPN 通道或 Cloud Interconnect 的 VLAN 連結,將流量轉送至 Google API 和服務。內部部署主機專用的私人 Google 存取權,可做為透過網際網路連線至 Google API 和服務的替代方案。

本文說明如何為內部部署主機啟用私人 Google 存取權。

規格和規定

內部部署主機的私人 Google 存取權須符合下列條件:

  • 您必須將內部部署系統傳送的 Google API 和服務流量,導向與 private.googleapis.comrestricted.googleapis.com 特殊網域名稱相關聯的 IP 位址。如要瞭解各網域可存取的服務,請參閱「網域選項」。

  • 內部部署網路必須使用 Cloud VPN 通道或 VLAN 附件,連線至 VPC 網路

  • 內部部署網路連線的虛擬私有雲網路,必須具備 private.googleapis.comrestricted.googleapis.com 目的地 IP 範圍的適當路徑。詳情請參閱「虛擬私有雲網路路由」。

  • 內部部署網路連線的 VPC 網路必須有適當的路徑,才能連上內部部署網路。這些路徑的下一個躍點 Cloud VPN 通道或 VLAN 連結必須位於要求來源的相同區域,才能連線至內部部署網路。如果下一個躍點所在的區域與私人 Google 存取權要求發出的區域不同,私人 Google 存取權的回應就無法傳送至地端部署網路。

  • 內部部署網路必須有 private.googleapis.comrestricted.googleapis.com 目的地 IP 範圍的路徑。這些路徑必須將流量導向適當的 Cloud VPN 通道或 VLAN 連結,這些通道或連結會連線至您的虛擬私有雲網路。詳情請參閱「使用 Cloud Router 進行內部部署轉送」。

  • 如要讓內部部署環境中的 IPv6 用戶端透過 private.googleapis.comrestricted.googleapis.com 存取 Google API,您必須設定與虛擬私有雲網路的連線,以支援 IPv6。詳情請參閱下列頁面:

  • 內部部署用戶端可以從任何 IPv6 GUA 或 ULA 位址傳送要求,但 ULA 範圍 fda3:e722:ac3:cc00::/64 除外,因為該範圍保留供內部使用。

  • 如果專案只為地端主機提供 Google API 存取權,則不需要為專案啟用 Google API。

    不過,如果專案中的資源需要存取 Google API,您可能需要為資源需要存取的服務分別啟用 API。如要進一步瞭解如何為專案中的資源使用私人 Google 存取權,請參閱「設定私人 Google 存取權」。

權限

具有網路管理員角色的專案擁有者、編輯者和身分與存取權管理主體有權建立或更新子網路及指派 IP 位址。

如要進一步瞭解角色,請參閱身分與存取權管理角色說明文件。

網路設定

內部部署主機的私人 Google 存取權對內部部署系統,以及內部部署系統用來將流量傳送至 Google API 和服務的虛擬私有雲網路,都有特定的網路需求

網域選項

如要使用內部部署主機的私人 Google 存取權,您必須將服務導向下列其中一個特殊網域。您選擇的特殊網域會決定可存取的服務。

private.googleapis.comrestricted.googleapis.com VIP 僅支援透過 TCP 的 HTTP 型通訊協定 (HTTP、HTTPS 和 HTTP/2)。系統不支援其他通訊協定,包括 MQTT 和 ICMP。

網域和 IP 位址範圍 支援的服務 應用實例

private.googleapis.com

199.36.153.8/30

2600:2d00:0002:2000::/64

無論是否支援 VPC Service Controls,都能存取大多數 Google API 和服務。包括 Google 地圖、Google Ads、 Cloud de Confiance和大多數其他 Google API 的 API 存取權,包括下列清單。不支援 Gmail 和 Google 文件等 Google Workspace 網頁應用程式。不支援任何互動式網站。

相符的網域名稱:

  • accounts.google.com (僅支援服務帳戶 OAuth 驗證所需的路徑;使用者帳戶驗證為互動式,因此不支援)
  • *.aiplatform-notebook.cloud.google.com
  • *.aiplatform-notebook.googleusercontent.com
  • appengine.google.com
  • *.appspot.com
  • *.backupdr.cloud.google.com
  • backupdr.cloud.google.com
  • *.backupdr.googleusercontent.com
  • backupdr.googleusercontent.com
  • *.cloudfunctions.net
  • *.cloudproxy.app
  • *.composer.cloud.google.com
  • *.composer.googleusercontent.com
  • *.datafusion.cloud.google.com
  • *.datafusion.googleusercontent.com
  • *.dataproc.cloud.google.com
  • dataproc.cloud.google.com
  • *.dataproc.googleusercontent.com
  • dataproc.googleusercontent.com
  • dl.google.com
  • gcr.io*.gcr.io
  • *.googleapis.com
  • *.gke.goog
  • *.gstatic.com
  • *.kernels.googleusercontent.com
  • *.ltsapis.goog
  • *.notebooks.cloud.google.com
  • *.notebooks.googleusercontent.com
  • packages.cloud.google.com
  • pkg.dev*.pkg.dev
  • pki.goog*.pki.goog
  • *.run.app
  • source.developers.google.com
  • storage.cloud.google.com

使用 private.googleapis.com,透過只能從 Cloud de Confiance內部路由傳送的一組 IP 位址存取 Google API 和服務。

在下列情況下選擇 private.googleapis.com

  • 您未使用 VPC Service Controls。
  • 您使用 VPC Service Controls,但需要存取 VPC Service Controls 不支援的 Google API 和服務。1

restricted.googleapis.com

199.36.153.4/30

2600:2d00:0002:1000::/64

啟用 VPC Service Controls 支援的 Google API 和服務存取權。

禁止存取不支援 VPC Service Controls 的 Google API 和服務。 不支援 Google Workspace API 或 Google Workspace 網頁應用程式,例如 Gmail 和 Google 文件。

使用 restricted.googleapis.com,透過只能從 Cloud de Confiance內部路由傳送的一組 IP 位址存取 Google API 和服務。

如果需要存取 VPC Service Controls 支援的 Google API 和服務,請選擇 restricted.googleapis.com

restricted.googleapis.com 網域不允許存取不支援 VPC Service Controls 的 Google API 和服務。1

1 如要限制使用者只能存取支援 VPC Service Controls 的 Google API 和服務,請使用 restricted.googleapis.com,因為這項功能可進一步降低資料竊取風險。使用 restricted.googleapis.com 會拒絕存取 VPC Service Controls 不支援的 Google API 和服務。詳情請參閱 VPC Service Controls 說明文件中的「設定私人連線」。

支援 private.googleapis.comrestricted.googleapis.com 的 IPv6

下列 IPv6 位址範圍可用於將 IPv6 用戶端的流量導向 Google API 和服務:

  • private.googleapis.com2600:2d00:0002:2000::/64
  • restricted.googleapis.com2600:2d00:0002:1000::/64

如要使用 private.googleapis.comrestricted.googleapis.com 網域,且用戶端使用 IPv6 位址,請考慮設定 IPv6 位址。如果 IPv6 用戶端也設定了 IPv4 位址,則可使用 IPv4 位址連線至 Google API 和服務。並非所有服務都接受來自 IPv6 用戶端的流量。

DNS 設定

內部部署網路必須設定 DNS 區域和記錄,讓 Google 網域名稱解析為 private.googleapis.comrestricted.googleapis.com 的 IP 位址集。您可以建立 Cloud DNS 代管私人區域,並使用 Cloud DNS 傳入伺服器政策,也可以設定地端部署名稱伺服器。例如,您可以使用 BINDMicrosoft Active Directory DNS

以下章節說明如何使用 DNS 區域,將封包傳送至與所選 VIP 相關聯的 IP 位址。請按照適用於您的所有情境操作:

設定 VIP 的 DNS 記錄時,請只使用下列步驟所述的 IP 位址。請勿混用 private.googleapis.comrestricted.googleapis.com VIP 的位址。這可能會導致間歇性故障,因為提供的服務會因封包目的地而異。

設定 googleapis.com 的 DNS

googleapis.com 建立 DNS 區域和記錄:

  1. googleapis.com 建立私人 DNS 區域。建議您為此目的建立 Cloud DNS 私人區域
  2. googleapis.com 區域中,為 private.googleapis.comrestricted.googleapis.com 建立下列私人 DNS 記錄,具體取決於您選擇使用的網域。

    • 針對 private.googleapis.com

      1. private.googleapis.com 建立 A 記錄,指向下列 IP 位址:199.36.153.8199.36.153.9199.36.153.10199.36.153.11

      2. 如要使用 IPv6 位址連線至 API,請一併設定指向 2600:2d00:0002:2000::AAAA 記錄。private.googleapis.com

    • 針對 restricted.googleapis.com

      1. restricted.googleapis.com 建立 A 記錄,指向下列 IP 位址:199.36.153.4199.36.153.5199.36.153.6199.36.153.7

      2. 如要使用 IPv6 位址連線至 API,請一併建立指向 2600:2d00:0002:1000::AAAA 記錄。restricted.googleapis.com

    如要在 Cloud DNS 中建立私人 DNS 記錄,請參閱新增記錄

  3. googleapis.com 區域中,為 *.googleapis.com 建立 CNAME 記錄,指向您設定的網域:private.googleapis.comrestricted.googleapis.com

設定其他網域的 DNS

部分 Google API 和服務會使用其他網域名稱提供,包括 *.gcr.io*.gstatic.com*.pkg.devpki.goog*.run.app*.gke.goog。請參閱「網域選項」中的網域和 IP 位址範圍表格,判斷是否可使用 private.googleapis.comrestricted.googleapis.com 存取其他網域的服務。接著,針對每個額外網域執行下列操作:

  1. DOMAIN 建立 DNS 區域 (例如 gcr.io)。如果您使用 Cloud DNS,請確認這個區域與 googleapis.com 私人區域位於同一個專案中。

  2. 在這個 DNS 區域中,為其中一個建立下列私人 DNS 記錄:private.googleapis.comrestricted.googleapis.com,視您選擇使用的網域而定。

    • 針對 private.googleapis.com

      1. DOMAIN 建立 A 記錄,指向下列 IP 位址:199.36.153.8199.36.153.9199.36.153.10199.36.153.11

      2. 如要使用 IPv6 位址連線至 API,請一併建立指向 2600:2d00:0002:2000::AAAA 記錄。DOMAIN

    • 針對 restricted.googleapis.com

      1. DOMAIN 建立 A 記錄,指向下列 IP 位址:199.36.153.4199.36.153.5199.36.153.6199.36.153.7

      2. 如要使用 IPv6 位址連線至 API,請一併建立指向 2600:2d00:0002:1000::AAAA 記錄。restricted.googleapis.com

  3. DOMAIN 區域中,為 *.DOMAIN 建立指向 DOMAINCNAME 記錄。舉例來說,為 *.gcr.io 建立指向 gcr.ioCNAME 記錄。

設定 Cloud Storage 自訂網域名稱的 DNS

如果您使用 Cloud Storage 值區,並向Cloud Storage 自訂網域名稱傳送要求,則設定自訂 Cloud Storage 網域名稱的 DNS 記錄,指向 private.googleapis.comrestricted.googleapis.com 的 IP 位址,不足以允許存取 Cloud Storage 值區。

如要將要求傳送至 Cloud Storage 自訂網域名稱,您也必須將 HTTP 要求的 Host 標頭和 TLS SNI 明確設為 storage.googleapis.comprivate.googleapis.comrestricted.googleapis.com 的 IP 位址不支援 HTTP 要求 Host 標頭和 TLS SNI 中的自訂 Cloud Storage 主機名稱。

設定內部部署系統的 DNS

如果您使用 Cloud DNS 實作 DNS 設定,則需要設定地端部署系統,讓這些系統可以查詢 Cloud DNS 代管私人區域:

  • 在內部部署網路連線的虛擬私有雲網路中,建立傳入伺服器政策
  • 在 Cloud VPN 通道和 VLAN 連結所在的區域,找出內部轉送器進入點,這些進入點位於地端部署網路連線的虛擬私有雲網路中。
  • 設定內部部署系統和內部部署 DNS 名稱伺服器,將 googleapis.com 和任何其他網域名稱轉送至與 Cloud VPN 通道或 VLAN 連結位於相同區域的入埠轉送器進入點,該通道或連結會連至虛擬私有雲網路

虛擬私有雲網路路徑轉送

內部部署網路連線的虛擬私有雲網路,必須具備 private.googleapis.comrestricted.googleapis.com 所用 IP 位址範圍的路徑。這些路徑必須使用預設網際網路閘道下一個躍點。

Google 不會在網際網路上發布 private.googleapis.comrestricted.googleapis.com 網域使用的 IP 位址範圍路徑。因此,即使虛擬私有雲網路中的路徑會將流量傳送至預設網際網路閘道下一個躍點,傳送至這些 IP 位址範圍的封包仍會保留在 Google 網路中。

如果內部部署網路連線的虛擬私有雲端網路包含預設路徑,且該路徑的下一個躍點為預設網際網路閘道,則該路徑符合內部部署主機的私人 Google 存取權轉送需求。

虛擬私有雲網路自訂轉送

如果您已取代或變更預設路徑,請務必為 private.googleapis.comrestricted.googleapis.com 使用的目的地 IP 範圍設定自訂靜態路徑。如要檢查特定網路中 Google API 和服務的自訂路徑設定,請按照下列指示操作。

主控台

  1. 前往 Cloud de Confiance 控制台的「Routes」(路徑) 頁面。

    前往「Routes」(路徑)

  2. 使用「Filter table」(篩選資料表) 文字欄位,依下列條件篩選路徑清單,並將 NETWORK_NAME 替換為內部部署網路所連線的虛擬私有雲網路名稱:

    • 網路:NETWORK_NAME
    • 下一個躍點類型:default internet gateway
  3. 查看每條路徑的「目的地 IP 範圍」欄。尋找目的地範圍相符的路線:

    • 199.36.153.8/30如果選擇private.googleapis.com
    • 199.36.153.4/30如果選擇restricted.googleapis.com

gcloud

使用下列 gcloud 指令,將 NETWORK_NAME 替換為內部部署網路連線的 VPC 網路名稱:

gcloud compute routes list \
    --filter="default-internet-gateway NETWORK_NAME"

除非使用 --format 標記自訂指令,否則路徑會以表格格式列出。在 DEST_RANGE 欄中,尋找目的地範圍符合下列條件的路線:

  • 199.36.153.8/30如果選擇private.googleapis.com
  • 199.36.153.4/30如果選擇restricted.googleapis.com

如要在虛擬私有雲網路中建立路徑,請參閱「新增靜態路徑」。

透過 Cloud Router 進行內部部署轉送

您必須設定內部部署網路中的路徑,將 private.googleapis.comrestricted.googleapis.com 網域使用的 IP 位址範圍流量,導向下一個躍點 Cloud VPN 通道或 VLAN 連結,這些通道或連結會連線至您的虛擬私有雲網路。

您可以使用雲端路由器自訂路徑通告,宣告 private.googleapis.comrestricted.googleapis.com 網域使用的 IP 範圍路徑。

只有在啟用 IPv6 的 BGP 工作階段中,才會播送 IPv6 路徑。

主控台

如要更新 Cloud Router 上所有 BGP 工作階段的路徑通告模式,但使用自訂 BGP 通告的 BGP 工作階段除外,請按照下列步驟操作:

  1. 前往 Cloud de Confiance 控制台的「Cloud Router」頁面。

    前往 Cloud Router

  2. 選取管理 Cloud VPN 通道或 VLAN 連結 BGP 工作階段的 Cloud Router,將內部部署網路連線至虛擬私有雲網路。

  3. 在 Cloud Router 的詳細資料頁面中選取 [編輯]。

  4. 展開 [公告路徑] 區段。

  5. 在「路徑」欄位,選取 [建立自訂路徑]。

  6. 如要通告 Cloud Router 可用的所有子網路路徑,請選取「公告 Cloud Router 可使用的所有子網路」。這項設定會將預設設定複製到自訂設定。

  7. 針對要新增的每條宣傳路線,請執行下列操作:

    1. 選取「新增自訂路徑」
    2. 在「來源」中選取「自訂 IP 範圍」
    3. 在「IP address range」(IP 位址範圍) 中,輸入要使用的其中一個範圍:
      • 如果您使用 private.googleapis.com
        • IPv4 連線:199.36.153.8/30
        • IPv6 連線:2600:2d00:0002:2000::/64
      • 如果您使用 restricted.googleapis.com
        • IPv4 連線:199.36.153.4/30
        • IPv6 連線:2600:2d00:0002:1000::/64
    4. 按一下 [完成]
  8. 新增路徑完畢後,請選取 [儲存]。

如要更新特定 BGP 工作階段的路徑通告模式:

  1. 前往 Cloud de Confiance 控制台的「Cloud Router」頁面。

    前往 Cloud Router

  2. 選取管理 Cloud VPN 通道或 VLAN 連結 BGP 工作階段的 Cloud Router,將地端部署網路連線至虛擬私有雲網路。

  3. 在 Cloud Router 的詳細資料頁面中,選取要更新的 BGP 工作階段。

  4. 在 BGP 工作階段詳細資料頁面中,按一下「編輯」

  5. 在「路徑」欄位,選取 [建立自訂路徑]。

  6. 如要讓 Cloud Router 採用預設行為,請選取「公告 Cloud Router 可使用的所有子網路」,公告 Cloud Router 可用的所有子網路路徑。

  7. 針對要新增的每條宣傳路線,請執行下列操作:

    1. 選取「新增自訂路徑」
    2. 在「來源」中選取「自訂 IP 範圍」
    3. 在「IP address range」(IP 位址範圍) 中,輸入要使用的其中一個範圍:
      • 如果您使用 private.googleapis.com
        • IPv4 連線:199.36.153.8/30
        • IPv6 連線:2600:2d00:0002:2000::/64
      • 如果您使用 restricted.googleapis.com
        • IPv4 連線:199.36.153.4/30
        • IPv6 連線:2600:2d00:0002:1000::/64
    4. 按一下 [完成]
  8. 新增路徑完畢後,請選取 [儲存]。

gcloud

  1. 找出 Cloud Router 的名稱和區域,該路由器會管理 Cloud VPN 通道或 VLAN 連結上的 BGP 工作階段,這些通道或連結會將地端部署網路連線至 VPC 網路。

  2. 使用 compute routers update 更新所有 Cloud Router BGP 工作階段的路徑通告模式,但使用自訂 BGP 通告的 BGP 工作階段除外:

    gcloud compute routers update ROUTER_NAME \
        --region=REGION \
        --advertisement-mode=CUSTOM \
        --set-advertisement-groups=ALL_SUBNETS \
        --set-advertisement-ranges=CUSTOM_RANGES
    

    如果您已為 Cloud Router 使用 CUSTOM 通告模式,可以附加新的通告範圍。這會更新 Cloud Router 所有 BGP 工作階段的路徑通告模式,但使用自訂 BGP 通告的 BGP 工作階段除外:

    gcloud compute routers update ROUTER_NAME \
        --region=REGION \
        --add-advertisement-ranges=CUSTOM_RANGES
    
  3. 或者,您也可以使用 compute routers update-bgp-peer 在 Cloud Router 上設定特定 BGP 對等互連:

    如果您要新增 IPv6 自訂範圍,且 BGP 工作階段已停用 IPv6 流量,可以使用 --enable-ipv6 標記啟用流量。

    gcloud compute routers update-bgp-peer ROUTER_NAME \
        --region=REGION \
        --peer-name=PEER_NAME \
        --advertisement-mode=CUSTOM \
        --set-advertisement-groups=ALL_SUBNETS \
        --set-advertisement-ranges=CUSTOM_RANGES
    

    如果您已在 Cloud Router 的 BGP 工作階段使用CUSTOM通告模式,可以附加新的通告範圍

    如果您要新增 IPv6 自訂範圍,且 BGP 工作階段已停用 IPv6 流量,可以使用 --enable-ipv6 標記啟用流量。

    gcloud compute routers update-bgp-peer ROUTER_NAME \
        --region=REGION \
        --peer-name=PEER_NAME \
        --add-advertisement-ranges=CUSTOM_RANGES
    

    在上述指令中,請將下列項目替換為有效值:

    • ROUTER_NAME:Cloud Router 的名稱
    • REGION:Cloud Router 的區域
    • PEER_NAME:您為專屬互連網路建立 VLAN 連結為合作夥伴互連網路建立 VLAN 連結建立高可用性 VPN 通道,或使用動態轉送建立傳統 VPN 通道時,設定的 BGP 對等互連名稱。
    • 保留 --set-advertisement-groups=ALL_SUBNETS,通告 Cloud Router 可用的所有子網路路徑。這是 Cloud Router 的預設行為。
    • CUSTOM_RANGES:以逗號分隔的自訂範圍清單,用於放送廣告。
      • 針對 private.googleapis.com
        • IPv4 連線:199.36.153.8/30
        • 同時支援 IPv4 和 IPv6 連線:199.36.153.8/30,2600:2d00:0002:2000::/64
      • 針對 restricted.googleapis.com
        • IPv4 連線:199.36.153.4/30
        • 同時支援 IPv4 和 IPv6 連線:199.36.153.4/30,2600:2d00:0002:1000::/64

防火牆注意事項

Cloud de Confiance 內部部署網路連線的虛擬私有雲網路防火牆規則,不會對下列項目造成影響:

  • 透過連線至虛擬私有雲網路的 Cloud VPN 通道傳送的封包
  • 透過連線至虛擬私有雲網路的 VLAN 連結傳送的封包
  • 傳送至虛擬私有雲網路中 Cloud DNS 傳入轉送站 IP 位址的封包

請確保內部部署系統的防火牆設定允許輸出流量,以及來自適當 IP 位址的已建立回應:

  • 如果您使用 private.googleapis.com
    • IPv4 連線:199.36.153.8/30
    • IPv6 連線:2600:2d00:0002:2000::/64
  • 如果您使用 restricted.googleapis.com
    • IPv4 連線:199.36.153.4/30
    • IPv6 連線:2600:2d00:0002:1000::/64
  • 如果您使用 Cloud DNS 進行 DNS 設定,則為任何 Cloud DNS 傳入轉寄站 IP 位址

後續步驟