본문 바로가기

네트워크/네트워크 용어 정리

proxy 및 proxy server 란?

# proxy와 proxy server에 대해서 알아본다.

1. proxy란?

프록시 서버는 클라이언트가 자신을 통해서 다른 네트워크 서비스에 간접적으로 접속할 수 있게 해 주는 컴퓨터 시스템이나 응용 프로그램을 가리킨다. 서버와 클라이언트 사이에 중계기로서 대리로 통신을 수행하는 것을 가리켜 '프록시', 그 중계 기능을 하는 것을 프록시 서버라고 부른다. [위키백과]

- proxy의 사전적 의미는 아래와 같다.

proxy 
- 대리[위임](권)
- 대리인
- 격식 또는 전문 용어 (측정·계산하려는 다른 것을 대표하도록 이용하는) 대용물

2. proxy server란?

proxy 서버를 사용하는 이유?

- 보안 : 서버의 주소를 노출하지 않고 익명의 사용자가 직접 서버에 붙는것이 아닌 proxy server로 붙으므로 서버의 주요 정보를 노출시키지 않을 수 있다.

- 캐시 : 이전에 작업해둔 내용을 저장해두어(캐싱) 재 요청을 보낼때 서버를 거치지 않고 데이터를 주고 받으므로 속도가 더 빨라 질 수 있다.

- 우회 : ip 주소를 감출수 있으므로 어느 곳에서 접속한지를 숨길 수 있다. 이는 다시 말하면 IP를 통해 접속을 감지하는 사이트를 프록시 서버를 중간에 두어 감지를 어렵게 하여 우회 할 수 있다.

3. 프록시의 종류

- Forward Proxy

보안을 위해 Forward Proxy를 사용하는 경우가 많다.

Forward Proxy는 클라이언트에서 요청을 할때 직접 요청을 하는것이 아닌 프록시 서버에 요청을 하고, 프록시 서버가 요청받는 내용을 처리하는 방식이다.

- Reverse Proxy

Reverse Proxy는 Forward Proxy와는 반대로 서버에서 클라이언트로 직접 전달하지 않고 서버를 거치는 방식이 Reverse Proxy 방식이다.

4. 포워드 프록시 vs 리버스 프록시

위 그림만 봐서는 포워드 프록시 서버와 리버스 프록시 서버의 차이점이 거의 없다.

하지만 분명 차이가 있는게, 포워드 프록시 서버는 클라이언트 앞에 놓여져 있는 반면, 리버스 프록시 서버는 웹서버 앞에 놓여 있다고 볼 수 있다.

포워드 프록시 서버를 사용하면 클라이언트와 직접 통신하는 웹서버가 없다는 것을 알 수 있다. 반면 리버스 프록시 서버를 사용하면 웹서버와 직접 통신하는 클라이언트가 없다는 것을 알 수 있다.

즉, 클라이언트가 트래픽을 프록시 서버로 보낸 후 인터넷으로 전송 하는것은 포워드 프록시 라고 볼 수 있고, 클라이언트가 인터넷으로 전송 후 프록시 서버로 이동하는것을 리버스 프록시 라고 볼 수 있다.

- 위의 그림을 보면 직관적으로 확인이 가능하다.