すべてのプロダクト
Search
ドキュメントセンター

Server Load Balancer:ALB を使用した IPv6 サービスの負荷分散

最終更新日:Dec 10, 2025

Application Load Balancer (ALB) は IPv6 リクエストを転送できます。このトピックでは、デュアルスタック ALB インスタンス用に、IPv4 と IPv6 の Elastic Compute Service (ECS) インスタンスを含むデュアルスタックサーバーグループを設定する方法について説明します。これにより、IPv6 クライアントは ALB インスタンスを使用して、バックエンドの IPv4 および IPv6 サービスにアクセスできます。

シナリオ例

次の図に例を示します。ある企業が ALB を使用して、IPv6 クライアントからのリクエストをインターネット経由で Virtual Private Cloud (VPC) 内の IPv4 および IPv6 サービスに転送したいと考えています。この要件を満たすには、IPv4 と IPv6 をサポートする ECS インスタンスを作成し、VPC 内にデュアルスタック ALB インスタンスを作成し、IPv6 をサポートするサーバーグループを作成する必要があります。上記の手順が完了すると、IPv6 クライアントからのリクエストは ALB インスタンスを使用してバックエンドの ECS インスタンス上の IPv4 および IPv6 サービスに転送できるようになります。

架构图

制限事項

  • デュアルスタック ALB インスタンスをサポートするリージョンの詳細については、「ALB インスタンスの概要」をご参照ください。

  • デュアルスタック機能を使用するには、VPC のゾーン内の vSwitch で IPv6 機能を有効にする必要があります。

  • デュアルスタック ALB インスタンスは、IPv4 および IPv6 クライアントからのリクエストを IPv4 および IPv6 バックエンドサービスに転送できます。詳細については、「ALB インスタンス」をご参照ください。

  • IPv6 が有効になっているサーバーグループは、デュアルスタック ALB インスタンスのリスナーと転送ルールにのみ関連付けることができます。

前提条件

  • IPv6 をサポートする VPC が作成されていること。この例では、VPC1 という名前の VPC が中国 (上海) リージョンに作成されています。VPC で IPv6 を有効にすると、IPv6 ゲートウェイが自動的に作成されます。

  • VPC 内で、2 つのゾーンそれぞれに vSwitch が作成され、vSwitch で IPv6 が有効になっていること。この例では、vSwitch 1 が上海ゾーン E に、vSwitch 2 が上海ゾーン G に作成されています。

    vSwitch 1 と vSwitch 2 内に ALB をデプロイするには、次の点にご注意ください:各アップグレードされた ALB インスタンスには、vSwitch 1 と vSwitch 2 からそれぞれ 3 つの IP アドレスが割り当てられます。1 つは負荷分散サービスを提供する VIP として機能し、他の 2 つはバックエンドサーバーとの通信やヘルスチェックを行うためのローカル IP アドレスとして機能します。vSwitch 1 または vSwitch 2 に十分な利用可能な IP アドレスがない場合、エラーが報告され、ALB インスタンスを作成できません。これは、アップグレードされていない ALB インスタンスには適用されません。

    説明
    • アップグレードされた ALB インスタンスが期待どおりにリソースを自動スケーリングできるように、指定する各 vSwitch には少なくとも 8 つの利用可能な IP アドレスを確保することを推奨します。

    • アップグレードされた ALB インスタンスがバックエンドサーバーと適切に通信できるように、バックエンドサーバーに iptables ルールやサードパーティのセキュリティポリシーソフトウェアなどのセキュリティポリシーが設定されている場合は、アップグレードされた ALB インスタンスが接続されている vSwitch の CIDR ブロックを許可するようにバックエンドサーバーを設定することを推奨します。

  • ドメイン名を登録し、そのドメイン名の ICP (Internet Content Provider) 番号を取得していること。

ステップ 1:ECS インスタンスの作成と設定

  1. VPC コンソールにログインします。

  2. 左側のナビゲーションウィンドウで、[vSwitch] をクリックします。

  3. vSwitch のリージョンを選択します。この例では、[中国 (上海)] が選択されています。

  4. [vSwitch] ページで、管理する vSwitch を見つけ、[操作] 列の [クラウドサービスの追加] > [ECS インスタンス] を選択します。

  5. [Elastic Compute Service] ページの [カスタム起動] タブで、ECS01 という名前の IPv4 ECS インスタンスと ECS02 という名前の IPv6 ECS インスタンスを作成します。ECS インスタンスが追加されるセキュリティグループは、ポート 80 でのトラフィックを許可する必要があります。詳細については、「[カスタム起動] タブでインスタンスを作成」をご参照ください。

    この例の ECS 設定を表示するにはクリックしてください

    ECS インスタンス

    リージョン

    VPC

    vSwitch

    IP バージョン

    イメージ

    ECS01

    中国 (上海)

    VPC1

    ゾーン E の vSwitch 1

    IPv4

    Alibaba Cloud Linux 3.2104 LTS 64 ビット

    ECS02

    中国 (上海)

    VPC1

    ゾーン G の vSwitch 2

    IPv6

    説明

    IPv6 ECS インスタンスを作成する際、[IPv6] セクションで [IPv6 アドレスを無料で割り当てる] を選択します。

    Alibaba Cloud Linux 3.2104 LTS 64 ビット

  6. ECS01 と ECS02 にリモートでログインします。詳細については、「ECS リモート接続方法の選択」をご参照ください。

  7. ECS01 で次のコマンドを実行して、NGINX サービスをデプロイします:

    yum install -y nginx
    systemctl start nginx.service
    cd /usr/share/nginx/html/
    echo "Hello World ! this is ipv4 rs." > index.html
    
  8. ECS02 で次のコマンドを実行して、NGINX サービスをデプロイします:

    yum install -y nginx
    systemctl start nginx.service
    cd /usr/share/nginx/html/
    echo "Hello World ! this is ipv6 rs." > index.html
    
  9. ECS02 の IPv6 アドレスを設定します。詳細については、「IPv6 通信」をご参照ください。

    説明

    [イメージ] セクションで [Alibaba Cloud Linux 3.2104 LTS 64 ビット] を選択し、[IPv6] セクションで [IPv6 アドレスを無料で割り当てる] を選択した場合は、このステップをスキップしてください。

    1. ECS02 にログインします。

    2. ECS02 の IPv6 アドレスを設定します。

      ip addr | grep inet6 または ifconfig | grep inet6 コマンドを実行します。

      次の図に示すように、ECS02 に IPv6 アドレスが設定されている場合は、このステップをスキップします。

      4.png

      1. コマンドの出力に inet6 の情報が含まれていない場合、ECS02 で IPv6 は無効になっています。まず、ECS02 で IPv6 を有効にします

      2. コマンドの出力に inet6 の情報が含まれている場合、ECS02 で IPv6 は有効になっており、ECS02 に割り当てられた IPv6 アドレスを識別できます。ECS02 の IPv6 アドレスを設定します

ステップ 2:ECS02 のセキュリティグループルールの設定

ECS02 のセキュリティグループルールを設定して、インバウンドの IPv6 トラフィックを許可します。

  1. ECS コンソールにログインします。

  2. 左側のナビゲーションウィンドウで、[ネットワークとセキュリティ] > [セキュリティグループ] を選択します。

  3. 上部のナビゲーションバーで、セキュリティグループのリージョンを選択します。この例では、[中国 (上海)] が選択されています。

  4. [セキュリティグループ] ページで、管理するセキュリティグループを見つけ、[操作] 列の [ルールの管理] をクリックします。

  5. [セキュリティグループの詳細] タブの [ルール] セクションで、[インバウンド] タブをクリックします。

  6. [ルールの追加] をクリックします。次の情報に基づいて、IPv6 リクエストのセキュリティグループルールを設定します。[送信] をクリックします

パラメーター

説明

操作

ルールの操作を選択します。この例では、[許可] が選択されています。

[優先度]

ルールの優先度を選択します。値が小さいほど優先度が高くなります。有効値:1~100

この例では、デフォルト値の [1] が使用されます。

プロトコル

許可するインバウンドリクエストのタイプを選択します。この例では、[すべての ICMPv6] が選択されています。

ソース

ルールが適用される IPv6 CIDR ブロックを入力します。

この例では、::/0 が使用されます。これは、ルールがすべての IPv6 アドレスに適用されることを示します。

説明

ビジネス要件に基づいて IPv6 アドレスを指定できます。

[宛先 (現在のインスタンス)]

IPv6 クライアントからのリクエストを受け入れるポートの範囲を指定します。

[プロトコル] パラメーターを [すべての ICMPv6] に設定した場合、[宛先] ドロップダウンリストから [すべて (-1/-1)] が自動的に選択され、変更できません。

説明

ルールの説明を入力します。

ステップ 3:ALB インスタンスの作成

  1. ALB コンソールにログインします。

  2. [インスタンス] ページで、[ALB の作成] をクリックします。

  3. 購入ページでパラメーターを設定し、[今すぐ購入] をクリックし、プロンプトに従って支払いを完了します。

    次の表では、一部のパラメーターのみを説明しています。他のパラメーターにはデフォルト値を使用します。パラメーターの詳細については、「ECS インスタンスの作成」をご参照ください。

    パラメーター

    説明

    [リージョン]

    ALB インスタンスを作成するリージョン。この例では、[中国 (上海)] が選択されています。

    ネットワークタイプ

    ALB インスタンスのネットワークタイプを選択します。システムは、選択されたネットワークタイプに基づいて、ALB インスタンスにパブリックまたはプライベート IP アドレスを割り当てます。この例では、[インターネット] が選択されています。

    説明

    [インターネット] ネットワークタイプは、IPv4 ALB インスタンスでのみサポートされています。デフォルトでは、IPv6 ALB インスタンスは内部向けです。 この例では、インターネット向けの IPv6 ALB インスタンスが作成されます。ステップ 4 で、IPv6 アドレスはパブリック IPv6 アドレスに変更されます。

    VPC

    ALB インスタンスをデプロイする VPC を選択します。

    説明

    VPC で IPv6 機能が有効になっていることを確認してください。

    ゾーン

    1. 少なくとも 2 つのゾーンを選択します。この例では、[上海ゾーン E][上海ゾーン G] が選択されています。

    2. 各ゾーンで vSwitch を選択します。この例では、ゾーン E の vSwitch 1 とゾーン G の vSwitch 2 が選択されています。

    IP バージョン

    ALB インスタンスの IP バージョンを選択します。この例では、[デュアルスタック] が選択されています。

    エディション

    ALB インスタンスのエディションを選択します。この例では、[Standard] が選択されています。

    インスタンス名

    ALB インスタンスの名前を入力します。

    サービスリンクロール

    初めて ALB インスタンスを作成するときは、[サービスリンクロールの作成] をクリックして [AliyunServiceRoleForAlb] ロールを作成します。ポリシー [AliyunServiceRolePolicyForAlb] がサービスリンクロールにアタッチされ、ALB インスタンスが他のクラウドサービスにアクセスできるようになります。詳細については、「ALB のシステムポリシー」をご参照ください。

  4. デュアルスタック ALB インスタンスを作成した後、次の手順を実行して ALB インスタンスの IPv6 アドレスをパブリック IPv6 アドレスに変更する必要があります。詳細については、「IP バージョン」をご参照ください。

    1. [インスタンス] ページに戻り、ALB インスタンスの ID をクリックします。

    2. インスタンスの詳細 タブで、基本情報 セクションに移動し、ネットワーク パラメーターを見つけます。次に、[IPv6: プライベート] の横にある ネットワークタイプの変更 をクリックします。

    3. ネットワークタイプの変更 メッセージで、OK をクリックします。

      変更が有効になった後、IPv6 ネットワークタイプがパブリックに変更されたことを確認できます。

ステップ 4:サーバーグループの作成

  1. 左側のナビゲーションウィンドウで、[ALB] > サーバーグループ を選択します。

  2. サーバーグループ ページで、サーバーグループの作成 をクリックします。

  3. [サーバーグループの作成] ダイアログボックスで、パラメーターを設定し、[作成] をクリックします。

    次の表では、一部のパラメーターのみを説明しています。他のパラメーターにはデフォルト値を使用します。詳細については、「サーバーグループの作成と管理」をご参照ください。

    パラメーター

    説明

    サーバーグループタイプ

    サーバーグループのタイプを指定します。この例では、サーバータイプ が選択されています。

    サーバーグループ名

    サーバーグループの名前を入力します。

    [VPC]

    VPC ドロップダウンリストから VPC を選択します。VPC 内のサーバーのみがサーバーグループに追加できます。

    説明

    ALB インスタンスが作成された VPC を選択します。選択した VPC で IPv6 が有効になっていることを確認してください。

    バックエンドサーバープロトコル

    バックエンドプロトコルを選択します。この例では、[HTTP] が選択されています。

    スケジューリングアルゴリズム

    スケジューリングアルゴリズムを選択します。この例では、重み付きラウンドロビン が選択されています。

    IPv6 のマウント

    IPv6 を有効にするかどうかを指定します。この例では、[IPv6] がオンになっています。

    セッション維持

    セッション維持を有効にするかどうかを指定します。この例では、デフォルト値が使用されます。セッション維持は無効になっています。

    ヘルスチェック

    ヘルスチェック機能を有効にするかどうかを指定します。この例では、ヘルスチェック機能が有効になっています。

    [ヘルスチェック設定]

    ヘルスチェック機能を有効にした後、[変更] をクリックしてヘルスチェック設定を構成します。

  4. サーバーグループ ページで、管理するサーバーグループの ID をクリックします。

  5. [バックエンドサーバー] タブをクリックし、バックエンドサーバーの追加 をクリックします。

  6. バックエンドサーバーの追加 パネルで、ECS01 と ECS02 を選択します。[IP] 列で、ECS01 の IPv4 アドレスと ECS02 の IPv6 アドレスを選択し、[次へ] をクリックします。

  7. ポート/重み ステップで、ECS01 と ECS02 のポートと重みを指定し、[OK] をクリックします。

    この例では、両方の ECS インスタンスがポート番号 80 とデフォルトの重み 100 を使用します。

ステップ 5:リスナーの設定

  1. [インスタンス] ページで、管理する ALB インスタンスの ID をクリックします。

  2. [リスナー] タブをクリックし、リスナーの作成 をクリックします。

  3. リスナーの設定 ステップで、パラメーターを設定し、[次へ] をクリックします。

    次の表では、一部のパラメーターのみを説明しています。他のパラメーターにはデフォルト値を使用します。詳細については、「HTTP リスナーの追加」をご参照ください。

    パラメーター

    説明

    リスナープロトコルの選択

    リスナープロトコルを選択します。この例では、[HTTP] が選択されています。

    リスナーポート

    リクエストを受信し、バックエンドサーバーに転送するためのリスナーポートを指定します。この例では、ポート 80 が指定されています。

    リスナー名

    リスナーの名前を入力します。

    詳細設定

    この例では、デフォルト設定が使用されます。[変更] をクリックして設定を変更できます。

  4. サーバーグループ ステップで、サーバータイプ パラメーターを設定し、指定された サーバータイプ に基づいてサーバーグループを選択し、バックエンドサーバーを確認してから [次へ] をクリックします。

  5. 確定 ステップで、設定を確認し、[送信] をクリックします。

  6. OK をクリックして [リスナー] タブに戻ります。ヘルスチェックステータス 列のリスナーステータスが [正常] の場合、ECS01 と ECS02 は ALB インスタンスによって転送されたリクエストを処理できます。

ステップ 6:DNS レコードの作成

実際のビジネスシナリオでは、CNAME レコードを使用してカスタムドメイン名を ALB インスタンスのドメイン名にマッピングすることを推奨します。

  1. 左側のナビゲーションウィンドウで、[ALB] > [インスタンス] を選択します。

  2. [インスタンス] ページで、ALB インスタンスのドメイン名をコピーします。

  3. 次の手順を実行して、CNAME レコードを作成します:

    説明

    ドメイン名が Alibaba Cloud Domains を使用して登録されていない場合は、DNS レコードを設定する前にドメイン名を Alibaba Cloud DNS に追加する必要があります。詳細については、「ドメイン名の管理」をご参照ください。

    1. Alibaba Cloud DNS コンソールにログインします。

    2. [パブリックゾーン] ページで、ドメイン名を見つけ、[操作] 列の [設定] をクリックします。

    3. ドメイン名詳細ページの [設定] タブで、[レコードの追加] をクリックします。

    4. [レコードの追加] パネルで、パラメーターを設定し、[OK] をクリックします。次の表にパラメーターを説明します。

      パラメーター

      説明

      [レコードタイプ]

      ドロップダウンリストから [CNAME] を選択します。

      ホスト名

      ドメイン名のプレフィックスを入力します。この例では、@ が入力されます。

      説明

      ルートドメインを使用する場合は、@ を入力します。

      クエリソース

      [デフォルト] を選択します。

      レコード値

      CNAME を入力します。これは ALB インスタンスのドメイン名です。

      [TTL]

      DNS サーバーにキャッシュされる CNAME レコードの TTL (Time-To-Live) 値を選択します。この例では、デフォルト値が使用されます。

ステップ 7:ネットワーク接続のテスト

説明

テストを実行する前に、クライアントが IPv6 をサポートしていることを確認してください。クライアントが IPv6 をサポートしているかどうかを確認するには、http://test-ipv6.com/ にアクセスしてテストを実行します。

IPv6 をサポートするクライアントを使用して、サーバー ECS01 と ECS02 にアクセスします。

  1. クライアントの CLI を開きます。

  2. 次のコマンドを複数回実行して、IPv6 クライアントからのリクエストがラウンドロビンに基づいて IPv4 および IPv6 ECS インスタンスに転送されるかどうかをテストします。

    curl -6 http://<ドメイン名> -v

    次のエコー応答パケットは、IPv6 クライアントが IPv4 ECS インスタンスにアクセスできることを示しています。6-4

    次のエコー応答パケットは、IPv6 クライアントが IPv6 ECS インスタンスにアクセスできることを示しています。6-6

上記の結果は、IPv6 クライアントからのリクエストがラウンドロビンに基づいて VPC 内の IPv4 および IPv6 サービスに転送されることを示しています。

リソースのリリース

  1. ECS インスタンスとセキュリティグループをリリースします。

    1. ECS01 とそのセキュリティグループを削除します:

      1. ECS コンソールにログインします。上部のナビゲーションバーで、ECS01 インスタンスが存在するリージョンを選択し、ECS01 の右側にある image.png アイコンをクリックします。表示されるダイアログボックスで、[リリース] を選択してインスタンスを直ちにリリースします。

      2. ECS コンソールにログインします。上部のナビゲーションバーで、ECS01 が存在するリージョンを選択し、ECS01 のセキュリティグループを選択してから [削除] をクリックしてセキュリティグループを削除します。

    2. 上記の手順を繰り返して、ECS02 とそのセキュリティグループを削除します。

  2. DNS レコードを削除します:

    詳細については、「DNS レコードの削除」をご参照ください。

  3. ALB リソースをリリースします:

    1. ALB コンソールにログインします。上部のナビゲーションバーで、ALB インスタンスが存在するリージョンを選択します。ALB インスタンスを見つけ、[処理] 列の image.png アイコンをクリックし、[リリース] をクリックします。表示されるメッセージで、[確認] をクリックします。

    2. バックエンドサーバーの削除方法の詳細については、「バックエンドサーバーの削除」をご参照ください。

    3. サーバーグループの削除方法の詳細については、「サーバーグループの削除」をご参照ください。

  4. VPC リソースをリリースします:

    1. VPC コンソールにログインします。上部のナビゲーションバーで、VPC が存在するリージョンを選択します。

    2. VPC の右側にある [削除] をクリックします。システムは、VPC にまだ関連付けられていて削除されていないクラウドサービスやネットワークリソースがあるかどうかをチェックします。VPC は、関連付けられているリソースがなくなってからでないと削除できません。

関連ドキュメント

ALB の利用シーンとコンポーネントについては、「ALB とは」をご参照ください。

ALB の機能については、「機能」をご参照ください。

ALB のクォータとクォータ増加のリクエスト方法については、「制限事項」をご参照ください。

ALB が利用可能なリージョンとゾーンについては、「リージョンとゾーン」をご参照ください。

ALB の課金ルール、課金項目、および価格については、「ALB 課金の概要」をご参照ください。