Network Connectivity Center 輪輻適用的 Private NAT

您可以透過 Private NAT 建立 Private NAT 閘道,並與 Network Connectivity Center 輪輻搭配使用,以便在下列網路之間執行網路位址轉譯 (NAT):

  • 虛擬私有雲 (VPC) 網路。在這個情境中,您要連線的虛擬私有雲網路會以虛擬私有雲輪輻的形式,附加至 Network Connectivity Center 中樞。
  • 虛擬私有雲網路和 Google Cloud外部的網路。在這個情境中,一或多個虛擬私有雲網路會以虛擬私有雲輪輻的形式,附加至 Network Connectivity Center 中樞,並透過混合式輪輻連線至內部部署網路或其他雲端供應商網路。

規格

除了一般 Private NAT 規格,Network Connectivity Center 輪輻適用的 Private NAT 還有下列規格:

  • 私人 NAT 會使用 NAT 設定 type=PRIVATE,讓子網路 IP 位址範圍重疊的網路進行通訊。不過,只有不重疊的子網路才能彼此連線。
  • 您需要參照 Network Connectivity Center 中樞建立自訂 NAT 規則。 NAT 規則會指定目的為 PRIVATE_NAT 的子網路中的 NAT IP 位址範圍,Private NAT 會使用這些位址對連線網路之間的流量執行 NAT。
  • 在適用 Private NAT 的子網路範圍中建立 VM 執行個體時,如果目的地 Spoke 與閘道位於相同的 Network Connectivity Center 中樞,則來自這個虛擬機器 (VM) 執行個體的所有輸出流量都會由閘道轉譯。Private NAT 會將流量轉譯至與 Private NAT 閘道位於同一區域的目標輪輻,以及跨區域的目標輪輻。
  • Private NAT 閘道會與單一虛擬私有雲網路中單一區域的子網路 IP 位址範圍建立關聯。也就是說,在一個虛擬私有雲網路中建立的 Private NAT 閘道,不會為 Network Connectivity Center 中樞的其他輪輻提供 NAT 服務,即使 VM 與閘道位於相同區域也是如此。

虛擬私有雲網路之間的流量

下列額外規格適用於虛擬私有雲網路之間的流量 (Inter-VPC NAT):

  • 如要在兩個虛擬私有雲網路之間啟用 Inter-VPC NAT,每個虛擬私有雲網路都必須設定為 Network Connectivity Center 中樞的虛擬私有雲輪輻。您必須確保虛擬私有雲子網之間沒有重疊的 IP 位址範圍。詳情請參閱「建立虛擬私有雲支點」。
  • 與 Private NAT 閘道相關聯的 Network Connectivity Center 中樞必須至少有兩個虛擬私有雲輪輻,其中一個虛擬私有雲輪輻是 Private NAT 閘道的虛擬私有雲網路。
  • Inter-VPC NAT 僅支援 Network Connectivity Center 虛擬私有雲輪輻之間的 NAT,不支援透過虛擬私有雲網路對等互連連線的虛擬私有雲網路之間的 NAT。

虛擬私有雲網路和其他網路之間的流量

下列額外規格適用於虛擬私有雲網路與 Google Cloud外部網路之間的流量:

  • 來源 VPC 網路必須設為 Network Connectivity Center 中樞的 VPC 輪輻。
  • 混合型輪輻必須連結至同一個 Network Connectivity Center 中樞,才能在虛擬私有雲輪輻和 Google Cloud外部的目標網路之間建立連線。詳情請參閱「在混合式輪輻和虛擬私有雲輪輻之間建立連線」。

如要瞭解在同一個 Network Connectivity Center 中樞使用虛擬私有雲輪輻和混合式輪輻的相關規定,請參閱「與虛擬私有雲輪輻交換路徑」。

基本設定和工作流程

下圖顯示兩個虛擬私有雲輪輻之間流量的基本 Private NAT 設定:

Inter-VPC NAT 轉譯範例。
Inter-VPC NAT 轉譯範例 (按一下即可放大)。

在本範例中,私人 NAT 的設定如下:

  • pvt-nat-gw 閘道已在 vpc-a 中設定,適用於 us-east1 區域中 subnet-a 的所有 IP 位址範圍。使用 pvt-nat-gw 的 NAT IP 範圍,vpc-asubnet-a 的虛擬機器 (VM) 執行個體可以將流量傳送至 vpc-bsubnet-b 的 VM,即使 vpc-asubnet-avpc-bsubnet-c 重疊也沒問題。
  • vpc-avpc-b 都設定為 Network Connectivity Center 中樞的輪輻。
  • pvt-nat-gw 閘道會設定為在虛擬私有雲網路之間提供 NAT,這些網路在同一個 Network Connectivity Center 中樞中設定為虛擬私有雲輪輻。

工作流程範例

在上圖中,vpc-a 內的 subnet-a 中,內部 IP 位址為 192.168.1.2vm-a 需要從 vpc-b 內的 subnet-b 中,內部 IP 位址為 192.168.2.2vm-b 下載更新。兩個虛擬私有雲網路都以虛擬私有雲輪輻的形式,連線至同一個 Network Connectivity Center 中樞。假設 vpc-b 包含另一個子網路 192.168.1.0/24,該子網路與 vpc-a 中的子網路重疊。如要讓 subnet-avpc-asubnet-bvpc-b 通訊,您需要在 vpc-a 中設定 Private NAT 閘道 pvt-nat-gw,如下所示:

  • Private NAT 子網路:設定 Private NAT 閘道前,請建立用途為 PRIVATE_NAT 的 Private NAT 子網路,例如 10.1.2.0/29。請確保這個子網路不會與附加至相同 Network Connectivity Center 中樞的任何虛擬私有雲輪輻中的現有子網路重疊。

  • NAT 規則,其 nexthop.hub 與 Network Connectivity Center 中樞 URL 相符。

  • subnet-a 的所有位址範圍都適用 NAT。

下表總結上述範例中指定的網路設定:

網路名稱 網路元件 IP 位址/範圍 區域
vpc-a

subnet-a 192.168.1.0/24 us-east1
vm-a 192.168.1.2
pvt-nat-gw 10.1.2.0/29
vpc-b

subnet-b 192.168.2.0/24 us-west1
vm-b 192.168.2.2
subnet-c 192.168.1.0/24
vm-c 192.168.1.3

Network Connectivity Center 輪輻適用的 Private NAT 會遵循通訊埠預留程序,為網路中的每個 VM 預留下列 NAT 來源 IP 位址和來源通訊埠元組。舉例來說,Private NAT 閘道會為 vm-a 保留 64 個來源通訊埠:10.1.2.2:3400010.1.2.2:34063

當 VM 使用 TCP 通訊協定將封包傳送至更新伺服器 192.168.2.2 的目標通訊埠 80 時,會發生下列情況:

  1. VM 會傳送具有下列屬性的要求封包:

    • 來源 IP 位址:192.168.1.2,VM 的內部 IP 位址
    • 來源通訊埠:24000,VM 作業系統選擇的臨時來源通訊埠
    • 目的地地址:192.168.2.2,更新伺服器的 IP 位址
    • 目的地通訊埠:80,HTTP 流量傳送至更新伺服器的目的地通訊埠
    • 通訊協定:TCP
  2. pvt-nat-gw 閘道會對輸出流量執行來源網路位址轉譯 (SNAT 或來源 NAT),並重新編寫要求封包的 NAT 來源 IP 位址和來源通訊埠:

    • NAT 來源 IP 位址:10.1.2.2,來自 VM 的其中一個保留 NAT 來源 IP 位址和來源通訊埠元組
    • 來源通訊埠:34022,這是 VM 其中一個保留來源通訊埠元組中未使用的來源通訊埠
    • 目的地地址:192.168.2.2,未變更
    • 目的地通訊埠:80,未變更
    • 通訊協定:TCP,維持不變
  3. 更新伺服器會傳送回應封包,並透過下列屬性抵達 pvt-nat-gw 閘道:

    • 來源 IP 位址:192.168.2.2,更新伺服器的內部 IP 位址
    • 來源通訊埠:80,更新伺服器的 HTTP 回應
    • 目的地地址:10.1.2.2,與要求封包的原始 NAT 來源 IP 位址相符
    • 目的地通訊埠:34022,與要求封包的來源通訊埠相符
    • 通訊協定:TCP,維持不變
  4. pvt-nat-gw 閘道會對回應封包執行目的地網路位址轉譯 (DNAT),重新編寫回應封包的目的地地址和目的地通訊埠,以便將封包傳送至要求更新的 VM,並具備下列屬性:

    • 來源 IP 位址:192.168.2.2,未變更
    • 來源通訊埠:80,未變更
    • 目的地地址:192.168.1.2,VM 的內部 IP 位址
    • 目的地通訊埠:24000,與要求封包的原始暫時來源通訊埠相符
    • 通訊協定:TCP,維持不變

後續步驟