AWSでIPv6通信する手順をまとめてみた(2)

2024.03.19
マルチクラウド 技術 AWS クラウド活用 コスト削減 運用保守
AWSでIPv6通信する手順をまとめてみた(2)

はじめに

皆さん、こんにちは。五味 なぎさです。AWSでIPv6通信をするための設定手順について解説している本ブログシリーズ。前回はAmazon Virtual Private Cloud(VPC)内でIPv6通信するために必要な5つの手順のうち、手順(1)(2)(3)をご紹介しました。まだ前回のブログを読まれていない方はぜひ、こちらをご覧ください。

VPC内でIPv6を利用するためには下記5つの手順が必要で、今回は残りの手順(4)(5)についてご紹介していきます。なお、AWSでは多数のサービス※1でIPv6に対応していますが、前回同様IPv6通信を可能にする設定方法に絞り説明していきますので、エンタープライズ利用される際には、合わせてセキュリティ対策などについてもご検討ください。

前回ブログの範囲

  • (1)IPv6対応VPCの作成
  • (2)IPv6専用サブネットの作成
  • (3)IPv6 OnlyのEC2の作成

今回ブログの範囲

  • (4)IPv6 OnlyのEC2からIPv4サービス/システムへの接続
  • (5)上記以外のIPv6対応について(概要)

IPv6の通信設定方法について(後編)

それでは早速、実際の設定手順を順にみていきましょう。

(4) IPv6 OnlyのEC2からIPv4サービス/システムへの接続

前回ご紹介した(1)~(3)の設定を済ませたところで疎通確認をしてみましょう。疎通確認にはEC2上のOS操作が必要となり、SSHを利用せずにOS操作を行うためには、Systems Managerの機能であるSession Managerの利用が必要です。ただ、ここで1つ問題が出てきます。現状ではSystems ManagerのエンドポイントがIPv6に対応しておらず、IPv6だけの構成だとSession Managerが利用できません。このように、AWS側のエンドポイントや、接続先のシステムがIPv6に未対応のケースはまだまだあるかと思います。その場合、NAT64/DNS64という技術を利用することでIPv6からIPv4に変換しIPv4アドレス宛に通信を行うことが可能です。AWSにおいても、2021年11月からNAT64/DNS64に対応しており、VPCのサブネット設定におけるDNS64の有効化とNAT Gatewayの配置によりNAT64/DNS64を利用した疎通が可能になりました。なお、NAT64/DNS64の技術そのものについて今回は触れませんが※2、ご興味ある方は参考リンク先を参照してみてください。

具体的な手順ですが、まず、サブネットの設定画面でDNS64を有効化します。送信元となるIPv6 OnlyのECが存在するサブネット(今回であれば作成したIPv6専用サブネット)の設定で、下記画面内のチェックを有効にするだけです。

画面:DNS64の設定

画面:DNS64の設定

続いてNAT Gatewayですが、NAT Gateway自体はIPv4通信で利用するものと同じものが利用可能であり、特に特殊な設定は不要です。IPv4/IPv6がデュアルスタックで利用できるサブネットを準備した上で、該当サブネットにNAT Gatewayを作成し、Internet Gateway向けのデフォルトルートを追加します。

最後に、IPv6 OnlyのEC2が存在するサブネットに以下のルートを追加します。

宛先 NextHop
64:ff9b::/96 NAT Gateway

[64:ff9b::/96]はRFC6052で定義されたIPv4-IPv6変換アドレスで利用されるアドレス帯となっており、上記ルートを追加することでIPv4からIPv6に合成されたアドレス(合成自体はDNS64が実施)についてはNAT Gatewayを経由するようにルーティングされます。NAT Gatewayでは合成されたIPv6アドレスをIPv4に変換(DNS64)し、IPv4アドレスで待ち受ける宛先に通信を行います。

これらの設定を完了すると、IPv6 OnlyのEC2からIPv4アドレス宛に通信ができるようになります。実際に検証したところ、上記設定完了後に、無事にSession Managerが利用できました。ちなみに、特定のバージョン以上のSSM Agentが導入されているOSが選択されており、かつ、別途EC2に対しSession Managerに必要なIAMロール(AmazonSSMManagedInstanceCore)の付与が必要になります。こちらの詳細は、下記の参考リンク先を参照してみてください※3

画面:Session Managerへの接続

画面:Session Managerへの接続

また、OS上からIPv6アドレスが有効なサイト(今回の場合はGoogle)に接続を試みたところIPv6アドレス宛に通信ができたので、IPv6に閉じた通信についても問題なく接続できていることが確認できました。

画面:IPv6アドレス宛の通信

画面:IPv6アドレス宛の通信

ただし、注意いただきたい点として、NAT GatewayにIPv4のパブリックアドレスが割り当てられることになるため、パブリックIPv4アドレスの課金対策には残念ながらなりませんのでご留意ください。System Manager等、多くのAWSサービスのエンドポイントがIPv6対応することを期待したいと思います。

今回試したのはPublic NAT Gatewayを利用したIPv6からIPv4への変換についてですが、Private NAT Gatewayにおいても同様のことができるようです※4。これによりオンプレミス側がIPv4を利用していた場合にも、AWS(IPv6利用)⇒オンプレミス方向の通信ができるため(NAT Gateway用の最小限のIPv4割り当ては必要)、オンプレミスではIPv4を利用しているが、AWS側でIPv6を利用したいという場合に有用な手段になるのではと思います。

(5)上記以外のIPv6対応について

前回もご紹介していますが、改めて、AWSにおけるIPv6サポート状況は以下の通りです。

VPC内のコンポーネントについてもECSやEKS、ELB、Network Firewallなど複数のサービスが対応しています。ただ、IPv6のみのサポートのサービスとデュアルスタック(IPv4/IPv6双方の利用)のみサポートするサービス、両方に対応したサービスがあり、また、コンポーネント自体は対応していてもパブリック/プライベートのエンドポイントがIPv6対応していないケースがあるため、その点は注意が必要です。また、最初にお伝えした通りIPv6に関して頻繁にアップデートされている状況ですので、最新状況をご確認の上、対応されることをお勧めします。

おわりに

いかがでしたでしょうか?今回はIPv6専用EC2からIPv4のサービス/システムに接続するための設定や、手順をご説明した以外のサービスのIPv6対応についてご紹介しました。本内容が、少しでも皆様のAWS活用の参考になれば幸いです。もちろん、NSSOLでもAWS環境におけるIPv6化対応をご支援することは可能ですので、お困りのことがございましたら、お気軽にご相談ください!今後も、AWSをはじめ、パブリッククラウドに関する情報を発信していきたいと思いますので、また別のブログでお会いしましょう!

はじめに

皆さん、こんにちは。ITサービス&エンジニアリング事業本部(以下、ITS&E)クラウドプラットフォーム事業部(以下、CPF)に所属している五味 なぎさです。
私が所属するITS&Eでは、主にITインフラ関連のプロダクトやサービスを取り扱っています。『Make IT Sustainable』というスローガンのもと、情報システム部門の皆様の日々の業務効率化や、「コア業務に集中できる環境づくり」をご支援させていただいております。
その中でもCPFはクラウドサービス事業の拡大をミッションとしており、当社が提供するマネージドクラウドサービスabsonne(アブソンヌ)の企画・運営・提案・導入や、Amazon Web Services(以下、AWS)、Microsoft AzureGoogle Cloud PlatformOracle Cloud Infrastructure等のパブリッククラウドサービスを利用したシステムの提案・設計・導入を推進しています。
以前、AWSにおけるIPv6対応の基礎情報として、IPv4課金体系の変更とこれまでにAWSが実施したIPv6対応のまとめについて書いておりますので、ご興味ある方はこちらをぜひ読んでみてください!

さて今回と次回では、実際にAmazon Virtual Private Cloud(VPC)内でIPv6を利用するための設定手順をご紹介していきます。ちなみに、AWSでは多数のサービス※1でIPv6に対応していますが、今回はVPC上のEC2でIPv6通信を可能にする設定方法に絞り、以下の作業について説明していきます。

  • (1)IPv6対応VPCの作成
  • (2)IPv6専用サブネットの作成
  • (3)IPv6 OnlyのEC2の作成
  • (4)IPv6 OnlyのEC2からIPv4サービス/システムへの接続
  • (5)上記以外のIPv6対応について(概要)

なお、今回はあくまでIPv6で通信できるようにする設定方法をご紹介していますが、IPv6は基本的にすべてグローバルアドレス(インターネット上で一意に識別されるアドレス)となるため、実際に利用する際、特にエンタープライズ利用される際には、合わせてセキュリティ対策についても検討が必要となるので、ご注意ください。

IPv6の通信設定方法について(前編)

それでは、実際の設定手順を順にみていきましょう。今回は下記3点をお伝えしていきます。

  • (1)IPv6対応VPCの作成
  • (2)IPv6専用サブネットの作成
  • (3)IPv6 OnlyのEC2の作成

(1)IPv6対応VPCの作成

IPv6対応のVPCは、VPC作成画面において、[IPv6 CIDRブロック]の項目で[Amazon提供のIPv6 CIDRブロック]にチェックを入れるだけで作成可能です。IPAM(Amazon VPC IP Address Manager)でIPアドレスを管理されている場合や、ユーザ所有のIPアドレスを利用したい場合はそちらの選択も可能です。また、IPv4サポートの無効化はできないため、なんらかのIPv4 CIDRブロックの割り当ては必要になります。なお、既存のVPCを利用したい場合も、IPv6の有効化が可能です※2

画面:VPC設定

画面:VPC設定

上記の設定により、VPCに/56のIPv6 CIDRが割り当てられました。

画面:割り当て後の表示

画面:割り当て後の表示

/56以外のCIDRを割り当てるには、IPAMの利用や、追加の割り当てが必要です(仕様上/44~/60の/4刻みの割り当てが可能)。

(2)IPv6専用サブネットの作成

続いてサブネットの作成です。今回はIPv6専用のサブネットを作成したいため、[IPv4 CIDR block]の設定は[No IPv4 CIDR]を選択し、[IPv6 CIDR Block]のみ設定します。
[IPv6 subnet CIDR block]にはVPCに割り当てられた/56のIPv6サブネットから/56~/64の/4刻みのCIDR割り当てが可能です。今回は一番小さい/64を割り当てています。

画面:サブネット設定

画面:サブネット設定

注意点として、IPv4として作成後のサブネットをIPv6専用に変更することはできません。
デュアルスタックの形(IPv6を追加する)で作成することは可能ですので、デュアルスタックとするか、新規にIPv6専用サブネットの作成が必要です。

また、サブネットに割り当てるルートテーブルとして、今回は以下を設定しています(Internet Gatewayは別途作成済)。

画面:ルートテーブル設定

画面:ルートテーブル設定

Internet Gatewayについては、IPv4と同じものが利用可能です。なお、通信要件がアウトバウンド(VPC ⇒ インターネット 向き)のみの場合、Egress-Only Internet Gateway※3というIPv6専用のサービスの利用が可能です。セキュリティ強化のため、インバウンド方向の通信要件が無い場合は、Egress-Only Internet Gatewayの利用が望ましいかと思います。

(3)IPv6 OnlyのEC2の作成

作成したIPv6専用サブネットにEC2を作成します。ネットワーク設定内で以下のようにIPv6 IPの自動割り当てを有効化することにより、IPv6アドレスが割り当てられます。

画面:IPv6 IPの自動割り当て設定

画面:IPv6 IPの自動割り当て設定

画面:IPv6 IPの自動割り当て設定

画面:EC2起動後の設定状況

注意点として、利用するEC2はNitroシステムに基づくインスタンスを利用してください。非Nitro世代のインスタンスの場合IPv6に非対応のため、IPv6専用サブネットにEC2を作成しようとするとエラーになります(実際に誤ってt2.microを選択したところ作成エラーになりました。ちなみに今回はt3.nanoでインスタンスを作成しています。

ここまで完了したら、あとは、必要な通信をセキュリティグループで許可すれば、IPv6でVPC外との通信が可能です。

おわりに

いかがでしたでしょうか?今回の設定では、VPC、サブネット、EC2においてIPv6通信を行えるようにするところまでの手順をご説明してきました。次回は、IPv6専用EC2からIPv4のサービス/システムに接続するための設定や、今回手順をご説明したサービス以外のIPv6対応についてご紹介していきますので、少しでも皆様のAWS活用の参考になれば幸いです。次回もお楽しみにしてください!

関連ページ

おすすめブログ

IPv4アドレスの課金、枯渇対策となるか?AWSにおけるIPv6対応の基礎
IPv4アドレスの課金、枯渇対策となるか?AWSにおけるIPv6対応の基礎
ITサービス&エンジニアリング事業本部クラウドプラットフォーム事業部の五味 なぎさです。2024年2月1日から開始のパブリックIPv4アドレスの課金体系変更(有料化範囲の変更)と、その対策の1つとしてAWSが奨励するIPv6対応についてお伝えしていきます。
AWSでIPv6通信する手順をまとめてみた(1)
AWSでIPv6通信する手順をまとめてみた(1)
Amazon Virtual Private Cloud(VPC)内でIPv6を利用するための設定手順をご紹介します。AWSでは多数のサービスでIPv6に対応していますが、今回はVPC上のEC2でIPv6通信を可能にする設定方法に絞り説明していきます。