브라우저에서는 프록시가 작동하지만 터미널이나 게임은 연결되지 않는다면, 먼저 해당 프로그램이 시스템 프록시를 사용하는지 확인한 뒤 TUN을 켤지 결정하세요. 이 글에서는 Windows용 v2rayN 7.x의 일반적인 화면을 기준으로 노드 확인, 관리자 권한으로 실행, 가상 어댑터 활성화, DNS와 라우팅 점검 순서로 안내합니다. 버전에 따라 메뉴가 다를 수 있으니 실제 화면을 기준으로 확인하세요. 트래픽이 TUN으로 전달되는 것과 프록시를 통해 나가는 것의 차이를 이해하고, 인터넷이 끊겼을 때 복구 순서도 확인할 수 있습니다.
TUN은 트래픽이 들어오는 경로를 처리합니다
시스템 프록시는 운영체제에 로컬 프록시 주소를 등록하는 방식입니다. 이 설정을 따르는 앱은 요청을 v2rayN의 로컬 수신 포트로 전달하지만, 설정을 무시하는 프로그램은 대상 서버에 직접 연결할 수 있습니다. 따라서 시스템 프록시를 켰다고 컴퓨터의 모든 프로그램이 프록시를 이용하는 것은 아닙니다.
TUN은 네트워크 계층에서 동작하는 가상 인터페이스입니다. 활성화하면 라우팅 설정에 따라 조건에 맞는 IP 패킷이 가상 어댑터로 전달되고, 해당 패킷은 연동된 코어에서 처리됩니다. 앱마다 HTTP 또는 SOCKS 프록시를 설정할 필요가 없어, 개별적으로 프록시를 지정할 수 없는 프로그램의 트래픽을 처리하는 데 적합합니다.
마지막 단계에 유의하세요. TUN을 켠다고 모든 트래픽이 해외 노드를 거치는 것은 아닙니다. TUN은 데이터가 코어로 들어가는 방식을 정하고, 라우팅 규칙은 데이터가 나가는 경로를 정합니다. '중국 본토 우회'와 같은 분할 라우팅 설정을 사용하면 중국 본토의 대상에는 직접 연결할 수 있습니다. 프록시 규칙에 해당하는 대상만 선택한 노드로 전달되며, 차단 규칙에 걸린 연결은 거부됩니다.
TUN이 필요한 프로그램
먼저 프로그램에 자체 프록시 설정이 있는지 확인하고, 시스템 프록시를 따르는지도 살펴보세요. 브라우저는 보통 시스템 프록시부터 사용하는 것이 좋습니다. 명령줄 도구, 게임, 일부 데스크톱 앱은 동작 방식이 서로 다를 수 있습니다. 같은 프로그램이라도 로그인 화면과 백그라운드 다운로드 기능이 서로 다른 네트워크 방식을 사용할 수 있습니다.
먼저 시스템 프록시 사용
- 대상
- 시스템 프록시를 사용하는 브라우저 및 앱
- 연결 방식
- 로컬 HTTP 또는 SOCKS 수신 포트
- 권한
- 일반적으로 권한 상승 불필요
- 문제 해결 시작점
- 앱의 프록시 설정과 수신 포트 확인
웹 브라우징만 필요하다면 더 간단한 연결 방식을 우선 사용하세요.
필요하면 TUN 사용
- 대상
- 시스템 프록시를 무시하고 개별 프록시 설정도 지원하지 않는 프로그램
- 연결 방식
- 가상 어댑터와 시스템 라우팅
- 권한
- Windows에서는 보통 관리자 권한 필요
- 문제 해결 시작점
- 코어, 어댑터, 라우팅, DNS 확인
UDP 트래픽을 처리하려면 노드와 서버가 UDP 전달을 지원하는지도 확인해야 합니다.
터미널 도구에 반드시 TUN이 필요한 것은 아닙니다. 일부 도구는 HTTP_PROXY, HTTPS_PROXY 환경 변수나 자체 프록시 옵션을 지원하므로 설정 후 로컬 프록시에 연결할 수 있습니다. 프로그램이 프록시를 지원하지 않거나 실행 환경을 변경할 수 없을 때, 또는 여러 프로그램의 트래픽을 한꺼번에 처리해야 할 때 TUN을 사용하면 편리합니다.
요약: 연결 경로를 먼저 확인한 뒤 적용 범위를 넓히세요
웹은 되는데 특정 앱만 실패한다면 먼저 해당 앱의 프록시 설정을 확인하세요. 로컬 프록시를 사용할 수 없는 것으로 확인된 다음 TUN을 켜면, 한 프로그램의 문제를 컴퓨터 전체의 라우팅 문제로 확대하지 않을 수 있습니다.
TUN을 켜기 전에 노드와 권한 확인
구독 업데이트, 노드 변경, 라우팅 전환, TUN 활성화를 한 번에 하지 마세요. 먼저 시스템 프록시로 정상 작동 상태를 재현해 두면, 이후 문제가 생겼을 때 네트워크 경로를 바꾼 단계가 무엇인지 파악할 수 있습니다.
- 클라이언트 버전을 확인합니다. v2rayN의 '도움말' 관련 메뉴에서 버전 정보를 확인하세요. 이 글은 7.x에서 일반적으로 사용하는 메뉴를 기준으로 설명합니다. 메뉴 이름이 다르면 '설정', '매개변수 설정', 메인 화면의 TUN 스위치를 찾아보세요. 이전 버전의 설정 화면을 그대로 따라 하지 마세요.
- 구독 노드를 확인합니다. 구독을 업데이트하고 노드를 선택해 활성 서버로 지정한 다음, 시스템 프록시를 켜고 프록시가 필요한 웹사이트에 접속해 보세요. 지연 시간 테스트에 성공해도 일부 연결만 가능한 것일 수 있으므로, 웹사이트와 대상 앱으로 별도 테스트해야 합니다.
- 현재 설정을 기록합니다. 활성 노드, 라우팅 모드, 로컬 수신 포트, DNS 설정을 적어 두세요. 설정 화면을 캡처해도 되지만, 구독 링크와 노드 인증 정보 등 민감한 내용은 먼저 가리세요.
- 다른 터널을 종료합니다. 다른 VPN, 투명 프록시, 네트워크 가속 프로그램을 잠시 끄세요. 회사 관리 기기에서는 네트워크 관리 지침을 따르고, 관리 대상 보안 서비스를 임의로 중지하지 마세요.
- 관리자 권한으로 실행합니다. 시스템 트레이 메뉴에서 v2rayN을 완전히 종료한 뒤 프로그램을 마우스 오른쪽 버튼으로 클릭하고 '관리자 권한으로 실행'을 선택하세요. 시스템 권한 확인 창이 나타나면 승인합니다. 일반 권한으로 메인 창이 열리더라도 어댑터 생성과 라우팅 변경 권한까지 있다는 뜻은 아닙니다.
순서대로 TUN 모드 켜기
관리자 권한으로 실행한 뒤에는 방금 확인한 노드와 라우팅 설정을 그대로 유지하세요. 중요한 점은 한 번에 하나만 바꾸는 것입니다. 단계가 실패하면 로그를 확인하고 멈추세요. 스위치를 연달아 누르지 마세요.
- TUN 설정을 확인합니다. '설정' → '매개변수 설정'에서 TUN 관련 항목을 찾으세요. 버전에 따라 별도의 TUN 설정 메뉴가 있을 수 있습니다. 처음 사용할 때는 해당 버전의 기본 스택, MTU, 자동 라우팅 옵션을 유지하고 다른 기기의 값을 그대로 복사하지 마세요.
- 테스트 기준을 위해 시스템 프록시를 해제합니다. 메인 화면이나 트레이의 '시스템 프록시' 메뉴에서 '시스템 프록시 해제'를 선택하세요. 브라우저가 계속 시스템 프록시를 통해 접속해 결과를 잘못 판단하는 일을 방지하고 TUN만 따로 확인할 수 있습니다.
- TUN을 켭니다. 메인 화면에서 'TUN 사용' 또는 이에 해당하는 스위치를 켜고 코어가 시작될 때까지 기다리세요. 버전에 따라 메뉴 이름과 위치가 다를 수 있으므로, 로그에 가상 인터페이스 생성과 라우팅 초기화 성공 메시지가 있는지 확인하세요.
- 시스템 인터페이스를 확인합니다. Windows 네트워크 어댑터 목록에서 새 가상 인터페이스가 추가되었거나 활성화되었는지 확인하세요. 이름은 버전과 설정에 따라 다르므로 특정 이름을 기대할 필요는 없습니다. 인터페이스가 표시되어도 DNS와 외부 연결이 정상이라는 뜻은 아닙니다.
- 두 종류의 앱을 테스트합니다. 먼저 웹사이트에 접속한 다음, 이전에 시스템 프록시를 무시했던 프로그램을 테스트하세요. TUN이 실제로 트래픽을 처리하는지 판단하려면 시스템 프록시가 해제된 상태여야 합니다.
화면에서 TUN 스위치를 찾을 수 없다면 클라이언트 버전, 플랫폼, 코어 구성 요소가 제대로 설치되었는지 먼저 확인하세요. 오래된 안내를 봤다는 이유만으로 출처를 알 수 없는 드라이버 파일을 수동으로 추가하지 마세요. 설치 버전을 바꿔야 한다면 클라이언트 다운로드 페이지에서 시스템과 프로세서에 맞는 빌드를 선택하세요.
포트, 로그, 라우팅으로 결과 확인
아래 세 포트 번호는 연결 관계를 이해하기 위한 예시이며, 설정을 일괄 변경하라는 뜻은 아닙니다. 10808은 로컬 프록시 수신 포트의 흔한 예시입니다. 실제 포트는 '설정' → '매개변수 설정'에 표시된 값을 확인하세요. 53과 443은 각각 일반적인 DNS와 HTTPS 트래픽에 사용됩니다.
PowerShell에서 다음 읽기 전용 명령을 실행해 인터페이스, IPv4 라우팅, 로컬 수신 상태를 확인하세요. 마지막 명령은 실제 수신 포트가 10808일 때만 해당합니다. 포트가 다르면 설정에 표시된 숫자로 바꾸세요. 수신 포트가 열려 있다는 사실만으로는 TUN이 트래픽을 처리한다고 볼 수 없습니다.
Get-NetAdapter | Select-Object Name, InterfaceDescription, Status
Get-NetRoute -AddressFamily IPv4 | Sort-Object RouteMetric
Get-NetTCPConnection -State Listen -LocalPort 10808
- 트래픽 전달을 확인합니다. 시스템 프록시를 해제하고 테스트 앱에도 자체 프록시 설정이 없는지 확인한 뒤 새 연결을 시도하세요. 코어 로그를 함께 확인해 해당 연결이 처리 경로에 들어왔는지 판단합니다.
- 분할 라우팅을 확인합니다. 규칙상 직접 연결되어야 하는 사이트와 프록시를 거쳐야 하는 사이트에 각각 접속한 뒤, 로그의 대상 주소와 출구를 확인하세요. 로그에 규칙 세부 정보가 표시되지 않으면 테스트 중에만 로그 수준을 높이고, 테스트가 끝나면 원래대로 돌리세요.
- IP 주소 계열을 확인합니다. 특정 앱이 여전히 직접 연결된다면 IPv6를 우선 사용하는지 확인하세요. IPv4 라우팅만 바뀐 것을 확인해도 IPv6 트래픽까지 처리된다는 뜻은 아닙니다.
- UDP를 확인합니다. 대상 앱 자체의 연결 테스트를 사용하세요. 웹사이트가 TCP로 열리더라도 게임, 음성 통화 등 UDP를 사용하는 기능까지 작동한다고 볼 수는 없습니다.
DNS와 라우팅을 함께 확인하세요
TUN을 켠 뒤 웹페이지가 계속 로딩된다고 노드가 반드시 끊어진 것은 아닙니다. 앱은 보통 도메인을 먼저 조회한 다음 연결을 시작합니다. DNS 요청이 연결할 수 없는 서버로 전달되면 프록시 연결을 시작하기도 전에 실패합니다. 반대로 도메인이 정상적으로 조회되어도 선택한 프록시 출구가 작동한다는 보장은 없습니다.
먼저 현재 클라이언트 버전에 맞는 기본 DNS 설정을 유지하세요. 설정을 바꿔야 한다면 '설정'에서 DNS 메뉴를 찾아 직접 연결 도메인과 프록시 도메인의 조회 경로를 함께 고려하세요. 원격 DNS 주소를 임의로 입력하는 것만으로 해결되지는 않습니다. DNS 연결이 어떤 출구를 이용하는지, 시작할 때 프록시 서버 도메인을 먼저 조회할 수 있는지도 확인해야 합니다.
- DNS 요청 유형을 구분합니다. 일반 DNS는 주로 53번 포트를 사용하지만 앱에 내장된 암호화 DNS는 HTTPS를 사용할 수 있습니다. 53번 포트만 살펴봐서는 모든 도메인 조회를 확인할 수 없습니다.
- 앱 캐시에 유의합니다. 설정을 바꾼 뒤 대상 앱을 종료했다가 다시 실행하세요. 필요한 경우
ipconfig /flushdns를 실행할 수 있습니다. 이 명령은 Windows DNS 캐시를 비우지만 브라우저 자체 캐시나 내장 DNS 상태까지 지우지는 않습니다. - 로컬 네트워크 경로를 유지합니다. 프린터, 네트워크 저장 장치, 라우터 관리 페이지는 보통 직접 연결해야 합니다. 현재 사용 중인 라우터의 실제 관리 주소로 테스트하고, 사설 IP 대역과 로컬 도메인 규칙을 확인하세요. 모든 가정용 네트워크가 같은 주소를 사용한다고 가정하지 마세요.
- 가상 네트워크를 확인합니다. 가상 머신, 컨테이너, 원격 근무용 터널이 자체 라우팅과 DNS 설정을 추가할 수 있습니다. 인터페이스와 대상 네트워크 대역을 하나씩 확인하고, 가상 어댑터를 모두 삭제하지 마세요.
요약: 실패한 단계를 먼저 찾고 설정을 바꾸세요
로그에 도메인 조회 시간 초과가 표시되면 DNS 경로부터 확인하세요. 대상 서버에 연결된 뒤 핸드셰이크가 실패한다면 노드, 프로토콜, 출구를 살펴보세요. DNS, MTU, TUN 스택, 노드를 동시에 바꾸면 어떤 조치가 효과가 있었는지 알기 어렵습니다.
자주 발생하는 충돌과 복구 방법
TUN을 켤 때 권한 부족 오류가 표시되면 어떻게 하나요?
트레이 메뉴에서 프로그램을 완전히 종료한 다음 관리자 권한으로 실행하고 TUN을 다시 켜세요. 그래도 실패하면 로그에서 인터페이스 생성 실패인지 라우팅 쓰기 실패인지 확인하세요. 관리 대상 기기라면 관리자에게 문의하고, 제한을 우회하려고 시스템 보안 기능을 끄지 마세요.
스위치는 켜졌는데 앱이 계속 직접 연결되는 이유는 무엇인가요?
먼저 코어가 정상적으로 시작되었는지 확인한 다음 대상 앱을 다시 실행해 기존 연결이 재사용되지 않도록 하세요. 로그의 직접 연결 규칙, IPv6 경로, 앱 자체 터널 사용 여부를 확인합니다. TUN 스위치가 켜져 있다는 것은 활성화 요청을 했다는 뜻일 뿐, 연결이 제대로 처리되었음을 보장하지 않습니다.
웹은 열리지만 게임이나 음성 통화가 시간 초과되나요?
구독 노드와 서버가 UDP를 지원하는지 확인한 다음, 해당 프로그램의 대상이 올바른 출구 규칙에 해당하는지 살펴보세요. TUN은 데이터를 받을 수 있지만 서버에 없는 UDP 기능까지 제공하지는 않습니다. 게임 지연 시간이 줄어든다고 보장할 수도 없습니다.
TUN을 켠 뒤 회사 네트워크, 가상 머신, 로컬 네트워크 접속에 문제가 생기나요?
먼저 TUN을 끄고 기존 네트워크가 복구되는지 확인한 다음, 다른 터널과 겹치는 대상 네트워크 대역, 라우팅 우선순위, DNS를 점검하세요. 두 터널을 함께 사용해야 한다면 직접 연결 또는 제외 규칙을 명확하게 하나씩 추가하세요. 두 트래픽 처리 구성 요소가 기본 경로를 동시에 차지하게 두지 마세요.
클라이언트를 종료한 뒤에도 인터넷이 끊겨 있으면 어떻게 복구하나요?
v2rayN을 다시 열고 TUN을 끈 다음 시스템 프록시를 해제하고 정상적으로 종료하세요. Windows 프록시 설정에서 수동 프록시가 계속 켜져 있는지 확인합니다. 인터페이스나 라우팅이 복구되지 않았다면 네트워크에 다시 연결하고, 필요하면 시스템을 재시작한 뒤 로그를 확인해 남은 설정을 찾으세요.
네트워크가 복구되면 문제 해결 결과를 최소 설정으로 정리하세요. 확인된 노드 하나, 분할 라우팅 설정 하나, 클라이언트 기본 TUN 설정을 사용합니다. 웹, 대상 앱, 로컬 네트워크가 모두 정상인지 확인한 뒤 사용자 지정 DNS나 다른 터널을 하나씩 다시 적용하세요. 구독 가져오기와 라우팅 기초를 살펴보려면 설정 가이드를, 시스템 프록시 설정 방법은 사용 설명서를 확인하세요.