자습서: IPAM으로 BYOIP IPv4 CIDR 전송 - Amazon Virtual Private Cloud

자습서: IPAM으로 BYOIP IPv4 CIDR 전송

다음 단계에 따라 기존 IPv4 CIDR을 IPAM으로 전송합니다. AWS가 포함된 IPv4 BYOIP CIDR이 이미 있는 경우 CIDR을 퍼블릭 IPv4 풀에서 IPAM으로 이동할 수 있습니다. IPv6 CIDR을 IPAM으로 이동할 수 없습니다.

이 자습서에서는 Bring your own IP addresses (BYOIP) in Amazon EC2에 설명된 프로세스를 사용하여 IP 주소 범위를 AWS로 이미 성공적으로 가져왔고 이제 해당 IP 주소 범위를 IPAM으로 전송하려고 한다고 가정합니다. 새 IP 주소를 처음으로 AWS로 가져오고 있는 중인 경우 자습서: IPAM으로 IP 주소 가져오기의 단계를 완료하세요.

퍼블릭 IPv4 풀을 IPAM으로 전송하는 경우 기존 할당에는 영향을 미치지 않습니다. 퍼블릭 IPv4 풀을 IPAM으로 전송한 후에는 리소스 유형에 따라 기존 할당을 모니터링할 수 있습니다. 자세한 내용은 리소스별 CIDR 사용량 모니터링 단원을 참조하십시오.

중요
  • 이 자습서에서는 IPAM 생성의 단계를 이미 수행한 것으로 가정합니다.

  • 이 자습서의 각 단계는 다음 2개의 AWS 계정 중 하나로 수행해야 합니다.

    • IPAM 관리자의 계정입니다. 이 자습서에서는 이 계정을 IPAM 계정이라고 합니다.

    • BYOIP CIDR을 소유한 조직의 계정입니다. 이 자습서에서는 이 계정을 BYOIP CIDR 소유자 계정이라고 합니다.

1단계: AWS CLI 명명 프로파일 및 IAM 역할 생성

단일 AWS 사용자로 이 자습서를 완료하려면 AWS CLI 명명 프로파일을 사용하여 IAM 역할 간에 전환할 수 있습니다. 명명 프로파일은 AWS CLI와(과) 함께 --profile 옵션을 사용할 때 참조하는 설정 및 보안 인증 정보의 모음입니다. AWS 계정에 대한 IAM 역할 및 명명 프로파일 생성 방법에 대한 자세한 내용은 AWS Identity and Access Management 사용 설명서AWS CLI에서 IAM 역할 사용을 참조하세요.

이 자습서에서 사용할 세 AWS 계정 각각에 대해 역할 하나와 명명 프로필 하나를 만듭니다:

  • IPAM 관리자인 AWS 계정에 대한 ipam-account라는 프로파일

  • BYOIP CIDR을 소유하는 조직의 AWS 계정에 대한 byoip-owner-account라는 프로파일

IAM 역할 및 명명 프로파일을 생성한 후 이 페이지로 돌아와서 다음 단계로 이동합니다. 이 자습서의 나머지 부분에서 샘플 AWS CLI CLI 명령이 명명된 프로파일 중 하나와 함께 --profile 옵션을 사용하여 명령을 실행해야 하는 계정을 나타냅니다.

2단계: IPAM의 퍼블릭 범위 ID 가져오기

이 섹션의 단계를 따르면 IPAM의 퍼블릭 범위 ID를 가져올 수 있습니다. 이 단계는 ipam-account 계정에서 수행해야 합니다.

다음 명령을 실행하여 퍼블릭 범위 ID를 가져옵니다.

aws ec2 describe-ipams --region us-east-1 --profile ipam-account

출력에 퍼블릭 범위 ID가 표시됩니다. PublicDefaultScopeId의 값을 기록해 둡니다. 다음 단계에서 이 값을 사용할 것입니다.

{ "Ipams": [ { "OwnerId": "123456789012", "IpamId": "ipam-090e48e75758de279", "IpamArn": "arn:aws:ec2::123456789012:ipam/ipam-090e48e75758de279", "PublicDefaultScopeId": "ipam-scope-0087d83896280b594", "PrivateDefaultScopeId": "ipam-scope-08b70b04fbd524f8d", "ScopeCount": 2, "Description": "my-ipam", "OperatingRegions": [ { "RegionName": "us-east-1" }, { "RegionName": "us-west-2" } ], "Tags": [] } ] }

3단계: IPAM 풀 생성

이 섹션의 단계를 따르면 IPAM 풀을 생성할 수 있습니다. 이 단계는 ipam-account 계정에서 수행해야 합니다. 생성하는 IPAM 풀은 BYOIP CIDR AWS 리전과 일치하는 --locale 옵션이 포함된 최상위 풀이어야 합니다. BYOIP는 최상위 IPAM 풀로만 전송할 수 있습니다.

중요

풀을 생성하는 경우 --aws-service ec2을(를) 포함해야 합니다. 선택한 서비스에 따라 CIDR이 알릴 AWS 서비스가 결정됩니다. 현재, 유일한 옵션은 ec2입니다. 즉, 이 풀에서 할당된 CIDR은 Amazon EC2 서비스(탄력적 IP 주소용) 및 Amazon VPC 서비스(VPC에 연결된 CIDR용)에 대해 알릴 수 있음을 의미합니다.

AWS CLI를 사용하여 전송된 BYOIP CIDR에 대한 IPv4 주소 풀을 생성하려면
  1. 다음 명령을 실행하여 IPAM 풀을 생성합니다. 이전 단계에서 검색한 IPAM의 퍼블릭 범위 ID를 사용합니다.

    aws ec2 create-ipam-pool --region us-east-1 --profile ipam-account --ipam-scope-id ipam-scope-0087d83896280b594 --description "top-level-pool" --locale us-west-2 --aws-service ec2 --address-family ipv4

    출력에 풀 생성이 진행 중임을 나타내는 create-in-progress가 표시됩니다.

    { "IpamPool": { "OwnerId": "123456789012", "IpamPoolId": "ipam-pool-0a03d430ca3f5c035", "IpamPoolArn": "arn:aws:ec2::123456789012:ipam-pool/ipam-pool-0a03d430ca3f5c035", "IpamScopeArn": "arn:aws:ec2::123456789012:ipam-scope/ipam-scope-0087d83896280b594", "IpamScopeType": "public", "IpamArn": "arn:aws:ec2::123456789012:ipam/ipam-090e48e75758de279", "Locale": "us-west-2", "PoolDepth": 1, "State": "create-in-progress", "Description": "top-level-pool", "AutoImport": false, "AddressFamily": "ipv4", "Tags": [], "AwsService": "ec2" } }
  2. 출력에 create-complete의 상태가 표시될 때까지 다음 명령을 실행합니다.

    aws ec2 describe-ipam-pools --region us-east-1 --profile ipam-account

    다음 예 출력에서는 풀의 상태를 보여줍니다. 다음 단계에서 OwnerId가 필요합니다.

    { "IpamPools": [ { "OwnerId": "123456789012", "IpamPoolId": "ipam-pool-0a03d430ca3f5c035", "IpamPoolArn": "arn:aws:ec2::123456789012:ipam-pool/ipam-pool-0a03d430ca3f5c035", "IpamScopeArn": "arn:aws:ec2::123456789012:ipam-scope/ipam-scope-0087d83896280b594", "IpamScopeType": "public", "IpamArn": "arn:aws:ec2::123456789012:ipam/ipam-090e48e75758de279", "Locale": "us-west-2", "PoolDepth": 1, "State": "create-complete", "Description": "top-level-pool", "AutoImport": false, "AddressFamily": "ipv4", "Tags": [], "AwsService": "ec2" } ] }

4단계: AWS RAM을 사용하여 IPAM 풀 공유

이 섹션의 단계에 따라 다른 AWS 계정이 기존 BYOIP IPV4 CIDR을 IPAM 풀로 전송하고 IPAM 풀을 사용할 수 있도록 AWS RAM을 사용하여 IPAM 풀을 공유합니다. 이 단계는 ipam-account 계정에서 수행해야 합니다.

AWS CLI를 사용하여 IPv4 주소 풀 공유
  1. IPAM 풀에 사용할 수 있는 AWS RAM 권한을 봅니다. 이 섹션의 단계를 완료하려면 두 ARN이 모두 필요합니다.

    aws ram list-permissions --region us-east-1 --profile ipam-account --resource-type ec2:IpamPool
    { "permissions": [ { "arn": "arn:aws:ram::aws:permission/AWSRAMDefaultPermissionsIpamPool", "version": "1", "defaultVersion": true, "name": "AWSRAMDefaultPermissionsIpamPool", "resourceType": "ec2:IpamPool", "status": "ATTACHABLE", "creationTime": "2022-06-30T13:04:29.335000-07:00", "lastUpdatedTime": "2022-06-30T13:04:29.335000-07:00", "isResourceTypeDefault": true }, { "arn": "arn:aws:ram::aws:permission/AWSRAMPermissionIpamPoolByoipCidrImport", "version": "1", "defaultVersion": true, "name": "AWSRAMPermissionIpamPoolByoipCidrImport", "resourceType": "ec2:IpamPool", "status": "ATTACHABLE", "creationTime": "2022-06-30T13:03:55.032000-07:00", "lastUpdatedTime": "2022-06-30T13:03:55.032000-07:00", "isResourceTypeDefault": false } ] }
  2. byoip-owner-account 계정이 BYOIP CIDR을 IPAM으로 가져올 수 있도록 리소스 공유를 생성합니다. --resource-arns의 값은 이전 섹션에서 생성한 IPAM 풀의 ARN입니다. --principals의 값은 BYOIP CIDR 소유자 계정의 계정 ID입니다. --permission-arns의 값은 AWSRAMPermissionIpamPoolByoipCidrImport 권한의 ARN입니다.

    aws ram create-resource-share --region us-east-1 --profile ipam-account --name PoolShare2 --resource-arns arn:aws:ec2::123456789012:ipam-pool/ipam-pool-0a03d430ca3f5c035 --principals 111122223333 --permission-arns arn:aws:ram::aws:permission/AWSRAMPermissionIpamPoolByoipCidrImport
    { "resourceShare": { "resourceShareArn": "arn:aws:ram:us-east-1:123456789012:resource-share/7993758c-a4ea-43ad-be12-b3abaffe361a", "name": "PoolShare2", "owningAccountId": "123456789012", "allowExternalPrincipals": true, "status": "ACTIVE", "creationTime": "2023-04-28T07:32:25.536000-07:00", "lastUpdatedTime": "2023-04-28T07:32:25.536000-07:00" } }
  3. (선택 사항) 전송이 완료된 후 byoip-owner-account 계정이 IPAM 풀에서 퍼블릭 IPv4 풀로 IP 주소 CIDRS를 할당하도록 허용하려면 AWSRAMDefaultPermissionsIpamPool에 대한 ARN을 복사하고 두 번째 리소스 공유를 생성합니다. --resource-arns의 값은 이전 섹션에서 생성한 IPAM 풀의 ARN입니다. --principals의 값은 BYOIP CIDR 소유자 계정의 계정 ID입니다. --permission-arns의 값은 AWSRAMDefaultPermissionsIpamPool 권한의 ARN입니다.

    aws ram create-resource-share --region us-east-1 --profile ipam-account --name PoolShare1 --resource-arns arn:aws:ec2::123456789012:ipam-pool/ipam-pool-0a03d430ca3f5c035 --principals 111122223333 --permission-arns arn:aws:ram::aws:permission/AWSRAMDefaultPermissionsIpamPool
    { "resourceShare": { "resourceShareArn": "arn:aws:ram:us-east-1:123456789012:resource-share/8d1e229b-2830-4cf4-8b10-19c889235a2f", "name": "PoolShare1", "owningAccountId": "123456789012", "allowExternalPrincipals": true, "status": "ACTIVE", "creationTime": "2023-04-28T07:31:25.536000-07:00", "lastUpdatedTime": "2023-04-28T07:31:25.536000-07:00" } }

RAM에서 리소스 공유를 생성한 결과로 이제 byoip-owner-account 계정이 CIDR을 IPAM으로 이동할 수 있습니다.

5단계: IPAM으로 기존 BYOIP IPv4 CIDR 전송

이 섹션의 단계를 따르면 기존 IPv4 CIDR을 IPAM으로 전송할 수 있습니다. 이 단계는 byoip-owner-account 계정에서 수행해야 합니다.

중요

사용하여 AWS로 IPv4 주소 범위를 가져오면 첫 번째 주소(네트워크 주소)와 마지막 주소(브로드캐스트 주소)를 포함하여 범위 내의 IP 주소를 모두 사용할 수 있습니다.

BYOIP CIDR을 IPAM으로 전송하려면 BYOIP CIDR 소유자가 IAM 정책에서 다음 권한을 보유해야 합니다.

  • ec2:MoveByoipCidrToIpam

  • ec2:ImportByoipCidrToIpam

참고

이 단계에서 AWS Management Console 또는 AWS CLI를 사용할 수 있습니다.

AWS Management Console
BYOIP CIDR을 IPAM 풀로 전송하는 방법:
  1. https://console.aws.amazon.com/ipam/에서 IPAM 콘솔을 byoip-owner-account 계정으로 엽니다.

  2. 탐색 창에서 풀(Pools)을 선택합니다.

  3. 이 자습서에서 생성 및 공유한 최상위 풀을 선택합니다.

  4. 작업 > BYOIP CIDR 전송을 선택합니다.

  5. BYOIP CID 전송을 선택합니다.

  6. BYOIP CIDR을 선택합니다.

  7. 프로비저닝을 선택합니다.

Command line

다음의 AWS CLI 명령을 사용하여 BYOIP CIDR을 AWS CLI을 사용하는 IPAM 풀로 전송하는 방법:

  1. 다음 명령을 실행하여 CIDR을 전송합니다. --region 값이 BYOIP CIDR의 AWS 리전인지 확인합니다.

    aws ec2 move-byoip-cidr-to-ipam --region us-west-2 --profile byoip-owner-account --ipam-pool-id ipam-pool-0a03d430ca3f5c035 --ipam-pool-owner 123456789012 --cidr 130.137.249.0/24

    출력에 프로비저닝이 보류 중인 CIDR이 표시됩니다.

    { "ByoipCidr": { "Cidr": "130.137.249.0/24", "State": "pending-transfer" } }
  2. CIDR이 전송되었는지 확인합니다. 출력에 complete-transfer의 상태가 표시될 때까지 다음 명령을 실행합니다.

    aws ec2 move-byoip-cidr-to-ipam --region us-west-2 --profile byoip-owner-account --ipam-pool-id ipam-pool-0a03d430ca3f5c035 --ipam-pool-owner 123456789012 --cidr 130.137.249.0/24

    다음 예 출력에서는 상태를 보여줍니다.

    { "ByoipCidr": { "Cidr": "130.137.249.0/24", "State": "complete-transfer" } }

6단계: IPAM에서 CIDR 보기

이 섹션의 단계를 따르면 IPAM에서 CIDR을 볼 수 있습니다. 이 단계는 ipam-account 계정에서 수행해야 합니다.

AWS CLI를 사용하여 IPAM 풀에서 전송된 BYOIP CIDR을 보려면
  • 다음 명령을 실행하여 IPAM에서 관리되는 할당을 봅니다. --region 값이 BYOIP CIDR의 AWS 리전인지 확인합니다.

    aws ec2 get-ipam-pool-allocations --region us-west-2 --profile ipam-account --ipam-pool-id ipam-pool-0d8f3646b61ca5987

    출력에 IPAM의 할당이 표시됩니다.

    { "IpamPoolAllocations": [ { "Cidr": "130.137.249.0/24", "IpamPoolAllocationId": "ipam-pool-alloc-5dedc8e7937c4261b56dc3e3eb53dc46", "ResourceId": "ipv4pool-ec2-0019eed22a684e0b3", "ResourceType": "ec2-public-ipv4-pool", "ResourceOwner": "111122223333" } ] }

7단계: 정리

이번 섹션의 단계를 따르면 이 자습서에서 생성한 리소스를 제거할 수 있습니다. 이 단계는 ipam-account 계정에서 수행해야 합니다.

AWS CLI를 사용하여 이 자습서에서 생성한 리소스를 정리하려면
  1. IPAM 풀 공유 리소스를 삭제하려면 다음 명령을 실행하여 첫 번째 리소스 공유 ARN을 가져옵니다.

    aws ram get-resource-shares --region us-east-1 --profile ipam-account --name PoolShare1 --resource-owner SELF
    { "resourceShares": [ { "resourceShareArn": "arn:aws:ram:us-east-1:123456789012:resource-share/8d1e229b-2830-4cf4-8b10-19c889235a2f", "name": "PoolShare1", "owningAccountId": "123456789012", "allowExternalPrincipals": true, "status": "ACTIVE", "creationTime": "2023-04-28T07:31:25.536000-07:00", "lastUpdatedTime": "2023-04-28T07:31:25.536000-07:00", "featureSet": "STANDARD" } ] }
  2. 리소스 공유 ARN을 복사하고 이를 사용하여 IPAM 풀 리소스 공유를 삭제합니다.

    aws ram delete-resource-share --region us-east-1 --profile ipam-account --resource-share-arn arn:aws:ram:us-east-1:123456789012:resource-share/8d1e229b-2830-4cf4-8b10-19c889235a2f
    { "returnValue": true }
  3. 4단계: AWS RAM을 사용하여 IPAM 풀 공유에서 추가 리소스 공유를 생성한 경우 이전 두 단계를 반복하여 PoolShare2에 대한 두 번째 리소스 공유 ARN을 가져오고 두 번째 리소스 공유를 삭제합니다.

  4. 다음 명령을 실행하여 BYOIP CIDR의 할당 ID를 가져옵니다. --region 값이 BYOIP CIDR의 AWS 리전과 일치하는지 확인합니다.

    aws ec2 get-ipam-pool-allocations --region us-west-2 --profile ipam-account --ipam-pool-id ipam-pool-0d8f3646b61ca5987

    출력에 IPAM의 할당이 표시됩니다.

    { "IpamPoolAllocations": [ { "Cidr": "130.137.249.0/24", "IpamPoolAllocationId": "ipam-pool-alloc-5dedc8e7937c4261b56dc3e3eb53dc46", "ResourceId": "ipv4pool-ec2-0019eed22a684e0b3", "ResourceType": "ec2-public-ipv4-pool", "ResourceOwner": "111122223333" } ] }
  5. 퍼블릭 IPv4 풀에서 CIDR의 마지막 IP 주소를 해제합니다. 넷마스크가 /32인 IP 주소를 입력합니다. CIDR 범위의 각 IP 주소에 대해 이 명령을 다시 실행해야 합니다. CIDR이 /24인 경우 이 명령을 실행하여 /24 CIDR의 256개 IP 주소 각각을 프로비저닝 해제해야 합니다. 이 섹션의 명령을 실행하는 경우 --region의 값은 IPAM 리전과 일치해야 합니다.

    이 단계는 byoip-owner-account 계정으로 수행해야 합니다.

    aws ec2 deprovision-public-ipv4-pool-cidr --region us-east-1 --profile byoip-owner-account --pool-id ipv4pool-ec2-0019eed22a684e0b3 --cidr 130.137.249.255/32

    출력에 프로비저닝 해제된 CIDR이 표시됩니다.

    { "PoolId": "ipv4pool-ec2-0019eed22a684e0b3", "DeprovisionedAddresses": [ "130.137.249.255" ] }
  6. BYOIP CIDR을 다시 확인하고 프로비저닝된 주소가 더 이상 없는지 확인합니다. 이 섹션의 명령을 실행하는 경우 --region의 값은 IPAM 리전과 일치해야 합니다.

    이 단계는 byoip-owner-account 계정으로 수행해야 합니다.

    aws ec2 describe-public-ipv4-pools --region us-east-1 --profile byoip-owner-account

    출력에 퍼블릭 IPv4 풀의 IP 주소 수가 표시됩니다.

    { "PublicIpv4Pools": [ { "PoolId": "ipv4pool-ec2-0019eed22a684e0b3", "Description": "", "PoolAddressRanges": [], "TotalAddressCount": 0, "TotalAvailableAddressCount": 0, "NetworkBorderGroup": "us-east-1", "Tags": [] } ] }
  7. 다음 명령을 실행하여 최상위 풀을 삭제합니다.

    aws ec2 delete-ipam-pool --region us-east-1 --profile ipam-account --ipam-pool-id ipam-pool-0a03d430ca3f5c035

    출력에서 삭제 상태를 확인할 수 있습니다.

    { "IpamPool": { "OwnerId": "123456789012", "IpamPoolId": "ipam-pool-0a03d430ca3f5c035", "IpamPoolArn": "arn:aws:ec2::123456789012:ipam-pool/ipam-pool-0a03d430ca3f5c035", "IpamScopeArn": "arn:aws:ec2::123456789012:ipam-scope/ipam-scope-0087d83896280b594", "IpamScopeType": "public", "IpamArn": "arn:aws:ec2::123456789012:ipam/ipam-090e48e75758de279", "Locale": "us-east-1", "PoolDepth": 2, "State": "delete-in-progress", "Description": "top-level-pool", "AutoImport": false, "Advertisable": true, "AddressFamily": "ipv4", "AwsService": "ec2" } }