Amazon Web Services ブログ

Amazon API Gateway がデュアルスタック (IPv4 と IPv6) エンドポイントのサポートを開始

3 月 31 日、すべての商用リージョンと AWS GovCloud (米国) リージョンのすべてのエンドポイントタイプ、カスタムドメイン、管理 API で、Amazon API Gateway の IPv6 サポートを開始しました。REST、HTTP、WebSocket API、カスタムドメインを設定して、既存の IPv4 サポートに加えて IPv6 クライアントからの呼び出しを受け入れることができるようになりました。デュアルスタック (IPv6 と IPv4) クライアントから API Gateway 管理 API を呼び出すこともできます。世界中の組織が IPv4 アドレスの不足とコスト増加に直面する中、IPv6 の実装は、将来を見据えたネットワークインフラストラクチャの構築において必要不可欠になっています。このデュアルスタックのアプローチは、組織が将来的なネットワーク互換性を維持し、グローバルなリーチを拡大するのに役立ちます。Amazon Web Services (AWS) 環境のデュアルスタックの詳細については、IPv6 on AWS のドキュメントをご覧ください。

新しいデュアルスタックリソースの作成

この投稿では、デュアルスタック IP アドレスタイプを使用して API またはドメイン名を作成する方法として、AWS マネジメントコンソールAWS Cloud Development Kit (CDK) という 2 つの方法に焦点を当てています。

AWS コンソール

コンソールで新しい API またはドメイン名を作成する場合、IP アドレスタイプとして [IPv4 のみ] または [デュアルスタック (IPv4 と IPv6)] を選択します。

次の図に示すように、新しい REST API を作成するときにデュアルスタックオプションを選択できます。
カスタムドメイン名についても、次の図に示すように、同様にデュアルスタックを設定できます。

何らかの理由で IPv4 のみに戻す必要がある場合は、IP アドレスタイプ設定を変更できます。更新を有効にするために API を再デプロイする必要はありません。

すべてのエンドポイントタイプ (EDGE、REGIONAL、PRIVATE) の REST API がデュアルスタックをサポートします。プライベート REST API はデュアルスタック設定のみをサポートします。

AWS CDK

AWS CDK では、まずデュアルスタック REST API とドメイン名を設定します。

const api = new apigateway.RestApi(this, "Api", {
  restApiName: "MyDualStackAPI",
  endpointConfiguration: {ipAddressType: "dualstack"}
});

const domain_name = new apigateway.DomainName(this, "DomainName", {
  regionalCertificateArn: 'arn:aws:acm:us-east-1:111122223333:certificate/a1b2c3d4-5678-90ab',
  domainName: 'dualstack.example.com',
  endpointConfiguration: {
    types: ['Regional'],
    ipAddressType: 'dualstack'
  },
  securityPolicy: 'TLS_1_2'
});

const basepathmapping = new apigateway.BasePathMapping(this, "BasePathMapping", {
  domainName: domain_name,
  restApi: api
});
JavaScript

IPv6 ソース IP と認可

API が IPv6 トラフィックの受信を開始すると、クライアントソース IP は IPv6 形式になります。ソース IP アドレスを参照するリソースポリシー、Lambda オーソライザー、または AWS Identity and Access Management (IAM) ポリシーを使用する場合は、それらが IPv6 アドレス形式に対応するように更新されていることを確認してください。

例えば、リソースポリシーの特定の IPv6 範囲からのトラフィックを許可する場合などです。

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": "*",
      "Action": "execute-api:Invoke",
      "Resource": "execute-api:stage-name/*",
      "Condition": {
        "IpAddress": {
          "aws:SourceIp": [
            "192.0.2.0/24",
            "2001:db8:1234::/48"
          ]
        }
      }
    }
  ]
}
JSON

まとめ

API Gateway のデュアルスタックサポートは、IPv4 アドレスの不足とコストの管理、政府や業界の指示への準拠、ネットワークの将来への準備に役立ちます。デュアルスタックの実装は、IPv4 クライアントと IPv6 クライアントの両方を同時にサポートすることにより、スムーズな移行パスを提供します。

API Gateway のデュアルスタックのサポートを開始するには、Amazon API Gateway のドキュメントをご覧ください。新しい API 用にデュアルスタックを設定したり、最小限の設定変更で既存の API を更新したりできます。

Betty

執筆プロセス中にリソースを提供し、質問に答え、貴重なフィードバックを提供してくれた Ellie Frank (elliesf)、Anjali Gola (anjaligl)、Pranika Kakkar (pranika) に特に感謝します。このブログ記事は、Service チームと Product Management チームの共同サポートによって実現しました。


ニュースブログはいかがでしたか? こちらの 1 分間のアンケートにぜひご協力ください!

(このアンケートは外部企業に委託して行われます。AWS は、AWS プライバシー通知に記載されているとおりにお客様の情報を取り扱います。AWS は、このアンケートを通じて収集したデータを所有し、収集した情報をアンケートの回答者と共有することはありません)

原文はこちらです。