Proxy

2022. 3. 27. 03:53Network

 

  • What is Proxy

Proxy는 사전적 의미로 대리인이라는 의미

즉 Server와 Clinet사이의 중계역할을 하며 그 중계 기능을 하는 것을 Proxy Server라고 부름

Proxy Server는 Clinet가 Server에게 요청을 하면 Proxy Server가 이 요청을 가로채는 중개자 역할을 하고 해당 Client를 대신하여 Server와 통신함. 반대인 Server의 응답입자이면은 Proxy Server는 Client처럼 동작함.

Proxy Server는 요청된 내용을 캐시를 이용하여 저장함-> 캐시안에 있는 정보를 요구하는 요청에 대해서는 원격서버에 접속하여 데이터를 가져올 필요하 없게되어서 전송시간 절약, 불필요한 외부연결 x, 외부와 트래픽감소로 네트워크 병목현상방지가능함

 


  • Kinds of Proxy Server

1. Forward Proxy

- Forward Proxy는 내부망[internal network] -> 외부망으로 데이터가 전달될때 Client에서 요청한 정보를 바로 Internet이 아닌 Proxy에 전달됨. 보다시피 Client와 Internet 사이에 위치하고 있음. 여기서 Server는 요청한 정보를 Client로 인식하지 않고 Proxy 요청으로 인식함[Client의익명성보장]. 즉 Server가 응답하면 Proxy에 대한 응답을 처리함 -> Server는 Proxy Server를 통해 요청받기 때문에 Client 정보를 알수없다는 점이 존재함. 일부 Proxy Server는 캐시를 통해 data를 저장하기때문에 자주 사용된 정보는 요청을 보내지 않고 캐시에서 가져올수있음

-> Clinet가 보내는 data를 캐시를 통해 수정, data확인 등 한번 필터링해주는 역할을 할 수 있기 때문에 직접적으로 Proxy Server가 직접적으로 Server와 네트워크통신할 낭비가 없기 때문에 네트워크비용이 감소하는 장점이 있고 응답속도가 향상됨

 

- Reason for using Forward Proxy

○ 일부 정부, 학교등에서 방화벽을 사용하여 제한된 제한된권한을 부여하여 접근을 차단함

-> Forward Proxy를 활용하게되면은 사용자가 방문하는 사이트에 직접연결하지않고도 Forward Proxy에 연결하여 접근하므로 이러한 제한을 피할수 있음

○ 특정 콘텐츠에 대한 액세스차단

-> 1번과 반대인 경우임. 원하지 않는 특정 사이트의 응답전달을 거부하고 콘텐츠 필터링 규칙을 활성화하는 Proxy를 구성할 수 있음

○ 신원보호

-> 위에서 언급한것 처럼 Server는 요청한 정보를 Client가 아닌 Proxy Server를 통해 요청받기 때문에 사용자의 익명성이 보장이 됨

 

2. Reverse Proxy

- Reverse proxy는 Server 앞에 위치하여 Client요청을 해당 Server로 전달함. 즉 Client를 보호하는 일반 프록시 서버와 달리 Reverse proxy는 Server를 보호함. Reverse proxy는 Client의 요청을 받아 다른 많은 서버 중 하나로 전달한 다음 Proxy Server가 직접 처리한 것처럼 실제로 요청을 처리한 Server의 결과를 Client에 전달하는 서버입니다. Client는 Reverse Proxy Server와만 통신하며 해당 요청이 실제로 다른 서버에서 처리되었음을 인식하지 못함[서버의익명성보장]

 

- Reason for using Reverse Proxy

 

General enterprise's network infra

○ Reverse Proxy는 보통 보안 때문에 구성을 자주함

일반 기업의 네트워크환경은 외부망과 내부망 사이에 내부네트워크에는 존재하고 외부에서는 접근할수없는 DMZ라는 네트워크 영역이 있음[웹서버, 이메일서버, FTP서버시스템이존재함]. 그리고 DMZ 사이에 2개의 방화벽으로 보호하는데 중요한 WAS, DBMS는 내부망에 배치하고 WAS와 DBMS와 서로 연결이 되어있어 WAS가 해킹당할시 심각한 보안 문제 발생함. 따라서 이 DMZ네트워크 영역에다가 Reverse Proxy Server를 구축하여 WAS과 연결하도록 설정하면 2차 방화벽을 다시 뚫어야 되므로 보안성이 강화됨. 

 

○ Load balancing :  Reverse Proxy는 트래픽을 여러 서버로 분산시켜서 Server의 과부하로 인한 속도저하를 방지할수있음

ex) Server user가 1만명인데 단일 Server라면 동시접속자가 많아 과부하가 걸려 서버다운가능성높음

-> Load balacer를 통해 복제된 서버들을 생성하여 집중되는 과부하를 여러 서버로 분산시킬 수 있음

 

 

 

 

 

 

 

 

reference check : https://www.lesstif.com/system-admin/forward-proxy-reverse-proxy-21430345.html

'Network' 카테고리의 다른 글

Ipv6 header  (0) 2022.04.04
IPv4 header  (0) 2022.04.04
Portforwarding  (0) 2022.03.26
NAT  (0) 2022.03.26
overhead  (0) 2022.03.08