チュートリアル: Azure portal を使用して NAT ゲートウェイと内部ロード バランサーを統合する

このチュートリアルでは、NAT ゲートウェイを内部ロード バランサーと統合する方法について説明します。

既定では、Azure Standard Load Balancer はセキュリティで保護されています。 送信接続は、送信 SNAT (送信元ネットワーク アドレス変換) を有効にすることによって明示的に定義されます。

SNAT を内部バックエンド プールに対して有効にするには、別のパブリック ロード バランサー、ネットワーク ルーティング、または仮想マシンに定義されているパブリック IP を使用します。

NAT ゲートウェイの統合により、バックエンド プールにパブリック ロード バランサー、ネットワーク ルーティング、または仮想マシンに定義されているパブリック IP をデプロイする必要がなくなります。

Diagram of Azure resources created in tutorial.

このチュートリアルでは、以下の内容を学習します。

  • Azure Load Balancer を作成する
  • Azure Load Balancer のバックエンド プール用に 2 つの仮想マシンを作成する
  • NAT ゲートウェイを作成する
  • ロード バランサーのバックエンド プール内にある仮想マシンのアウトバウンド接続を検証する

前提条件

アクティブなサブスクリプションが含まれる Azure アカウント。 無料でアカウントを作成できます

Azure アカウントで Azure Portal にサインインします。

NAT ゲートウェイを作成する

NAT ゲートウェイ リソースやその他のリソースをデプロイするには、まずデプロイするリソースを含むリソース グループが必要です。 次の手順では、リソース グループ、NAT ゲートウェイ リソース、およびパブリック IP アドレスを作成します。 1 つまたは複数のパブリック IP アドレス リソース、パブリック IP プレフィックス、またはその両方を使用できます。

パブリック IP プレフィックスと NAT ゲートウェイの詳細については、NAT ゲートウェイの管理に関するページを参照してください。

  1. ポータルの上部にある検索ボックスに、「NAT ゲートウェイ」と入力します。 検索結果から [NAT ゲートウェイ] を選択します。

  2. [+ 作成] を選択します。

  3. [ネットワーク アドレス変換 (NAT) ゲートウェイを作成します][基本] タブにこの情報を入力または選択します。

    設定 Value
    プロジェクトの詳細
    サブスクリプション Azure サブスクリプションを選択します。
    リソース グループ [新規作成] を選択します。
    test-rg」と入力します。
    [OK] を選択します。
    インスタンスの詳細
    NAT ゲートウェイ名 nat-gateway」と入力します
    リージョン [米国東部 2] を選択します
    可用性ゾーン [ゾーンなし] を選択します。
    TCP アイドル タイムアウト (分) 既定値の [4] のままにします。

    可用性ゾーンと NAT ゲートウェイの詳細については、「NAT ゲートウェイと可用性ゾーン」を参照してください。

  4. [Outbound IP](アウトバウンド IP) タブを選択するか、ページの下部にある [Next: Outbound IP](次へ: アウトバウンド IP) を選択します。

  5. [Outbound IP](アウトバウンド IP) タブで、次の情報を入力または選択します。

    設定 Value
    パブリック IP アドレス [Create a new public IP address](新しいパブリック IP アドレスを作成する) を選択します。
    [名前] に「public-ip-nat」と入力します。
    [OK] を選択します。
  6. [Review + create](確認と作成) タブを選択するか、ページの下部にある青色の [Review + create](確認と作成) ボタンを選択します。

  7. [作成] を選択します

仮想ネットワークと bastion ホストの作成

次の手順では、リソース サブネット、Azure Bastion サブネット、Azure Bastion ホストのある仮想ネットワークを作成します。

  1. ポータルで、[仮想ネットワーク] を検索して選択します。

  2. [仮想ネットワーク] ページで、[+ 作成] を選択します。

  3. [仮想ネットワークの作成][基本] タブで、次の情報を入力するか選択します。

    設定
    プロジェクトの詳細
    サブスクリプション サブスクリプションを選択します。
    Resource group test-rg を選択します。
    インスタンスの詳細
    Name vnet-1」と入力します。
    リージョン [米国東部 2] を選択します。

    Screenshot of Basics tab of Create virtual network in the Azure portal.

  4. [次へ] を選択して、[セキュリティ] タブに進みます。

  5. [セキュリティ] タブの [Azure Bastion] セクションで [Bastion を有効にする] を選択します。

    Azure Bastion では、プライベート IP アドレスを使用して Secure Shell (SSH) またはリモート デスクトップ プロトコル (RDP) を介して、仮想ネットワーク内の VM にブラウザーで接続します。 VM には、パブリック IP アドレス、クライアント ソフトウェア、または特別な構成は必要ありません。 Azure Bastion の詳細については、Azure Bastion に関するページをご覧ください。

    Note

    時間単位の価格は、送信データの使用状況に関係なく、Bastion がデプロイされた時点から開始します。 詳しくは、「価格」および「SKU」を参照してください。 チュートリアルまたはテストの一環で Bastion をデプロイする場合は、使用終了後にこのリソースを削除することをお勧めします。

  6. [Azure Bastion] で、次の情報を入力または選択します。

    設定
    Azure Bastion ホスト名 bastion」と入力します。
    Azure Bastion のパブリック IP アドレス [Create a public IP address] (パブリック IP アドレスを作成する) を選びます。
    [名前] に「public-ip」と入力します。

    を選択します。

    Screenshot of enable bastion host in Create virtual network in the Azure portal.

  7. [次へ] を選択して、[IP アドレス] タブに進みます。

  8. [サブネット] のアドレス空間ボックスで、既定のサブネットを選択します。

  9. [サブネットの編集] で次の情報を入力または選択します。

    設定
    サブネットの詳細
    サブネット テンプレート 既定値の [既定] のままにします。
    名前 subnet-1」と入力します。
    開始アドレス 既定値の 10.0.0.0 のままにします。
    サブネットのサイズ 既定値の /24(256 アドレス) のままにします。
    Security
    NAT Gateway [nat-gateway] を選択します。

    Screenshot of default subnet rename and configuration.

  10. [保存] を選択します。

  11. 画面の下部にある [確認と作成] を選択し、検証に合格したら [作成] を選択します。

ロード バランサーの作成

このセクションでは、仮想マシンの負荷分散を行う内部ロード バランサーを作成します。 内部ロード バランサーは、仮想ネットワーク内のトラフィックをプライベート IP アドレスで負荷分散させるために使用されます。

ロード バランサーの作成中に、次の構成を行います。

  • フロントエンド IP アドレス
  • バックエンド プール
  • インバウンドの負荷分散規則
  1. ポータルの上部にある検索ボックスに、「ロード バランサー」と入力します。 検索結果で [ロード バランサー] を選択します。

  2. [ロード バランサー] ページで、 [作成] を選択します。

  3. [ロード バランサーの作成] ページの [基本] タブで、次の情報を入力または選択します。

    設定
    プロジェクトの詳細
    サブスクリプション サブスクリプションを選択します。
    Resource group test-rg を選択します。
    インスタンスの詳細
    名前 load-balancer」と入力します
    リージョン [(米国) 米国東部 2] を選択します。
    SKU 既定値 [標準] のままにします。
    Type [内部] を選択します。
    レベル [地域] は既定値のままにします。
  4. ページ下部にある [次へ: フロントエンド IP の構成] を選択します。

  5. [フロントエンド IP 構成] で、[+ フロントエンド IP 構成の追加] を選択します。

  6. [名前] に「frontend」と入力します。

  7. [サブネット][subnet-1 (10.0.0.0/24)] を選択 します。

  8. 残りのオプションは既定値のままにします。

  9. [追加] を選択します。

  10. ページ下部で [次へ: バックエンド プール] を選択します。

  11. [バックエンド プール] タブで、 [+ バックエンド プールの追加] を選択します。

  12. [バックエンド プールの追加][名前] に「backend-pool」と入力します。

  13. [バックエンド プールの構成] には [NIC] または [IP アドレス] を選択します。

  14. [保存] を選択します。

  15. ページ下部にある [次へ: 受信規則] ボタンを選択します。

  16. [受信規則] タブの [負荷分散規則] で、 [+ 負荷分散規則の追加] を選択します。

  17. [負荷分散規則の追加] で、次の情報を入力または選択します。

    設定
    名前 http-rule」と入力します
    IP バージョン [IPv4] を選択します。
    フロントエンド IP アドレス [front-end] を選択します。
    バックエンド プール [backend-pool] を選択します。
    Protocol [TCP] を選択します。
    Port 80」と入力します。
    バックエンド ポート 80」と入力します。
    正常性プローブ [新規作成] を選択します。
    [名前] に「health-probe」と入力します。
    [プロトコル][TCP] を選択します。
    残りの部分は既定値のままにし、[OK] を選択します。
    セッション永続化 [なし] を選択します。
    アイドル タイムアウト (分) 15」を入力または選択します。
    TCP リセット [Enabled] を選択します。
    フローティング IP [無効] をクリックします。
  18. [保存] を選択します。

  19. ページ下部にある青色の [確認と作成] ボタンを選択します。

  20. [作成] を選択します

仮想マシンを作成する

このセクションでは、2 つの異なるゾーン (ゾーン 1ゾーン 2) に 2 つの VM (vm-1vm-2) を作成します。

これらの VM を、前に作成したロード バランサーのバックエンド プールに追加します。

  1. ポータルの上部にある検索ボックスに、「仮想マシン」と入力します。 検索結果から [仮想マシン] を選択します。

  2. [+ 作成] を選択し、[Azure 仮想マシン] を選択します。

  3. [仮想マシンの作成][Basic] タブに、値を入力するか選択します。

    設定
    プロジェクトの詳細
    サブスクリプション サブスクリプションを選択します。
    Resource group test-rg を選択します。
    インスタンスの詳細
    仮想マシン名 vm-1」と入力します。
    リージョン [米国東部 2] を選択します。
    可用性のオプション [ゾーン 1] を選びます。
    セキュリティの種類 [Standard] を選択します。
    Image [Ubuntu Server 22.04 LTS - x64 Gen2] を選びます。
    VMアーキテクチャ 既定値の [x64] のままにします。
    サイズ サイズを選択します。
    管理者アカウント
    認証の種類 [パスワード] を選択します。
    ユーザー名 azureuser」と入力します。
    Password パスワードを入力します。
    パスワードの確認 パスワードを再入力します。
    受信ポートの規則
    パブリック受信ポート [なし] を選択します。
  4. [ネットワーク] タブまたは [次へ: ディスク] を選択してから [次へ: ネットワーク] を選択します。

  5. [ネットワーク] タブで、次の情報を入力または選択します。

    設定
    ネットワーク インターフェイス
    仮想ネットワーク [vnet-1] を選択します。
    Subnet [subnet-1 (10.0.0.0/24)] を選択します。
    パブリック IP [なし] を選択します。
    NIC ネットワーク セキュリティ グループ [Advanced] \(詳細設定) を選択します
    ネットワーク セキュリティ グループを構成する [新規作成] を選択します。
    [ネットワーク セキュリティ グループの作成] で、[名前] に「nsg-1」と入力します。

    で、[+ 受信規則の追加] を選択します。
    [サービス] で、[HTTP] を選択します。
    [追加] を選択します。
    [OK] を選択します。
    負荷分散
    この仮想マシンを既存の負荷分散ソリューションの後ろに配置しますか? チェック ボックスをオンにします。
    ロード バランサーの設定
    負荷分散のオプション [Azure ロード バランサー] を選択する
    ロード バランサーを選択する [load-balancer] を選択します
    バックエンド プールを選択する [backend-pool] を選択します
  6. [Review + create](レビュー + 作成) を選択します。

  7. 設定を確認し、 [作成] を選択します。

  8. 前の手順に従って VM を作成します。次の値を使用し、他の設定はすべて vm-1 と同じにします。

    設定 VM 2
    名前 vm-2
    可用性ゾーン 2
    ネットワーク セキュリティ グループ 既存の [nsg-1] を選択します
    負荷分散のオプション [Azure ロード バランサー] を選択する
    ロード バランサーを選択する [load-balancer] を選択します
    バックエンド プールを選択する [backend-pool] を選択します

NAT ゲートウェイをテストする

このセクションで、NAT ゲートウェイをテストします。 まず、NAT ゲートウェイのパブリック IP を検出します。 次に、テスト仮想マシンに接続し、NAT ゲートウェイ経由のアウトバウンド接続を確認します。

  1. ポータルの上部にある検索ボックスに、「パブリック IP」と入力します。 検索結果から [パブリック IP アドレス] を選択します。

  2. public-ip-nat を選択します。

  3. パブリック IP アドレスを書き留めておきます。

    Screenshot of public IP address of NAT gateway.

  4. ポータルの上部にある検索ボックスに、「仮想マシン」と入力します。 検索結果から [仮想マシン] を選択します。

  5. vm-1 を選択します。

  6. [概要] ページで、[接続] を選択し、[Bastion] タブを選択します。

  7. [Bastion を使用する] を選択します。

  8. 仮想マシンの作成時に入力したユーザー名とパスワードを入力します。 [接続] を選択します。

  9. bash プロンプトで、次のコマンドを入力します。

    curl ifconfig.me
    
  10. コマンドが返す IP アドレスが NAT ゲートウェイのパブリック IP アドレスと一致することを確認します。

    azureuser@vm-1:~$ curl ifconfig.me
    20.7.200.36
    
  11. vm-1 への Bastion 接続を閉じます。

リソースをクリーンアップする

作成したリソースを使い終えたら、リソース グループとそのすべてのリソースを削除できます。

  1. Azure portal で、「リソース グループ」を検索して選択します。

  2. [リソース グループ] ページで、test-rg リソース グループを選択します。

  3. [test-rg] ページで、[リソース グループの削除] を選択します。

  4. [削除を確認するために、リソース グループ名を入力してください] に「test-rg」と入力し、[削除] を選びます。

次のステップ

Azure NAT Gateway について詳しくは、以下を参照してください。