https://youtu.be/YJOLFMxWubM
Networking Class - [topic] Proxy 란 개념은 뭐지? (NAT와 VPN과 차이)
Proxy
사전적 의미 : 대리인
클라이언트가 Proxy를 통해서 다른 네트워크 서비스에 접속할 수 있게 해주는 컴퓨터 시스템이나 응용 프로그램.
[출처]
https://mygumi.tistory.com/146
https://digiconfactory.tistory.com/entry/프록시-서버-Proxy-Server-란-무엇인가
https://milkye.tistory.com/202
https://medium.com/@lakshanmamalgaha/what-is-a-proxy-server-f0a6f685fba8
- 프록시의 장점
- 프록시 서버 중 일부는 프록시 서버에 요청된 내용들을 캐시를 이용하여 저장
- 이 캐시 안에 있는 정보들을 요구하는 요청인 경우 원격 서버에 접속하지 않고 바로 응답
- 그에 따른 전송 시간 절약 + 불필요한 외부 연결 X + 트래픽 감소 로 인해 네트워크 병목 현상 방지가 가능
- 프록시 사용 이유
- 어린이 필터(성인 콘텐츠 차단)
- 캐시 사용으로 인한 데이터 전송 속도 증가
- 프록시 서버를 이용한 중앙 집중형 운영
- 익명성 보장
- 로그 기록
- 접근 제한
- Proxy Chaining을 통한 접속 우회
- 프록시 유형
- Forward Proxy(내부 → 외부)특정 사이트 접근 제한
- 캐싱 기능 기반 빈도 높은 컨텐츠들에 대한 성능 향상
- Reverse Proxy(외부 → 내부)
- 보안을 위한 외부에서 오는 데이터 필터
VPN
Virtual Privat Network, 가상 사설망
인터넷 프라이버시를 지키기 위한 도구로 널리 사용되기 전에는 멀리 떨어진 네트워크 환경을 하나의 안전한 네트워크로 만드는 역할을 하였다.
VPN은 실제 현재 위치가 아닌 다른 곳에서 인터넷에 연결하는 것처럼 보이게 하여 데이터 및 사용자의 요청을 보호하는 도구
[출처]
https://docs.veilduck.app/knowledge/vpn
https://adguard-vpn.com/ko/what-is-vpn/how-does-vpn-work.html
- VPN 원리
- VPN은 컴퓨터 혹은 스마트폰에서 데이터를 암호화하여 인터넷상의 다른 지점으로 전송한 후 공개 인터넷으로 재전달합니다.
- 이 과정에 의해 데이터가 사용자의 컴퓨터가 아닌 다른 IP 주소를 가지게 됩니다. 즉, 웹 서버에 연결할 때 서버에서 보이는 IP 주소는 홈 IP 주소가 아니라 VPN 서버의 IP 주소입니다.
- 민감한 정보가 있는 사이트에 액세스하더라도 IP 주소와 위치가 노출되지 않습니다.
- 선택한 국가에 따라 디바이스가 VPN 서버에 암호화된 연결을 만듭니다. 사용자의 인터넷 트래픽이 암호화 과정을 거쳐 공개 인터넷에 연결되기 때문에, 사용자가 아닌 VPN 서버의 IP 주소가 표시됩니다.
- 데이터 수신시에는 먼저 데이터가 서버로 이동한 다음 암호화를 거쳐 사용자에게도 재전송됩니다.
- 데이터는 Wi-Fi를 통해 먼저 사용자의 라우터/모뎀으로 이동한 다음 서비스 제공 업체의 서버로 이동합니다. 그러나 모든 데이터가 암호화되어 VPN 서버에 도달할 때까지 해독되지 않습니다.
- 통신사나 국가 기관이라 하더라도 사용자의 액세스 정보를 볼 수 없습니다.
- VPN 보안 프로토콜 유형
- L2TP / IPSec터널링 프로토콜 L2TP과 암호화 기능을 탑재한 IPSec를 쌍으로 사용한다.이중 캡슐화를 진행하므로 속도가 느릴 수 있다.
- 대부분의 OS에서 사용 가능하며, 높은 수준의 보안을 제공한다.
- Layer 2 Tunneling Protocol / Internet Protocol Security
- SSL / TLSSSL VPN 서버로 이동하는 취약점 보안 및 데이터의 암호화를 위해 TLS로 발전
- Secure Sockts Layer / Transport Layer Security
- SSTPMicrosoft에서 개발한 프로토콜로 안전하고 사용하기 쉽지만 Windows에서만 지원
- Secure Socket Tunneling Protocol
- IKEv2IPSec을 암호화하는 데 사용
- 매우 빠르고 안전하지만 방화벽으로 차단되는 경우가 있음
- Internet Key Exchange Version 2
- Open VPN
- 널리 사용되는 VPN 프로토콜로 오픈소스이다.
- WireGuard
- Open VPN 및 IKEv2보다 빠르고 안정적인 프로토콜
- AdGuard 프로토콜따라서 차단과 감지가 어렵고 속도가 빠름
- HTTP 프로토콜의 매커니즘 기반
- 일반적인 브라우징과 구별할 수 없다는 장점(HTTPS 트래픽과 동일)
- VPN 용도
- 인터넷 사용 기록 숨김
- IP 주소 및 위치 숨김 / 추적 차단
- 차단된 사이트 접근
- 보안(익명성)
- VPN 단점
- VPN 서버와의 거리/리소스 부족/클라이언트 수 증대로 인한 속도 저하
- VPN 감지 시스템이 있는 사이트 접근 불가(엑세스 차단)
- VPN 불법 및 금지 구역 존재
NAT
Network Address Translation, 네트워크 주소 변환 서비스(사설IP → 공인IP)
라우터 등의 장비를 사용하여 다수의 사설 IP를 공인 IP 주소로 변환하는 기술
주로 기업이나 기관에서 내부망을 사용하는 PC에 사설 IP를 제공하고, 외부 인터넷에 연결 시엔 공인 IP를 같이 사용하는 형태로 운영.
다수의 주소 변환정보에 대해 IP 주소와 Port 번호로 구성된 NAT Forwarding Table을 보관하고 있고 이에 맞게 주소를 변환.
[출처]
https://brunch.co.kr/@sangjinkang/61
https://www.stevenjlee.net/2020/07/11/이해하기-nat-network-address-translation-네트워크-주소-변환/
- NAT Table 특징
- 내부 네트워크에 위치한 호스트들의 사설 IP와 포트 번호에 대한 정보를 가지고 있음
- 외부로 나갈 때 동일한 공인 IP와 각기 다른 포트 번호를 가지고 있음
- 목적지 주소의 공인 IP와 서비스에 사용된 동일한 서비스 포트 번호를 가지고 있음
- NAT가 필요한 이유
- 공인 IP 주소 절약
- 보안(외부의 침입 방지) / NAT 장비는 Firewall, Router 형태 모두 가능
- NAT 동작원리