Azure NAT Gateway をいつ使用する必要があるか
Azure NAT Gateway サービスのデプロイを検討するときは、最初にシナリオを分析する必要があります。 このサービスは Azure Virtual Network に既定ではデプロイされず、このサービスに適さないシナリオもあります。 ただし、このオンライン小売企業での Azure VM との接続の問題を解決するには、優れたソリューションです。
Azure NAT Gateway サービスの使用に関するシナリオ
Azure NAT Gateway により、複雑な事前計画を必要としないオンデマンドの送信接続用の NAT ゲートウェイ リソースが提供され、必要に応じて比較的簡単にデプロイできます。 設定した後は、すべての VM インスタンスでアウトバウンド接続が確立され、ユーザー指定の静的 IP アドレスが使用されるようになり、許可リストの作成が簡単になります。
VM でインターネット リソースにアクセスするときに専用のパブリック IP アドレスが使用されるようにしたい場合は、Azure NAT Gateway が役に立ちます。 たとえば、固定された IP アドレスのセットからの接続のみを許可するパートナー組織があるとします。 パブリック IP プレフィックスを Azure NAT Gateway に関連付けて、アウトバウンド接続に隣接した IP のセットが使われるようにすることができます。 その後、この予測可能な IP のリストに基づいて、宛先でファイアウォールを構成できます。 たとえば、このソリューションにより、パートナーによってホストされているインターネットに接続された API に接続する必要があるシナリオに対処できます。
多数の送信接続を行い、送信通信にさまざまなポートを集中的に使用するリソースが Azure 仮想ネットワーク上にある場合は、Azure NAT Gateway サービスのデプロイを検討する必要があります。 このサービスは、使用可能なポートを統合して数を最大にし、ポートの枯渇を回避するのに役立ちます。
たとえば、いくつかのサブネットが作成された仮想ネットワークがあるとします。 このサブネットでは Azure VM がホストされ、別のサブネットではアプリ サービスと Web サイトまたは他のサービスがホストされています。 Azure NAT Gateway を使用しないと、VM や他のサービスで送信接続に使用できるポートの数が限られます。 通常、この数は、理論的に使用できる 65,535 ポートより小さい値です。 VM またはサービスの 1 つが使用可能なポート プールを使い果たした場合、接続はタイムアウトになります。 ポートは VM ごとに割り当てられるため、他の VM のポート プールを共有することはできず、これらすべてのリソースで、パブリック通信に異なる IP アドレスが使用される可能性があります。 パブリック IP が割り当てられている Azure VM は、このアドレスを使用してインターネット リソースにアクセスします。 一方、パブリック IP を持たない VM は、Azure サービスのアドレス プールで現在使用できるアドレスを使用します。 Azure NAT Gateway は、カバーしているサブネット内の VM に対するポートの完全なスコープと、送信接続用の固有のパブリック IP (または IP スコープ) を提供することで、これらの問題の両方を解決するのに役立ちます。
Azure NAT Gateway サービスの使用に適していないシナリオ
Azure NAT Gateway は便利で簡単にデプロイできるサービスですが、すべてのシナリオに適しているわけではありません。 次に例をいくつか示します。
- Azure VM のレイアウトがシンプルで、インターネット リソースにあまり接続しない少数の VM だけの場合、おそらく Azure NAT Gateway は必要ありません。 代わりに、Azure のネイティブ アドレス変換を使用するか、1 つ以上の VM にパブリック IP アドレスを割り当てることができます。
- インターネットから Azure VM へのインバウンド接続を管理する必要がある場合、Azure NAT Gateway は役に立ちません。 Azure NAT Gateway によってインバウンド接続が管理されるのは、NAT の内側にある Azure VM (または他のサービス) から接続が開始された場合だけです。 Azure VM または Azure VM にインストールされたソフトウェアが、インターネット上のリソースへの接続を開始します。 Azure NAT Gateway によってその接続が登録されます。 インターネット上のそのリソースが、Azure VM にデータを返すか、インバウンド接続を開始する必要がある場合、それは許可されます。 しかし、インターネットから開始された、アウトバウンド方向のトラフィックに対する応答ではない接続は、ブロックされます。
- Azure SQL Database や Azure Storage など、他の Azure ベースのサービスへの接続を提供する必要がある場合は、Azure NAT Gateway を使用しないでください。 Azure リソースに接続するために Azure NAT Gateway をデプロイする必要はありません。 Azure サービスに接続するときは、Azure Private Link を使って Azure リソースを仮想ネットワークに関連付け、Azure サービスのリソースへのアクセスを制御できます。 たとえば、Azure Storage にアクセスする場合は、ストレージのプライベート エンドポイントを使用して、接続を完全にプライベートにすることができます。
- Azure NAT Gateway を Azure ゲートウェイ サブネットで使用することはできません。 また、1 つの Azure NAT Gateway サービスを、Azure の複数の仮想ネットワークで使用することもできません。 しかし、1 つの Azure NAT Gateway サービスを使って、同じ仮想ネットワーク内の複数のサブネットをカバーすることはできます。