Private NAT

Private NAT 可進行私人對私人網路位址轉譯 (NAT)。

規格

Cloud NAT 支援下列類型的位址轉譯 (適用於 Private NAT):

  • 從 IPv4 到 IPv4,或 NAT44。詳情請參閱「Private NAT 中的 NAT44」。

  • 從 IPv6 到 IPv4,或 NAT64 (預先發布版)。NAT64 適用於 Compute Engine VM 執行個體。如果是 Google Kubernetes Engine (GKE) 節點和無伺服器端點,Cloud NAT 只會轉換 IPv4 位址。詳情請參閱「Private NAT 中的 NAT64」。

一般規格

  • Private NAT 允許傳出連線,以及這些連線的傳入回應。 Private NAT 的每個 Cloud NAT 閘道都會對輸出流量執行來源 NAT,並對已建立的回應封包執行目的地 NAT。

  • Private NAT 不支援自動模式的虛擬私有雲 (VPC) 網路。
  • 即使防火牆規則允許,Private NAT 也不會允許連線網路傳送未經要求的傳入要求。詳情請參閱「適用 RFC」。

  • Private NAT 的每個 Cloud NAT 閘道都會與單一 VPC 網路、區域和 Cloud Router 建立關聯。Cloud NAT 閘道和 Cloud Router 提供控制層,不會參與資料層,因此封包不會通過 Cloud NAT 閘道或 Cloud Router。

    雖然 Private NAT 的 Cloud NAT 閘道是由 Cloud Router 管理,但 Private NAT 不會使用或依賴邊界閘道通訊協定。

  • Private NAT 不支援與端點無關的對應
  • 您無法使用 Private NAT 轉譯特定主要或次要 IP 位址範圍,以用於特定子網路。Private NAT 的 Cloud NAT 閘道會對特定子網路或子網路清單的所有 IPv4 位址範圍執行 NAT。
  • 建立子網路後,您就無法增加或減少 Private NAT 子網路大小。不過,您可以為特定閘道指定多個 Private NAT 子網路範圍。
  • Private NAT 每個端點最多可同時建立 64,000 項連線。
  • Private NAT 僅支援 TCP 和 UDP。系統不支援 ICMP 和其他通訊協定。
  • 虛擬私有雲網路中的虛擬機器 (VM) 執行個體,只能存取連線網路中不重疊的子網路 (而非重疊的子網路) 目的地。

路徑和防火牆規則

Private NAT 使用下列路由

路由 網路位址轉譯 (NAT) 類型 說明
  • NCC 子網路路由
  • NCC 動態路徑
NAT44 和 NAT64

對於 NCC 中樞的虛擬私有雲輪輻之間的流量,NAT 閘道會使用子網路路徑。

如果 NCC 中樞同時有 VPC 輪輻和混合式輪輻,NAT 閘道會使用子網路路徑和動態路徑。

區域動態路徑 NAT44 和 NAT64 如果是 Hybrid NAT,NAT 閘道會使用 Cloud Router 透過 Cloud Interconnect 或 Cloud VPN 學習的動態路徑。
  • 本機子網路路徑
  • 本機靜態路徑
僅限 NAT64 NAT 閘道會使用這些路徑,處理同一個虛擬私有雲網路內的流量。

NAT64 的路由注意事項:

  • 策略路由:NAT64 不會使用 IPv4 和 IPv6 策略路由。 如果啟用 NAT64,且目的地在 64:ff9b::/96 範圍內,則會發生下列行為:
    • 如果封包符合上表列出的任何適用路徑,系統就會將封包轉換為 IPv4 並傳送。
    • 即使封包符合 IPv6 政策路由,系統仍會執行 NAT64。
  • 虛擬私有雲網路對等互連路徑:如果啟用 NAT64,且內嵌目的地 IPv4 位址符合對等互連路徑,則封包會遭到捨棄。
  • 網際網路路徑:如果內嵌的目的地 IPv4 位址符合將封包路由至網際網路的路徑,系統就不會執行 NAT64。使用 Public NAT 中的 NAT64 處理網際網路流量。

Cloud NGFW 防火牆規則會直接套用至 Compute Engine VM 的網路介面,而不是 Private NAT 的 Cloud NAT 閘道。

當 Private NAT 的 Cloud NAT 閘道為 VM 的網路介面提供 NAT 時,系統會先評估適用於該網路介面的輸出防火牆規則,再執行 NAT。封包經過 NAT 處理後,系統會評估輸入防火牆規則。您不需要專為 NAT 建立任何防火牆規則。

子網路 IP 位址範圍適用性

Private NAT 可為 IPv4 子網路範圍、IPv6 子網路範圍或兩者提供 NAT:

  • 如要設定 IPv4 子網路範圍的 NAT,可以使用下列選項:

    • 區域中所有子網路的主要和次要 IP 位址範圍。 單一 Cloud NAT 閘道會為符合資格的 VM 提供 NAT,這些 VM 的網路介面使用區域中的子網路,且 NAT 適用於主要內部 IP 位址和所有別名 IP 範圍。
    • 自訂子網路清單:單一 Cloud NAT 閘道會為符合資格的 VM 提供 NAT,這些 VM 的網路介面使用指定子網路清單中的子網路,並具有主要內部 IP 位址和所有別名 IP 範圍。

  • 如要設定 IPv6 子網路範圍的 NAT,可以使用下列選項:

    • 區域中所有子網路的內部和外部 IP 位址範圍:單一 Cloud NAT 閘道會為區域中的所有內部和外部 IP 位址範圍提供 NAT。
    • 自訂子網路清單:單一 Cloud NAT 閘道會為符合資格的 VM 提供 NAT,這些 VM 的網路介面使用指定子網路清單中的子網路,並具有內部和外部 IP 位址範圍。

頻寬

使用 Cloud NAT 閘道進行 Private NAT 時,VM 可用的連出或連入頻寬量不會改變。頻寬規格因機型而異,詳情請參閱 Compute Engine 說明文件中的「網路頻寬」。

具備多個網路介面的 VM

如果將 VM 設定為具有多個網路介面,這些介面可以位於相同或不同的虛擬私有雲網路中。

請考量下列事項:

  • 如果 VM 在同一個虛擬私有雲網路中有多個網路介面,則適用於 Private NAT 的單一 Cloud NAT 閘道會套用至虛擬私有雲網路中的所有介面。
  • 如果 VM 有多個網路介面,且每個介面都位於不同的 VPC 網路,則 Private NAT 的單一 Cloud NAT 閘道只能套用至 VM 的單一網路介面。私人 NAT 的個別 Cloud NAT 閘道可為同一部 VM 提供 NAT,每個閘道適用於個別介面。

NAT IP 位址和通訊埠

建立 Private NAT 的 Cloud NAT 閘道時,您必須指定用途為 PRIVATE_NAT 的子網路,從中為 VM 指派 NAT IP 位址。如要進一步瞭解 Private NAT IP 位址指派作業,請參閱「Private NAT IP 位址」。

您可以設定每個 Cloud NAT 閘道為 Private NAT 保留的來源通訊埠數量,這些通訊埠會保留給提供 NAT 服務的每個 VM。您可以設定靜態通訊埠分配,為每個 VM 保留相同數量的通訊埠,也可以設定動態通訊埠分配,讓保留的通訊埠數量介於您指定的下限和上限之間。

NAT 服務的提供對象 VM,取決於閘道設定服務的子網路 IP 位址範圍

如要進一步瞭解通訊埠,請參閱「通訊埠」。

適用的 RFC

Private NAT 是通訊埠受限的錐形 NAT,如 RFC 3489 所定義。

網路位址轉譯 (NAT) 超時

Private NAT 會設定通訊協定連線的逾時時間。如要瞭解這些逾時和預設值,請參閱「NAT 逾時」。

Private NAT 中的 NAT44

Private NAT 支援 IPv4 流量的下列設定選項:

  • Network Connectivity Center 輪輻的 Private NAT:可為連至 NCC 中樞的虛擬私有雲網路啟用私有對私有位址轉譯,包括虛擬私有雲輪輻之間,以及虛擬私有雲輪輻與混合輪輻之間的流量。
  • Hybrid NAT: 可讓您在虛擬私有雲網路與地端部署網路或另一個雲端服務供應商網路之間,執行私人對私人位址轉譯。這些網路會透過 Cloud Interconnect 或 Cloud VPN 連線至 Google Cloud 。

Private NAT 中的 NAT64

有了 NAT64,僅支援 IPv6 網路介面的 VM 執行個體就能與下列 IPv4 目的地通訊:

  • 相同虛擬私有雲網路中的目的地
  • 與來源虛擬私有雲網路 (虛擬私有雲輪輻) 連線至相同 NCC 中樞的虛擬私有雲網路中的目的地
  • 地端部署網路或其他雲端服務供應商網路中的目的地,透過 Cloud Interconnect、Cloud VPN 或 NCC 混合式輪輻連線至來源 VPC 網路

啟用 NAT64 後,系統會對所有這些目的地套用轉譯。

下列範例設定顯示相同虛擬私有雲網路中的 NAT 連線、NCC 中樞的虛擬私有雲輪輻,以及透過 Cloud Interconnect 的連線。

Private NAT 中的 IPv6 到 IPv4 轉譯。
Private NAT 中的 NAT64 轉譯 (按一下可放大)。

在這個設定中,type=PRIVATE 的 Cloud NAT 閘道會為 subnet-asubnet-b 提供 NAT64。如要執行 NAT64,閘道會將來源 IPv6 位址和通訊埠,替換為指派給閘道的子網路範圍內的 IPv4 位址和通訊埠,在本例中為 10.1.1.0/24

詳情請參閱「運作方式」。

運作方式

如要使用 NAT64,目的地地址必須位於 64:ff9b::/96 範圍內。您可以設定 DNS64,在目的地 IPv4 位址前加上這個前置字串,自動合成內嵌 IPv4 的 IPv6 位址。

如果僅支援 IPv6 的 VM 執行個體將要求傳送至 64:ff9b::/96 範圍內的目的地,且要求抵達已啟用 NAT64 的 Cloud NAT 閘道,閘道會執行 NAT,方法如下:

  • 將來源 IPv6 位址和通訊埠轉換為子網路範圍內的其中一個 IPv4 位址和通訊埠,並分配給閘道。
  • 從合成位址中擷取最後 32 位元,將合成目的地 IPv6 位址轉譯為原始 IPv4 位址。

    Cloud NAT 閘道也會使用合成 IPv6 位址的最後 32 位元,判斷如何將要求封包路由至目的地。當僅支援 IPv6 的 VM 執行個體將封包傳送至 64:ff9b::/96 範圍內的目的地時,閘道會將 VPC 網路的 IPv4 路由表套用至擷取的 IPv4 位址。如果 IPv4 路由表有該位址的支援路徑,系統就會將修改後的封包傳送至目的地。

收到回應後,Cloud NAT 閘道會執行下列動作來執行 NAT:

  • 在回應封包的來源 IP 位址前加上 64:ff9b::/96 前置字元。
  • 將回應封包的目的地地址和目的地通訊埠,重新編寫為 VM 的原始地址和通訊埠。

設定 NAT64 前,請先參閱「限制」和「路徑和防火牆規則」。

限制

NAT64 僅適用於僅支援 IPv6 的 Compute Engine VM 執行個體,且僅限下列機器系列:

  • 所有第二代或更早的系列
  • M3 系列

詳情請參閱 Compute Engine 術語

後續步驟