AWS

[AWS] VPC EndPoint

cc_blog 2026. 8. 1. 20:49
[Cloud Computing] AWS VPC Endpoint 완전 정리
CLOUD COMPUTING · NETWORKING

VPC Endpoint

인터넷을 거치지 않고 AWS 서비스와 대화하는 방법. Endpoint의 일반 개념부터 Interface·Gateway·Gateway Load Balancer 세 유형, PrivateLink, DNS·Private DNS 동작 원리, IP 유형까지 전부 다룬다.

CategoryLevelReadsStatus
Cloud Computing · Networking중급 ~ 고급약 18분VERIFIED
01 · Concept

Endpoint(엔드포인트)란?

네트워크에서 엔드포인트는 통신이 시작되거나 끝나는 지점을 뜻한다. API를 호출할 때 두드리는 URL도 엔드포인트고, 서버에 연결하는 IP·포트도 엔드포인트다.

일반적으로 AWS 서비스(S3, DynamoDB 등)를 호출하면, 요청은 인터넷을 거쳐 그 서비스의 퍼블릭 엔드포인트(예: s3.ap-northeast-2.amazonaws.com)로 향한다. VPC 안의 EC2가 이 요청을 보내려면 인터넷 게이트웨이(IGW)나 NAT Gateway를 거쳐 인터넷으로 나갔다가 다시 AWS로 들어와야 한다 — 같은 AWS 안에서 통신하는데도 굳이 밖으로 나갔다 들어오는 셈이다.

02 · VPC Endpoint

VPC Endpoint란?

VPC Endpoint는 VPC 내부에서 AWS 서비스(또는 다른 VPC의 서비스)로 인터넷을 거치지 않고 AWS 백본 네트워크 안에서 직접 연결할 수 있게 해주는 가상 디바이스다.

인터넷 경유(기존 방식)

EC2 → NAT Gateway/IGW → 인터넷 → S3. NAT Gateway 비용과 인터넷 구간 레이턴시가 발생하고, 퍼블릭 인터넷에 노출된다.

VPC Endpoint 경유

EC2 → VPC Endpoint → S3. AWS 백본 네트워크 안에서 끝난다. 인터넷 노출이 없고, 대부분 더 저렴하며 지연도 낮다.

보안 관점에서도 중요하다 — 프라이빗 서브넷(인터넷 라우팅이 아예 없는 서브넷)에 있는 EC2도 VPC Endpoint만 있으면 인터넷 없이 S3나 DynamoDB에 접근할 수 있다. 규제 환경에서 "이 서버는 인터넷에 절대 나갈 수 없다"는 요건을 지키면서도 AWS 서비스는 정상적으로 써야 할 때, VPC Endpoint가 그 해답이다.

TERM NAT Gateway와의 차이

NAT Gateway는 프라이빗 서브넷이 "인터넷"으로 나가는 통로다. VPC Endpoint는 "AWS 서비스"로 가는 전용 통로라 인터넷을 아예 거치지 않는다. S3·DynamoDB처럼 VPC Endpoint를 지원하는 서비스는 NAT Gateway 없이도 접근 가능해진다.

03 · Types

VPC Endpoint의 3가지 유형

INTERFACE GATEWAY GATEWAY LOAD BALANCER
구분Interface EndpointGateway EndpointGateway Load Balancer Endpoint
기반 기술ENI (PrivateLink)라우팅 테이블ENI (트래픽 투명 전달)
지원 대상대부분의 AWS 서비스 + 사설 서비스S3, DynamoDB 전용서드파티/자체 어플라이언스
주소 방식프라이빗 IP + DNS 이름프리픽스 리스트 기반 라우팅ENI로 트래픽 리다이렉트
비용시간당 요금 + 데이터 처리 요금무료시간당 요금 + 데이터 처리 요금
보안 제어보안 그룹 + 엔드포인트 정책엔드포인트 정책 + 라우팅 테이블보안 그룹(어플라이언스 측)
04 · Interface Endpoint
INTERFACE

Interface Endpoint — 동작 방식

Interface Endpoint는 서브넷 안에 ENI(Elastic Network Interface)를 생성하고, 여기에 서브넷 대역의 프라이빗 IP를 할당한다. 이 기술의 기반이 AWS PrivateLink다.

VPC (프라이빗 서브넷) EC2 Instance 프라이빗 서브넷 ENI (Interface Endpoint) 프라이빗 IP 할당됨 AWS 서비스 (예: Secrets Manager) PrivateLink가 ENI ↔ 서비스 구간을 AWS 백본 내부로 안전하게 연결 보안 그룹으로 ENI에 대한 접근을 제어
Interface Endpoint = 서브넷에 생성된 ENI, PrivateLink로 대상 서비스와 연결
  • 대부분의 AWS 서비스(EC2 API, SSM, KMS, Secrets Manager, ECR, CloudWatch Logs, SQS, SNS 등)와 다른 계정이 노출한 사설 서비스(SaaS 등)에도 사용할 수 있다.
  • AZ별로 서브넷에 ENI를 만들 수 있어, 여러 AZ에 걸쳐 고가용성 구성이 가능하다.
  • 보안 그룹으로 "누가 이 엔드포인트에 접근할 수 있는지"를, 엔드포인트 정책으로 "이 엔드포인트로 어떤 API 호출까지 허용할지"를 이중으로 통제한다.
TERM AWS PrivateLink

서비스 제공자(AWS 또는 제3자)와 소비자 VPC를 인터넷 노출 없이 연결해주는 기반 기술. Interface Endpoint는 이 PrivateLink 위에서 동작하는 소비자 측 접속점이다.

05 · Gateway Endpoint
GATEWAY

Gateway Endpoint — 동작 방식

Gateway Endpoint는 ENI를 만들지 않는다. 대신 라우팅 테이블에 항목을 추가해서, S3나 DynamoDB로 향하는 트래픽을 인터넷이 아니라 엔드포인트로 보내도록 경로 자체를 바꾼다.

EC2 Instance 프라이빗 서브넷 Route Table Dest: pl-xxxx (S3 Prefix List) Target: vpce-xxxx (Gateway Endpoint) S3 / DynamoDB AWS 서비스 S3/DynamoDB로 향하는 트래픽만 프리픽스 리스트로 매칭되어 엔드포인트로 라우팅됨 ENI가 없어 데이터 처리 요금이 없고, 완전 무료로 제공된다
Gateway Endpoint = 라우팅 테이블 엔트리, S3·DynamoDB 전용, ENI 없이 무료
비용 팁 S3·DynamoDB를 많이 쓰는 워크로드라면 Gateway Endpoint를 켜지 않을 이유가 없다. NAT Gateway를 거치던 트래픽을 Gateway Endpoint로 돌리면 NAT Gateway 데이터 처리 비용 자체가 사라진다 — 설정도 5분이면 끝나는데 비용 절감 효과는 즉각적이다.
TERM Prefix List

특정 AWS 서비스가 사용하는 IP 대역을 하나의 이름으로 묶어놓은 것. 라우팅 테이블에서 "S3로 가는 모든 트래픽"을 이 프리픽스 리스트 하나로 지정할 수 있어 개별 IP를 관리할 필요가 없다.

06 · Gateway Load Balancer Endpoint
GWLB

Gateway Load Balancer Endpoint

세 번째 유형은 방화벽, 침입 탐지(IDS/IPS) 같은 서드파티 네트워크 어플라이언스를 트래픽 경로에 투명하게 끼워 넣기 위한 것이다. VPC 안의 트래픽이 Gateway Load Balancer Endpoint를 거쳐 다른 VPC(보통 보안 전용 VPC)의 Gateway Load Balancer 뒤에 있는 어플라이언스로 전달되고, 검사가 끝나면 다시 원래 경로로 돌아온다.

동작 원리

GENEVE 프로토콜로 트래픽을 캡슐화해 어플라이언스로 전달하고, 어플라이언스가 검사·필터링 후 그대로 돌려보낸다. 애플리케이션 입장에서는 이 과정이 완전히 투명하다.

사용 사례

중앙집중형 방화벽 아키텍처. 여러 VPC의 트래픽을 하나의 보안 VPC로 모아 일괄 검사하고 싶을 때 표준적으로 쓰이는 패턴이다.

08 · DNS & Private DNS

DNS와 Private DNS 동작 원리

Interface Endpoint를 만들 때 Private DNS 활성화 옵션이 핵심이다. 이걸 켜면, 애플리케이션 코드를 전혀 바꾸지 않고도 기존 퍼블릭 DNS 이름(예: secretsmanager.ap-northeast-2.amazonaws.com)이 VPC 안에서는 자동으로 엔드포인트의 프라이빗 IP로 해석되도록 오버라이드된다.

애플리케이션 코드: secretsmanager.ap-northeast-2.amazonaws.com 그대로 호출 → Private DNS가 활성화되어 있으면 코드 수정이 전혀 필요 없다 Private DNS ON → 엔드포인트의 프라이빗 IP로 응답 (Private Hosted Zone 자동 생성) Private DNS OFF → 기존 퍼블릭 IP로 응답 (엔드포인트 전용 DNS로 별도 호출 필요)
Private DNS를 켜면 기존 서비스 이름 그대로 프라이빗 IP로 자동 해석된다

내부적으로 이 동작은 Private Hosted Zone(Route 53)을 통해 이뤄진다. Interface Endpoint 생성 시 AWS가 해당 서비스 도메인에 대한 프라이빗 호스팅 영역을 VPC에 자동으로 연결해서, 그 VPC 안에서만 도메인 이름이 엔드포인트 IP로 풀리게 만든다. VPC 밖에서 같은 도메인을 조회하면 여전히 퍼블릭 IP가 나온다 — 철저히 VPC 스코프 안에서만 동작하는 오버라이드다.

TERM Private Hosted Zone

특정 VPC(들) 안에서만 조회되는 프라이빗 Route 53 호스팅 영역. Interface Endpoint의 Private DNS 기능이 내부적으로 이 메커니즘을 사용한다.

09 · DNS Record IP Types

DNS 레코드 IP 유형

Interface Endpoint는 ENI에 할당되는 DNS 레코드의 IP 체계를 선택할 수 있다. 어떤 클라이언트가 어떤 프로토콜로 접속하느냐에 따라 고른다.

유형반환되는 레코드적합한 경우
IPv4A 레코드만대부분의 기존 워크로드, IPv6 미지원 환경
Dual-stackA + AAAA 레코드 모두IPv4·IPv6 클라이언트가 혼재하는 전환기 환경
IPv6AAAA 레코드만IPv6 전용으로 표준화된 신규 환경

여러 AZ에 서브넷을 지정하면 각 AZ의 ENI가 각각의 IP를 갖고, DNS 이름은 이 IP들을 라운드로빈으로 반환한다 — 별도의 로드밸런서 없이도 AZ 간 기본적인 분산과 장애 시 다른 AZ IP로의 자연스러운 페일오버 효과를 얻는다.

참고 Gateway Endpoint는 ENI·DNS 레코드 개념 자체가 없다 — 라우팅 테이블 기반이라 IP 유형 선택이 필요 없다. 이 섹션의 IP 유형 선택은 Interface Endpoint에만 해당한다.
10 · Use Cases

유용한 엔드포인트 서비스 & 사용 사례

서비스엔드포인트 유형대표 사용 사례
S3Gateway (Interface도 지원)프라이빗 서브넷에서 NAT 없이 객체 저장소 접근
DynamoDBGatewayNAT Gateway 비용 없이 테이블 조회/쓰기
Secrets Manager / SSM Parameter StoreInterface인터넷 노출 없이 자격증명·설정값 조회
KMSInterface암복호화 API 호출을 프라이빗하게
ECRInterface프라이빗 서브넷의 ECS/EKS가 컨테이너 이미지 풀(pull)
CloudWatch LogsInterface로그 전송을 인터넷 경유 없이 처리
SQS / SNSInterface메시징 트래픽을 AWS 백본 내부로 한정

대표 시나리오 — 금융권처럼 인터넷 아웃바운드 자체가 금지된 환경, 대용량 S3 트래픽으로 NAT 비용이 큰 서비스, 여러 계정에 걸쳐 사내 API를 프라이빗하게 제공해야 하는 조직, 트래픽을 반드시 중앙 방화벽으로 검사해야 하는 보안 요건.

11 · Trade-offs & Cost

장단점과 비용 구조

장점
  • 트래픽이 인터넷에 노출되지 않아 공격 표면이 줄어듦
  • NAT Gateway 데이터 처리 비용 절감(특히 Gateway Endpoint)
  • AWS 백본 내부 통신이라 지연시간이 낮고 안정적
  • 프라이빗 서브넷만으로도 완결된 아키텍처 구성 가능
단점
  • Interface Endpoint는 서비스·AZ 수만큼 시간당 비용이 누적됨
  • 모든 서비스가 VPC Endpoint를 지원하는 건 아님
  • Private DNS 설정 실수 시 다른 서비스의 이름 해석과 충돌 가능
  • 보안 그룹·엔드포인트 정책·라우팅을 함께 설계해야 해 초기 구성 복잡도가 있음
12 · Wrap-up

정리

VPC Endpoint는 결국 "AWS 서비스를 인터넷 밖으로 안 나가고 부르는 방법"이다. ENI 기반으로 대부분의 서비스를 커버하는 Interface Endpoint, S3·DynamoDB 전용으로 완전 무료인 Gateway Endpoint, 트래픽을 어플라이언스로 투명하게 우회시키는 Gateway Load Balancer Endpoint — 세 가지 도구를 상황에 맞게 조합하고, Private DNS로 코드 변경 없이 자연스럽게 전환하는 것이 핵심이다.

CLOUD COMPUTING BLOG VPC ENDPOINT · PRIVATELINK · DNS