안녕하세요, 여행벌입니다.

오늘은 가상호스트, 프록시, 게이트웨이, 터널에 대해서 정리해보겠습니다.


[ 가상호스트 (Virtual Host) ]

 HTTP/1.1 부터 하나의 HTTP 서버에 여러 개의 웹 사이트를 띄우는 가상 호스트 기술이 가능해졌다. 즉, 하나의 웹 서버로 여러 웹 사이트를 운영할 수 있다. 같은 IP 주소에서 다른 호스트명과 도메인 명을 가진 여러 개의 웹 사이트가 실행되고 있으므로 HTTP 리퀘스트를 보내는 경우에 호스트명과 도메인 명을 완전하게 포함한 URI를 지정하거나, 반드시 Host 헤더 필드에서 지정해야 한다.

naver.com / mail.naver.com / comic.naver.com 는 모두 같은 IP 주소(네이버가 운영하는 서버) 지만 호스트명, 도메인 명을 다르게!!

[ 프록시 (Proxy) ]

 서버와 클라이언트의 양쪽 역할을 하는 중계 프로그램으로, 클라이언트로부터의 리퀘스트를 서버에 전송하고, 서버로부터의 리스폰스를 클라이언트에 전송한다. 서버와 클라이언트 사이에 중계기로서 대리로 통신을 수행하는 것을 프록시, 그 중계 기능을 하는 것을 프록시 서버라고 부른다.

 주로 보안을 위해 사용되어 모든 웹 트래픽 흐름 속에서 신뢰할 만한 중개자 역할을 해준다. ( 회사 내부망에서 외부로 요청하는 내용들이 신뢰할만한 요청인지 프록시에서 확인해 액세스 제한 등을 할 수 있다. )

[ 게이트웨이 (Gateway) ]

 게이트웨이도 프록시와 마찬가지로 서버와 클라이언트의 중계 역할을 하는 프로그램이다. 게이트웨이의 경우에는 리퀘스트를 전달하는 서버가 HTTP 이외의 서비스를 제공하는 서버다. 즉, HTTP 트래픽을 다루는 다른 프로토콜로 변환하기 위해 게이트 웨이를 사용한다. 또, 클라이언트와 게이트웨이 사이를 암호화하는 등으로 안전하게 접속함으로써 통신의 안전성을 높이는 역할도 한다.

[ 터널 (Tunnel) ]

 터널은 요구에 따라서 다른 서버와의 통신 경로를 확립한다. 이때, 클라이언트는 SSL 같은 암호화 통신을 통해 서버와 안전하게 통신을 하기 위해 터널을 사용한다. 터널 자체는 HTTP 리퀘스트를 해석하려하지 않고 그냥 다음 서버로 중계한다.


 

'Dev > Network' 카테고리의 다른 글

[Network] HTTP_Response_상태코드  (0) 2021.04.23
[Network] HTTP_Message  (0) 2021.04.22
[Network] HTTP_Method  (0) 2021.04.21
[Network] HTTP ( HyperText Transfer Protocol )  (0) 2021.04.20
[Network] TCP / UDP 프로토콜, 3way / 4way handshake  (0) 2021.04.19

+ Recent posts