Proxy Server란
Client와 Server의 통신을 중개하는 Server
Proxy Server 작동 원리
Client가 Server에 요청을 보낸다.
요청에 대한 패킷은 바로 Server로 가는 것이 아닌, Proxy Server로 이동한다.
Proxy Server는 Client IP를 자체 IP로 변환한다.
Proxy Server는 Server로 요청 패킷을 전달한다.
Server는 응답 패킷을 Proxy Server로 전달한다.
Proxy Server는 응답 패킷을 Client에게 전달한다.
요청과 응답 모두 직접적인 전달이 아닌 Proxy Server를 거쳐 전달
Proxy Server 역할
보안
Client IP가 Proxy Server에서 변환되기 때문에, 역추적이 불가능해 유저의 정체를 숨길 수 있다. (Reverse proxy)
Server의 IP를 숨길 수 있어 해커들의 공격을 막는데 유용하다. (Forward proxy)
캐싱을 통한 성능 향상
Server의 정보를 Proxy Server에 캐싱해둠으로써, 더 빠른 조회가 가능해진다. (Reverse proxy)
로드 밸런싱을 통한 부하 분산
Proxy Server가 Client의 요청을 받으면, 요청을 처리할 Server를 선택한다. 이를 통해 single server의 과부하를 방지한다. (Reverse proxy)
Forward Proxy Server

요청이 Client에서 Server 방향일 때, 보안을 목적으로 요청은 Forward Proxy Server를 거치게 된다.
Server로 직접 전달되는 것이 아닌 Proxy Server를 거치는 방식
Reverse Proxy Server

서버의 정보를 캐싱하거나, 로드 밸런서의 역할 및 보안을 목적으로 Reverse Proxy Server를 거치게 된다.
Server가 Client로 응답을 하기위해 Proxy Server를 거치는 방식