VPN과 프록시(proxy)를 명확히 구분 못하는 IT 업계 종사자들이 있는거 같아 여기에 글 올려 봅니다.


하ㄱ문적으로 정확한 답은 VPN은 OSI 7계층에서 3번째 계층인 네트워크 레벨이고 프록시는 7계층(응용 프로그램) 입니다.

조금 쉽게 애기하면 3계층은 라우터가 하는 일입니다. 7계층은 우리가 쓰는 워드, 액셀, 게임 등등 입니다.


네트워크 계층은 라우터처럼 목적지 IP 주소에 따라 경로를 바꾸는 역할만 합니다.

공유기도 여기에 속하는데 단 공유기는 NAT 기능이 하나 더 들어가므로 공유기의 하ㄱ문적 용어는 NAT 라우터입니다.

따라서 VPN 사용시 VPN 을 적용할지 안할지는 목적지 IP 주소로만 가능합니다.

예를 들어 네이버로 가는 데이타는 VPN 적용을 않으려면 네이버의 IP 주소를 알아야 합니다.


윈도우에서 경로 변경 명령입니다.

route add [목적지 아이피] mask [서브넷 마스크] [게이트웨이] -p

윈도우 전문가 아니면 사용 힘듭니다.


네트워크 계층에서는 프로그램 별로는 경로 설정 (즉 VPN 적용 여부) 불가능합니다.

프로그램은 TCP/UDP 포트 번호를 알아야 제어가 되는데 네트워크 계층은 포트별 제어를 못합니다.


프록시는 7계층이므로 이 계층에서는 TCP/UDP 포트별로 제어가 됩니다. 

특정 앱이 사용하는 TCP/UDP 포트 번호를 알면 그 포트에 대해서 프록시를 적용 않을지 선택 가능합니다.

단 두 앱이 우연히 같은 포트를 사용한다면 그 경우는 구별이 안되므로 둘다 동시 적용 됩니다


재택근무에서 회사 내 사설IP 서버를 집에서 접근하려면 VPN 을 사용해야 합니다. 프록시는 사용 안됩니다. VPN 은 라우터 역할을 하지만 프록시는 안됩니다.

마찬가지로 사설 IP 를 사용하는 본지사를 인터넷으로 연결 해서 사설 IP 끼리 데이타를 주고받으려면 두 가상 IP 네트워크를 VPN 을 사용해서 라우팅 해야 합니다. 프록시는 사용 안됩니다.


프록시의 대표로는 쉐도우삭스(shadowsocks)가 있습니다.

국내 VPN 업체의 절반 이상이 쉐도우 삭스를 서비스하니 앱 별로 VPN 적용 여부를 선택하려면 프록시 사용하십시오.


국내의 쉐도우삭스 서비스 업체 중 하나는 프록시도 VPN 의 일종이라고 홈페이지에 주장하는데 OSI 7계층도 모르는 회사가 VPN(사실은 프록시)서비스를 하고 있으니 한심합니다.


https://www.facebook.com/story.php/?story_fbid=858452949419699&id=100057650041660
https://archive.is/XhDOR