v2rayN 첫 설치 및 설정 가이드: Windows·macOS 첫 실행 시 주의할 점

압축 해제 위치, 실행 환경, 첫 실행 권한, 코어 전환, 로컬 포트 설정까지 Windows와 macOS에서 v2rayN을 처음 실행할 때 자주 막히는 부분을 정리했습니다.

이 글 미리보기

v2rayN을 처음 사용한다면 먼저 설치 파일의 아키텍처와 설치 폴더의 쓰기 권한을 확인하세요. 다음으로 코어 실행 여부와 로컬 포트 수신 상태를 점검한 뒤 구독을 가져오고 시스템 프록시를 설정하면 됩니다. Windows와 macOS에서 처음 설정하는 사용자를 위해 ‘프로그램 실행 → 코어 실행 → 노드 연결 → 앱 연결’ 순서로 문제를 확인합니다. 여러 설정을 한꺼번에 바꿔 원인을 놓치지 마세요.

설치 파일과 압축 해제 위치: 아키텍처와 쓰기 권한 확인

v2rayN은 설정 인터페이스이며 실제 연결은 선택한 코어가 처리합니다. 메인 창이 열려도 인터페이스 프로그램이 실행됐다는 뜻일 뿐, 코어 파일이 모두 있거나 노드를 사용할 수 있다는 의미는 아닙니다. 다운로드할 때 운영체제, 프로세서 아키텍처, 배포 패키지 안내를 함께 확인하세요. Windows 데스크톱 버전과 클래식 WPF 버전도 파일 이름의 x64만 보고 현재 환경에 맞는지 판단하면 안 됩니다.

Windows와 macOS에서 설치 위치 확인

Windows
  • ‘설정’ → ‘시스템’ → ‘시스템 정보’를 열어 시스템 종류를 확인하고 x64와 ARM64를 구분하세요.
  • 압축 파일을 먼저 완전히 해제하세요. 예를 들어 현재 사용자에게 쓰기 권한이 있는 C:\Users\Public\Tools\v2rayN에 두고 해당 폴더의 실제 권한을 확인합니다.
  • 주 프로그램 옆의 종속 파일과 코어 폴더를 그대로 두세요. 실행 파일 하나만 바탕 화면으로 옮기면 안 됩니다.
  • 바로 가기는 압축 해제한 프로그램을 가리켜야 합니다. 압축 파일 미리 보기 창의 임시 파일을 가리키면 안 됩니다.
macOS
  • Apple 메뉴에서 ‘이 Mac에 관하여’를 열어 Apple 칩인지 Intel 프로세서인지 확인하세요.
  • 배포 패키지 안내에 따라 압축을 풀거나 디스크 이미지를 연 다음, 앱을 ‘응용 프로그램’ 등 안정적인 위치에 옮기세요.
  • 읽기 전용 디스크 이미지나 임시 압축 해제 폴더에서 앱을 계속 실행하지 마세요.
  • 로그에 설정 폴더를 쓸 수 없다는 메시지가 나오면 로그에 표시된 정확한 폴더를 확인하세요. 홈 폴더 전체의 권한을 무작정 넓히면 안 됩니다.

프로그램과 설정 파일 위치를 먼저 정한 뒤 구독을 가져오세요. 업그레이드 전에는 설정을 백업해 새 폴더와 기존 폴더를 번갈아 실행하지 않도록 합니다.

포터블 패키지는 대개 폴더 안에 설정이나 관련 데이터를 저장합니다. 보호된 폴더에 넣은 뒤 실행할 때마다 설정이 사라진다면 먼저 쓰기 실패 여부와 다른 복사본을 실행했는지 확인하고, 그다음 권한 조정을 검토하세요. 경로는 짧게 유지하고 자동 정리되는 임시 폴더는 피하세요. 경로에 한글이 있다는 이유만으로 문제가 생기는 것은 아니므로 한글 경로만 보고 시스템을 다시 설치할 필요는 없습니다.

첫 실행: 실행 환경, 시스템 차단, TUN 권한 구분

Windows에서 실행 환경이 없다는 메시지가 나타나면 안내된 프레임워크 이름, 주 버전, 아키텍처에 맞춰 조치하세요. 시스템 실행 환경에 의존하는 패키지와 자체 포함 패키지는 요구 사항이 다릅니다. 클래식 WPF 인터페이스에는 해당 Windows 데스크톱 런타임이 필요할 수 있으며, 임의로 설치한 다른 주 버전으로 대체할 수 없습니다. 자체 포함 패키지를 받았는데도 실행되지 않는다면 런타임을 여러 개 다시 설치하기보다 먼저 오류 기록을 확인하세요.

  1. 처음 오류 내용 기록하기

    시작 시 표시된 안내, 시스템 버전, 설치 파일 이름을 보관하세요. 창이 잠시 떴다가 닫히면 프로그램 로그나 시스템 앱 오류 기록을 확인해 런타임 누락, 파일 누락, 아키텍처 불일치 중 무엇인지 구분합니다.

  2. 실행 허용 여부 확인

    Windows에서 보안 차단이 발생하면 먼저 ‘Windows 보안’ → ‘바이러스 및 위협 방지’ → ‘보호 기록’을 확인하세요. 출처와 차단 대상을 확인한 뒤에만 조치하고, 보안 기능 전체를 끄지는 마세요.

  3. 시스템 안내에 따라 처리

    macOS에서 출처를 확인했지만 아직 실행이 허용되지 않은 앱은 ‘시스템 설정’ → ‘개인정보 보호 및 보안’에서 구체적인 안내를 확인한 뒤 시스템 절차에 따라 허용하세요. 앱이 손상되었다는 안내가 나오면 먼저 아키텍처에 맞는 패키지를 다시 다운로드하세요.

  4. TUN 설정은 나중에

    첫 연결은 일반 로컬 프록시로 테스트하세요. TUN은 가상 네트워크 장치와 라우팅, 추가 권한이 필요하므로 일반 프록시 연결을 확인한 뒤 별도로 설정하는 편이 좋습니다. 권한 안내가 나타나면 클라이언트가 요청하는 권한을 허용하세요.

구독 가져오기와 코어 선택: 확인 가능한 설정부터 만들기

구독 주소는 노드 목록을 가져오는 주소이지 노드 서버 주소나 브라우저 프록시 주소가 아닙니다. 구독에 인증 토큰이 포함될 수 있으니 문제를 확인할 때 전체 링크를 공개하지 마세요. 버전에 따라 버튼 위치가 다를 수 있습니다. 아래 안내에서는 ‘구독 그룹 설정’, ‘매개변수 설정’처럼 기능 이름을 기준으로 찾으세요. 실제 화면에 표시된 이름을 우선하면 됩니다.

  1. 구독 그룹 추가

    ‘구독 그룹’ → ‘구독 그룹 설정’으로 이동해 그룹을 추가하고 알아보기 쉬운 메모와 전체 구독 주소를 입력하세요. 주소 앞뒤에 공백이 없는지 확인하고 저장한 뒤 메인 화면으로 돌아옵니다.

  2. 노드 목록 갱신

    ‘구독 그룹’ 메뉴에서 업데이트를 실행하세요. 사용할 수 있는 노드가 아직 없다면 먼저 프록시를 사용하지 않고 업데이트해 보세요. 제공업체에서 프록시 접속을 요구한다면 이미 사용 가능한 연결이 필요합니다. 아직 가져오지 않은 노드로 이 단계를 완료할 수는 없습니다.

  3. 코어 종류 확인

    ‘설정’ → ‘매개변수 설정’ → ‘Core 유형’으로 이동해 해당 프로토콜에 맞는 코어를 확인하세요. VLESS, REALITY, XTLS Vision 조합은 이를 지원하는 Xray 코어를 사용해야 합니다. 이름이 비슷하다는 이유만으로 코어를 바꾸지 마세요.

  4. 사용할 노드 선택

    노드를 하나 선택해 활성 서버로 설정한 뒤 로그에 설정 파싱 실패나 코어 종료가 표시되는지 확인하세요. 코어를 바꾼 뒤에는 화면 안내에 따라 코어를 재시작하고 이전 프로세스가 계속 실행 중이지 않은지 확인합니다.

VMess와 VLESS는 프록시 프로토콜이고 Xray와 V2Ray는 코어 프로젝트이며, v2rayN은 설정을 관리하고 코어를 실행합니다. 이 세 가지는 서로 대체할 수 없습니다. 구독을 가져왔다는 것은 내용이 읽혔다는 뜻일 뿐입니다. 노드 연결 여부는 프로토콜 매개변수, 전송 방식, TLS 설정, 서버 상태에도 달려 있습니다.

로컬 수신 포트: 127.0.0.1과 실제 포트가 맞는지 확인

아래에서는 로컬 SOCKS 또는 SOCKS 호환 혼합 포트의 예로 10808을, 현재 기기를 가리키는 주소로 127.0.0.1을 사용합니다. 모든 배포판에서 같은 기본값을 쓰는 것은 아닙니다. 먼저 ‘설정’ → ‘매개변수 설정’에서 로컬 수신 주소와 포트, 연결 프로토콜을 확인하고 테스트 명령의 값을 실제 화면에 표시된 설정으로 바꾸세요.

10808
이 문서의 예시 수신 포트: 사용 전에 확인
127.0.0.1
현재 기기의 IPv4 루프백 주소
확인할 항목올바른 확인 방법자주 하는 실수
SOCKS 및 HTTP 연결앱의 프록시 항목에는 연결 프로토콜에 맞는 값을 입력하세요. 혼합 포트는 지원하는 프로토콜을 연결할 수 있습니다.SOCKS만 지원하는 포트를 앱의 HTTP 프록시 항목에 입력합니다.
별도 HTTP 포트10809를 직접 설정했다면 먼저 해당 수신 포트가 실제로 열려 있는지 확인하세요.오래된 안내에서 10809를 봤다는 이유로 내 컴퓨터에서도 반드시 사용 중이라고 생각합니다.
수신 주소로컬에서 사용할 때는 먼저 127.0.0.1을 확인하세요. 로컬 네트워크 공유는 별도로 설정해야 합니다.문제를 확인하려고 모든 네트워크 인터페이스를 바로 개방해 접근 범위를 넓힙니다.
포트 충돌프로세스 ID로 포트를 점유한 프로그램을 확인하고, 중복 실행을 종료하거나 포트를 변경하세요.앱의 포트만 바꾸고 코어의 수신 설정은 그대로 둡니다.

Windows: 수신 상태와 포트 점유 프로세스 확인

Get-NetTCPConnection -LocalPort 10808 -State Listen |
  Select-Object LocalAddress, LocalPort, OwningProcess
Test-NetConnection -ComputerName 127.0.0.1 -Port 10808

PowerShell에서 위 명령을 실행하세요. 첫 번째 명령에 결과가 없다면 코어가 실행 중인지, 포트 입력이 맞는지 확인합니다. 포트를 점유한 프로세스 ID가 표시되면 작업 관리자에서 해당 프로세스를 확인하세요. 정체를 모르는 시스템 프로세스를 바로 종료하면 안 됩니다. 두 번째 명령에서 연결에 성공해도 로컬 TCP 연결이 가능하다는 뜻일 뿐, 원격 노드와 연결됐다는 의미는 아닙니다.

macOS: 수신 소켓 확인

lsof -nP -iTCP:10808 -sTCP:LISTEN

출력에 표시된 프로세스 이름과 PID로 수신 중인 프로그램을 확인할 수 있습니다. 출력이 없다면 먼저 v2rayN 로그에서 코어 시작 오류를 확인하세요. 수신 포트를 바꿨다면 코어를 재시작한 뒤 다시 확인합니다. 이전 포트로 테스트하면서 새 설정이 적용되지 않았다고 판단하지 마세요.

시스템 프록시와 라우팅: 입구를 확인한 뒤 출구 점검

시스템 프록시는 해당 설정을 지원하는 앱의 요청을 로컬 연결 지점으로 보냅니다. 라우팅은 코어에 들어온 요청이 어떤 출구를 사용할지 정합니다. 라우팅을 전역으로 바꿔도 시스템 프록시를 무시하는 앱이 자동으로 연결되지는 않습니다. 첫 테스트에서는 TUN을 끄고 v2rayN의 ‘시스템 프록시’ 메뉴에서 ‘시스템 프록시 자동 설정’을 선택한 다음, 운영체제에 해당 프록시가 설정됐는지 확인하세요.

아래 명령은 10808에서 실제로 SOCKS 서비스를 제공하는 경우에만 사용할 수 있습니다. Windows PowerShell에서는 curl.exe, macOS 터미널에서는 curl을 사용하세요. 명령의 socks5h는 대상 도메인 이름을 프록시 측에서 조회하므로 로컬 DNS 문제와 프록시 연결 문제를 구분하는 데 도움이 됩니다. 시스템 DNS 설정을 바꾸는 것은 아닙니다.

# Windows PowerShell
curl.exe --proxy socks5h://127.0.0.1:10808 --connect-timeout 10 --max-time 20 -I https://example.com

# macOS 터미널
curl --proxy socks5h://127.0.0.1:10808 --connect-timeout 10 --max-time 20 -I https://example.com

첫 실행 문제 해결: 증상에 따라 원인 좁히기

창은 열리는데 노드를 선택하면 왜 오류가 나나요?

노드를 활성화한 직후 처음 발생한 오류부터 확인하세요. 파일을 찾을 수 없으면 코어 위치를 점검하고, 설정 파싱에 실패하면 프로토콜과 Core 유형을 확인하며, 포트가 사용 중이면 수신 프로세스를 살펴봅니다. 서로 다른 세 오류를 모두 구독 문제로 보면 안 됩니다.

구독 업데이트 시간이 초과되면 프록시를 통한 업데이트를 켜야 하나요?

사용 가능한 노드가 있고 그 노드로 구독 주소에 접속할 수 있다면 ‘구독 그룹’ 메뉴에서 프록시를 통해 업데이트할 수 있습니다. 처음이라 노드 목록이 비어 있다면 이 옵션을 켜도 연결이 생기지 않습니다. 먼저 주소가 유효한지, 네트워크에 연결할 수 있는지, 서비스 이용 기간이 남아 있는지 확인하세요.

지연 시간은 숫자로 나오는데 왜 웹페이지가 열리지 않나요?

먼저 TCP 지연 시간 테스트인지 실제 연결 테스트인지 확인하세요. 포트에 연결할 수 있어도 프로토콜 핸드셰이크가 성공했다는 뜻은 아닙니다. 프록시를 명시한 명령으로 요청을 확인한 다음 시스템 프록시, 브라우저 설정, 라우팅 로그를 살펴보세요. 지연 시간 숫자 하나만으로 연결 상태를 판단하지 마세요.

재시작할 때마다 구독을 다시 가져와야 하는데 저장되지 않은 건가요?

먼저 다른 복사본으로 프로그램을 실행했는지 확인하고 설정 폴더에 쓰기 권한이 있는지 살펴보세요. 바로 가기나 앱 위치를 고정한 뒤 프로그램을 종료하고 다시 열어 확인합니다. 폴더를 옮길 때는 먼저 설정을 백업하고, 새 버전과 기존 버전을 동시에 실행하지 마세요.

설정 완료 후 점검 순서

첫 설치의 목표는 모든 기능을 한 번에 켜는 것이 아니라 반복해서 확인할 수 있는 연결 경로를 만드는 것입니다. 항목을 하나 바꿀 때마다 테스트하세요. 실패하더라도 방금 변경한 설정에서 원인을 찾을 수 있습니다. TUN, 자동 시작, 복잡한 분기 설정은 기본 연결이 안정된 뒤 하나씩 추가하세요.

  1. 프로그램: 앱이 정상적으로 실행되고, 종료 후 다시 열어도 구독과 설정이 유지됩니다.
  2. 코어: 활성 노드를 켰을 때 설정 파싱 오류가 없고 로컬 포트가 수신 중입니다.
  3. 연결: 프록시를 명시한 테스트에서 응답을 받고 라우팅 로그로 사용된 출구를 확인합니다.
  4. 앱: 대상 앱에서 올바른 프록시를 사용하고 브라우저와 명령줄 테스트 결과를 각각 설명할 수 있습니다.
  5. 종료 후 복원: ‘시스템 프록시 해제’를 실행한 뒤 클라이언트를 종료하고, 일반 네트워크 요청이 닫힌 수신 포트에 의존하지 않는지 확인합니다.

계속 문제를 확인해야 한다면 운영체제와 아키텍처, v2rayN 버전, 코어 이름과 버전, 연결 포트, 첫 번째 오류 로그를 기록하세요. 화면을 공유하기 전에는 구독 토큰, 노드 인증 정보, 서버의 비공개 설정을 가리세요. 오류가 발생한 전체 상황을 기록하는 편이 반복해서 재설치하거나 코어를 자주 바꾸는 것보다 원인을 찾는 데 도움이 됩니다.

v2rayN 다운로드플랫폼에 맞는 클라이언트 선택