연결 매개변수
프로토콜과 전송
프로토콜은 통신 규칙을 정하고, 전송 방식은 데이터를 전달하며, 보안 계층은 연결을 보호합니다. 세 항목을 각각 맞춰야 하며 노드 이름만 보고 판단해서는 안 됩니다.
- VMess
- 프로토콜과 전송V2Ray 생태계의 프록시 프로토콜입니다. 사용자 ID로 인증하며 클라이언트와 서버에서 호환되는 설정을 사용해야 합니다. 설정을 가져온 뒤에는 프로토콜 이름뿐 아니라 주소, 포트, 사용자 ID, 전송 방식, 보안 계층도 확인하세요. 시스템 시간이 크게 어긋나면 인증에 영향을 줄 수 있으므로 연결에 실패할 때는 서버만 반복해서 바꾸기보다 시간 동기화도 점검해야 합니다.
- VLESS
- 프로토콜과 전송경량 프록시 프로토콜로, 자체적으로 전송 데이터를 암호화하지 않습니다. 실제로는 TLS나 REALITY 같은 보안 계층과 함께 사용하는 경우가 많습니다. VLESS는 VMess의 다른 이름이 아니므로 양쪽에서 프로토콜 유형을 혼용할 수 없습니다. 설정의 흐름 제어, 보안 계층, 전송 방식도 사용 중인 코어에서 지원해야 합니다. 설정 가져오기에 성공했다고 연결까지 보장되는 것은 아닙니다.
- Trojan
- 프로토콜과 전송일반적으로 TLS로 보안 연결을 설정하고 비밀번호로 사용자를 인증하는 프록시 프로토콜입니다. 서버 주소, 인증 비밀번호, 서버 이름, 인증서 검증 설정이 모두 연결 결과에 영향을 줍니다. 하나라도 맞지 않으면 핸드셰이크에 실패할 수 있습니다. 인증서 오류가 발생하면 이름, 유효 기간, 시스템 시간을 확인하고, 인증서 검증을 끄는 방식으로 해결하는 것은 피하세요.
- REALITY
- 프로토콜과 전송Xray 생태계의 전송 보안 방식으로, VLESS와 함께 사용하는 경우가 많습니다. VLESS를 대체해 단독으로 사용할 수 있는 프록시 프로토콜은 아닙니다. 설정에는 일반적으로 서버 공개 키, 서버 이름, 짧은 ID 등의 매개변수가 포함되며, 정확한 항목은 서버에서 제공한 설정과 클라이언트 버전에 따라 다릅니다. 수동 편집 시에는 모든 매개변수를 빠짐없이 유지하세요. 보안 계층 항목을 누락하면 서버 포트에는 연결되지만 실제 요청은 실패할 수 있습니다.
- 전송 방식
- 프로토콜과 전송프록시 프로토콜 데이터를 어떤 연결 형태로 전달하는지를 뜻합니다. 대표적인 유형은 TCP, WebSocket, gRPC입니다. 전송 방식은 VMess, VLESS 같은 프록시 프로토콜과 별개이며 TLS 같은 보안 계층을 대신하지도 않습니다. WebSocket 경로나 gRPC 서비스 이름 등의 설정은 서버와 일치해야 합니다. 임의로 바꾼다고 연결 속도가 빨라지지는 않습니다.
프로젝트 관계
코어와 생태계
프로젝트 이름, 실행 코어, 그래픽 인터페이스를 구분한 뒤 각 설정을 지원하는 주체를 확인하세요. 클라이언트 업데이트와 코어 업데이트는 서로 다른 작업입니다.
- Project V
- 코어와 생태계네트워크 통신 도구를 둘러싼 프로젝트 생태계를 가리키며, V2Ray는 그중 중요한 구성 요소입니다. 일상적인 대화에서 ‘V2Ray’는 코어 프로그램을 뜻하기도 하고 관련 클라이언트와 설정 생태계 전반을 가리키기도 하므로, 문맥을 보고 판단해야 합니다. Project V는 구독 서비스 이름이 아니며, 그래픽 클라이언트를 설치한다고 서버 설정이 자동으로 제공되는 것도 아닙니다.
- V2Fly
- 코어와 생태계V2Ray 코어 구현과 관련 문서를 지속적으로 유지 관리하는 커뮤니티 프로젝트로, 프로토콜 처리와 네트워크 연결 등 하위 작업을 담당합니다. v2flyNG는 이 코어 체계를 사용하는 Android 클라이언트 대안입니다. 버전에 따라 프로토콜, 전송 방식, 설정 지원 범위가 달라질 수 있으므로 현재 코어가 지원하는 기능을 기준으로 확인하세요. 다른 코어용 예제를 그대로 적용해서는 안 됩니다.
- Xray
- 코어와 생태계V2Ray 생태계에서 발전한 프록시 코어 프로젝트이며, v2rayNG는 Xray 코어를 사용합니다. V2Fly와 기술적 배경은 일부 공유하지만 기능 발전 방향과 설정 세부 사항은 완전히 같지 않습니다. REALITY 같은 설정은 해당 코어의 지원 여부를 확인해야 합니다. 그래픽 인터페이스에 특정 프로토콜 옵션이 표시되더라도 설치된 모든 코어가 그 프로토콜의 모든 조합을 처리할 수 있는 것은 아닙니다.
- 클라이언트와 코어
- 코어와 생태계클라이언트는 구독 관리, 서버 목록, 설정 창, 시스템 연동을 담당하고 코어는 프로토콜 처리와 연결 설정, 라우팅 실행을 담당합니다. v2rayN은 그래픽 클라이언트 이름이며 특정 코어 프로젝트와 동일시해서는 안 됩니다. 실행에 실패하면 먼저 인터페이스가 열리지 않는 경우, 코어 프로세스가 시작되지 않은 경우, 코어는 시작됐지만 요청이 실패한 경우를 구분한 뒤 관련 로그를 확인하세요.
설정 출처
구독과 노드
구독은 설정을 가져오고, 노드는 서버 설정 한 건을 뜻하며, 그룹은 목록을 정리합니다. 목록의 항목 수와 연결 품질은 따로 확인해야 합니다.
- 구독
- 구독과 노드서버 설정을 일괄로 가져오는 주소 또는 콘텐츠입니다. 클라이언트에서 구독을 업데이트하면 출처에 따라 서버 목록이 갱신됩니다. 구독 주소에는 접근 자격 정보가 포함될 수 있으므로 계정 정보처럼 안전하게 보관하고, 스크린샷이나 로그를 공유하기 전에 가리세요. 구독 업데이트 성공은 설정을 가져와 해석했다는 뜻일 뿐, 모든 노드에 현재 연결할 수 있다는 의미는 아닙니다.
- 노드
- 구독과 노드일반적으로 클라이언트가 프록시 연결을 설정하는 데 사용하는 서버 설정을 뜻하며, 주소, 포트, 인증 정보, 프로토콜, 전송 매개변수가 포함됩니다. 노드 별칭은 목록에 표시되는 이름일 뿐, 서버 위치나 서비스 품질을 보장하지 않습니다. v2rayN에서는 행을 선택하는 것과 활성 서버로 지정하는 것도 구분해야 합니다. 현재 버전의 활성 표시와 연결 로그를 확인해 실제 사용 중인 설정을 파악하세요.
- 구독 그룹
- 구독과 노드설정 출처나 용도에 따라 서버 목록을 정리하는 관리 단위로, 여러 구독과 직접 가져온 항목을 구분하는 데 도움이 됩니다. v2rayN의 ‘구독 그룹’은 출처를 관리하고, 그룹 태그는 현재 목록을 필터링합니다. 그룹은 트래픽 분기와 다르며 목록 탭을 바꿔도 활성 서버가 자동으로 변경되는 것은 아닙니다. 업데이트 후 항목이 보이지 않으면 먼저 필터 상태를 확인하세요.
- 지연 시간
- 구독과 노드특정 테스트 방식으로 요청을 보내고 응답을 받기까지 걸리는 시간으로, 당시 연결의 응답성을 비교하는 데 사용합니다. TCP 연결 테스트, 실제 연결 테스트, 앱 내부 응답 시간은 측정 범위가 다르므로 결과를 그대로 비교할 수 없습니다. 지연 시간이 낮다고 다운로드 대역폭이 높은 것은 아니며, 동영상 재생이나 파일 전송, 모든 대상 사이트에서 같은 성능을 보장하지도 않습니다.
설정 방법: 구독 가져오기 가이드 →
트래픽 경로
라우팅과 DNS
라우팅은 연결이 어떤 아웃바운드를 사용할지 결정하고, DNS는 도메인을 어떻게 조회할지 결정합니다. 서로 영향을 주지만 한쪽을 수정해도 다른 쪽이 자동으로 대체되지는 않습니다.
- 라우팅 규칙
- 라우팅과 DNS도메인, 대상 주소, 포트 등의 조건에 따라 연결의 아웃바운드를 선택하는 규칙입니다. 일반적인 아웃바운드에는 직접 연결, 프록시, 차단이 있습니다. 규칙은 보통 순서대로 적용하며 어떤 규칙에도 해당하지 않는 연결은 기본 동작을 따릅니다. 규칙을 추가할 때는 먼저 일치 조건을 확인한 다음, 앞의 포괄적인 규칙이 적용을 가로채는지 살펴보세요. 이름만 보고 순서를 확인하지 않으면 실제 트래픽 경로를 잘못 판단할 수 있습니다.
- GeoIP
- 라우팅과 DNSIP 주소 집합을 기준으로 대상을 일치시키는 규칙 데이터입니다. 흔히
geoip:cn과geoip:private를 참조합니다. 후자는 일반적으로 사설 또는 예약된 주소 범위를 일치시키며, 구체적인 범위는 실제 데이터 파일에 따라 달라집니다. GeoIP는 도메인을 주소로 변환하지 않습니다. 도메인 규칙이 주소 기반 규칙에 적용되는지는 코어의 DNS 조회 방식과 라우팅 설정에도 달려 있습니다.
- GeoSite
- 라우팅과 DNS도메인 집합을 기준으로 대상을 일치시키는 규칙 데이터이며,
geosite:cn은 일반적인 참조 형식입니다. 도메인 집합과 일치시키는 것이며 서버의 실제 위치를 하나씩 측정하는 것은 아니고 모든 IP 규칙을 대체하지도 않습니다. 분류 이름, 포함 범위, 사용할 수 있는 태그는 데이터 파일에 따라 달라집니다. 분류를 찾을 수 없다는 오류가 발생하면 데이터 출처와 업데이트 시점, 참조 표기를 확인하세요.
- 트래픽 분기
- 라우팅과 DNS모든 연결에 같은 처리를 적용하지 않고 규칙에 따라 직접 연결, 프록시, 차단 아웃바운드로 나누는 방식입니다. v2rayN의 ‘중국 본토 우회(Whitelist)’, ‘블랙리스트(Blacklist)’, ‘전역(Global)’은 자주 쓰이는 라우팅 프리셋 이름입니다. 실제 동작은 현재 규칙을 확인하세요. 전역 프리셋을 선택해도 해당 코어로 들어오는 연결에만 적용되며 기기의 모든 앱을 가로채는 것은 아닙니다.
- DNS
- 라우팅과 DNS도메인을 네트워크 주소 등의 레코드로 변환하는 시스템입니다. 앱은 이 결과를 이용해 대상 서비스에 연결합니다. 운영체제, 브라우저, 프록시 코어마다 별도의 DNS 설정과 캐시가 있을 수 있으므로 코어의 DNS를 바꿔도 모든 앱의 조회 경로가 달라지는 것은 아닙니다. 문제를 확인할 때는 조회를 시작한 주체와 요청 대상, 조회 결과가 이후 라우팅에 반영되는 방식을 함께 살펴보세요.
- FakeDNS
- 라우팅과 DNS도메인에 임시 가상 주소를 할당해 매핑을 저장하고, 이후 연결이 들어오면 도메인을 복원하여 라우팅과 아웃바운드 처리에 사용하는 방식입니다. 가상 주소는 대상 서버의 실제 주소가 아니므로 해당 코어와 분리해 사용할 수 없습니다. DNS 요청과 이후 연결이 연동된 경로로 들어와야 합니다. 관련 설정을 변경하거나 끈 뒤에도 이전 캐시가 남아 있을 수 있으므로 클라이언트 안내에 따라 캐시를 지우거나 연결을 다시 설정하세요.
- DNS 누수
- 라우팅과 DNS도메인 조회가 의도한 경로를 거치지 않는 현상입니다. 예를 들어 프록시 경로에서 조회하려 했지만 실제로는 앱이 로컬 네트워크에 직접 조회를 보낼 수 있습니다. 테스트에 특정 DNS 서비스 이름이 표시된다는 사실만으로 문제라고 단정할 수는 없습니다. 기존 라우팅 및 DNS 설계와 비교해 확인해야 합니다. 브라우저의 보안 DNS, 시스템 DNS 설정, 코어 DNS, TUN의 트래픽 가로채기 범위를 점검해 의도된 로컬 조회와 예기치 않은 우회를 구분하세요.
인터페이스와 조작
클라이언트 기능
먼저 트래픽이 어떻게 클라이언트에 들어오는지 확인한 다음 코어의 처리 방식을 살펴보세요. 시스템 프록시, TUN, 라우팅 프리셋은 서로 다른 계층의 설정입니다.
- TUN 모드
- 클라이언트 기능가상 네트워크 인터페이스를 통해 시스템 라우팅 조건에 맞는 IP 트래픽을 처리합니다. 시스템 프록시를 사용하지 않는 앱의 트래픽도 프록시 처리 경로로 보낼 수 있습니다. v2rayN의 ‘TUN 모드 사용’은 가상 인터페이스, 시스템 권한, 라우팅, DNS 설정과 관련되므로 먼저 일반 프록시 연결이 작동하는지 확인하세요. TUN 모드가 모든 트래픽을 반드시 프록시로 보낸다는 뜻은 아닙니다. 실제 경로는 트래픽 가로채기 범위와 코어 규칙에 따라 달라집니다.
- 시스템 프록시
- 클라이언트 기능운영체제가 앱에 제공하는 프록시 설정으로, 일반적으로 클라이언트가 로컬에서 연 프록시 수신 주소를 가리킵니다. 이 설정을 사용할지는 앱에 따라 다르며 브라우저, 명령줄 프로그램, 기타 앱이 서로 다른 프록시 방식을 사용할 수 있습니다. 클라이언트 코어가 정상적으로 시작됐다고 시스템 프록시까지 활성화된 것은 아닙니다. 클라이언트를 종료한 뒤 잘못된 설정이 남으면 시스템 프록시를 사용하는 앱이 인터넷에 연결되지 않을 수도 있습니다.
- 실제 연결 지연
- 클라이언트 기능지정한 프록시 설정으로 테스트 대상에 요청을 보내 측정한 시간입니다. 연결 설정, 보안 핸드셰이크, 대상의 응답이 포함될 수 있으며 구체적인 측정 범위는 클라이언트 구현에 따라 다릅니다. 포트에 연결할 수 있는지만 확인하는 테스트보다 실제 프록시 요청이 완료되는지를 잘 보여줍니다. 시간 초과가 서버 오프라인을 뜻하는 것은 아닙니다. 테스트 주소, DNS 조회, 대상 서비스의 제한 때문일 수도 있으니 로그를 확인하고 다른 대상으로 다시 테스트하세요.
- 로컬 수신 포트
- 클라이언트 기능앱의 프록시 요청을 클라이언트가 로컬 기기에서 받는 진입점으로, 노드 설정의 원격 서버 포트와는 다릅니다. 다른 프로세스가 해당 포트를 사용 중이면 수신 기능이 시작되지 않을 수 있으며, 이 경우 원격 노드를 바꿔도 해결되지 않습니다. 로컬 포트를 바꾸면 프록시 주소를 직접 입력한 앱에서도 값을 변경해야 합니다. 또한 수신 주소가 로컬 기기로 제한되어 있는지 확인해 접근 범위가 의도치 않게 넓어지지 않도록 하세요.
- 듀얼 코어 전환
- 클라이언트 기능클라이언트에서 지원하는 여러 코어 중 실행 엔진을 선택하는 기능입니다. 하나의 연결을 두 코어가 동시에 처리한다는 뜻은 아닙니다. 전환 가능 여부와 선택 가능한 코어는 클라이언트 버전 및 현재 설정 유형에 따라 달라집니다. 전환하기 전에 프로토콜, 전송 방식, 보안 계층, DNS, 라우팅 규칙을 대상 코어가 모두 인식하는지 확인하세요. 명확한 호환성 문제를 해결할 때 사용하는 기능이지, 일반적인 속도 향상 옵션은 아닙니다.