PC에서는 v2rayN을 먼저 살펴보고, Android에서는 필요한 설정에 따라 Xray 기반 v2rayNG와 V2Fly 기반 v2flyNG 중에서 선택하세요. 이 글에서는 GUI 클라이언트와 코어, 노드 설정의 차이를 구분하고, 구독을 어디까지 공용으로 쓸 수 있는지, 시스템 프록시와 라우팅 규칙을 어떻게 조합하는지 설명합니다. PC와 Android에 각각 설치하고 이전할 때 확인할 순서도 함께 안내합니다.
플랫폼: PC와 Android를 구분해 선택
이름은 비슷하지만 같은 설치 파일의 별칭은 아닙니다. v2rayN은 Windows, macOS, Linux를 지원하는 데스크톱 GUI 클라이언트입니다. 설치할 때는 프로세서 아키텍처와 배포 패키지 형식을 확인해야 합니다. v2rayNG와 v2flyNG는 Android용이며, 사용하는 코어와 이에 따른 설정 지원 범위가 주된 차이입니다. PC용 설치 파일은 Android에서 사용할 수 없고, Android용 설치 파일도 데스크톱 클라이언트를 대신할 수 없습니다.
| 비교 항목 | v2rayN | v2rayNG | v2flyNG |
|---|---|---|---|
| 지원 플랫폼 | Windows, macOS, Linux 데스크톱 | Android | Android |
| 코어 구성 | 여러 코어 지원. 실제 사용 코어는 설정과 구성에 따라 결정 | Xray-core 기반 | V2Fly-core 기반 |
| 설정 관리 | 구독 그룹, 노드 목록, 라우팅 설정 | 구독 및 노드 관리, 모바일 연결 설정 | 구독 및 노드 관리, 모바일 연결 설정 |
| 주요 트래픽 연결 방식 | 시스템 프록시, 앱별 프록시. TUN은 플랫폼과 설정에 따라 다름 | Android VPN 인터페이스로 기기 트래픽 연결 | Android VPN 인터페이스로 기기 트래픽 연결 |
| 선택 시 우선 확인할 조건 | 데스크톱 플랫폼, 아키텍처, 필요한 코어 | Xray 기능을 요구하는 설정을 사용하는 Android 기기 | V2Fly를 기준으로 구성한 Android 기기 |
여기서 말하는 ‘VPN 인터페이스’는 Android에서 기기 트래픽을 연결하는 방식이며, 노드가 특정 VPN 프로토콜을 사용한다는 뜻은 아닙니다. 트래픽이 클라이언트로 들어오면 코어가 노드 설정과 라우팅 규칙에 따라 처리합니다. 또한 설치할 수 있다고 해서 설정까지 반드시 작동하는 것은 아닙니다. OS 버전, 프로세서 아키텍처, 코어 지원 범위를 각각 확인해야 합니다.
기본 코어: Android는 내장 코어, 데스크톱은 실제 호출 코어 확인
GUI 클라이언트는 구독 가져오기, 노드 편집, 서비스 시작 및 중지, 로그 표시를 담당하고, 코어는 프로토콜 처리와 전송 연결, 라우팅 실행을 담당합니다. v2rayNG는 Xray-core를 사용하고 v2flyNG는 V2Fly-core를 사용합니다. v2rayN은 하나의 ‘기본 코어’로 단정하기 어렵습니다. 설정 유형과 클라이언트 옵션에 따라 실제로 호출되는 코어가 달라질 수 있으므로, PC의 코어 설정과 시작 로그를 확인하세요.
v2rayN: 데스크톱 설정 관리
PC에서 여러 구독을 관리하고 라우팅을 조정하거나 코어 로그를 확인할 때 적합합니다. 코어를 바꿀 때는 프로토콜 필드와 선택한 코어가 서로 맞는지 확인해야 합니다. 이름만 바꾸는 것으로는 충분하지 않습니다.
추천 용도: Windows, macOS, Linux 데스크톱에서 구독 및 라우팅 관리
v2rayNG: Android용 Xray 설정
추천Android 기기에서 Xray, VLESS, REALITY가 필요하다고 명시된 설정을 받았다면 이 클라이언트에서 해당 필드를 먼저 확인하세요. 이 추천은 이러한 요구에 한정되며, 모든 노드를 옮겨야 한다는 뜻은 아닙니다.
추천 용도: Android 일상 사용, 특히 Xray 고유 기능이 필요한 노드
v2flyNG: Android용 V2Fly 설정
검증된 V2Fly 설정을 이미 사용 중이거나 같은 코어의 설정 동작을 유지해야 한다면 우선 고려할 수 있습니다. VMess를 지원한다고 해서 모든 확장 조합도 지원한다고 단정할 수는 없습니다.
추천 용도: V2Fly 설정 호환성과 기존 구성을 우선하는 Android 기기
선택 순서: 설정 요구사항을 확인한 다음 코어 선택
설정 제공자에게 프로토콜, 전송 방식, TLS 또는 REALITY 매개변수를 확인한 뒤 해당 필드를 모두 표현할 수 있는 클라이언트를 선택하세요. 가져오기에 실패했다고 코어를 계속 바꿔 가며 해결하려고 해서는 안 됩니다.
VMess와 VLESS는 프로토콜 이름이고, WebSocket은 전송 방식입니다. TLS와 REALITY는 연결 보안 설정과 관련되며 서로 같은 단계의 옵션이 아닙니다. 두 코어 모두 일부 일반적인 설정을 처리할 수 있지만, 지원하는 전체 기능이 같다는 뜻은 아닙니다. 특히 REALITY 설정은 V2Fly-core에 그대로 적용할 수 없습니다. 일반 VMess 노드도 클라이언트 이름이 다르다고 속도가 자동으로 빨라지는 것은 아닙니다.
구독 관리: 주소는 재사용할 수 있지만 설정은 자동 동기화되지 않음
구독은 노드 목록을 가져오는 주소이지 계정의 모든 설정을 백업한 것이 아닙니다. 세 클라이언트 모두 구독 관리 기능을 제공하지만, 주소에서 반환되는 데이터가 클라이언트가 인식할 수 있는 형식이어야 합니다. 구독 업데이트에 성공했다는 것은 해당 요청과 파싱이 완료됐다는 뜻일 뿐입니다. 노드 인증, 서버 상태, 현재 네트워크에서 접속할 수 있는지는 연결 및 로그를 통해 별도로 확인해야 합니다.
- 먼저 구독 형식을 확인하세요. 사용하려는 클라이언트에 맞는 구독 주소를 제공자에게 요청하세요. 웹 관리 페이지 주소를 구독 입력란에 넣거나, 아무 구성 파일이나 범용 노드 구독처럼 사용해서는 안 됩니다.
- 다음으로 별도 그룹을 만드세요. v2rayN에서 ‘구독 그룹’ → ‘구독 그룹 설정’을 열어 이름과 주소를 추가하고 저장한 뒤 해당 그룹의 구독을 업데이트하세요. 메뉴 이름은 버전에 따라 다를 수 있습니다.
- Android에는 별도로 가져오세요. v2rayNG 또는 v2flyNG의 구독 관리 메뉴에서 항목을 추가하고 업데이트한 다음 노드를 선택해 연결하세요. 클립보드에서 공유 링크 하나를 가져오는 것과 구독을 추가하는 것은 서로 다른 작업입니다.
- 마지막으로 업데이트 후 선택 항목을 확인하세요. 현재 노드가 목록에 남아 있는지, 주소와 포트, 전송 매개변수가 누락되지 않았는지 확인하세요. 업데이트 후에도 노드 순서나 수동 변경 사항이 그대로 유지된다고 가정해서는 안 됩니다.
같은 구독 주소를 두 기기에서 각각 업데이트할 수 있지만, 여러 기기에서 동시에 사용할 수 있는지는 서비스 약관에 따라 다릅니다. 업데이트 시점이 다르면 두 기기의 목록이 일시적으로 달라질 수도 있습니다. 데스크톱 라우팅 규칙, Android 앱별 목록, 시스템 프록시 설정, 로컬 수신 포트는 일반적으로 노드 구독과 함께 복사되지 않습니다. 기기를 바꿀 때는 ‘노드 출처’와 ‘기기별 설정’을 따로 기록하세요.
트래픽 연결과 라우팅: 포트, 시스템 프록시, 분할 라우팅의 역할
데스크톱의 시스템 프록시는 해당 설정을 읽는 앱에 요청을 로컬 프록시 포트로 보내도록 안내합니다. 기기 전체를 제어하는 스위치는 아니므로 시스템 프록시를 무시하는 프로그램은 계속 직접 연결할 수 있습니다. 라우팅 규칙은 트래픽이 코어로 들어온 뒤 프록시, 직접 연결, 차단 중 어떤 방식으로 처리할지 결정합니다. Android도 VPN 인터페이스로 트래픽을 연결한 뒤 라우팅 규칙에 따라 출구를 정합니다.
위 포트는 대응 관계를 설명하기 위한 예시이며 모든 버전의 기본값은 아닙니다. 클라이언트에서 해당 인바운드를 실제로 활성화한 경우에만 앱에 127.0.0.1:10808 또는 127.0.0.1:10809를 입력할 수 있습니다. 현재 설정에서 하나의 혼합 인바운드 포트를 사용한다면 그 포트를 입력하면 되며, 별도로 두 개의 리스너를 만들 필요는 없습니다. v2rayN의 ‘설정’ → ‘매개변수 설정’에서 로컬 수신 관련 옵션을 확인하고, 현재 화면과 로그를 기준으로 판단하세요.
- 데스크톱 브라우저: 먼저 시스템 프록시가 클라이언트의 실제 수신 주소를 가리키는지 확인한 다음 라우팅을 점검하세요. 노드 옆에 표시되는 지연 시간만 확인해서는 안 됩니다.
- Android 앱별 설정: 대상 앱이 트래픽 처리 범위에 포함되어 있는지 확인한 다음 프록시 모드와 규칙을 점검하세요. 제외된 앱은 예상한 처리 경로를 따르지 않습니다.
- 전역 프록시: 일반적으로 연결된 트래픽이 선택한 모드에 따라 프록시를 사용한다는 뜻입니다. 시스템 프록시를 우회하는 모든 데스크톱 프로그램을 강제로 제어할 수 있다는 의미는 아닙니다.
- 중국 본토 우회: 현재 규칙과 데이터 파일의 일치 여부에 따라 처리되며, 웹페이지 언어를 기준으로 위치를 판단하지 않습니다. DNS 결과와 규칙 순서에 따라 최종 연결 경로가 달라질 수 있습니다.
로컬 수신 포트는 원격 서버 포트와 다릅니다. 노드의 서버 포트는 서버 측 설정으로 정해지므로 로컬 포트와 맞추려고 수정해서는 안 됩니다. 다른 기기에서 127.0.0.1은 해당 기기 자신을 가리키므로, 그 주소로 데스크톱 클라이언트에 바로 연결할 수도 없습니다. LAN에서 공유해야 한다면 수신 범위와 인증, 방화벽 제한도 별도로 검토하세요.
PC와 Android 함께 사용하기: 구독 출처는 공유하고 설정은 각각 점검
PC와 Android를 함께 사용할 때 모든 설정을 똑같이 맞출 필요는 없습니다. 사용 권한이 있는 구독 주소를 공용으로 사용하고, 각 기기에는 시스템 동작에 맞는 연결 설정을 따로 두는 편이 안전합니다. PC에서는 시스템 프록시와 앱 호환성을, Android에서는 VPN 권한과 앱별 적용 범위, 백그라운드 실행 제한을 확인하세요.
구성 예시: 구독 출처 하나, 기기별 설정
데스크톱: v2rayN
- Windows, macOS, Linux와 프로세서 아키텍처에 맞는 패키지를 선택합니다.
- 구독을 가져온 뒤 현재 노드와 실제로 호출되는 코어를 확인합니다.
- 수신 포트를 확인한 다음 시스템 프록시를 켜거나 앱별 프록시를 설정합니다.
- 라우팅 모드와 필요한 사용자 지정 규칙을 기록합니다.
Android: 코어에 맞춰 선택
- Xray 설정은 v2rayNG에서, V2Fly 설정은 v2flyNG에서 확인합니다.
- 구독을 별도로 추가하고 Android VPN 권한을 허용합니다.
- 앱별 설정과 백그라운드 실행 권한을 하나씩 확인합니다.
- Wi-Fi와 모바일 네트워크에서 각각 연결을 확인합니다.
구독을 공유하면 노드를 중복 입력하는 수고는 줄일 수 있지만, 기기별 권한과 라우팅, 연결 점검을 대신해 주지는 않습니다.
클라이언트를 바꾸려면 먼저 구독 출처와 사용자 지정 규칙을 저장한 뒤 기존 클라이언트의 연결 서비스를 중지하세요. Android에서는 VPN 인터페이스가 필요한 서비스를 두 개 동시에 실행하지 않는 편이 좋습니다. 나중에 시작한 서비스가 연결을 가져가면서 먼저 실행한 서비스의 연결이 끊길 수 있습니다. 새 클라이언트를 검증할 때는 사용 가능한 노드 하나로 먼저 테스트하고, 이후 앱별 설정과 복잡한 라우팅을 복원하면 문제 원인을 구분하기 쉽습니다.
자주 묻는 선택 질문: 가져오기, 연결, 이전
PC에서는 같은 구독을 쓸 수 있는데 Android에서는 왜 가져오지 못하나요?
먼저 ‘다운로드 실패’와 ‘파싱 실패’를 구분하세요. 다운로드에 실패했다면 현재 네트워크, 주소 유효 기간, 클라이언트의 구독 업데이트 방식을 확인하세요. 파싱에 실패했다면 제공자가 해당 클라이언트에서 사용할 수 있는 형식으로 응답하는지 확인해야 합니다. 민감한 정보가 없는 같은 유형의 테스트 설정을 먼저 가져와 프로토콜 필드가 지원되는지 확인하세요. 전체 구독 주소를 공개 게시판에 올려서는 안 됩니다.
v2rayNG에서 v2flyNG로 바꾸면 노드를 그대로 가져와 쓸 수 있나요?
노드 이름만 보고 판단할 수는 없습니다. 프로토콜, 전송 방식, 보안 매개변수를 먼저 확인하세요. Xray 기능에 의존하는 설정이 V2Fly에서도 작동한다고 단정할 수 없습니다. 공유 링크 하나를 가져올 수 있더라도 필드가 누락되지 않았는지 확인한 뒤 연결을 시작하고 로그를 살펴보세요. 라우팅과 앱별 목록은 별도로 설정해야 합니다.
노드는 사용 가능으로 표시되는데 웹페이지가 열리지 않아요. 클라이언트를 바꿔야 하나요?
우선 클라이언트를 바꾸지 마세요. 데스크톱에서는 시스템 프록시가 실제 수신 포트를 가리키는지, 포트 충돌이 있는지 확인하세요. Android에서는 VPN 아이콘, 앱 적용 범위, 실행 상태를 확인합니다. 이어서 DNS, 라우팅 규칙 적용 결과, 노드 연결 로그를 점검하세요. 연결 테스트에 성공했다는 것은 특정 테스트 경로가 성공했다는 뜻일 뿐, 모든 앱 요청이 같은 경로를 이용한다는 보장은 아닙니다.
어느 클라이언트가 가장 빠른가요? Xray와 V2Fly만 비교하면 되나요?
코어 이름만으로는 판단할 수 없습니다. 비교할 때는 기기, 네트워크, 노드, 대상 주소, 라우팅 모드, 테스트 시간을 동일하게 유지하고 각 설정을 반복 측정해 실패 여부도 기록하세요. 서버 부하, 회선 혼잡, 전송 설정에 따라 결과가 달라질 수 있습니다. 조건이 통일되지 않은 데이터로 세 클라이언트의 속도 순위를 매기는 것은 적절하지 않습니다.
설치 전 확인: 선택을 실제 설정에 반영하기
클라이언트를 고를 때 기능 수부터 비교할 필요는 없습니다. 먼저 현재 OS에서 사용할 수 없는 설치 파일을 제외하고, 노드에 필요한 코어 기능을 확인한 다음 구독과 트래픽 연결, 라우팅을 설정하기 쉬운지 살펴보세요. 안정적으로 사용 중인 설정이 있다면 복구할 수 있도록 먼저 기록하고, 클라이언트와 코어, 노드, 규칙을 한꺼번에 바꾸지 말고 하나씩 이전하세요.
- 기기를 확인하세요: 데스크톱에서는 v2rayN을 선택하고, Android에서는 코어 요구사항에 따라 v2rayNG와 v2flyNG 중에서 선택하세요.
- 설정을 확인하세요: 노드 이름뿐 아니라 프로토콜, 전송 방식, 보안 매개변수, 구독 형식을 기록하세요.
- 연결 방식을 확인하세요: 데스크톱에서는 로컬 수신 설정과 시스템 프록시를, Android에서는 VPN 권한과 앱별 적용 범위를 확인하세요.
- 출구를 확인하세요: 간단한 라우팅으로 노드 하나를 먼저 테스트한 다음 필요한 분할 라우팅 규칙을 활성화하세요.
- 문제 해결 자료를 확인하세요: 민감한 정보를 가린 오류 로그를 보관하세요. 항목별로 원인을 확인하려면 문제 해결 가이드를, 용어가 낯설다면 용어 설명을 참고하세요.