본문 바로가기
Network

Proxy (프록시)

by yororing 2024. 7. 10.

00 개요

  • 목적: 코드 분석 중 kafka를 다룰 때 producer proxy라는 개념이 등장하는데 여기서 proxy가 뭔지 정리하고자 함

01 Proxy

1. 정의

  • '대리', '대신'
  • 프로토콜에서는 대리 응답 등에서 사용하는 개념

 

  • 클라이언트와 서버 사이에 존재
  • 중계기로서 대리로 통신을 수행하는 것을 Proxy라고 하며, 그 중계 기능을 하는 주체를 Proxy Server라고 함

2. Proxy Server 종류

  • 2가지 종류: 1) Forward Proxy 2) Reverse Proxy

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

  • 보통 말하는 프록시가 바로 이 포워드 프록시를 가리킴
  • Client와 Server 사이에 위치하여 요청을 중계하며, 요청과 응답은 Proxy Server를 거침
  • 클라이언트를 감추는 효과 있음

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

  • 포워드 프록시와 마찬가지로 요청과 응답이 Proxy Server로 이동하는데, 포워드 프록시와 다르게 Server들이 주로 내부망으로 구성되며 프록시에게만 연결을 허용
  • 즉, 서비스를 위한 보안 채널을 구축
  • 이런 경우 Client가 Server에 직접 접근이 불가능하므로, Reverse Proxy에서 요청을 적극적으로 중계하는 Load Balancing의 역할을 수행하기도 함
  • 서버를 감추는 효과 있음 

 

3. Proxy Server 사용 이유

1) 개인정보 보호 (IP 주소)

  • 프록시 서버 없이 클라이언트가 서버에 요청 시 본인의 IP 주소가 노출되는데, 프록시 서버를 사용 시 서버측에서 나의 IP가 아닌 프록시 서버의 IP를 보게 됨
  • 즉, IP 숨기기 가능

2) 캐시를 사용하여 속도 향상

  • 프록시 서버는 웹페이지를 가져올 때 자신의 DB에 최근 데이터를 저장하는데, 이것을 Cache라 함
  • 이렇게 될 시, 같은 요청이 들어오면 Cache자원을 반환하여 서비스의 속도를 높이고 대역폭도 줄이기 가능

3) 로그 기록 및 관리

  • 서버 측에선 클라이언트의 기록 대신 프록시 서버의 기록이 있지만, 프록시 서버에겐 클라이언트의 기록이 남아있음
  • 이 기록들을 보면 어떤 IP에서 어떤 IP로 얼마나 접속해 있는지 확인할 수 있고, 특정 IP가 방문할 수 있는 웹사이트도 제한할 수 있어서 회사에서 많이 사용함

4) 접속 우회 가능

  • 특정 사이트에서 IP를 검사해 한국에서의 접속을 차단하는 경우가 있는데, 이런 경우 프록시 서버를 사용해 접속 시 다른나라에서 접속한 것처럼 우회 가

참조

  1. https://velog.io/@younghyun/%ED%94%84%EB%A1%9D%EC%8B%9CProxy%EB%9E%80 
  2.  
  3.  
  4.  

 

 

 

 

'Network' 카테고리의 다른 글

소켓과 패킷 (Socket Packet 네트워크)  (0) 2024.09.12
TCP/IP: 안전하고 신뢰성 있는 통신  (0) 2024.09.12
Subnet Mask란 (NETMASK 설정)  (0) 2024.04.16
네트워크의 기초 지식  (1) 2024.03.29
OSI 모델  (0) 2024.03.29