CLIENT / CONFIG / ROUTING

V2Ray 프록시 클라이언트 v2rayN 다운로드 및 설정

오픈 소스 클라이언트, 구독 가져오기, 라우팅 분리를 중심으로 4개 플랫폼 설치 안내와 코어 선택, 설정 항목을 정리했습니다.

NET
{VMess} {VLESS} {Trojan} {Shadowsocks}

01 / CLIENT SHELF

V2Ray 클라이언트 플랫폼별 안내

먼저 운영체제와 프로세서 아키텍처를 확인한 다음 설치 파일을 선택하세요. 데스크톱에서는 v2rayN을 사용하고, Android에서는 v2rayNG를 우선 살펴보세요. V2Fly 코어가 필요하다면 v2flyNG와 비교하면 됩니다. 설치 파일 선택과 연결 매개변수 확인은 별개의 과정입니다. 클라이언트를 설치한 뒤에도 사용할 수 있는 설정을 가져와야 합니다.

Windows

v2rayN / Desktop · WPF

데스크톱 버전은 크로스 플랫폼 인터페이스를 제공하며, WPF 버전은 기존 데스크톱 방식의 조작 환경을 유지합니다. 다운로드하기 전에 패키지 종류를 확인하세요. 두 다운로드 항목을 서로 다른 프로토콜로 오해해서는 안 됩니다. 이미 설정을 사용 중이라면 이전하기 전에 구독 그룹, 라우팅 설정, 로컬 수신 포트를 기록해 두세요.

처음 사용하는 경우 설정 하나를 가져오고 활성 서버를 선택한 뒤 시스템 프록시를 설정하세요. 브라우저는 연결되지만 다른 프로그램은 연결되지 않는다면 서버를 계속 바꾸기보다 해당 프로그램이 시스템 프록시를 사용하는지 먼저 확인하세요. 두 버전은 인터페이스 세부 사항이 다를 수 있으므로 현재 메뉴 이름을 기준으로 조작하세요.

다운로드 Windows 클라이언트

macOS

v2rayN / Apple Silicon · Intel

시스템의 ‘이 Mac에 관하여’에서 칩 정보를 확인하세요. Apple Silicon과 Intel은 서로 다른 설치 파일을 사용하므로 파일 확장자만 보고 판단해서는 안 됩니다. 앱을 응용 프로그램 폴더로 옮긴 다음 시스템의 실행 확인 및 네트워크 권한 안내를 처리하세요. 임시 위치에서 앱을 반복 실행하지 않는 것이 좋습니다.

시스템 프록시와 트래픽 처리 권한을 각각 확인하세요. 업데이트 후 연결 동작이 달라졌다면 클라이언트에서 코어가 실행 중인지, 시스템 프록시가 현재 수신 포트를 가리키는지 차례로 살펴보세요. 개발자 관련 알림이 표시되면 시스템 설정의 보안 안내에 따라 처리하세요. 앱을 실행하기 위해 시스템 보안 기능을 통째로 끄는 것은 권장하지 않습니다.

다운로드 macOS 클라이언트

Android

v2rayNG / v2flyNG

v2rayNG는 주로 Xray 코어를 사용하며, v2flyNG에서는 V2Fly 코어를 선택할 수 있습니다. 두 앱은 이름이 비슷해도 지원하는 프로토콜 항목이 같다고 볼 수 없습니다. 선택하기 전에 설정에 REALITY, 특정 전송 방식 또는 코어별 매개변수가 포함되어 있는지 확인하세요.

기기 아키텍처에 맞춰 arm64 또는 범용 패키지를 선택하세요. 설치한 뒤 구독을 가져오고 시스템 VPN 권한을 승인해야 합니다. 이 권한은 앱이 기기의 트래픽을 처리하는 데 필요하며, 원격 서비스를 앱이 제공한다는 뜻은 아닙니다. 백그라운드로 전환한 뒤 연결이 끊긴다면 배터리 최적화, 백그라운드 활동 제한, 다른 VPN 앱과의 충돌을 확인하세요.

다운로드 Android 클라이언트

Linux

v2rayN / deb · rpm

먼저 배포판의 패키지 관리 방식을 확인한 다음 x64와 arm64를 구분하세요. deb와 rpm은 설치 패키지 형식이지 연결 프로토콜이 아닙니다. 잘못 선택하면 일반적으로 라우팅이 아니라 설치 단계에서 문제가 발생합니다. 그래픽 환경의 프록시 설정은 데스크톱 환경에 영향을 받을 수 있으므로 모든 앱이 자동으로 설정을 가져온다고 가정하지 마세요.

설치 후 로컬 수신 포트와 코어 실행 상태를 확인한 다음 브라우저나 데스크톱의 시스템 프록시를 설정하세요. 터미널 프로그램은 별도로 프록시 매개변수를 지정해야 할 수 있습니다. 특정 프로그램만 실패한다면 해당 프로그램의 프록시 설정 위치부터 확인하세요. 더 넓은 범위의 트래픽을 처리해야 한다면 현재 클라이언트의 TUN 지원 여부와 권한 요구 사항을 살펴보세요.

다운로드 Linux 클라이언트

02 / CONFIG INSPECTOR

구독, 라우팅 및 코어 설정

클라이언트는 인터페이스 설정을 관리하고 코어는 연결과 라우팅을 실행합니다. 아래에서는 두 종류의 설정을 나누어 설명합니다. 구독 그룹은 클라이언트가 관리하는 데이터이며, 인바운드, 아웃바운드, 라우팅, DNS는 코어 설정에 흔히 포함되는 항목입니다. 코드는 일부 항목을 설명하기 위한 예시이며 전체 실행 설정을 그대로 덮어쓰면 안 됩니다.

config.json / outbounds 일부

구독은 여러 연결 설정을 한꺼번에 가져오는 데 사용하고, 그룹은 클라이언트에서 출처별로 구분하는 데 사용합니다. 먼저 그룹을 만든 뒤 구독 주소를 입력하고 업데이트하여 현재 클라이언트가 가져온 내용을 해석할 수 있는지 확인하세요. 업데이트 후에는 노드 이름, 프로토콜, 전송 항목을 살펴봐야 합니다. 목록에 항목이 나타나는지만 확인해서는 충분하지 않습니다. 그룹 이름과 자동 업데이트 주기는 클라이언트 설정이며 일반적인 코어 항목은 아닙니다. 아래는 가져오기 후 생성될 수 있는 아웃바운드 구조의 예시입니다. 원격 인증 정보가 없으므로 이 예시만으로 프록시 연결을 만들 수는 없습니다. 여러 출처를 정리하려면 필터 조건을 설정하고 원본 그룹은 보존하세요.

{
  "outbounds": [
    { "tag": "direct", "protocol": "freedom" },
    { "tag": "block", "protocol": "blackhole" }
  ]
}

03 / OPEN-SOURCE ECOSYSTEM

Project V, V2Fly, Xray

클라이언트, 코어, 프로토콜, 원격 서비스는 서로 다른 계층입니다. 각 요소의 역할을 이해하면 같은 구독이 앱마다 다르게 작동하는 이유를 파악하는 데 도움이 됩니다. 권한, 이름 해석, 서버 매개변수 문제를 한데 섞어 점검하는 일도 줄일 수 있습니다.

ORIGIN / PROJECT V

생태계와 실행 코어

Project V는 V2Ray 생태계를 이해하는 출발점입니다. V2Ray는 인바운드, 아웃바운드, 전송, 라우팅, 도메인 이름 해석을 중심으로 프록시 기능을 구성하며, 설정 파일에서 각 모듈을 연결합니다. 일상적인 검색에서 ‘V2Ray 클라이언트’는 보통 이러한 기능을 관리하는 그래픽 앱을 뜻하며, 항상 특정 코어 하나만을 가리키는 것은 아닙니다. 클라이언트를 다운로드하기 전에 관리 인터페이스를 선택하는 것인지 연결을 실행하는 프로그램을 선택하는 것인지 구분하세요.

V2Fly는 V2Ray의 커뮤니티 개발 흐름을 이어가고 있으며, Xray는 별도의 코어 분기로 발전해 자체 프로토콜과 전송 확장 기능을 갖추었습니다. 두 코어는 공통된 배경이 있고 기본 설정 개념이 비슷한 경우도 있지만, 모든 항목이 호환된다고 볼 수는 없습니다. 설명을 비교할 때는 항목 이름뿐 아니라 예시가 어느 코어에 해당하는지, 클라이언트가 실제로 어떤 코어를 사용하는지도 확인하세요.

CLIENT / THREE APPLICATIONS

오픈 소스 클라이언트 3종의 역할

v2rayN은 데스크톱용 클라이언트로 구독 관리, 서버 선택, 라우팅 편집, 로컬 프록시 설정 등을 담당합니다. 크로스 플랫폼 인터페이스 덕분에 데스크톱에서 비슷한 방식으로 조작할 수 있지만 운영체제 권한, 설치 방법, 시스템 프록시 작동 방식에는 차이가 있습니다. 기기를 옮길 때는 필요한 설정부터 이전한 다음 수신 포트와 트래픽 처리 모드를 확인하세요. 다른 기기의 환경 설정을 통째로 적용해서는 안 됩니다.

v2rayNG와 v2flyNG는 Android용 클라이언트로, 각각 주로 Xray와 V2Fly 코어를 사용합니다. 둘 다 오픈 소스 클라이언트이며 주요 차이는 코어 기능, 인식 가능한 설정 항목, 앱 설정을 기준으로 살펴봐야 합니다. 구독 주소를 가져올 수 있다고 해서 모든 연결이 작동하는 것은 아닙니다. 구독을 읽은 뒤에도 프로토콜, 보안 계층, 전송 매개변수, 시스템 권한을 확인해야 합니다. 데스크톱과 휴대폰에서 같은 구독을 사용하더라도 각각 따로 테스트하세요.

LICENSE / SOURCE CODE

오픈 소스 라이선스와 사용 범위

V2Fly 코어는 MIT 라이선스를, Xray-core는 MPL-2.0 라이선스를 사용합니다. 클라이언트와 코어, 함께 제공되는 구성 요소에 적용되는 라이선스는 각각 확인해야 합니다. 오픈 소스 라이선스는 코드를 사용하고 배포할 때의 조건을 설명할 뿐, 원격 서비스의 요금이나 모든 네트워크 환경에서의 성능을 보장하지 않습니다. 클라이언트는 무료로 사용할 수 있으며 연결에 필요한 서버와 구독은 사용자가 직접 준비해야 합니다.

오픈 소스 생태계의 장점은 구현 방식을 논의하고 검토하며 개선할 수 있다는 데 있습니다. 문제도 구체적인 모듈을 중심으로 살펴볼 수 있습니다. 하지만 코드가 공개되어 있다고 해서 설정의 출처, 네트워크 권한, 데이터 처리 경로를 판단할 책임까지 없어지는 것은 아닙니다. 설정을 가져오기 전에 서버 제공자가 누구인지 확인하세요. 문제 정보를 공유할 때는 구독 주소, 식별 정보, 인증 매개변수를 삭제하고 재현에 필요한 설정 구조만 남기세요.

UPDATE / COMPATIBILITY

앱 업데이트와 설정 이전

클라이언트 업데이트, 코어 업데이트, 구독 업데이트는 각각 서로 다른 내용을 변경합니다. 클라이언트 업데이트는 인터페이스, 설정 생성 방식, 시스템 연동에 영향을 줄 수 있습니다. 코어 업데이트는 프로토콜 지원이나 설정 항목 처리에 변화를 줄 수 있으며, 구독 업데이트는 주로 원격 연결 정보를 바꿉니다. 문제가 생기면 먼저 어느 계층에서 변경이 있었는지 기록한 뒤 로그 확인, 설정 복원, 구독 재가져오기 중 적절한 조치를 선택하세요. 여러 작업을 한꺼번에 실행하면 원인을 파악하기 어려워집니다.

업데이트 전에 복원할 수 있도록 클라이언트 설정과 사용자 지정 규칙을 보관하고, 업데이트 후에는 기존에 작동하던 연결 하나부터 테스트하세요. 기본 연결이 정상이라면 라우팅, 도메인 이름 해석, 로컬 네트워크 공유를 차례로 확인합니다. 화면에 ‘실행 중’이라고 표시되는 것만으로 정상 여부를 판단하지 마세요. 코어가 시작되었다는 것은 프로세스가 동작한다는 뜻일 뿐입니다. 요청이 예상한 아웃바운드로 전달되는지는 앱의 프록시 설정과 로그의 라우팅 결과를 함께 확인해야 합니다.

READING / CONFIGURATION PATH

연결 매개변수부터 라우팅 규칙까지

처음 설정할 때는 정해진 순서대로 진행하는 것이 좋습니다. 먼저 원격 주소, 포트, 인증 매개변수를 확인하고 프로토콜, 전송 방식, 보안 계층을 점검하세요. 그런 다음 로컬 인바운드를 시작하고 연결 하나를 선택해 테스트합니다. 기본 연결이 작동한 뒤에 복잡한 라우팅을 추가하세요. 이 순서를 따르면 연결 자체의 실패와 요청이 잘못된 아웃바운드로 전달되는 문제를 구분할 수 있으며, 잘못된 DNS 결과를 프로토콜 비호환으로 오해하는 일도 줄어듭니다.

JSON을 읽을 때는 먼저 인바운드와 아웃바운드의 태그를 찾고 라우팅 규칙에서 서로 어떻게 연결되는지 확인하세요. 규칙에 사용된 도메인 및 주소 목록은 외부 데이터 파일에 의존할 수 있습니다. 파일이 없는 문제와 규칙 작성 오류는 서로 다른 원인입니다. 항목별로 비교하려면 전체 설정 가이드를 확인하세요. 처음 가져오기와 연결만 완료하려면 빠른 시작을 따라 하면 됩니다. 고급 기능을 처음부터 모두 활성화할 필요는 없습니다.

설정 전 자주 묻는 질문 4가지

구독 주소와 개별 연결은 어떻게 다른가요?
구독은 업데이트할 수 있는 연결 목록을 가져오는 데 사용하고, 개별 공유 링크는 하나의 연결 매개변수를 담습니다. 가져온 뒤에는 출처 그룹을 확인하고 사용할 항목을 선택하세요. 업데이트할 때 직접 추가한 기록과 혼동하지 않도록 주의해야 합니다. 자주 묻는 질문 보기 →
VMess, VLESS, REALITY는 같은 계층의 설정인가요?
VMess와 VLESS는 프록시 프로토콜이고, REALITY는 보안 전송과 관련된 기술입니다. 이름 하나만 보고 클라이언트를 선택하지 말고 프로토콜, 전송 방식, 보안 매개변수의 조합을 함께 확인해야 합니다. 용어집 보기 →
시스템 프록시를 켰는데 일부 앱은 왜 직접 연결되나요?
일부 앱은 시스템 프록시 설정을 사용하지 않으므로 프록시를 직접 입력하거나 다른 트래픽 처리 방식을 적용해야 합니다. 먼저 앱의 요청이 로컬 수신 포트에 도달하는지 확인한 다음 아웃바운드와 라우팅을 살펴보세요. 스위치가 켜져 있다는 이유만으로 모든 트래픽이 프록시를 거친다고 볼 수는 없습니다. 연결 점검 단계 보기 →
코어가 시작되지 않을 때 무엇부터 확인해야 하나요?
먼저 명확한 오류가 처음 나타난 부분을 확인하고 JSON 문법 오류, 포트 사용 중, 알 수 없는 항목, 데이터 파일 누락을 구분하세요. 로그 뒤쪽의 연결 오류는 시작 실패의 결과일 수 있습니다. 문제를 해결할 때는 가장 먼저 발생한 원인부터 살펴보세요. 문제 해결 안내 보기 →

04 / FIELD NOTES

클라이언트 설정 가이드

사용 상황에 맞는 안내를 확인하세요. 수정하기 전에 현재 문제가 수신 설정, 권한, 설정 파일 생성, 원격 연결 중 어느 단계에 해당하는지 파악한 다음 관련 문서로 이동하세요. 문서의 일부 설정 예시는 항목 간 관계를 설명하기 위한 것이며, 실제 매개변수는 사용하는 환경에 맞춰야 합니다.