본문 바로가기

IT

51. 포워드 프록시(Forward Proxy) vs 리버스 프록시(Reverse Proxy) vs API Gateway 완벽 정리

안녕하세요, Hans 입니다.

클라이언트와 서버 사이에서 트래픽을 중계하는 컴포넌트들을 다루다 보면, 포워드 프록시, 리버스 프록시, 그리고 API 게이트웨이의 개념이 서로 혼동될 때가 많습니다. 모두 중간에 위치한다는 공통점이 있지만, 실제 차이점은 어느 쪽을 대변하는지어떤 문제를 해결하는지에 있습니다. 각 컴포넌트의 역할과 아키텍처상 위치를 명확하게 정리해 보겠습니다.

1. 포워드 프록시 (Forward Proxy)

포워드 프록시는 클라이언트 바로 옆(Client Network)에 위치합니다.

  • 대변하는 대상: 클라이언트를 대변하여 요청을 인터넷으로 전달합니다.
  • 익명성 보호: 노트북이나 모바일 기기가 요청을 보내면 프록시가 이를 대신 전달하므로, 목적지 웹사이트나 API에서는 사용자의 실제 IP 주소를 볼 수 없습니다.
  • 주요 기능 및 용도: 주로 기업 네트워크에서 사내 정책을 시행하고, 특정 웹사이트를 차단하며, 자주 발생하는 트래픽을 캐싱하여 네트워크 효율을 높이는 데 사용됩니다.

Forward Proxy

2. 리버스 프록시 (Reverse Proxy)

리버스 프록시는 서버 바로 옆(Origin Network)에 위치합니다.

  • 대변하는 대상: 백엔드의 오리진 서버(Origin Servers)들을 대변합니다.
  • 구조 은닉: 외부 클라이언트는 리버스 프록시 뒤에 몇 대의 서버가 존재하고 어떻게 구성되어 있는지 알 수 없습니다.
  • 주요 기능 및 용도: 들어오는 요청을 어떤 백엔드 서버가 처리할지 결정하고, TLS 연결을 종료(Termination)하며, 백엔드 서버가 공용 인터넷에 직접 노출되지 않도록 중간에서 보호합니다.
  • 대표적인 기술: 일반적으로 NGINX와 HAProxy가 널리 사용되며, 대개 이 리버스 프록시 앞에 로드 밸런서를 배치하는 아키텍처를 가집니다.

Reverse Proxy

3. API 게이트웨이 (API Gateway)

API 게이트웨이는 단순히 트래픽을 라우팅하는 수준을 넘어서는 특수한 형태의 리버스 프록시이자 API 관리(API Management) 솔루션입니다.

  • 대변하는 대상: 내부의 다양한 마이크로서비스(Users API, Orders API, Payments API 등)를 하나로 묶어 대변합니다.
  • 주요 기능: 인증(Auth), 속도 제한(Rate Limiting), API 키 관리, 버전 관리(Versioning), 요청 제어 및 변환(Transformation) 등 한 차원 높은 정책들을 수행합니다.
  • 존재 이유: API 게이트웨이가 없다면 개별 마이크로서비스가 유효성 검사, 속도 제한 로직, 요청 로깅 기능을 각자 직접 구현해야 합니다. 즉, 10개의 서로 다른 서비스에 동일한 인증 및 속도 제한 규칙을 일관되게 적용해야 할 때 추가하는 핵심 구성 요소입니다.

API Gateway

4. 한눈에 보는 핵심 차이점 비교

구분 포워드 프록시 (Forward Proxy) 리버스 프록시 (Reverse Proxy) API 게이트웨이 (API Gateway)
대변하는 주체 클라이언트 (Client Side) 오리진 서버 (Server Side) API 서비스 전체 (API Management)
핵심 목적 클라이언트 보호 및 트래픽 필터링 백엔드 서버 보호 및 요청 라우팅 API 정책 적용 및 마이크로서비스 관리
제공 기능 웹사이트 차단, 정책 시행, 트래픽 캐싱, IP 은닉 요청 주체 결정, TLS 종료, 공용 인터넷 노출 차단 인증, 속도 제한, API 키 관리, 버전 관리, 요청 변환

5. 실제 시스템에서의 아키텍처 계층

대부분의 실제 엔터프라이즈 시스템에서는 이 세 가지 컴포넌트가 서로 다른 계층(Layer)에서 유기적으로 실행됩니다.

  • 포워드 프록시: 클라이언트 네트워크단에서 아웃바운드(Outbound) 트래픽을 필터링합니다.
  • 리버스 프록시: 애플리케이션 서버 바로 앞에 위치하여 서버를 보호하고 기본적인 네트워크 처리를 담당합니다.
  • API 게이트웨이: API 인프라 앞에 위치하여 요청이 비즈니스 로직에 실제로 도달하기 직전에 상위 레벨의 정책(인증, 속도 제한 등)을 일괄 적용합니다.

 

Thanks

Hans