Forward Proxy & Reverse Proxy

김민건·2021년 10월 31일
0

네트워크

목록 보기
1/6

Proxy Server

프록시 서버는 클라이언트가 자신을 통해 다른 네트워크 서비스에 간접적으로 접속할 수 있도록 중계 역할을 하는 서버를 의미한다.

일반적으로 서버 개발자가 아닌 User 입장에서 Proxy라는 용어를 사용하는 경우는 Forward Proxy다. 아마 한번쯤 다들 사용해봤을 것이라 생각되는데, 이는 클라이언트의 IP를 숨겨 접근할 수 없는 사이트에 접속하거나, IP 추적을 당하지 않기 위해 사용된다.

하지만 개발자 입장에서는 훨씬 심도 깊고, 다양한 방향으로 사용된다.

이러한 프록시 서버는 크게 Forward ProxyReverse Proxy로 나뉜다.


Forward Proxy

클라이언트가 해당 서버에 직접 요청하는 것이 아니라, 프록시 서버를 통해 해당 서버에 요청을 대신 전송하고 해당 결과를 클라이언트에게 전달해준다.

→ 즉, 서버는 클라이언트가 누구인지 모른다.

→ 인터넷에 접근하는 것보다, 프록시 서버를 먼저 호출하는 것이 포워드 프록시

목적

  1. 캐싱 기능을 위해 사용된다.
  2. 정해진 사이트에서만 연결가능하도록 하여 접근 제한을 둔다.

Reverse Proxy

클라이언트가 서버에 요청을 보낼 때, 리버스 프록시가 요청을 받아서 그에 해당하는 서버에 전달하고 이를 반환해주는 형태이다.

→ 클라이언트는 실제 서버의 IP를 알 수 없다.

→ 인터넷에 먼저 접근하고, 서버 내부 인트라넷에 있는 프록시 서버를 호출하는 형태

목적

  1. DMZ라 불리는 내부 네트워크와 외부 네트워크 사이에 존재하는 구간에 WAS가 직접적으로 위치하는 상황을 배제할 수 있다
    -> 대신 Web Server가 위치하여 WAS가 털려 DBMS까지 털리는 경우를 1차적으로 방지할 수 있음
  2. 트래픽 분산을 유연하게 적용할 수 있다
  3. 자원 사용률을 기록하고 콘텐츠에 대한 접근 정책을 적용할 수 있다.
  4. 마찬가지로 캐싱 기능도 제공할 수 있다.

profile
백엔드 꿈나무

0개의 댓글