데스크톱에서는 v2rayN을 먼저 고려하고, Android에서는 일반적인 사용에 v2rayNG를 추천합니다. V2Fly 설정을 그대로 사용해야 한다면 v2flyNG를 살펴보세요. 이 글에서는 플랫폼, 코어, 구독, 라우팅을 비교하고 두 환경의 설정 방법을 안내합니다. 이름이 비슷한지가 아니라 노드에 필요한 프로토콜·전송 방식·보안 매개변수를 현재 코어가 모두 지원하는지가 선택의 기준입니다.
세 클라이언트 차이: 먼저 기기에 맞춰 선택하기
v2rayN, v2rayNG, v2flyNG는 설정과 연결을 관리하는 클라이언트이지 노드 서비스 자체가 아닙니다. 클라이언트를 설치한 뒤에도 유효한 노드 정보나 구독 주소가 필요합니다. 클라이언트는 설정을 저장하고 코어를 실행하며 트래픽 연결 방식을 제어합니다. 서버 회선, 계정 유효 기간, 네트워크 품질은 별도로 제공되는 서비스에 따라 달라집니다.
데스크톱에서는 v2rayN을 우선 고려하세요. Windows, macOS, Linux용 배포판이 있어 여러 구독 그룹을 관리하고 노드를 바꾸거나 라우팅을 조정하기 편리합니다. Android에서는 v2rayNG와 v2flyNG 중에서 선택하면 됩니다. 데스크톱 설치 파일과 Android 설치 파일을 혼용하지 말고, 이름에 포함된 글자만으로 프로토콜 지원 여부를 판단하지 마세요.
| 비교 항목 | v2rayN | v2rayNG | v2flyNG |
|---|---|---|---|
| 지원 플랫폼 | Windows、macOS、Linux | Android | Android |
| 코어 구성 | 여러 코어를 관리할 수 있으며, 실제 사용 코어는 설정에 따라 달라집니다 | Xray 코어 사용 | V2Fly 코어 사용 |
| 구독 관리 | 그룹별로 노드를 관리하고 업데이트 | 구독 그룹 및 노드 업데이트 | 구독 관리 및 노드 업데이트 |
| 트래픽 연결 방식 | 로컬 프록시 및 시스템 프록시. TUN은 버전과 권한 설정에 따라 사용 가능 | Android VPN 모드 또는 로컬 프록시 모드 | Android VPN 모드 또는 로컬 프록시 모드 |
| 주요 용도 | 데스크톱에서 구독과 라우팅 통합 관리 | Android에서 일상적으로 연결하고 Xray 설정 사용 | Android에서 기존 V2Fly 설정 사용 |
세 클라이언트는 모두 무료 오픈 소스 소프트웨어이지만, 무료 클라이언트가 무료 회선을 뜻하지는 않습니다. 클라이언트 이름만으로 연결 속도를 예측할 수도 없습니다. 같은 노드라도 시간대별 혼잡도 차이가 인터페이스나 관리 기능 차이보다 더 크게 작용할 수 있습니다.
기본 코어와 프로토콜 지원: VLESS와 REALITY를 함께 확인하세요
V2Ray는 이런 도구를 통칭하는 말로 자주 쓰이지만 V2Fly와 Xray는 서로 다른 코어 프로젝트입니다. VMess, VLESS, Trojan, Shadowsocks는 프록시 프로토콜이고 WebSocket은 전송 방식입니다. TLS와 REALITY는 연결 보안과 관련된 방식입니다. 설정을 가져올 때는 “VLESS 지원” 여부만 확인하지 말고 전송 방식, 보안 방식, 흐름 제어도 함께 확인해야 합니다.
v2rayNG는 Xray 코어를 사용하므로 서버에서 제공한 Xray 매개변수에 맞춰 설정하기 좋습니다. v2flyNG는 V2Fly 코어를 사용하므로 Xray용 REALITY나 Vision 설정을 그대로 적용하면 안 됩니다. v2rayN은 실제로 선택된 코어를 확인해야 합니다. 기본 코어는 버전, 설정 유형, 기존 설정에 따라 달라질 수 있으므로 모든 설치 환경에 하나의 결론을 적용할 수 없습니다.
v2rayNG: Android 일상 사용에 우선 추천
추천Xray 코어를 사용합니다. 노드에서 VLESS, REALITY, Vision을 요구한다면 먼저 현재 클라이언트와 코어 버전의 지원 여부를 확인한 뒤 서버 매개변수에 맞춰 입력하세요.
추천 용도: Android 일상 연결, Xray 기능이 필요한 노드
v2flyNG: 기존 V2Fly 설정 사용
V2Fly 코어를 사용합니다. VMess 등 기존 설정이 있고 같은 설정 체계를 유지하고 싶다면 구독 파싱과 연결 결과를 먼저 확인하세요.
추천 용도: Android에서 기존 V2Fly 설정 사용, 호환성 확인
v2rayN: 데스크톱 통합 관리
노드 편집, 구독 그룹, 라우팅을 데스크톱 인터페이스에서 관리할 수 있습니다. 사용할 수 있는 프로토콜은 현재 설정에서 호출하는 코어와 해당 버전에 따라 달라집니다.
추천 용도: 데스크톱 작업, 여러 구독 관리, 설정 차이 확인
선택 기준: 노드 설정 전체를 먼저 확인하세요
VLESS 노드를 받았다면 REALITY 사용 여부와 흐름 제어가 xtls-rprx-vision인지도 확인하세요. 이러한 설정이 필요하면 Xray 지원 여부를 우선 확인하고, 누락된 매개변수를 채우려고 클라이언트를 계속 바꾸지는 마세요.
구독 관리: 두 기기에서 같은 주소를 쓸 수 있지만 설정은 자동으로 동기화되지 않습니다
구독 주소는 보통 노드 목록을 가져오는 HTTPS 주소입니다. vmess://, vless:// 등의 공유 링크는 개별 노드 정보를 담습니다. 단일 노드 링크를 구독 주소 입력란에 넣으면 업데이트에 실패할 수 있습니다. 반대로 구독 주소를 단일 노드로 가져오면 업데이트 가능한 그룹이 만들어지는 것은 아닙니다.
v2rayN에서는 ‘구독 그룹’ → ‘구독 그룹 설정’에서 그룹을 추가한 다음 구독을 업데이트할 수 있습니다. v2rayNG에서는 오른쪽 상단 메뉴에서 ‘구독 그룹 설정’으로 이동해 저장한 뒤 ‘구독 업데이트’를 실행하세요. 메뉴 이름은 버전에 따라 달라질 수 있지만 순서는 같습니다. 주소를 저장하고 목록을 요청한 다음 노드를 선택해 연결하세요. v2flyNG에서도 구독 관리 메뉴와 클립보드에서 가져오기 메뉴를 구분해야 합니다.
두 기기 설정: 구독은 공유하고 로컬 설정은 각각 관리
데스크톱: v2rayN
- ‘일상 회선’이라는 이름으로 구독 그룹을 만들고 전체 주소를 저장합니다.
- 한 번 직접 업데이트한 뒤 반환된 노드 수와 업데이트 시간을 기록합니다.
- 사용 가능한 노드를 선택하고 시스템 프록시를 설정하거나 필요에 따라 TUN을 구성합니다.
Android: v2rayNG
- 같은 구독 주소를 추가하고 서버에서 여러 기기 사용을 허용하는지 확인합니다.
- 업데이트한 뒤 사용할 노드의 주소, 포트, 보안 매개변수를 확인합니다.
- 앱별 프록시를 별도로 설정합니다. 데스크톱 라우팅 설정이 동기화됐다고 가정하지 마세요.
같은 구독을 사용하면 같은 출처의 노드를 가져올 수 있습니다. 다만 새로고침 시점, 서버 응답 형식, 기기 제한에 따라 목록이 달라질 수 있으며 로컬 라우팅과 DNS 설정은 자동으로 일치하지 않습니다.
구독 주소에는 접근 토큰이 포함되는 경우가 많으므로 계정 자격 증명처럼 안전하게 보관하세요. 도움을 요청할 때는 오류 유형과 클라이언트·코어 버전만 공유하고 전체 주소, 사용자 식별 정보, 비밀번호는 가리세요. 업데이트에 실패하면 주소에 공백이 들어갔는지 먼저 확인한 다음 네트워크 시간 초과, 인증 실패, 콘텐츠 파싱 실패를 구분하세요. 처음부터 모든 그룹을 삭제하지 마세요.
라우팅과 트래픽 연결: 시스템 프록시가 모든 트래픽을 처리하는 것은 아닙니다
데스크톱에서 시스템 프록시를 켜면 주로 시스템 프록시 설정을 따르는 프로그램에 적용됩니다. 자체 프록시 설정을 사용하는 앱도 있고 시스템 프록시를 거치지 않는 앱도 있습니다. 이 경우 노드를 탓하기 전에 앱이 어떻게 연결을 시작하는지 확인하세요. TUN을 사용하면 더 많은 트래픽을 연결할 수 있지만 라우팅, DNS, 권한 설정이 추가됩니다. 처음부터 모든 기능을 켤 필요는 없습니다.
Android VPN 모드는 시스템이 제공하는 가상 네트워크 인터페이스를 통해 트래픽을 연결합니다. 노드가 다른 프로토콜로 바뀌는 것은 아닙니다. 앱별 프록시는 어떤 앱이 이 경로를 사용할지 결정하고, 코어 라우팅은 트래픽을 직접 연결할지, 프록시로 보낼지, 차단할지 결정합니다. 두 설정의 역할은 다릅니다. 제외된 앱의 트래픽은 보통 코어 라우팅으로 전달되지 않습니다.
- 브라우저만 사용: 데스크톱에서는 먼저 시스템 프록시로 확인하세요. 브라우저에 별도 프록시 설정이 있다면 시스템 설정을 덮어쓰는지 확인합니다.
- Android에서 일부 앱만 사용: 앱별 설정이 ‘선택한 앱만 프록시’인지 ‘선택한 앱 우회’인지 먼저 확인한 다음 앱 목록을 선택하세요.
- 도메인별 라우팅 필요: 기본 규칙을 유지한 상태에서 한 번에 하나씩 조정하세요. 규칙 순서에 따라 최종 적용 결과가 달라집니다.
- 특정 도메인만 접속 실패: DNS와 연결 로그를 함께 확인하세요. 노드 지연 시간만 살펴봐서는 원인을 찾기 어렵습니다.
예를 들어 브라우저를 ‘우회’ 목록에 추가하면 로컬 네트워크로 연결됩니다. 이는 설정에 따른 결과이지 프록시 고장이 아닙니다. 반대로 브라우저를 ‘프록시 적용’ 목록에 넣어도 모든 백그라운드 앱이 프록시를 사용하는 것은 아닙니다. 연결 방식 설정은 사용 가이드를 참고하고, 연결 오류는 연결 문제 해결에서 확인하세요.
첫 연결 확인: 로컬 포트와 서버 포트를 구분하세요
노드 편집 화면의 서버 포트는 원격 서버에 연결할 때 사용합니다. 매개변수 설정의 로컬 수신 포트는 이 기기의 프로그램이 연결할 때 사용합니다. 두 포트가 같아야 할 이유는 없습니다. 아래 숫자는 문제 해결을 위한 구체적인 예시이며 세 클라이언트의 공통 기본값이 아닙니다. 실제 값은 현재 설정과 시작 로그에서 확인하세요.
- 환경 정보를 기록합니다. 클라이언트의 정보 또는 버전 화면을 열어 클라이언트 버전과 코어 버전을 각각 적어 두세요. 두 버전 번호는 서로 다릅니다.
- 수신 포트를 확인합니다. v2rayN에서는 ‘설정’ → ‘매개변수 설정’에서 로컬 수신 설정을 확인할 수 있습니다. 일부 버전은 혼합 포트를 사용하므로 포트 두 개를 각각 제공하지 않을 수 있습니다.
- 노드 하나를 실행합니다. 먼저 코어가 정상적으로 시작되는지 확인하세요. 로그에
address already in use가 표시되면 로컬 포트를 사용 중인 프로세스부터 확인하세요. - 앱 연결 설정을 확인합니다. 프록시를 직접 입력할 때 주소는 보통
127.0.0.1을 사용하며, 포트는 실제 수신 포트와 일치해야 합니다. SOCKS와 HTTP 유형을 혼동하지 마세요. - 원격 연결을 다시 확인합니다. 코어가 정상적으로 실행되는데도 핸드셰이크에 실패하면 서버 주소, 포트, 사용자 식별 정보, SNI, 보안 매개변수를 확인하세요.
클라이언트 선택 FAQ: 가져오기, 속도, 백그라운드 연결
PC에서 v2rayN을 쓰는데 Android에서도 같은 이름의 앱을 써야 하나요?
아닙니다. Android에서는 먼저 v2rayNG를 고려하고 서버에서 지원하는 구독 형식을 가져오세요. 같은 노드의 프로토콜, 전송 방식, 보안 매개변수가 일치하는지 확인하면 됩니다. 데스크톱의 시스템 프록시, 라우팅, DNS 설정은 Android에서 별도로 확인해야 합니다.
v2flyNG에서 REALITY 노드를 바로 가져올 수 있나요?
가져오기에 성공했다고 호환된다고 단정할 수는 없습니다. REALITY는 Xray 관련 기능이므로 해당 기능을 지원하는 클라이언트와 코어를 사용하고 공개 키, 짧은 ID, 서버 이름, 흐름 제어를 확인하세요. 설정 항목이 빠져 있다면 노드 제공자에게 전체 설정을 요청하세요.
v2rayNG로 바꾸면 v2flyNG보다 항상 빨라지나요?
그렇게 판단할 수 없습니다. 비교할 때는 같은 서버, 같은 네트워크, 같은 테스트 파일을 사용하고 각 기기에서 3회씩 다운로드해 전송 속도와 연결 끊김을 기록하세요. 프로토콜이나 출구가 다르면 결과 차이를 클라이언트 탓으로 돌릴 수 없으며, 단일 지연 시간으로 다운로드 속도를 판단할 수도 없습니다.
Android에서 화면을 잠그면 연결이 끊깁니다. 클라이언트를 다시 설치해야 하나요?
먼저 시스템 ‘설정’ → ‘앱’ → 해당 클라이언트 → ‘배터리’에서 백그라운드 제한을 확인하고 기기에서 제공하는 옵션을 사용해 백그라운드 실행을 허용하세요. 이어서 시스템이 VPN 서비스를 종료했는지도 확인합니다. 변경한 뒤 화면이 켜진 상태와 잠긴 상태에서 각각 테스트하고 노드와 라우팅을 동시에 바꾸지는 마세요.
구독은 업데이트되지만 모든 노드가 연결되지 않으면 어떻게 하나요?
업데이트 성공은 구독 요청이 처리됐다는 뜻일 뿐입니다. 노드 하나를 선택해 코어 시작 로그를 확인하고 기기 시간과 계정 상태도 확인하세요. REALITY를 사용하는 노드만 실패한다면 코어 지원과 관련 매개변수를 중점적으로 확인합니다. 로컬 수신에 실패했다는 메시지가 나오면 먼저 포트 문제를 해결하세요.
마지막으로 두 단계로 진행하세요. 데스크톱에는 해당 플랫폼용 v2rayN을 설치하고, Android에서는 일상적인 사용을 위해 v2rayNG부터 시작하세요. V2Fly 설정 체계가 꼭 필요할 때만 v2flyNG를 검증하면 됩니다. 먼저 노드 하나, 앱 하나, 트래픽 연결 방식 하나가 정상적으로 작동하도록 한 뒤 라우팅, 자동 업데이트, 여러 기기 설정을 추가하면 문제 범위를 좁히기 쉽습니다.