GDC 中的子網路和 IP 位址

子網路是 IP 位址網路的邏輯細分,可為服務提供可管理的區隔。您可以定義具有特定 IP 位址範圍的子網路,或在 Google Distributed Cloud (GDC) air-gapped 中設定子網路,以進行動態分配。

本文適用於平台管理員群組中的網路管理員,以及應用程式運算子群組中的應用程式開發人員,這些人員負責管理服務的網路流量。詳情請參閱 GDC air-gapped 說明文件適用對象

GDC 中的網路

GDC 機構提供兩種不同的網路類型,可供您分配 IP 位址:

  • 虛擬私有雲 (VPC):這類網路會分配內部 IP 位址,只有貴機構內的工作負載可以存取。
  • 外部網路區隔:此網路會分配外部 IP 位址,可供連線至貴機構的外部網路存取。

您可以在每種網路類型中分配子網路,以達成特定目標。子網路是 IP 位址網路的邏輯細分,由無類別跨網域路由 (CIDR) 範圍定義。CIDR 範圍可供服務使用,代表 IP 位址及其對應的網路。這些網路類型中的每個網路都有獨立的子網路樹狀結構。

虛擬私有雲中的子網路可從 GDC 網路內存取,但無法從 GDC 外部存取。虛擬私有雲子網路可供貴機構分配內部 IP 位址。網路區隔子網路會公開給與機構連線的外部網路,讓您提供可供機構外部網路使用的外部 IP 位址

每個網路都會將子網路整理成階層式樹狀結構,以便在網路的不同部分 (例如區域、服務或工作負載) 提供 IP 位址範圍的邏輯細分和分配。詳情請參閱子網路階層

虛擬私有雲網路

虛擬私有雲網路使用的內部 IP 位址只能在貴機構內存取,貴機構外的網路無法連線。

GDC 宇宙中提供兩種虛擬私有雲網路:

  • 預設虛擬私有雲:虛擬私有雲會為多個可用區內和之間的內部工作負載 (例如容器和虛擬機器 (VM)) 分配 IP 位址。
  • 基礎架構 VPC:由系統管理的 VPC,用於代管第一方 GDC 氣隙服務,例如 Vertex AI、Observability API 和 GDC 控制台。只有在規劃貴機構的 IP 位址架構時,才需要定義這個虛擬私有雲中的 IP 位址。

在同一個機構中,預設虛擬私有雲和基礎架構虛擬私有雲的 IP 位址不得重疊。詳情請參閱「限制」一節。

在虛擬私有雲網路中建立子網路,為內部工作負載分配額外的 IP 位址。

外部網路區隔

外部網路區隔會分配外部 IP 位址,供連線至貴機構的外部網路存取。GDC 中的網路區隔只會分配外部 IP 位址。

GDC 提供下列邏輯上隔離的網路區隔:

您可以使用不同的互連網路,將網路區隔連線至其他外部網路。網路區隔內的 IP 位址不得重疊。詳情請參閱「限制」一節。

在網路區隔中建立子網路,為必須連線至 GDC 組織外部網路的服務分配額外的外部 IP 位址。

子網路階層

子網路會依類型分類:

  • :頂層子網路,可從中衍生其他子網路。在佈建機構期間,系統會在每個網路中建立全域根子網路。
  • 分支:衍生自根子網路或其他分支子網路的子網路,用於進一步細分 IP 位址空間。
  • 葉節點:最小的細分單位,通常用於為特定服務或資源分配 IP 位址。

您可以細分子網路,將 IP 位址分配給網路。

以下範例圖表說明不同子網路類型之間的連線方式:

  • 10.0.0.0/16 的根子網路,可做為主要 IP 位址分配的頂層區塊。
  • 從根子網路衍生出兩個分支子網路,值分別為 10.0.1.0/2410.0.2.0/24。這些分支子網路代表根目錄位址空間的細分,適用於更具體的用途。
  • 分支子網路會進一步細分為葉子子網路,值為 10.0.1.10/3210.0.1.11/3210.0.2.12/24。這些葉子子網路通常是最小的細分區,經常為特定服務或資源分配單一 IP 位址。

這個子網路階層式結構可讓您在區域、工作負載和服務之間,有效率地委派及組織網路,這些區域、工作負載和服務都依賴網路中的 IP 位址。如要進一步控管子網路分支,請定義子網路,靜態或動態分配 CIDR 區塊

全域和可用區子網路

在 GDC 中,您可以在兩種不同範圍內佈建子網路:區域和全域。區域和全域子網路是在不同的 API 伺服器中定義及運作,並提供不同的功能。

機構佈建完成後,每個網路都會有一個全域根子網路,該子網路會託管在機構的全域 API 伺服器中。如要從全域根子網路佈建 IP 位址,您必須在全域 API 伺服器中建立全域 Subnet 資源,將 CIDR 區塊佈建至一個或多個可用區。在全域子網路中,您可以定義 propagationStrategy 欄位,指出要在各個可用區中分配 CIDR 區塊的方式。這個 IP 位址範圍會佈建至區域,做為區域根子網路。

區域擁有自己的區域根子網路後,您可以在區域的管理 API 伺服器中建立區域 Subnet 資源,進一步將子網路的 IP 位址範圍劃分為區域內的其他分支子網路,或可用於區域內個別工作負載和服務的葉子子網路。

全域子網路

您必須建立全球子網路,才能將全球 API 伺服器中根子網路的 IP 位址,分配給 GDC 宇宙中的一個或多個區域。

全域子網路是在全域 API 伺服器中,使用 ipam.global.gdc.goog/v1 API 群組建立,並包含 zonepropagationStrategy 等選用欄位,用於定義與特定區域的互動。

全域子網路會將 CIDR 區塊做為分支子網路範圍,供 GDC 宇宙中的區域使用。如要進一步瞭解要在何處建立全域子網路,請參閱「Google Distributed Cloud 中的網路」。

區域子網路

區域子網路會連結至特定作業區域,通常包括直接網路設定。可用區子網路嚴格來說只在單一可用區中運作,主要用於該可用區內的虛擬機器和容器工作負載。區域子網路會進一步分配已為區域佈建的 IP 位址,供全域子網路使用。

如要讓虛擬私有雲之間的通訊跨區域正常運作,每個區域都必須使用不重疊的子網路。

區域子網路是在管理 API 伺服器中,使用 ipam.gdc.goog/v1 API 群組建立,並在規格中包含選用的 networkSpec 欄位,因此您可以定義區域專屬的網路元素,例如閘道和 VLAN ID。

子網路標籤

子網路標籤分為四種類型:

  • ipam.gdc.goog/vpc:將子網路的網路指定為虛擬私有雲。
  • ipam.gdc.goog/network-segment:將子網路的網路指定為網路區隔。
  • ipam.gdc.goog/usage:指定子網路的用途。
  • ipam.gdc.goog/subnet-group:指定子網路所屬的子網路群組。詳情請參閱「子網路群組」。

下表顯示網路與網路標籤之間的對應關係:

網路 標籤
預設 VPC ipam.gdc.goog/vpc: default-vpc
基礎架構虛擬私有雲 ipam.gdc.goog/vpc: infra-vpc
管理員網路區隔 ipam.gdc.goog/network-segment: admin
資料網路區隔 ipam.gdc.goog/network-segment: data

這四個網路的 CIDR 範圍會在機構中設定,做為啟動程序的一部分。四個對應的全域子網路位於全域 API 伺服器中。 這些全域子網路是機構中所有區域內各個網路的根層級 CIDR 範圍。所有根層級的全球子網路都有另一個標籤 ipam.gdc.goog/usage: network-root-range

在每個區域中,區域網路根子網路一開始會出現在源自機構佈建的全球 API 伺服器中。您可以建立其他根子網路,擴展 IP 位址空間。每個根子網路都會代管特定區域中網路的 CIDR 範圍,並在邏輯上做為標籤為 ipam.gdc.goog/usage: zone-network-root-range 的區域範圍根子網路。這個根子網路必須先在全域 API 伺服器中建立,然後自動傳播至指定區域。如要進一步瞭解子網路範圍,請參閱「全域和區域子網路」。

建立 Subnet 自訂資源時,您必須使用定義的標籤,將該資源套用至適當的 GDC 網路。下圖說明 GDC 宇宙中的全域和區域網路:

子網路位於區域和全域 API 伺服器中。

在這張圖中,有兩個機構橫跨多區域宇宙。每個機構都會定義虛擬私有雲網路和外部網路區隔。在這個範例中,任播 IP 位址用於在區域外部網路區隔之間轉送流量,因此最近或效能最佳的區域會為網路要求提供服務。如要進一步瞭解任播 IP 位址,請參閱「GDC 中的 IP 位址」。

子網路群組

子網路群組是一組具有相同子網路群組標籤的子網路,例如 ipam.gdc.goog/subnet-group: subnetgroup1。將子網路整理成群組有下列好處:

  • 子網路群組可簡化 IP 位址資源的擴充作業,這些資源由同一實體擁有或用於相同用途。子網路本身無法擴充,但您可以將新子網路附加至子網路群組,藉此擴充子網路群組。使用者可以將子網路群組做為 IP 位址資源,並利用其擴充便利性。
  • 建立子網路時,使用者可以將子網路群組做為父項,而非單一子網路。以這種方式使用子網路群組,使用者就不必自行尋找具有可用 IP 位址空間的父項子網路。而是會自動在子網路群組中,找出有足夠可用 IP 位址空間的子網路做為父項。
  • 當單一用途或實體的 IP 位址資源用盡時,如果子網路群組是上層,子網路中的錯誤資訊會更直接,減少檢查每個子網路的手動作業。

子網路群組的所有功能都適用於全域子網路和可用區子網路。

建立及擴充子網路群組

子網路群組沒有 API 物件。子網路群組則是以標籤識別。如要建立或新增至子網路群組,請為現有子網路新增子網路群組標籤,或建立具有子網路群組標籤的新子網路。

如果子網路群組尚不存在,系統會建立新的子網路群組。如果相同命名空間中已有其他子網路具有相同的子網路群組標籤,則新子網路會新增至現有子網路群組。

以下範例顯示附加至名為 default-vpc-us-east67-b-group 的子網路群組的子網路定義:

apiVersion: ipam.gdc.goog/v1
kind: Subnet
metadata:
  # Several lines of code are omitted here.
  labels:
    ipam.gdc.goog/subnet-group: default-vpc-us-east67-b-group
    ipam.gdc.goog/usage: zone-network-root-range
    ipam.gdc.goog/vpc: default-vpc
  name: default-vpc-us-east67-b-root-cidr
  namespace: platform
  # Several lines of code are omitted here.
spec:
  ipv4Request:
    cidr: 10.99.0.0/16
  parentReference:
    name: default-vpc-root-cidr
    namespace: platform
    type: SingleSubnet
  type: Branch

建立及擴充子網路群組的規則

建立子網路群組時,請注意下列規則:

  • 每個命名空間範圍都會定義子網路群組。如果子網路具有相同的子網路群組標籤,但位於兩個不同的命名空間,系統會將其視為屬於兩個不同的子網路群組。
  • 子網路不得是同一群組中另一個子網路的後代。
  • 同一群組中的子網路必須屬於同一個虛擬私有雲或網路區隔。
  • 子網路只能附加至一個子網路群組。

子網路群組 (上層)

建立子網路時,除了使用單一子網路做為上層,您也可以參照子網路群組做為上層。如要將子網路群組做為父項參照,請完成下列步驟:

  1. 明確將 spec.parentReference.type 設為 SubnetGroup。如留空,預設值為 SingleSubnet
  2. 如果父項子網路群組與子項子網路位於不同命名空間,您必須將 spec.parentReference.namespace 欄位指定為父項子網路群組的命名空間。

從子網路群組建立子網路後,GDC 會根據子網路的要求,以及上層子網路群組中子網路的可用性,從子網路群組分配 CIDR 區塊。如果找到合適的父項子網路,子項子網路會從父項子網路取得 CIDR 區塊,且子項子網路狀態中的父項子網路參照會更新。

在下列範例中,子網路會向 default-vpc-zone1-group 子網路群組要求 CIDR 區塊,並在狀態中獲派父項 platform/default-vpc-zone1-root-cidr CIDR 區塊:

apiVersion: ipam.gdc.goog/v1
kind: Subnet
metadata:
# Several lines of code are omitted here.
  labels:
    ipam.gdc.goog/vpc: default-vpc
  name: default-vpc-default-node-subnet
  namespace: platform
# Several lines of code are omitted here.
spec:
  ipv4Request:
    prefixLength: 23
  networkSpec:
    enableGateway: true
    enableVLANID: false
  parentReference:
    name: default-vpc-zone1-group
    namespace: platform
    type: SubnetGroup
  type: Branch
status:
  allocatedParent:
    name: default-vpc-zone1-root-cidr
    namespace: platform
    type: SingleSubnet
# Several lines of code are omitted here.

將子網路群組做為父項參照的規則

將子網路群組做為父項參照時,請注意下列規則:

  • 子網路建立者必須有權使用子網路群組中的所有子網路。
  • 子網路必須與子網路群組位於相同的 VPC 或網路區隔。

靜態和動態 CIDR 設定

定義子網路時,您可以透過靜態或動態設定指派 CIDR 區塊。

靜態 CIDR 設定可讓您明確指定子網路的確切 CIDR 區塊。如要精確控管 IP 位址空間,請靜態分配 CIDR 區塊。使用 Subnet 自訂資源中的 spec.ipv4Request.cidr 欄位,指定預先定義的確切 IP 位址範圍。

動態 CIDR 設定可讓系統自動為子網路分配 CIDR 區塊,提供更大的彈性。您不必提供完整的 CIDR,而是要在 spec.ipv4Request.prefixLength 欄位中指定必要的前置字串長度。如果您希望系統自動將 IP 位址委派給子網路,簡化網路規劃並降低 IP 位址衝突的風險,請動態分配 CIDR 區塊。系統會從父項網路中選取指定大小的可用的 CIDR 區塊。

詳情請參閱 SubnetRequest API。

GDC 中的 IP 位址

VM 和負載平衡器等資源在 GDC 中都有 IP 位址。這些 IP 位址可讓 GDC 資源與機構內的其他資源,或與機構連線的外部網路通訊。GDC 宇宙提供下列 IP 位址類型:

外部 IP 位址

外部 IP 位址會向與機構連線的外部網路宣傳。具有外部 IP 位址的資源 (例如負載平衡器和 NAT) 可以與外部網路通訊。使用 GDC 時,您可以將私人或公開 IP 位址做為外部位址。您可以透過下列方式為資源提供外部 IPv4 位址:

  • 自備外部 IP 位址 (BYOIP):您為貴機構提供這些外部 IP 位址。只要 BYOIP 外部 IP 位址未連線至相同外部網路,即可與其他機構重疊。
  • IO 提供的外部 IP 位址:機構可以透過基礎架構營運商群組提供的外部 IP 位址,連線至外部網路。基礎架構營運商群組是該網路的連線供應商。
內部 IP 位址

無法從 GDC 外部直接連線至內部 IP 位址,且這些位址無法公開轉送。內部 IP 位址是虛擬私有雲網路、透過虛擬私有雲網路對等互連方式連線的虛擬私有雲網路,或是透過 Cloud VPN 連線至虛擬私有雲網路的地端部署網路的本機位址。具有內部 IP 位址的資源會與其他資源通訊,就像所有資源都位於同一個私人網路中一樣。

Anycast IP 位址

Anycast IP 位址是特殊的外部位址類型,一律以整個 GDC 宇宙為範圍。GDC 會運用任意傳播 IP 位址和邊界閘道通訊協定 (BGP),將流量轉送至最近或效能最佳的區域。在兩個以上區域執行的每個全域第 4 層服務,都會從任播子網路 (外部子網路) 接收任播 IP 位址。每個區域都會宣傳相同的任播 IP 位址,但您的網路會根據其轉送規則選擇最佳位址。如果可用區發生故障,系統會撤銷其 IP 位址,您的網路會自動將流量重新導向至其他可用區。即使發生中斷,這項自動轉送功能也能提供順暢的連線。

私人 IP 位址

私人 IP 位址是指無法在網際網路上路由傳送的位址。如需私人 IPv4 範圍清單,請參閱「有效 IPv4 範圍」表格中的私人 IP 位址範圍項目。

公開 IP 位址

公開 IP 位址是可透過網際網路轉送的位址。在 GDC 中,外部 IP 位址可以是公開或私人的。在虛擬私有雲網路中設定子網路的主要 IPv4 位址範圍時,您也可以使用公開 IPv4 位址做為內部位址。這些位址稱為私人的公開 IP 位址。

選取 IPv4 位址

GDC 宇宙中的每個網路都有一組有效、禁止和無法使用的 IPv4 位址,您在分配 IP 位址時必須考量這些位址。

預設虛擬私有雲和資料網路區隔不支援 IPv6 位址範圍。如要在其他網路中使用 IPv6 範圍,請洽詢基礎架構營運商團隊。

有效的 IPv4 範圍

下表說明有效範圍。

範圍 說明
私人 IPv4 位址範圍
10.0.0.0/8
172.16.0.0/12
192.168.0.0/16

私人 IP 位址 RFC 1918

如要瞭解如何使用 172.17.0.0/16,請參閱「其他注意事項」。

100.64.0.0/10 共用位址空間 RFC 6598
192.0.0.0/24 IETF 通訊協定指派項目 RFC 6890
192.0.2.0/24 (TEST-NET-1)
198.51.100.0/24 (TEST-NET-2)
203.0.113.0/24 (TEST-NET-3)
說明文件 RFC 5737
192.88.99.0/24 IPv6 至 IPv4 中繼 (已淘汰) RFC 7526
198.18.0.0/15 基準測試 RFC 2544
240.0.0.0/4

保留供日後使用 (E 類),如 RFC 5735RFC 1112 所述。

部分作業系統不支援使用這個範圍,因此請先確認作業系統支援這個範圍,再建立使用這個範圍的子網路。

私人使用的公開 IP 位址範圍
私人使用的公開 IPv4 位址 私人使用的公開 IPv4 位址具有下列特徵:

GDC 氣隙隔離方案不會假設連上網際網路。因此,GDC Air-Gap 會將所有公開 IP 位址範圍視為貴機構的私人 IP 位址範圍。

如果您匯入的自備 IP 位址 (BYOIP) 是公開 IP 位址範圍,請務必確認這些位址不會在任何外部網路中造成網路問題。您的自攜 IP 位址不得與貴機構的其他子網路重疊。

禁止使用的 IPv4 子網路

禁止的子網路範圍包括通常會保留的 RFC 範圍,以及特定 GDC 領域中全域保留的子網路,如下表所述。這些範圍無法用於子網路。

範圍 說明
GDC 基礎架構範圍 GDC 系統使用的全球保留 CIDR 區塊。如果客戶填寫問卷調查 (CIQ) 時未指定 zone-infra-cidr 欄位的範圍,GDC 預設會使用 172.16.0.0/12 做為 GDC 基礎架構範圍。
宇宙專屬範圍 基礎架構營運商群組保留的其他範圍。
0.0.0.0/8 目前 (本機) 網路 RFC 1122
127.0.0.0/8 本機主機 RFC 1122
169.254.0.0/16 本機連結 RFC 3927
224.0.0.0/4 多點播送 (D 類) RFC 5771
255.255.255.255/32 有限的廣播目的地地址 RFC 8190RFC 919

IPv4 子網路中無法使用的位址

GDC 會使用各子網路中的前兩個和末兩個 IPv4 位址,託管該子網路。

無法使用的 IPv4 位址 說明 範例
網路位址 主要 IPv4 範圍中的第一個位址。 10.1.2.0圖表 (範圍值為 10.1.2.0/24)
預設閘道地址 主要 IPv4 範圍中的第二個位址。 10.1.2.1圖表 (範圍值為 10.1.2.0/24)
倒數第二個位址 主要 IPv4 範圍中的倒數第二個位址。

這個範圍由 Google Cloud 保留,可能供日後使用。

10.1.2.254圖表 (範圍值為 10.1.2.0/24)
廣播地址 主要 IPv4 範圍中的最後一個位址。 10.1.2.255圖表 (範圍值為 10.1.2.0/24)

其他事項

部分 Google 和第三方產品會使用 172.17.0.0/16 在客層作業系統中進行路徑設定。舉例來說,預設的 Docker 橋接網路會使用這個範圍。如果您使用的產品會用到 172.17.0.0/16,請勿將其做為任何子網路 IPv4 位址範圍。

限制

這些限制適用於 GDC 中的虛擬私有雲網路子網路和外部網路區隔子網路:

  • 所有子網路都必須是不重複且有效的 CIDR 區塊
  • 建立子網路後,就無法擴大、替換或縮小子網路。
  • GDC 僅支援在預設 VPC 和資料網路區隔中建立的子網路 IPv4 範圍。如要瞭解 GDC 宇宙中其他網路的 IPv6 範圍,請與基礎架構營運商群組聯絡。
  • GDC 不會限制可建立的 CIDR 區塊大小。不過,對於大於 /8 的大多數 IP 位址範圍,額外的驗證會防止您建立這麼大的子網路。舉例來說,子網路不得與禁止使用的子網路重疊。為盡量避免選擇無效的子網路,建議您將子網路大小上限設為 /8
  • 您無法建立與任何禁止使用的子網路、相同虛擬私有雲網路中的任何其他子網路、附加外部網路區隔中的任何子網路,或對等互連網路中的任何子網路重疊的子網路。您必須與基礎架構營運商群組合作,確保在這些情況下不會建立重疊的子網路。

  • GDC 會為子網路建立對應路徑。虛擬私人雲端網路子網路的路徑是在貴機構的虛擬網路堆疊中建立,外部網路區隔子網路的路徑則是在外部對等互連網路的路由表建立。

  • 如果您使用受管理 VPN,或共用或專屬互連,將虛擬私有雲網路連至另一個網路,請確認子網路與地端部署 IP 位址沒有衝突。

  • 子網路不得與禁止範圍相符,也不得小於或大於禁止範圍。舉例來說,169.0.0.0/8 與受限的連結本機範圍 169.254.0.0/16 (RFC 3927) 重疊,因此並非有效的子網路。

  • 子網路不得涵蓋 RFC 範圍 (如「有效的 IPv4 範圍」所述) 和私用公開的 IP 位址範圍。舉例來說,172.0.0.0/10 不是有效的子網路,因為這個範圍同時包含 172.16.0.0/12 私人 IP 位址範圍和公開 IP 位址。

  • 子網路不得涵蓋多個 RFC 範圍。舉例來說,192.0.0.0/8 無效,因為這個子網路範圍同時涵蓋 192.168.0.0/16 (RFC 1918) 與 192.0.0.0/24 (RFC 6890)。不過,您可以建立兩個子網路,一個使用 192.168.0.0/16,另一個使用 192.0.0.0/24

後續步驟