IPv6 経由で S3 on Outposts へのリクエストを行う
Amazon S3 on Outposts デュアルスタックエンドポイントは、IPv6 プロトコルまたは IPv4 プロトコルを使用した S3 on Outposts バケットへのリクエストをサポートしています。S3 on Outposts の IPv6 サポートを使用すると、IPv6 ネットワーク上の S3 on Outposts API 経由でバケットとコントロールプレーンリソースにアクセスし、運用できます。
注記
S3 on Outposts オブジェクトアクション (PutObject
や GetObject
など) は、IPv6 ネットワークではサポートされていません。
IPv6 ネットワーク上で S3 on Outposts にアクセスする場合、追加料金はかかりません。S3 on Outposts の詳細については、「S3 on Outposts の料金
トピック
IPv6 の使用開始
IPv6 経由で S3 on Outposts バケットにリクエストを実行するには、デュアルスタックのエンドポイントを使用する必要があります。次のセクションでは、デュアルスタックのエンドポイントを使用した IPv6 でのリクエストの実行方法について説明します。
以下は、IPv6 経由で S3 on Outposts バケットへのアクセスを試行する際の重要な考慮事項です。
-
バケットにアクセスするクライアントやネットワークは、IPv6 の使用を有効にする必要があります。
-
仮想ホスト形式およびパス形式のリクエストは、IPv6 アクセスをサポートしています。詳細については、「S3 on Outposts デュアルスタックのエンドポイントの使用」を参照してください。
-
AWS Identity and Access Management (IAM) ユーザーまたは S3 on Outposts バケットポリシーで、ソース IP アドレスによるフィルタリングを使用する場合、IPv6 アドレス範囲を含めるようポリシーを更新する必要があります。
注記
この要件は、IPv6 ネットワーク上の S3 on Outposts バケットオペレーションとコントロールプレーンリソースにのみ適用されます。Amazon S3 on Outposts オブジェクトアクションは、IPv6 ネットワークではサポートされていません。
-
IPv6 を使用する場合、サーバーのアクセスログファイルは IPv6 形式の IP アドレスを出力します。IPv6 形式のリモート IP アドレスを解析できるように、 S3 on Outposts ログファイルの解析に使用する既存のツール、スクリプト、ソフトウェアを更新する必要があります。その後、更新されたツール、スクリプト、ソフトウェアは IPv6 形式のリモート IP アドレスを正しく解析します。
デュアルスタックのエンドポイントを使用して IPv6 ネットワーク経由でリクエストを実行する
IPv6 上で S3 on Outposts API コールを使用してリクエストを行うには、AWS CLI または AWS SDK 経由でデュアルスタックのエンドポイントを使用できます。Amazon S3 コントロール API オペレーションと S3 on Outposts API オペレーションは、IPv6 プロトコルまたは IPv4 プロトコル経由で S3 on Outposts にアクセスしているかどうかに関係なく、同じように機能します。ただし、S3 on Outposts オブジェクトアクション (PutObject
や GetObject
など) は、IPv6 ネットワークではサポートされていません。
AWS Command Line Interface (AWS CLI) や AWS SDK を使用する場合、パラメータまたはフラグを使ってデュアルスタックのエンドポイントに変更できます。設定ファイルの S3 on Outposts エンドポイントに上書きしてデュアルスタックのエンドポイントを直接指定することもできます。
デュアルスタックのエンドポイントを使用して、次のいずれかから IPv6 経由で S3 on Outposts バケットにアクセスできます。
-
AWS CLI については、「AWS CLI からのデュアルスタックのエンドポイントの使用」を参照してください。
-
AWS SDK については、AWS SDK から S3 on Outposts デュアルスタックのエンドポイントを使用する を参照してください。
IAM ポリシーでの IPv6 アドレスの使用
IPv6 プロトコルを使用して S3 on Outposts バケットへのアクセスを試行する前に、IP アドレスによるフィルタリングに使用される IAM ユーザーまたは S3 on Outposts バケットポリシーが IPv6 アドレス範囲を含むように更新されているか確認する必要があります。IPv6 アドレスを処理するように IP アドレスフィルタリングポリシーが更新されていない場合、IPv6 プロトコルの使用を試行しているときに S3 on Outposts バケットにアクセスできなくなる可能性があります。
IP アドレスをフィルタリングする IAM ポリシーは、IP アドレス条件演算子を使用します。次の S3 on Outposts バケットポリシーは、IP アドレス条件演算子を使用して 54.240.143.* の許可される IP 範囲の IPv4 アドレスを識別します。この範囲外のすべての IP アドレスは S3 on Outposts バケットへのアクセスを拒否されます (DOC-EXAMPLE-BUCKET
)。すべての IPv6 アドレスは許可範囲外であるため、このポリシーは IPv6 アドレスの DOC-EXAMPLE-BUCKET
へのアクセスをブロックします。
{ "Version": "2012-10-17", "Statement": [ { "Sid": "IPAllow", "Effect": "Allow", "Principal": "*", "Action": "s3outposts:*", "Resource": "arn:aws:s3-outposts:
region
:111122223333
:outpost/OUTPOSTS-ID
/bucket/DOC-EXAMPLE-BUCKET
/*", "Condition": { "IpAddress": {"aws:SourceIp": "54.240.143.0/24"} } } ] }
次の例のように、S3 on Outposts バケットポリシーの Condition
エレメントを変更して、IPv4 (54.240.143.0/24
) および IPv6 (2001:DB8:1234:5678::/64
) アドレス範囲の両方を許可できます。例に示すように、IAM ユーザーとバケットポリシーの両方を更新するために同じタイプの Condition
ブロックを使用できます。
"Condition": { "IpAddress": { "aws:SourceIp": [ "54.240.143.0/24", "2001:DB8:1234:5678::/64" ] } }
IPv6 を使用する前に、IPv6 アドレス範囲を許可する IP アドレスのフィルタリングに使用するすべての関連 IAM ユーザーとバケットポリシーを更新しなければなりません。既存の IPv4 アドレス範囲に加えて、IAM ポリシーと組織の IPv6 アドレス範囲を更新することをお勧めします。IPv6 および IPv4; でのアクセスを許可するバケットポリシーの例については、「特定の IP アドレスへのアクセスの制限」を参照してください。
IAM ユーザーポリシーは、https://console.aws.amazon.com/iam/
IP アドレス互換性のテスト
Linux、Unix インスタンス、または macOS X プラットフォームを使用している場合は、IPv6 経由でデュアルスタックのエンドポイントへのアクセスをテストできます。例えば、IPv6 経由で Amazon S3 on Outposts エンドポイントへの接続をテストするには、dig
コマンドを使用します。
dig s3-outposts.us-west-2.api.aws AAAA +short
IPv6 ネットワーク上にデュアルスタックのエンドポイントが適切に設定されている場合、dig
コマンドは接続されている IPv6 アドレスを返します。例:
dig s3-outposts.us-west-2.api.aws AAAA +short 2600:1f14:2588:4800:b3a9:1460:159f:ebce 2600:1f14:2588:4802:6df6:c1fd:ef8a:fc76 2600:1f14:2588:4801:d802:8ccf:4e04:817
AWS PrivateLink での IPv6 の使用
S3 on Outposts は、AWS PrivateLink サービスとエンドポイントの IPv6 プロトコルをサポートしています。IPv6 プロトコルの AWS PrivateLink のサポートにより、オンプレミスまたは他のプライベート接続から、IPv6 ネットワーク経由で VPC 内のサービスエンドポイントに接続できます。S3 on Outposts の AWS PrivateLink の IPv6 サポートにより、AWS PrivateLink をデュアルスタックのエンドポイントと統合することもできます。AWS PrivateLink で IPv6 を有効にする手順については、「Expedite your IPv6 adoption with AWS PrivateLink services and endpoints
注記
サポートされている IP アドレスタイプを IPv4 から IPv6 に更新するには、「AWS PrivateLink ユーザーガイド」の「サポートされている IP アドレスのタイプを変更する」を参照してください。
AWS PrivateLink での IPv6 の使用
IPv6 で AWS PrivateLink を使用している場合は、IPv6 またはデュアルスタックの VPC インターフェイスエンドポイントを作成する必要があります。AWS Management Console を使用して VPC エンドポイントを作成する一般的な手順については、「AWS PrivateLink ユーザーガイド」の「インターフェイス VPC エンドポイントを使用して AWS のサービスにアクセスする」を参照してください。