PROJECT V
공통 기반과 커뮤니티의 발전
Project V는 프록시 연결, 전송, 라우팅에 활용할 수 있는 여러 기술 구현을 제공합니다. V2Ray는 그중 널리 사용되는 핵심 프로젝트입니다. 커뮤니티가 발전하면서 V2Fly는 V2Ray 코어의 유지보수를 이어받았고, Xray는 공통 코드 기반에서 독립적으로 발전하는 분기 프로젝트가 되었습니다. 일부 개념은 비슷하지만 기능과 설정 방식은 점차 달라졌습니다. 프로젝트 이름이 같은 프로그램의 서로 다른 테마를 뜻한다고 이해해서는 안 됩니다.
그래픽 클라이언트는 코어와 별도로 설정 편집, 공유 링크 가져오기, 구독 그룹 관리, 실행 제어 기능을 제공합니다. 사용자가 보는 설정 화면은 대개 클라이언트 인터페이스이며, 실제 연결과 라우팅은 하위 코어가 처리합니다. 따라서 여러 클라이언트에서 같은 구독이 비슷하게 표시되더라도 최종적으로 생성되는 코어 설정까지 동일한 것은 아닙니다. 가져오기 기능이 특정 필드를 인식하는지도 호환성의 일부입니다.
XRAY / V2FLY
기능 분기와 설정 호환성
Xray와 V2Fly 모두 여러 프록시 설정을 처리할 수 있지만, 구체적인 지원 범위는 각 프로젝트의 릴리스에 따라 달라집니다. 코어를 선택할 때는 이름만 보고 속도를 추측하지 말고 서버에서 제공한 프로토콜, 전송 방식, 보안 계층, 필수 확장 기능을 먼저 확인하세요. REALITY 같은 기능을 사용할 때는 구현과 매개변수 요구 사항을 확인해야 합니다. 다른 코어의 설정 파일 전체를 그대로 복사해도 모든 필드가 똑같이 해석되는 것은 아닙니다.
프로토콜 이름은 성능 순위를 뜻하지 않습니다. 같은 프로토콜도 네트워크 경로, 전송 방식의 조합, 기기 부하, 서버 환경에 따라 성능이 달라질 수 있습니다. 모바일 기기의 배터리 사용량은 연결 유지, 백그라운드 제한, 트래픽 유입 방식에도 영향을 받습니다. 먼저 호환성을 확보한 뒤 같은 기기와 실제 사용 환경에서 비교하는 편이 좋습니다. 체계적으로 선택하려면 프로토콜 가이드에서 설정 요구 사항을 하나씩 확인하며 범위를 좁혀 보세요.
OPEN SOURCE
세 클라이언트의 오픈 소스 정보
v2rayN, v2rayNG, v2flyNG는 모두 클라이언트 코드가 오픈 소스로 공개된 프로젝트입니다. v2rayN은 데스크톱용으로 설정·구독·라우팅 관리에 중점을 둡니다. v2rayNG는 안드로이드용이며 주로 Xray 코어에 맞춰져 있습니다. v2flyNG도 안드로이드용으로 V2Fly 코어를 선택할 수 있습니다. 세 클라이언트는 같은 인터페이스의 이름만 바꾼 것이 아니므로 설정 메뉴, 가져오기 방식, 플랫폼 권한을 서로 그대로 적용할 수 없습니다.
오픈 소스 라이선스는 코드의 사용·수정·재배포 조건을 정하며, 모든 네트워크 환경에서 동일한 결과를 보장하지는 않습니다. 코어의 경우 Xray-core는 MPL-2.0, V2Fly가 유지보수하는 v2ray-core는 MIT 라이선스를 사용합니다. 클라이언트와 종속 구성 요소의 라이선스도 각각 확인해야 합니다. 오픈 소스 정보를 살펴볼 때는 다운로드 패키지 전체를 하나의 라이선스로 묶기보다 클라이언트, 코어, 포함된 종속 구성 요소의 라이선스를 구분하는 편이 정확합니다.
MAINTENANCE
업데이트 대상과 이전 순서
클라이언트, 코어, 구독, 규칙 데이터 업데이트는 각각 다른 문제를 해결합니다. 클라이언트 업데이트는 인터페이스와 설정 생성 방식을 바꿀 수 있습니다. 코어 업데이트는 연결 기능과 필드 해석에 영향을 줍니다. 구독 업데이트는 원격 설정을 가져오며, geosite·geoip 데이터 업데이트는 규칙이 적용되는 범위를 바꿉니다. 구독만 업데이트한다고 모든 소프트웨어 구성 요소가 자동으로 업그레이드되는 것은 아닙니다. 반대로 클라이언트를 업데이트해도 원격 연결 매개변수가 새로 고쳐지는 것은 아닙니다.
기존 설정이 정상적으로 작동한다면 업그레이드 전에 사용 중인 연결, 구독 그룹, 라우팅, DNS 설정을 기록하고 설정 변경 사항을 확인하세요. 업데이트 후에는 기본 연결을 먼저 확인한 다음 라우팅과 특정 앱을 테스트하세요. 코어를 바꾸고 규칙을 수정하면서 새로운 트래픽 유입 방식까지 동시에 활성화하지 않는 것이 좋습니다. 낯선 용어는 개념 빠른 참조에서 확인할 수 있습니다. 가져오기나 연결 오류가 발생하면 FAQ에서 오류가 발생한 단계에 따라 살펴보세요. 모든 문제를 프로토콜 탓으로 돌리면 안 됩니다.