Oracle Cloud Infrastructureドキュメント

NATゲートウェイ

このトピックでは、ネットワーク・アドレス変換(Network Address Translation: NAT)ゲートウェイを設定および管理する方法について説明します。 NATゲートウェイは、受信インターネット接続にリソースを公開することなく、インターネットにパブリックIPアドレスをアクセスせずにクラウド・リソースを提供します。

警告

Oracle Cloud Infrastructureコンソール、APIまたはCLIを使用してクラウド・リソースに説明、タグまたはわかりやすい名前を割り当てるときは、機密情報を入力しないでください。

ハイライト

  • VCNにNATゲートウェイを追加して、インターネットに非公開サブネットのアクセス権を付与できます。
  • プライベート・サブネット内のインスタンスには、パブリックIPアドレスはありません。 NATゲートウェイでは、インターネットへの接続を開始してレスポンスを受信できますが、インターネットから開始されたインバウンド接続は受信できません。
  • NATゲートウェイは可用性が高く、TCP、UDP、およびICMP pingトラフィックをサポートしています。

NATの概要

NATは、各ホストにパブリックIPv4アドレスを割り当てずに、インターネット全体にプライベート・ネットワーク・アクセスを提供するために一般的に使用されるネットワーク手法です。 ホストは、インターネットへの接続を開始してレスポンスを受信できますが、インターネットから開始されたインバウンド接続は受信できません。

プライベート・ネットワークのホストがインターネットバウンド接続を開始すると、NATデバイスのパブリックIPアドレスはアウトバウンド・トラフィックのソースIPアドレスになります。 したがって、インターネットからのレスポンス・トラフィックは、そのパブリックIPアドレスを宛先IPアドレスとして使用します。 その後、NATデバイスは、接続を開始したプライベート・ネットワーク内のホストにレスポンスをルーティングします。

NATゲートウェイの概要

ネットワーキング・サービスは、NATゲートウェイの形式で、VCNに信頼性の高い可用性の高いNATソリューションを提供します。

シナリオ例: インターネット(Webサーバーなど)からインバウンド・トラフィックを受信する必要があるリソースがあるとします。 また、インターネットからインバウンド・トラフィックから保護する必要のあるプライベート・リソースもあります。 これらのリソースはすべて、インターネット上のサイトからソフトウェア更新をリクエストするために、インターネットへの接続を開始する必要があります。

VCNを設定し、Webサーバーを保持するパブリック・サブネットを追加します。 インスタンスの起動時に、インバウンド・インターネット・トラフィックを受信できるように、パブリックIPアドレスを割り当てます。 プライベート・インスタンスを保持するために非公開サブネットも追加します。 プライベート・サブネットにあるため、パブリックIPアドレスを持つことはできません。

VCNにインターネット・ゲートウェイを追加します。 また、インターネット・ゲートウェイにインターネット・トラフィックを指示するパブリック・サブネット・ルート表にルート・ルールを追加します。 これで、パブリック・サブネット・インスタンスは、インターネットへの接続を開始でき、インターネットから開始されたインバウンド接続も受信できます。 サブネット「セキュリティ・リスト」を使用すると、パケット・レベルでインスタンス内およびインスタンスから許可されるトラフィックのタイプを制御できます。

NATゲートウェイをVCNに追加します。 また、インターネット・バインドされたトラフィックをNATゲートウェイにダイレクトするプライベート・サブネット・ルート表にルート・ルールを追加します。 これで、非公開サブネット・インスタンスは、インターネットへの接続を開始できます。 NATゲートウェイではレスポンスを許可していますが、「インターネットから開始されました」接続を許可していません。 そのNATゲートウェイがない場合は、代わりにプライベート・インスタンスがパブリック・サブネットに含まれ、ソフトウェア更新を取得するためのパブリックIPアドレスが含まれている必要があります。

次の図は、この例の基本的なネットワーク・レイアウトを示しています。 矢印は、接続を開始できる方向が1つのみか、その両方かを示します。

このイメージは、NATゲートウェイおよびインターネット・ゲートウェイを備えたVCNの基本レイアウトを示しています

ノート

NATゲートウェイは、ゲートウェイ自体のVCNのリソースでのみ使用できます。 VCNが「他とピアリング済」の場合、他のVCNのリソースは、NATゲートウェイにアクセスできません。

また、FastConnectまたはIPSec VPNではNATゲートウェイVCNに接続されているオンプレミス・ネットワークのリソースは、NATゲートウェイを使用できません。

NATゲートウェイに関する基本事項をいくつか示します。

  • NATゲートウェイでは、TCP、UDP、およびICMP pingトラフィックがサポートされています。
  • このゲートウェイでは、単一の宛先アドレスとポートへの最大の20,000同時接続がサポートされます。
  • ネットワーキング・サービスは、public IPアドレスをNATゲートウェイに自動的に割り当てます。 パブリックIPアドレスを選択することも、「予約済パブリックIPアドレス」の1つを使用することもできません。
  • VCNごとのNATゲートウェイの数に制限があります。 「サービス制限」を参照してください。

NATゲートウェイのルーティング

サブネット・レベルでVCNのルーティングを制御するため、VCN内のサブネットがNATゲートウェイを使用するかどうかを指定できます。 VCNには複数のNATゲートウェイを含めることができます(ただし、「制限の増加をリクエスト」)。 たとえば、トラフィックとVCNの異なるサブネットを区別する外部アプリケーションが必要な場合は、サブネットごとに異なるNATゲートウェイ(さらに別のパブリックIPアドレス)を設定できます。 特定のサブネットでは、トラフィックを1つのNATゲートウェイにのみルーティングできます。

NATゲートウェイによるトラフィックのブロック

特定のVCNのcontextでNATゲートウェイを作成します。 つまり、NATゲートウェイは常に、どちらか1つのVCNにのみアタッチされます。 ただし、NATゲートウェイを介していつでもトラフィックをブロックまたは許可できます。 デフォルトでは、ゲートウェイは作成時にトラフィックを許可します。 NATゲートウェイをブロックすると、VCNの既存のルート・ルールやセキュリティ・リストに関係なく、すべてのトラフィックが流れないようになります。 トラフィックをブロックする手順については、「NATゲートウェイのトラフィックをブロック/許可するには」を参照してください。

NATゲートウェイへの遷移

「VCN内のNATインスタンス」を使ってNATゲートウェイに切り替える場合は、NATデバイスのパブリックIPアドレスが変わることを考慮してください。

インターネット・ゲートウェイを使用してNATゲートウェイに切り替える場合は、NATゲートウェイへのアクセス権を持つインスタンスがインターネットに到達するためにパブリックIPアドレスを必要としなくなります。 また、インスタンスはパブリック・サブネットにある必要はありません。 「パブリックからプライベート」からサブネットを切り替えることはできません。 ただし、必要に応じて、「エフェメラル・パブリックIPを削除」をインスタンスから選択できます。

NATゲートウェイの削除

NATゲートウェイを削除するには、そのトラフィックをブロックする必要はありませんが、それをターゲットとしてリストするルート表が存在していない必要があります。 手順については、「NATゲートウェイを削除するには」を参照してください。

必要なIAMポリシー

Oracle Cloud Infrastructureを使用するには、管理者が作成するポリシーで、コンソールまたはSDK、CLIまたはその他のツールを使用したREST APIのどちらを使用しているかにかかわらず、必要なタイプのアクセスを付与する必要があります。 アクションを実行しようとしたときに、権限のないメッセージや権限のないメッセージを取得する場合は、管理者に付与されているアクセスのタイプと作業するコンパートメントを確認してください。

管理者向け: 「ネットワーキングのIAMポリシー」を参照してください。

NATゲートウェイの設定

タスク1: NATゲートウェイの作成
タスク2: サブネットのルーティングを更新

コンソールの使用

NATゲートウェイのトラフィックをブロック/許可するには
NATゲートウェイを更新するには
NATゲートウェイを削除するには
NATゲートウェイのタグを管理するには

APIの使用

APIおよび署名リクエストの使用については、REST APIおよび「セキュリティ資格証明」を参照してください。 SDKの詳細は、「ソフトウェア開発キットとコマンドライン・インタフェース」を参照してください。

NATゲートウェイを管理するには、次の操作を使用します。

ルート表を管理するには、「ルート表」を参照してください。