프록시 서버

- 대리라는 뜻의 Proxy에서 알 수 있듯 프록시 서버는 클라이언트가 서버와 소통할 때, 서버에 바로 접근하지 않고 자신을 통해 서버에 접근할 수 있도록 해주는 일종의 대리서버이다
- 일반 사용자는 지역이 제한되어 있는 서비스를 이용하기 위해 우회하거나, 캐시를 통해 더 빠른 이용을 하기 위해 프록시 서버를 사용한다.
프록시 서버의 종류
프록시 서버는 위치에 따라 Forward Proxy와 Reverse Proxy로 나뉜다. 다시 말해, 프록시 서버가 클라이언트에 가까이 있는지, 서버에 가까이 있는지로 구분할 수 있다.
Forward Proxy

- Forward Proxy는 위의 그림과 같이 클라이언트 가까이에 위치한 프록시 서버로 클라이언트를 대신해 서버에 요청을 전달한다. 주로 캐싱을 제공하는 경우가 많아 사용자가 빠른 서비스를 이용을 할 수 있도록 도와준다.
아래는 Forward Proxy를 사용함으로써 얻을 수 있는 장점이다
- 캐싱을 통해 빠른 서비스 이용가능
- 클라이언트는 서비스의 서버가 아닌 프록시 서버와 소통하게 되는데, 이러한 과정에서 여러 클라이언트가 동일한 요청을 보내는 경우 첫 응답을 하며 결과 데이터를 캐시에 저장해 놓고, 이후 서버에 재 요청을 보내지 않아도 다른 클라이언트에게 빠르게 전달할 수 있다.
- 보안
- 클라이언트에서 프록시 서버를 거친 후 서버에 요청이 도착하기 때문에, 서버에서 클라이언트의 IP추적이 필요한 경우 클라이언트의 IP가 프록시 서버의 IP가 전달된다. 서버가 응답받은 IP는 프록시 서버의 IP이기 때문에 서버에게 클라이언트를 숨길 수 있다.
Reverse Proxy
