메뉴
Amazon Simple Storage Service
개발자 안내서 (API Version 2006-03-01)

IPv6을 통해 Amazon S3에 요청

Amazon Simple Storage Service(Amazon S3)는 IPv4 프로토콜 외에도 인터넷 프로토콜 버전 6(IPv6)을 사용하여 S3 버킷에 액세스하는 기능을 지원합니다. Amazon S3 듀얼 스택 엔드포인트는 IPv6 및 IPv4를 통해 S3 버킷에 요청하는 것을 지원합니다. IPv6을 통해 Amazon S3에 액세스하는 데 대한 추가 요금은 없습니다. 요금에 대한 자세한 내용은 Amazon S3 요금을 참조하십시오.

IPv6을 통해 요청하기

IPv6을 통해 S3 버킷에 요청하려면 듀얼 스택 엔드포인트를 사용해야 합니다. 다음 단원에서는 듀얼 스택 엔드포인트를 사용하여 IPv6을 통해 요청하는 방법을 설명합니다.

다음은 IPv6을 통해 버킷에 액세스하기 전에 알고 있어야 하는 사항입니다.

  • 버킷에 액세스하는 클라이언트와 네트워크가 IPv6을 사용하도록 설정되어 있어야 합니다.

  • 가상 호스팅 방식과 경로 방식 요청이 모두 IPv6 액세스를 지원합니다. 자세한 내용은 Amazon S3 듀얼 스택 엔드포인트 단원을 참조하십시오.

  • AWS Identity and Access Management(IAM) 사용자 또는 버킷 정책에서 소스 IP 주소 필터링을 사용하는 경우, IPv6 주소 범위를 포함하도록 정책을 업데이트해야 합니다. 자세한 내용은 IAM 정책에서 IPv6 주소 사용 단원을 참조하십시오.

  • IPv6을 사용하는 경우, 서버 액세스 로그 파일이 IPv6 형식으로 IP 주소를 출력합니다. IPv6 형식의 Remote IP 주소를 구문 분석할 수 있도록 Amazon S3 로그 파일을 구문 분석하는 데 사용하는 기존 도구, 스크립트 및 소프트웨어를 업데이트해야 합니다. 자세한 내용은 서버 액세스 로그 형식서버 액세스 로깅 단원을 참조하십시오.

    참고

    로그 파일에 IPv6 주소가 있는 것과 관련하여 문제가 있는 경우, AWS Support에 문의하십시오.

듀얼 스택 엔드포인트를 사용하여 IPv6을 통해 요청

듀얼 스택 엔드포인트를 사용하여 IPv6을 통해 Amazon S3 API 호출로 요청합니다. Amazon S3 API 작업은 IPv6을 통해 Amazon S3에 액세스하든 IPv4를 통해 액세스하든 동일하게 실행됩니다. 성능 또한 동일합니다.

REST API를 사용하는 경우, 듀얼 스택 엔드포인트에 직접 액세스합니다. 자세한 내용은 듀얼 스택 엔드포인트 단원을 참조하십시오.

AWS Command Line Interface(AWS CLI) 및 AWS SDK를 사용하는 경우, 파라미터 또는 플래그를 사용하여 듀얼 스택 엔드포인트를 변경할 수 있습니다. 구성 파일의 Amazon S3 엔드포인트를 재정의하여 듀얼 스택 엔드포인트를 직접 지정할 수도 있습니다.

듀얼 스택 엔드포인트를 사용하여 다음에서 IPv6을 통해 버킷에 액세스할 수 있습니다.

IPv6을 통해 사용할 수 없는 기능

다음은 현재 IPv6을 통해 S3 버킷에 액세스할 때 지원되지 않는 기능입니다.

  • S3 버킷에서 정적 웹 사이트 호스팅

  • BitTorrent

IAM 정책에서 IPv6 주소 사용

IPv6을 사용하여 버킷에 액세스하기 전에 IP 주소 필터링에 사용되는 IAM 사용자 또는 S3 버킷 정책이 IPv6 주소 범위를 포함하도록 업데이트되었는지 확인해야 합니다. IP 주소 필터링 정책이 IPv6 주소를 처리하도록 업데이트되지 않은 경우, 클라이언트가 IPv6을 사용할 때 버킷에 대한 액세스 권한을 잘못 잃거나 얻을 수 있습니다. IAM으로 액세스 권한을 관리하는 방법에 대한 자세한 내용은 Amazon S3 리소스에 대한 액세스 권한 관리를 참조하십시오.

IP 주소를 필터링하는 IAM 정책은 IP 주소 조건 연산자를 사용합니다. 다음 버킷 정책은 IP 주소 조건 연산자를 사용하여 허용되는 주소인 54.240.143.* 범위를 IPv4 식별합니다. 이 범위를 벗어난 모든 IP 주소는 버킷(examplebucket)에 대한 액세스가 거부됩니다. 모든 IPv6 주소가 허용되는 범위 밖에 있으므로 이 정책은 IPv6 주소가 examplebucket에 액세스하지 못하도록 합니다.

Copy
{ "Version": "2012-10-17", "Statement": [ { "Sid": "IPAllow", "Effect": "Allow", "Principal": "*", "Action": "s3:*", "Resource": "arn:aws:s3:::examplebucket/*", "Condition": { "IpAddress": {"aws:SourceIp": "54.240.143.0/24"} } } ] }

다음 예제와 같이 IPv4(54.240.143.0/24) 및 IPv6(2001:DB8:1234:5678::/64) 주소 범위를 모두 허용하도록 버킷 정책의 Condition 요소를 수정할 수 있습니다. 예제에 나와 있는 동일한 Condition 블록 유형을 사용하여 IAM 사용자와 버킷 정책 모두를 업데이트할 수 있습니다.

Copy
"Condition": { "IpAddress": { "aws:SourceIp": [ "54.240.143.0/24", "2001:DB8:1234:5678::/64" ] } }

IPv6을 사용하기 전에 IP 주소 필터링을 사용하는 관련된 모든 IAM 사용자와 버킷 정책이 IPv6 주소 범위를 허용하도록 업데이트해야 합니다. 기존 IPv4 주소 범위 외에도 조직의 IPv6 주소 범위를 포함하도록 IAM 정책을 업데이트하는 것이 좋습니다. IPv6 및 IPv4 모두를 통한 액세스를 허용하는 버킷 정책의 예는 특정 IP 주소 액세스 제한을 참조하십시오.

https://console.aws.amazon.com/iam/의 IAM 콘솔을 사용하여 IAM 사용자 정책을 검토할 수 있습니다. IAM에 대한 자세한 내용은 IAM 사용 설명서를 참조하십시오. S3 버킷 정책을 편집하는 방법에 대한 자세한 내용은 S3 버킷 정책을 추가하려면 어떻게 해야 합니까?(출처: Amazon Simple Storage Service 콘솔 사용 설명서)를 참조하십시오.

IP 주소 호환성 테스트

Linux/Unix 또는 Mac OS X를 사용하는 경우, 다음 예제에 나와 있는 curl 명령을 사용하여 IPv6을 통해 듀얼 스택 엔드포인트에 액세스할 수 있는지 테스트할 수 있습니다.

Copy
curl -v http://s3.dualstack.us-west-2.amazonaws.com/

다음 예제와 유사한 정보를 가져옵니다. IPv6을 통해 연결된 경우, 연결된 IP 주소가 IPv6 주소가 됩니다.

Copy
* About to connect() to s3-us-west-2.amazonaws.com port 80 (#0) * Trying IPv6 address... connected * Connected to s3.dualstack.us-west-2.amazonaws.com (IPv6 address) port 80 (#0) > GET / HTTP/1.1 > User-Agent: curl/7.18.1 (x86_64-unknown-linux-gnu) libcurl/7.18.1 OpenSSL/1.0.1t zlib/1.2.3 > Host: s3.dualstack.us-west-2.amazonaws.com

Microsoft Windows 7을 사용하는 경우, 다음 예제에 나와 있는 ping 명령을 사용하여 IPv6 또는 IPv4를 통해 듀얼 스택 엔드포인트에 액세스할 수 있는지 테스트할 수 있습니다.

Copy
ping ipv6.s3.dualstack.us-west-2.amazonaws.com