v2rayN Windows 설치 및 설정 가이드: Desktop과 WPF 버전 선택, 자주 발생하는 오류 해결

설치 패키지 선택, 압축 해제 경로와 런타임 의존성부터 노드 가져오기, 시스템 프록시와 TUN 모드 설정까지 진행하고, 로그를 바탕으로 최초 실행 시 발생하는 포트·권한·코어 오류를 진단합니다.

이 글 한눈에 보기

이 글은 Windows에 v2rayN을 처음 설치하거나, 프로그램은 실행했지만 노드를 사용할 수 없고 시스템 프록시가 작동하지 않거나 트레이 아이콘이 사라진 사용자를 위한 안내입니다. 순서대로 진행하면 버전 선택, 실행 환경 준비, 구독 가져오기, 프록시 활성화와 기본 문제 해결을 완료할 수 있습니다.

설치 전에 Desktop과 WPF 버전 선택하기

v2rayN의 Windows 빌드는 Desktop과 WPF 두 가지 인터페이스를 함께 제공할 수 있습니다. 두 버전 모두 설정 관리, 구독 업데이트, 라우팅 분기와 코어 제어를 담당합니다. VMess, VLESS, Trojan, Shadowsocks, REALITY 등의 지원 여부는 인터페이스 이름이 아니라 선택한 코어와 버전에 따라 달라집니다.

WPF 버전은 Windows Presentation Foundation을 사용해 전통적인 Windows 데스크톱 프로그램과 비슷한 방식으로 동작합니다. Windows에서만 사용하며 트레이 메뉴와 창 조작을 익숙한 형태로 유지하고 싶은 사용자에게 적합합니다. Desktop 버전은 새로운 데스크톱 인터페이스로 구현되어 설정 구조가 다른 데스크톱 환경과 더 비슷하며, 새 UI나 통일된 조작 방식을 원하는 사용자에게 알맞습니다.

비교 항목 Desktop 버전 WPF 버전
주요 특징 새로운 데스크톱 UI, 더 통일된 레이아웃 Windows 기본 데스크톱 UI
지원 시스템 지원되는 64비트 Windows에서 우선 사용 Windows 데스크톱 환경 전용
프로토콜 지원 Xray, v2fly 등의 코어가 결정 Xray, v2fly 등의 코어가 결정
설정 이전 업그레이드 전에 GUI 설정과 구독 정보 백업 업그레이드 전에 GUI 설정과 구독 정보 백업
우선 선택할 상황 새로 설치하고 새 UI를 사용하려는 경우 기존 창과 트레이 조작에 익숙한 경우

설치 패키지 이름에 SelfContained가 포함되어 있으면 일반적으로 필요한 .NET 런타임 구성 요소가 함께 들어 있어 용량은 크지만 런타임 누락으로 인한 실행 실패를 줄일 수 있습니다. 이 표시가 없는 패키지는 용량이 더 작으며, 시스템에 현재 버전과 호환되는 .NET Runtime 또는 .NET Desktop Runtime을 미리 설치해야 합니다. 구체적인 의존성은 다운로드 페이지와 프로그램 실행 안내를 기준으로 확인하세요.

7.x
이 문서에서 다루는 주요 버전 인터페이스
.NET 8
일반적인 런타임 기본 버전
x64
대부분의 PC에서 선택하는 아키텍처
2가지
Desktop 및 WPF 인터페이스

결론: 잘 모르겠다면 먼저 SelfContained Desktop 패키지를 선택하세요

64비트 Windows에 새로 설치한다면 x64 SelfContained Desktop 패키지를 먼저 선택하세요. 전통적인 Windows 인터페이스가 더 익숙하다면 해당 WPF 패키지로 바꾸면 됩니다. 인터페이스 버전을 바꾸기 전에는 기존 폴더를 백업하고, 실행 중인 프로그램 위에 새 파일을 바로 덮어쓰지 마세요.

다운로드, 압축 해제와 최초 실행

v2rayN은 일반적으로 압축 패키지 형태로 배포됩니다. 다운로드가 끝나면 먼저 전체 압축을 해제한 뒤 폴더 안의 주 프로그램을 실행하세요. 압축 프로그램의 미리보기 창에서 바로 실행하면 코어, 언어 파일과 설정 폴더가 완전히 풀리지 않아 잠시 프로세스만 나타났다가 종료될 수 있습니다.

프로그램은 현재 계정에 전체 읽기·쓰기 권한이 있는 고정 경로에 두는 것이 좋습니다. 예를 들면 D:\Apps\v2rayN과 같습니다. 경로는 가능한 한 짧게 하고 관리자 권한이 필요한 시스템 폴더는 피하세요. 이후 코어 업데이트, 로그 기록과 설정 저장에서 이 폴더에 접근합니다.

  1. 설치 패키지 선택

    이 사이트의 설치 패키지 페이지에서 시스템 아키텍처에 맞는 Windows x64 Desktop 또는 WPF 버전을 선택하세요. 필요한 런타임이 확실하지 않다면 SelfContained 표시가 있는 패키지를 우선 선택하세요.

  2. 전체 압축 해제

    압축 파일을 마우스 오른쪽 버튼으로 클릭하고 「모두 압축 풀기」를 선택하세요. 대상 경로는 D:\Apps\v2rayN으로 지정할 수 있습니다. 주 프로그램, 코어 폴더와 리소스 파일이 같은 압축 해제 폴더에 있는지 확인하세요.

  3. 파일 차단 해제

    압축 파일 속성에 「차단 해제」가 표시되면 선택한 뒤 압축을 해제하세요. 압축을 푼 파일이 계속 차단되는 경우 원본 압축 파일을 다시 처리한 후 재압축 해제하세요.

  4. 주 프로그램 실행

    v2rayN.exe를 더블클릭하고, 최초 실행 후 작업 표시줄 알림 영역을 확인하세요. 창을 닫아도 프로그램은 보통 트레이에서 계속 실행되므로 종료된 것이 아닙니다.

  5. 코어 확인

    「설정」→「매개변수 설정」을 열어 Core 유형이 노드 프로토콜과 일치하는지 확인하세요. VLESS, REALITY 등의 설정은 일반적으로 해당 필드를 지원하는 Xray 코어를 사용합니다.

프로그램을 처음 연 뒤 「설정」→「매개변수 설정」에서 인터페이스 언어, 시작 시 실행, 로그 수준, 로컬 수신 포트와 Core 유형을 확인할 수 있습니다. Core 유형이나 주요 포트를 변경했다면 현재 코어를 중지한 후 노드를 다시 시작해 새 설정이 완전히 적용되도록 하세요.

구독을 가져오고 첫 연결 완료하기

구독 링크와 개별 공유 링크는 서로 다른 입력 방식입니다. 구독 주소는 보통 업데이트 가능한 서버 설정 목록을 반환하므로 구독 그룹에 추가해야 합니다. vmess://, vless://, trojan:// 또는 ss://로 시작하는 내용은 대개 개별 공유 링크이며 클립보드에서 여러 개를 한 번에 가져올 수 있습니다.

구독을 추가하려면 「구독 그룹」→「구독 그룹 설정」으로 이동해 새 그룹을 만든 다음 별칭과 구독 주소를 입력하세요. 저장 후 「구독 그룹」→「모든 구독 업데이트(프록시 사용 안 함)」를 실행해 처음으로 가져옵니다. 구독 서비스가 기존 프록시를 통해서만 접속된다면 먼저 사용 가능한 노드에 연결한 뒤 프록시를 통한 업데이트 옵션을 사용하세요.

  1. 그룹 추가

    「구독 그룹」→「구독 그룹 설정」으로 이동하고 추가를 클릭한 다음 식별하기 쉬운 메모를 입력하고 전체 구독 주소를 붙여 넣으세요.

  2. 목록 업데이트

    저장 후 「구독 그룹」→「모든 구독 업데이트(프록시 사용 안 함)」를 선택하세요. 업데이트가 성공하면 주 목록에 서버 주소, 포트, 프로토콜과 전송 방식이 표시됩니다.

  3. 노드 선택

    주 목록에서 노드를 선택해 활성 서버로 지정하세요. 먼저 실제 지연 시간 또는 연결성 테스트를 실행하고, 시간 초과가 발생한 노드는 이후 시스템 프록시 검증에 사용하지 마세요.

  4. 시스템 프록시 시작

    트레이 메뉴나 메인 화면의 시스템 프록시 옵션에서 「시스템 프록시 자동 설정」을 선택하세요. 트레이 상태가 바뀐 것을 확인한 뒤 브라우저를 열어 테스트합니다.

개별 공유 링크는 먼저 클립보드에 복사한 뒤 「서버」 메뉴의 클립보드 가져오기 기능을 사용하면 됩니다. 가져온 후 주소, 포트, 사용자 ID, 전송 방식, TLS, SNI, 지문과 Flow를 확인하세요. VLESS와 REALITY 조합은 공개 키, Short ID, Server Name이 서버 설정과 일치하는지도 확인해야 합니다.

확인 항목 일반적인 값 불일치할 때 나타나는 현상
프로토콜 VMess、VLESS、Trojan、Shadowsocks 코어 실행 후 핸드셰이크 실패
전송 방식 TCP、WebSocket、gRPC 연결 직후 끊김
TLS / REALITY 서버 측 매개변수에 따라 활성화 인증서 이름 또는 핸드셰이크 매개변수 오류
Flow xtls-rprx-vision 또는 비워 두기 VLESS 노드 인증 후 전달 불가
서버 포트 1~65535 범위에서 지정한 포트 시간 초과 또는 연결 거부

시스템 프록시, 포트와 TUN 모드 설정 방법

시스템 프록시 모드와 TUN 모드는 해결하는 문제가 다릅니다. 시스템 프록시는 Windows의 프록시 설정을 v2rayN의 로컬 수신 포트로 지정하므로 시스템 프록시를 따르는 브라우저와 앱이 노드를 거칩니다. 시스템 프록시를 읽지 않는 프로그램은 직접 연결할 수 있습니다. TUN 모드는 가상 네트워크 인터페이스를 통해 더 넓은 범위의 트래픽을 인계하므로 브라우저가 아닌 앱에도 프록시를 적용해야 할 때 적합합니다.

일반적인 설정에서는 로컬 SOCKS 포트로 10808, HTTP 포트로 10809를 사용할 수 있습니다. 일부 최신 설정은 하나의 mixed 포트로 두 요청을 모두 처리합니다. 포트 번호를 그대로 사용하지 말고 「설정」→「매개변수 설정」에서 현재 실제 수신 값을 확인한 뒤 Windows 시스템 프록시의 주소와 포트를 하나씩 대조하세요.

127.0.0.1
기본 로컬 수신 주소
10808
일반적인 SOCKS 또는 mixed 포트
10809
일반적인 독립 HTTP 포트

브라우저에서는 웹페이지가 열리지만 특정 데스크톱 프로그램이 연결되지 않는다면 먼저 해당 프로그램이 Windows 시스템 프록시를 읽는지 확인하세요. 앱이 SOCKS 주소만 지원한다면 자체 네트워크 설정에 원격 서버 주소가 아니라 127.0.0.1과 v2rayN의 현재 SOCKS 포트를 입력해야 합니다.

TUN 모드를 켜기 전 시스템 프록시로 노드 자체가 정상인지 먼저 확인하세요. 이후 v2rayN의 TUN 메뉴에서 가상 네트워크 어댑터를 활성화하고 프로그램 안내에 따라 권한 설정을 완료합니다. TUN 실행에 실패하면 다른 가상 네트워크 어댑터의 존재 여부, 동일한 라우팅을 사용하는 네트워크 도구, Windows 보안 정책이 드라이버나 네트워크 설정 변경을 차단하는지 확인하세요.

결론: 먼저 노드를 확인한 뒤 인계 범위를 넓히세요

첫 설정에서는 시스템 프록시로 구독, 프로토콜과 코어가 정상적으로 작동하는지 확인하세요. 시스템 프록시를 읽지 않는 프로그램에 실제로 인계가 필요할 때만 TUN을 활성화합니다. 이렇게 하면 노드 문제와 가상 네트워크 어댑터 문제를 분리해 진단할 수 있습니다.

실행 실패와 코어 오류 해결 방법

문제를 해결할 때는 주 목록의 지연 시간 결과만 보지 말고 먼저 로그를 여세요. 로그 창을 연 뒤 활성 서버를 다시 시작하고 오류가 어느 단계에서 발생하는지 확인하세요. GUI가 아직 로드되지 않았는지, 코어 프로세스를 시작할 수 없는지, 로컬 포트 바인딩에 실패했는지, 도메인 확인에 실패했는지, 원격 핸드셰이크가 거부되었는지에 따라 해결 방법은 완전히 달라집니다.

오류:You must install or update .NET to run this application

원인 및 해결:현재 설치 패키지에 필요한 런타임이 포함되지 않았거나 시스템의 .NET 주 버전이 호환되지 않는 경우입니다. 프로그램이 안내하는 x64 .NET Runtime 또는 .NET Desktop Runtime을 설치하거나, 같은 버전의 SelfContained 설치 패키지를 사용하세요.

오류:Failed to start Core

원인 및 해결:코어 파일이 없거나 시스템에 의해 차단되었거나, 설정에서 존재하지 않는 Core를 선택한 경우입니다. 설치 패키지의 압축을 다시 완전히 해제하고 「설정」→「매개변수 설정」에서 Core 유형을 확인한 뒤 코어 파일이 프로그램 폴더에 남아 있는지 살펴보세요.

오류:Only one usage of each socket address is normally permitted

원인 및 해결:로컬 수신 포트를 다른 프로세스가 이미 사용 중입니다. 중복 실행된 v2rayN 인스턴스를 종료하거나 매개변수 설정에서 SOCKS, HTTP, mixed 포트를 사용하지 않는 포트로 바꾼 뒤 코어를 다시 시작하세요.

오류:failed to find an available destination

원인 및 해결:원격 주소를 확인할 수 없거나 대상 도메인, SNI와 REALITY 매개변수가 올바르지 않습니다. 노드 주소의 오탈자를 확인하고 사용 가능한 DNS로 바꾼 다음 Server Name을 다시 대조하고 코어를 시작하세요.

오류:Access to the path is denied

원인 및 해결:현재 계정이 프로그램 폴더에 쓸 수 없어 설정이나 로그 저장에 실패한 경우입니다. 전체 폴더를 D:\Apps\v2rayN처럼 사용자가 쓸 수 있는 경로로 옮기세요. 주 프로그램 파일만 옮기면 안 됩니다.

오류가 구독 업데이트 때만 발생한다면 HTTP 상태 오류와 연결 시간 초과를 구분하세요. 401 또는 403은 보통 구독 인증 정보 만료, 접근 정책 제한 또는 주소가 잘린 경우를 뜻합니다. 404는 대개 경로가 변경된 경우이며, 연결 시간 초과는 DNS, 현재 네트워크와 프록시를 통한 업데이트 필요 여부를 확인해야 합니다.

코어는 시작되지만 모든 노드에서 시간 초과가 발생한다면 먼저 서로 다른 서버 주소 두 개로 비교한 뒤 시스템 시간을 확인하세요. TLS와 REALITY 핸드셰이크는 올바른 로컬 시간에 의존하므로 Windows 시간 오차가 크면 핸드셰이크 오류가 발생할 수 있습니다. 시간 동기화를 완료한 뒤 기존 코어 프로세스를 완전히 중지하고 다시 시도하세요.

시스템 프록시가 작동하지 않거나 트레이 아이콘이 사라졌을 때와 업그레이드 문제

시스템 프록시가 작동하지 않으면 먼저 v2rayN 코어가 실행 중인지 확인하고, 다음으로 활성 서버가 선택되어 있는지 확인하세요. 마지막으로 Windows 프록시 주소가 127.0.0.1과 현재 HTTP 또는 mixed 포트를 가리키는지 점검합니다. 프록시 스위치에 이전 포트가 남아 있다면 트레이 메뉴에서 시스템 프록시 지우기를 선택한 뒤 자동 설정을 다시 활성화하세요.

트레이 아이콘이 사라졌다고 해서 반드시 프로그램이 종료된 것은 아닙니다. Windows가 아이콘을 알림 영역의 숨겨진 아이콘 메뉴에 넣었거나 해당 앱의 트레이 표시가 꺼졌을 수 있습니다. 먼저 작업 표시줄 오른쪽의 숨겨진 아이콘을 펼친 다음 Windows 작업 표시줄 설정에서 v2rayN의 알림 영역 아이콘을 표시하도록 설정하세요. 작업 관리자에 v2rayN 프로세스가 있다면 여러 인스턴스를 실행하려고 반복해서 더블클릭하지 마세요.

창을 닫은 후 다시 여는 방법

작업 표시줄 알림 영역을 펼쳐 v2rayN 아이콘을 더블클릭하거나, 아이콘을 마우스 오른쪽 버튼으로 클릭해 메인 화면 표시를 선택하세요. 창을 닫는 것은 보통 트레이로 최소화하는 동작이며, 프로그램을 종료하려면 트레이 메뉴에서 종료를 선택해야 합니다.

노드는 사용 가능으로 표시되지만 웹페이지가 열리지 않나요?

「설정」→「매개변수 설정」에서 로컬 포트를 확인한 뒤 Windows 시스템 프록시가 같은 포트를 가리키는지 점검하세요. 이후 시스템 프록시를 지우고 자동 설정을 다시 선택해 이전 포트가 남지 않도록 합니다.

구독 업데이트 후 노드 목록이 비어 있나요?

구독 그룹이 활성화되어 있는지 확인하고 주소에 공백이나 줄바꿈이 없는지 점검한 다음 업데이트 로그의 HTTP 상태를 확인하세요. 반환된 내용이 구독 데이터가 아니라 웹페이지라면 구독 제공자에게 올바른 주소를 문의해야 합니다.

업그레이드 후 기존 설정이 사라졌나요?

새로 압축을 푼 폴더의 프로그램을 실행한 것이 아닌지 확인하세요. 설정은 보통 프로그램 데이터 폴더나 선택한 저장 위치를 따라가며, 기존 폴더와 새 폴더는 자동으로 병합되지 않습니다. 프로그램을 종료한 뒤 백업에서 필요한 설정 데이터를 옮기세요.

시작 시 실행 후 프록시가 자동으로 켜지지 않나요?

「설정」→「매개변수 설정」에서 시작 시 실행 옵션과 시스템 프록시 시작 정책을 각각 확인하세요. 프로그램 자동 실행은 인터페이스 프로세스가 실행된다는 뜻일 뿐, 활성 서버가 선택되고 시스템 프록시가 설정된다는 의미는 아닙니다.

업그레이드할 때 v2rayN이 실행 중인 상태에서 파일을 덮어쓰지 마세요. 먼저 트레이 프로그램을 종료하고 기존 폴더를 복사해 백업한 다음 새 버전을 별도 폴더에 압축 해제하세요. 새 버전을 시작한 후 구독 그룹, 라우팅 규칙, 사용자 지정 DNS, Core 유형과 로컬 포트를 확인하고 문제가 없을 때 기존 폴더를 정리하세요.

설치 완료 후 기본 점검

설치가 끝났는지는 창이 열리는지만으로 판단해서는 안 됩니다. 재현 가능한 점검 순서는 버전과 Core 유형 확인, 구독 업데이트, 활성 서버 선택, 코어 로그 확인, 시스템 프록시 활성화, 브라우저 접속 테스트, 마지막으로 라우팅 분기와 TUN 검증입니다. 어느 단계에서든 실패하면 현재 단계에서 먼저 해결하고 프로토콜, DNS, 포트와 코어를 동시에 바꾸지 마세요.

점검 순서 통과 기준 실패 시 확인할 항목
프로그램 실행 메인 화면과 트레이 아이콘을 열 수 있음 .NET 런타임, 폴더 권한
코어 실행 로그에 로컬 포트 수신 시작이 표시됨 Core 유형, 포트 사용 여부
노드 연결 로그에 핸드셰이크 오류가 계속 표시되지 않음 프로토콜 필드, 시간, DNS
시스템 프록시 Windows가 현재 로컬 포트를 가리킴 이전 프록시 설정 잔류, 포트 변경
라우팅 분기 규칙에 맞는 예상 아웃바운드로 연결됨 규칙 순서, 도메인 및 IP 조건

라우팅 분기는 기본 연결이 안정된 후 설정하세요. 규칙은 보통 도메인, IP, 프로세스 또는 포트에 따라 트래픽을 프록시, 직접 연결 또는 차단 아웃바운드로 보냅니다. 새 규칙을 만들 때는 매칭 순서에 주의해야 합니다. 더 구체적인 규칙을 일반 규칙보다 앞에 배치해 앞의 포괄적인 조건이 트래픽을 먼저 가로채지 않도록 하세요.

클라이언트 설치 패키지로 이동 Windows, macOS, Android, Linux