ハイブリッド NAT
Private NAT サービスであるハイブリッド NAT を使用すると、Virtual Private Cloud(VPC)ネットワークとオンプレミス ネットワークまたは他のクラウド プロバイダ ネットワークの間で IP アドレスのネットワーク アドレス変換(NAT)を実行できます。これらのネットワークは、Cloud VPN などの Google Cloud のエンタープライズ ハイブリッド接続プロダクトを使用して VPC ネットワークに接続する必要があります。
仕様
一般的な Private NAT 仕様に加えて、ハイブリッド NAT には次の仕様を検討してください。
- ハイブリッド NAT を使用すると、通信ネットワークのサブネット IP アドレス範囲が重複している場合でも、VPC ネットワークはオンプレミス ネットワークや他のクラウド プロバイダ ネットワークと通信できます。
type=PRIVATE
の NAT 構成を使用すると、VPC ネットワーク(重複するサブネットと重複しないサブネットの両方)のリソースは、オンプレミス ネットワークまたは他のクラウド プロバイダ ネットワークの重複しないサブネットのリソースのみに接続できます。 ハイブリッド NAT を有効にするには、オンプレミス ネットワークまたは他のクラウド プロバイダ ネットワークがその動的ルートをアドバタイズして、VPC ネットワークがこれらを学習、使用できるようにする必要があります。Cloud Router は、動的ルーティングが構成された HA VPN または Classic VPN などの Google Cloud のハイブリッド接続性ソリューションからこれらの動的ルートを学習します。これらの動的ルートの宛先は VPC ネットワーク外の IP アドレス範囲です。
同様に、戻りトラフィックの場合、VPC ネットワークは、Cloud Router を使用して Private NAT サブネット ルートをアドバタイズする必要があります。
ハイブリッド NAT は、VPC ネットワークから発するオンプレミス ネットワークまたは他のクラウド プロバイダ ネットワークへのトラフィックに対して NAT を実行します。ネットワークは、動的ルート上で Cloud VPN によって接続する必要があります。
ハイブリッド NAT は、動的ルーティングが有効になっている場合にのみ、既存の Classic VPN トンネルをサポートします。
一致式
nexthop.is_hybrid
を使用してカスタム NAT ルールを作成する必要があります。NAT ルールは、VPC ネットワーク内のリソースが他のネットワークとの通信に使用できる、目的がPRIVATE_NAT
のサブネット内の NAT IP アドレス範囲を指定します。Hybrid NAT を構成する Cloud Router は、VPC ネットワークと同じリージョンに存在する必要があります。
ハイブリッド NAT を構成する Cloud Router に、他の NAT 構成を含めることはできません。
Cloud Interconnect アタッチメントが存在する VPC ネットワークでハイブリッド NAT を構成することはできません
基本的なハイブリッド NAT の構成とワークフロー
次の図は、基本的なハイブリッド NAT 構成を示しています。
この例では、ハイブリッド NAT が次のように設定されています。
pvt-nat-gw
ゲートウェイは、us-east1
リージョンのsubnet-a
のすべての IP アドレス範囲に適用されるようにvpc-a
で構成されています。pvt-nat-gw
の NAT IP アドレス範囲を使用することにより、vpc-a
のsubnet-a
にある仮想マシン(VM)インスタンスが、vpc-a
のsubnet-a
がオンプレミス ネットワークまたは他のクラウド プロバイダ ネットワーク内の別のサブネットと重複している場合でも、オンプレミス ネットワークまたは他のクラウド プロバイダ ネットワークのsubnet-b
にある VM にトラフィックを送信できます。
ハイブリッド NAT ワークフローの例
上の図では、vpc-a
の subnet-a
内の内部 IP アドレス 192.168.1.2
を持つ vm-a
は、オンプレミス ネットワークまたは他のクラウド プロバイダ ネットワークの subnet-b
内の IP アドレス 192.168.2.2
を持つ vm-b
から更新をダウンロードする必要があります。Cloud VPN は、VPC ネットワークをオンプレミス ネットワークまたは他のクラウド プロバイダ ネットワークに接続します。オンプレミス ネットワークまたは他のクラウド プロバイダ ネットワークに、vpc-a
のサブネットと重複する別のサブネット 192.168.1.0/24
が含まれているとします。vpc-a
の subnet-a
がオンプレミス ネットワークまたは他のクラウド プロバイダ ネットワークの subnet-b
と通信するには、vpc-a
で次のように Private NAT ゲートウェイ pvt-nat-gw
を構成する必要があります。
- Private NAT サブネット: Private NAT ゲートウェイを構成する前に、サブネット IP アドレス範囲を
10.1.2.0/29
で、目的をPRIVATE_NAT
にして、このサブネットを作成します。このサブネットが、接続されたどのネットワークでも既存のサブネットと重複しないようにしてください。 match='nexthop.is_hybrid'
を含む NAT ルール。subnet-a
のすべてのアドレス範囲の NAT
ハイブリッド NAT は、ポート予約手順に沿って、ネットワーク内の各 VM に NAT の送信元 IP アドレスと送信元ポートのタプルを予約します。たとえば、Private NAT ゲートウェイは、vm-a
用に 64 の送信元ポート(10.1.2.2:34000
から 10.1.2.2:34063
)を予約します。
VM が TCP プロトコルを使用して、宛先ポート 80
で更新サーバー 192.168.2.2
にパケットを送信すると、次のようになります。
VM が次の属性のリクエスト パケットを送信します。
- 送信元 IP アドレス:
192.168.1.2
、VM の内部 IP アドレス - 送信元ポート:
24000
、VM のオペレーティング システムによって選択されたエフェメラル送信元ポート - 宛先アドレス:
192.168.2.2
、更新サーバーの IP アドレス - 宛先ポート:
80
、更新サーバーへの HTTP トラフィックの宛先ポート - プロトコル: TCP
- 送信元 IP アドレス:
pvt-nat-gw
ゲートウェイは、下り(外向き)で送信元ネットワーク アドレス変換(SNAT または送信元 NAT)を実行し、リクエスト パケットの NAT 送信元 IP アドレスと送信元ポートを書き換えます。- NAT 送信元 IP アドレス:
10.1.2.2
、VM の予約済み NAT 送信元 IP アドレスと送信元ポートのタプルの 1 つ - 送信元ポート:
34022
、VM の予約済み送信元ポートタプルの未使用の送信元ポート - 宛先アドレス:
192.168.2.2
、変更なし - 宛先ポート:
80
、変更なし - プロトコル: TCP、変更なし
- NAT 送信元 IP アドレス:
更新サーバーは、次の属性の
pvt-nat-gw
ゲートウェイに到着するレスポンス パケットを送信します。- 送信元 IP アドレス:
192.168.2.2
、更新サーバーの内部 IP アドレス - 送信元ポート:
80
、更新サーバーからの HTTP レスポンス - 宛先アドレス:
10.1.2.2
、リクエスト パケットの元の NAT 送信元 IP アドレスと一致 - 宛先ポート:
34022
、リクエスト パケットの送信元ポートと一致 - プロトコル: TCP、変更なし
- 送信元 IP アドレス:
pvt-nat-gw
ゲートウェイは、レスポンス パケットに宛先ネットワーク アドレス変換(DNAT)を実行し、パケットが次の属性を使用して更新をリクエストした VM に配信されるように、レスポンス パケットの宛先アドレスと宛先ポートを書き換えます。- 送信元 IP アドレス:
192.168.2.2
、変更なし - 送信元ポート:
80
、変更なし - 宛先アドレス:
192.168.1.2
、VM の内部 IP アドレス - 宛先ポート:
24000
、リクエスト パケットの元のエフェメラル送信元ポートと一致 - プロトコル: TCP、変更なし
- 送信元 IP アドレス:
次のステップ
- ハイブリッド NAT を設定する。
- Cloud NAT プロダクトの相互作用について学習する。
- Cloud NAT アドレスとポートについて学ぶ。
- Cloud NAT ルールについて学習する。
- 一般的な問題のトラブルシューティングを行う。