[アップデート] AWS Elastic Beanstalk でロードバランサーに IPv6 もサポートするデュアルスタック設定ができるようになりました

[アップデート] AWS Elastic Beanstalk でロードバランサーに IPv6 もサポートするデュアルスタック設定ができるようになりました

2025.09.14

いわさです。

AWS Elastic Beanstalk ではロードバランサーを使った負荷分散構成を取ることができます。
パブリックロードバランサーにした場合、これまでロードバランサーの IP アドレスタイプは IPv4 のみをサポートしていたのですが、IPv6 が使えるデュアルスタックを選択できるようになりました。

https://aws.amazon.com/about-aws/whats-new/2025/09/aws-elastic-beanstalk-ipv6-dual-stack-configuration/

Elastic Beanstalk では色々な環境の作成方法がありまして、今回のオプションも全ての構築パターンで利用可能です。
私は今回マネジメントコンソールから作成してみたので紹介します。

マネジメントコンソールから作成

今回も前提となる IPv6 CIDR を割り当てている VPC やサブネット、ルートテーブルなどを事前に準備しておきましょう。
こんな感じです。

274FC71E-7343-43DF-8A03-5AEEF1200D2B.png

VPC作成テンプレート
			
			AWSTemplateFormatVersion: '2010-09-09'
Description: 'IPv6-only ALB with fixed response in new VPC'

Resources:
  # VPC
  VPC:
    Type: AWS::EC2::VPC
    Properties:
      CidrBlock: 10.0.0.0/16
      EnableDnsHostnames: true
      EnableDnsSupport: true
      Tags:
        - Key: Name
          Value: IPv6-ALB-VPC

  # IPv6 CIDR Block
  IPv6CidrBlock:
    Type: AWS::EC2::VPCCidrBlock
    Properties:
      VpcId: !Ref VPC
      AmazonProvidedIpv6CidrBlock: true

  # Internet Gateway
  InternetGateway:
    Type: AWS::EC2::InternetGateway
    Properties:
      Tags:
        - Key: Name
          Value: IPv6-ALB-IGW

  AttachGateway:
    Type: AWS::EC2::VPCGatewayAttachment
    Properties:
      VpcId: !Ref VPC
      InternetGatewayId: !Ref InternetGateway

  # Public Subnets
  PublicSubnet1:
    Type: AWS::EC2::Subnet
    DependsOn: IPv6CidrBlock
    Properties:
      VpcId: !Ref VPC
      CidrBlock: 10.0.1.0/24
      Ipv6CidrBlock: !Select [0, !Cidr [!Select [0, !GetAtt VPC.Ipv6CidrBlocks], 256, 64]]
      AvailabilityZone: !Select [0, !GetAZs '']
      MapPublicIpOnLaunch: false
      AssignIpv6AddressOnCreation: true
      Tags:
        - Key: Name
          Value: IPv6-ALB-PublicSubnet1

  PublicSubnet2:
    Type: AWS::EC2::Subnet
    DependsOn: IPv6CidrBlock
    Properties:
      VpcId: !Ref VPC
      CidrBlock: 10.0.2.0/24
      Ipv6CidrBlock: !Select [1, !Cidr [!Select [0, !GetAtt VPC.Ipv6CidrBlocks], 256, 64]]
      AvailabilityZone: !Select [1, !GetAZs '']
      MapPublicIpOnLaunch: false
      AssignIpv6AddressOnCreation: true
      Tags:
        - Key: Name
          Value: IPv6-ALB-PublicSubnet2

  # Route Table
  PublicRouteTable:
    Type: AWS::EC2::RouteTable
    Properties:
      VpcId: !Ref VPC
      Tags:
        - Key: Name
          Value: IPv6-ALB-PublicRouteTable

  # IPv4 Route
  PublicRoute:
    Type: AWS::EC2::Route
    DependsOn: AttachGateway
    Properties:
      RouteTableId: !Ref PublicRouteTable
      DestinationCidrBlock: 0.0.0.0/0
      GatewayId: !Ref InternetGateway

  # IPv6 Route
  PublicRouteIPv6:
    Type: AWS::EC2::Route
    DependsOn: AttachGateway
    Properties:
      RouteTableId: !Ref PublicRouteTable
      DestinationIpv6CidrBlock: ::/0
      GatewayId: !Ref InternetGateway

  # Route Table Associations
  PublicSubnetRouteTableAssociation1:
    Type: AWS::EC2::SubnetRouteTableAssociation
    Properties:
      SubnetId: !Ref PublicSubnet1
      RouteTableId: !Ref PublicRouteTable

  PublicSubnetRouteTableAssociation2:
    Type: AWS::EC2::SubnetRouteTableAssociation
    Properties:
      SubnetId: !Ref PublicSubnet2
      RouteTableId: !Ref PublicRouteTable

		

ではここから Elastic Beanstalk のリソースを作成していきます。
ちなみに.ebextensionsを使う場合は次のように設定することで有効化が可能です。[1]

			
			option_settings:
  aws:elbv2:loadbalancer:
    IpAddressType: dualstack

		

新規環境を作成します。

9F998D30-4937-4FF0-A6EB-CD5B86E5B30A.png

まず、「ネットワーキング、データベース、およびタブをセットアップ」のステップでは先程作成した IPv6 CIDR 割り当て済みの VPC を選択します。
このステップでは特に IPv6 の指定などはありません。

A101E7B0-983A-4344-B088-0B4079807260.png

そして次の「インスタンスのトラフィックとスケーリングを設定」ステップが重要なポイントになります。
まず、今回の設定は単一インスタンス環境ではなくロードバランサーをデプロイする必要があるので、「容量」の環境タイプで「負荷分散」を指定します。

3DB1FB43-3F62-4FBE-87D3-201DFAE5B744.png

そうすると、次のようにロードバランサーのネットワーク設定やタイプが指定できるようになります。
このロドーバランサーのネットワーク設定で「デュアルスタック(IPv4 および IPv6)」がオプションで有効化できるようになっています。デフォルトは OFF になっていました。
「IPv6 のみ」の選択肢はないですね。

4A0E752E-7BAE-4AA0-9180-706832D16EC6.png

あとは上記を ON にして環境を作成するだけです。手順としては非常に簡単ですね。
なお、既存環境の場合でも Elastic Beanstalk コンソールのロードバランサー構成の設定から IP アドレスタイプを変更できますのでそこから有効化が可能です。

有効化後に作成されたロードバランサーを確認してみると、次のように Dualstack タイプでロードバランサーが作成されていることが確認できます。

E67A4235-F78D-489C-B62A-24BB8143CEE6.png

さいごに

本日は AWS Elastic Beanstalk でロードバランサーに IPv6 もサポートするデュアルスタック設定ができるようになったので使ってみました。

最初設定箇所がわからなくて迷ったのですが、環境タイプで「負荷分散」を選択した時だけ設定できるオプションでした。
先日の CloudFront のやつもそうですが、また最近 IPv6 関係のアップデートが増えてきていますね。今後 IPv6 のみオプションも設定できるようになると良いですね。

脚注
  1. Configuring dual-stack Elastic Beanstalk load balancers - AWS Elastic Beanstalk ↩︎

この記事をシェアする

FacebookHatena blogX

関連記事