퍼블릭 IPv4 주소 사용 시 비용 최적화 방법

위다빈
Cloud Villains
Published in
8 min readDec 7, 2023

본 게시글은 아래 링크의 게시물을 바탕으로 작성되었습니다.

AWS Public IPv4 주소 유료화 개시

2020년 8월 21일, LACNIC(라틴아메리카 및 카리브해 지역을 대상으로 하는 인터넷 주소 등록기관)에서는 마지막 IPv4 할당을 완료하였다고 발표했습니다. 이로 인하여 사용 가능한 IPv4 주소는 더이상 남아있지 않습니다. 이처럼 IPv4 주소가 고갈된 상황 속에서 AWS는 IPv4 주소의 유료화 정책을 발표하였습니다.

IPv4 Exhaustion: LACNIC Has Assigned the Last Remaining Address Block

2024년 2월 1일 기준으로 AWS의 모든 Public IPv4 주소에 대해 서비스 연결 여부와 무관하게 $0.005 달러의 요금이 발생합니다.

기존에는 계정에 할당되어 있지만 사용하지 않는 Public IPv4에만 요금이 부과되었다면, 요금 체계 변경 이후로는 사용중인 IPv4 주소에 대해서 모두 비용이 부과됩니다.

유휴 Public IPv4와 서비스와 연결된 IPv4에 대한 요금은 $0.005로 동일합니다.

AWS에서 지원하는 Public IPv4 주소의 유형은 다음과 같습니다.

  • EC2 Public IPv4 : Public IPv4 주소 자동 할당 활성화 옵션이 켜진 서브넷에서 EC2 인스턴스를 생성한 경우
  • Elastic IP : AWS 계정에 할당된 Public IPv4 주소
  • 서비스 관리형 Public IPv4 : 관리형 서비스를 배포할 때 리소스에 할당하는 Amazon 소유의 Public IPv4 주소
    서비스 관리형 Public IPv4를 사용하는 AWS 서비스 https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html#pricing
  • BYOIP : 사용자 소유의 Public IPv4 주소를 AWS로 가져온 경우

AWS에서 무료로 Public IPv4를 사용할 수 있는 방법은 BYOIP를 통해서 소유하고 있던 Public IPv4 주소를 AWS로 가져오는 것 뿐입니다.

인스턴스 개수에 따른 IPv4 주소 비용 비교

EC2 인스턴스에 Public IP 할당이 많이 필요하지 않은 워크로드의 경우 큰 비용이 발생하지 않지만, MMORPG 게임과 같이 Public IPv4 주소를 많이 사용하는 워크로드의 경우 비용적으로 부담이 갈 수 있습니다.

만약 Public IPv4 주소와 연결된 인스턴스가 100개일 경우, 월 $365 (약 50만원)의 추가 비용이 부과됩니다.

하지만 비용이 부과된다고 해서 무조건 Public IP 주소 할당을 최소화하여야 하는 것은 아닙니다.

100개의 인스턴스를 사용하고 있으며, 총 데이터 전송양은 100GB인 워크로드가 있다고 가정하겠습니다. 인스턴스들은 아웃바운드 통신을 위해 인터넷을 이용해야 합니다.

모든 인스턴스(100개)가 Public IPv4 주소가 필요할 경우 비용은 월 $365가 부과됩니다.

  • EC2 Public IPv4 요금: 100 EC2 Public IP x $0.005/IP/시간 x 730시간/월 = $365/월

모든 인스턴스에 Public IPv4 주소를 부과하는 대신, NAT 게이트웨이를 사용했을 때에는 월 $77.50가 부과됩니다.

  • NAT 게이트웨이 시간당 요금: $0.045/시간/NAT 게이트웨이 x 730시간 x NAT 게이트웨이 2개 = $65.70/월
  • NAT 게이트웨이 데이터 처리 요금: $0.045/GB x 100GB = $4.50/월
  • 사용 중인 Public IPv4 주소 요금: $0.005/IP/시간 x 730시간 x 탄력적 IP 2개 = $7.30/월

이처럼 인스턴스의 개수가 많을 때에는 인스턴스를 프라이빗 서브넷에 배치하고 NAT 게이트웨이를 이용하는 것이 유리합니다.

하지만 인스턴스를 4개만 사용한다면 비용적으로 유리한 구성은 달라지게 됩니다.

모든 인스턴스(4개)가 Public IPv4 주소가 필요할 경우 비용은 월 $14.60가 부과되므로 NAT 게이트웨이를 사용하는 것보다(월 $77.50청구)보다 저렴해집니다.

  • EC2 Public IPv4 요금: 4 EC2 Public IP x $0.005/IP/시간 x 730시간 = $14.60/월

즉, 인스턴스의 개수가 적을 땐 인스턴스에 Public IPv4 주소를 사용하는 것이 더 유리해집니다.

Public IPv4 주소 사용 시 비용 최적화 방안

워크로드의 특징을 고려하여 Public IPv4 주소 사용을 최적화하여야 비용효율적으로 인프라를 운영할 수 있습니다. Public IPv4 주소 사용에 따른 추가 비용에 대하여, AWS는 비용 최적화 방안을 제시하고 있습니다.

  1. IPv6 채택 → 듀얼 스택 아키텍처 구성
  2. Public IPv4 자동 활성화 옵션 비활성화 (VPC 서브넷, EC2 인스턴스)
  3. EIC를 통한 리소스 원격 연결
  4. VPC IP 주소 관리자를 통한 IPv4 사용 모니터링

IPv6 채택 → 듀얼 스택 아키텍처 구성

IPv4 주소가 소진됨에 따라 IPv6으로의 전환의 중요성은 커지고 있습니다. IPv6 현재 AWS에서는 IPv6 주소에 대한 비용을 부과하지 않습니다.

Public IP가 필요한 EC2 인스턴스의 경우, Public IPv4를 할당하는 대신 IPv6 주소를 사용하여 외부와 통신할 수 있습니다.

참고자료

Public IPv4 주소 자동 활성화 옵션 비활성화

모든 인스턴스에 Public IP가 필요하지는 않습니다. 만약 서브넷 혹은 인스턴스에 자동 할당 옵션이 켜져 있을 경우에 리소스에 불필요한 Public IP 할당이 이루어질 가능성이 생기게됩니다.

따라서 VPC 서브넷과 EC2 인스턴스 이용 시 Public IPv4 자동 할당 옵션을 비활성화할 것을 권장합니다.

  • 서브넷 — Public IPv4 주소 자동 할당 활성화 → 체크 해제
  • EC2 — Public IP 자동 할당 → 비활성화

EIC를 통한 리소스 원격 연결

Elastic IP를 사용하는 사용 사례 중 하나는 인스턴스 원격 연결입니다. AWS 상에서 프라이빗 인스턴스에 접근해야 하는 경우, Bastion Host에 Elastic IP를 할당하는 방식을 이용해왔습니다.

EIC 엔드포인트를 사용하면 Public IPv4주소를 할당하지 않아도 SSH 및 RDP 연결이 가능합니다. EIC 엔드포인트 사용의 이점은 다음과 같습니다.

  • Public IPv4 주소 할당 불필요
  • IGW나 NAT 게이트웨이 없이 리소스에 접근 가능
  • 에이전트 설치 불필요
  • IAM 및 보안그룹을 통한 액세스 제어
  • 콘솔에서 연결 가능
  • 사용에 따른 추가 비용 없음

Public IP Insight를 통한 IPv4 사용 모니터링

Public IP Insight는 IPAM의 기능으로 Public IPv4 주소의 유형(EIP / 서비스 관리형 IP / EC2 Public IP / BYOIP) 과 사용량(서비스 연결 여부)를 모니터링할 수 있게 해줍니다. Public IP Insight를 통해 Public IP가 어떤 리소스와 연결되어 있는지 한눈에 파악할 수 있어 불필요한 Public IP 자원을 최소화할 수 있습니다.

Public IP Insight 이용에는 추가적인 비용이 발생하게 됩니다. 관리 중인 활성 IP 주소마다 시간 당 $0.00027의 비용이 부과됩니다.

--

--