V2Ray / 용어 안내

V2Ray 용어 정리:
프로토콜·설정·클라이언트 기능

먼저 설정 계층을 구분한 뒤 각 항목의 의미를 확인하세요. 프로토콜은 연결 양쪽의 통신 방식을 정하고, 코어는 설정을 실행하며, 그래픽 클라이언트는 노드·구독·조작 메뉴를 관리합니다.

자주 쓰는 용어 30개를 정리했습니다. 각 카드는 주소창의 앵커 링크로 개별 참조할 수 있습니다. 설정 항목의 지원 여부는 클라이언트에서 사용하는 코어와 버전을 기준으로 확인하세요.

01 / Protocol & transport

프로토콜과 전송

프로토콜, 전송 방식, 전송 보안은 서로 다른 세 계층입니다. 노드 이름에 프로토콜만 표시되어 있다면 전체 연결 설정을 파악하기 어렵습니다.

VMess

VMess 프로토콜

VMess는 사용자 인증을 사용하는 프록시 프로토콜이며, 사용자 ID는 보통 UUID로 표시됩니다. 클라이언트와 서버의 전송 방식 및 관련 보안 설정도 일치해야 하므로 주소와 포트만 입력해서는 연결할 수 없습니다. 인증에 시간 조건이 영향을 주므로 연결에 실패하면 노드만 바꾸지 말고 기기의 시스템 시간도 확인하세요.

VLESS

VLESS 프로토콜

VLESS는 가벼운 프록시 프로토콜로, VMess와 같은 페이로드 암호화 기능은 자체적으로 제공하지 않습니다. 실제 배포에서는 보통 TLS 또는 REALITY와 함께 사용합니다. 사용자 ID, 전송 방식, 선택 사항인 flow 값은 서버 설정에 맞춰 입력해야 합니다. VLESS를 지원하더라도 모든 관련 조합을 지원하는 것은 아니므로 코어의 해당 기능 지원 여부를 확인하세요.

Trojan

Trojan 프로토콜

Trojan은 보통 TLS 연결로 프록시 트래픽을 전달하고 비밀번호로 인증합니다. 비밀번호와 TLS 서버 이름은 서로 다른 항목이므로 대체할 수 없습니다. 연결 주소와 인증서에 사용된 도메인이 다를 수도 있습니다. 인증서 오류가 발생하면 검증을 무시하기보다 서버 이름, 시스템 시간, 인증서 체인을 먼저 확인하세요.

REALITY

REALITY 전송 보안

REALITY는 Xray 생태계의 전송 보안 방식이며, VLESS와 나란히 쓰는 별도의 프록시 프로토콜은 아닙니다. 설정에는 보통 서버 공개 키, 서버 이름, 짧은 ID, 클라이언트 지문 등이 필요합니다. 일반 TLS 서버와 같은 방식으로 인증서를 배포하지 않으므로, TLS 노드의 보안 옵션 하나만 바꾸면 설정이 전환된다고 볼 수 없습니다.

transport / streamSettings

전송 방식

전송 방식은 TCP, WebSocket, gRPC 같은 하위 연결을 통해 프록시 데이터가 전달되는 방법을 정합니다. 경로, 서비스 이름, 요청 헤더 등은 전송 방식별 설정이며 모든 프로토콜에서 사용하는 항목은 아닙니다. 노드를 구성할 때 프로토콜, 전송, 보안 설정을 순서대로 확인하세요. 경로가 일치하지 않으면 핸드셰이크가 실패할 수 있습니다.

02 / Core & ecosystem

코어와 생태계

클라이언트 창은 조작을 담당하고 코어는 연결을 처리합니다. 호환성을 확인할 때는 두 계층의 구현을 모두 살펴봐야 합니다.

Project V

Project V 생태계

Project V는 V2Ray와 관련 네트워크 도구를 이해할 때 자주 언급되는 생태계 이름입니다. 노드 프로토콜이나 그래픽 창의 이름은 아닙니다. 생태계를 살펴볼 때는 프록시 코어, 클라이언트, 설정 형식을 구분하세요. 이름이 비슷한 도구라도 사용하는 코어가 다를 수 있으므로 기능 범위는 각각 확인해야 합니다.

V2Fly

V2Fly 코어 프로젝트

V2Fly는 V2Ray 프로젝트의 발전을 이어가는 커뮤니티 프로젝트입니다. 코어는 설정 해석, 인바운드 수신, 아웃바운드 연결 등을 처리합니다. Android 클라이언트 v2flyNG는 이 코어를 사용하는 선택지 중 하나입니다. V2Fly와 Xray의 기능은 각각 발전하므로 코어를 바꾸기 전에 기존 노드와 설정 항목의 호환성을 확인하세요.

Xray-core

Xray 코어

Xray는 V2Ray에서 파생된 프록시 코어 프로젝트입니다. REALITY 등의 기능은 해당 기능을 지원하는 구현이 필요합니다. v2rayNG는 Xray를 사용하며, 데스크톱 클라이언트 v2rayN의 실제 코어 선택은 현재 인터페이스와 로그에서 확인하세요. 클라이언트 업데이트와 코어 업데이트는 같은 작업이 아니므로 설정 항목 오류를 점검할 때 실제 코어 버전을 기록해 두세요.

GUI client

그래픽 클라이언트

그래픽 클라이언트는 노드 목록, 구독 업데이트, 모드 전환, 로그 확인 등의 메뉴를 제공하며 보통 설정을 생성해 코어를 실행합니다. v2rayN은 데스크톱용이고, v2rayNG와 v2flyNG는 Android용입니다. 인터페이스에 표시되는 이름과 그룹은 관리 정보이며 코어 설정 파일에 같은 이름의 항목으로 들어가는 것은 아닙니다.

03 / JSON structure

설정 파일 구조

연결은 인바운드로 들어온 뒤 규칙에 따라 아웃바운드로 전달됩니다. 태그는 설정 객체를 연결하고, 정책은 일부 연결 동작을 제한합니다.

config.json

JSON 설정 파일

config.json은 코어 설정 파일에 흔히 사용하는 이름이며, 보통 log, inbounds, outbounds, routing, dns 등의 항목을 포함합니다. JSON은 쉼표, 따옴표, 데이터 형식을 엄격하게 지켜야 하며 문서의 일부 예제만으로는 실행되지 않을 수 있습니다. 클라이언트가 생성한 실행 설정은 다시 생성되면서 덮어써질 수 있으므로 수정 전에 사용자 설정을 입력하는 위치를 확인하세요.

inbounds

인바운드

인바운드 배열은 코어가 연결을 받아들이는 방식을 정의합니다. 로컬 엔드포인트에는 보통 SOCKS 또는 HTTP 프로토콜을 사용합니다. 수신 주소와 포트에 따라 앱이 연결할 위치가 정해집니다. 주소를 루프백에서 모든 인터페이스로 바꾸면 접근 가능한 범위가 넓어집니다. 포트를 변경한 뒤에는 앱의 프록시 설정도 함께 바꾸고, 다른 프로세스가 해당 포트를 사용 중인지 확인하세요.

outbounds

아웃바운드

아웃바운드 배열은 연결이 코어를 빠져나가는 방식을 정의하며, 원격 프록시 연결, 직접 연결, 차단 등이 가능합니다. 라우팅 규칙은 보통 클라이언트에 표시되는 노드 이름이 아니라 아웃바운드 태그로 대상을 지정합니다. 규칙과 일치하지 않을 때는 기본 아웃바운드 동작도 적용되므로 특정 규칙뿐 아니라 아웃바운드 전체 목록을 확인해야 합니다.

tag / outboundTag / inboundTag

설정 태그

tag는 설정 객체를 참조하는 이름입니다. 예를 들어 직접 연결 아웃바운드에 direct라는 이름을 붙인 뒤 규칙의 outboundTag에서 이를 지정할 수 있습니다. 규칙의 inboundTag는 매칭할 인바운드 출처를 제한하는 데 사용할 수 있습니다. 태그는 프로토콜 키워드가 아니므로 설정에 맞게 이름을 정할 수 있지만 참조하는 값은 일치해야 합니다. 아웃바운드 태그 이름이 중복되지 않도록 주의하세요.

policy

연결 정책

policy는 핸드셰이크나 유휴 연결의 시간 제한, 특정 통계 옵션처럼 일부 코어 동작을 설정합니다. 도메인에 따라 프록시 또는 직접 연결 아웃바운드를 고르는 routing과는 다릅니다. 코어마다 지원하는 항목, 사용자 수준, 통계 조건이 다를 수 있으므로 해당 문서를 확인하세요. 다른 도구의 정책 설정을 그대로 복사해서는 안 됩니다.

설정 항목과 조합 방법: 인바운드 설정 · 아웃바운드 설정 · 정책 설정

04 / Routing & DNS

라우팅과 DNS

먼저 규칙에서 도메인과 IP 중 무엇을 확인할 수 있는지 파악한 다음, DNS 조회가 어디서 이루어지는지 확인하세요. 규칙 매칭과 DNS 조회 경로는 따로 점검해야 합니다.

routing / rules

라우팅 규칙과 분할 라우팅

분할 라우팅은 도메인, IP, 포트, 인바운드 태그 등의 조건에 따라 연결을 서로 다른 아웃바운드로 보내는 방식입니다. 규칙은 보통 순서대로 확인하며 먼저 일치한 규칙이 이후 선택에 영향을 줍니다. 한 규칙 안의 조건 유형은 일반적으로 모두 충족해야 합니다. 규칙을 바꾼 뒤에는 인터페이스의 모드 이름만 보지 말고 로그에서 실제 대상과 규칙 매칭 결과를 확인하세요.

geoip

IP 주소 집합

GeoIP는 데이터 파일에 있는 IP 집합으로 대상 주소를 매칭하며, geoip:private는 사설 주소 범위에 자주 사용됩니다. 주소 분류는 데이터 출처에 따른 판단이지 물리적 위치를 정확히 증명하지는 않습니다. 대상이 도메인으로만 제공되는 경우 DNS 조회 여부와 IP 규칙 매칭 방식은 라우팅의 DNS 조회 정책에 따라 달라집니다.

geosite

도메인 집합

GeoSite는 이름이 지정된 도메인 집합으로 규칙 구성을 돕습니다. 집합의 내용은 사용하는 데이터 파일에 따라 달라집니다. 태그 이름이 같더라도 데이터 출처와 업데이트 시점을 확인해야 하며, 특정 서비스의 도메인이 모두 포함되는 것은 아닙니다. 존재하지 않는 집합을 규칙에서 참조하면 설정을 불러오지 못할 수 있으므로 규칙과 데이터 파일을 함께 확인하세요.

dns

도메인 조회

DNS는 도메인을 IP 주소 등의 레코드로 변환합니다. 앱, 운영체제, 프록시 코어 또는 원격 구성 요소가 조회를 수행할 수 있습니다. 코어의 dns 항목을 설정했다고 해서 모든 앱의 조회가 자동으로 해당 모듈을 통과하는 것은 아닙니다. 점검할 때는 조회 진입점, 상위 DNS 서버, 조회 연결에 사용할 아웃바운드, 최종 주소의 라우팅 활용 방식을 각각 확인하세요.

FakeDNS

가상 주소 매핑

FakeDNS는 앱에 매핑용 가상 주소를 반환하고, 이후 연결이 해당 처리 경로로 들어오면 내부 매핑을 통해 원래 도메인과 연결합니다. 이 주소는 실제 서버 주소가 아니므로 매핑을 지원하지 않는 네트워크 경로에서 사용하면 안 됩니다. DNS 조회 진입점, 가상 주소 범위, 트래픽 가로채기 방식이 모두 맞아야 합니다. 항목 하나만 추가한다고 전체 트래픽 처리 구성이 완성되지는 않습니다.

DNS leak

DNS 누출

DNS 누출은 조회가 의도한 경로를 벗어나 다른 DNS 서버로 전송되는 현상입니다. 모든 로컬 DNS 조회를 누출이라고 부르는 것은 아닙니다. 브라우저의 암호화 DNS, 시스템 캐시, 앱 자체 DNS에 따라 조회 경로가 달라질 수 있습니다. 정해 둔 DNS 정책을 기준으로 점검해야 하며, 프록시 출구 IP만 예상대로 보여도 DNS 경로까지 정상이라고 단정할 수 없습니다.

더 알아보기: 라우팅 항목과 규칙 순서 · DNS 설정

05 / Subscription & node

구독과 노드

구독은 설정 정보를 가져오고, 노드는 연결 설정을 저장하며, 테스트는 특정 조건에서의 결과를 보여줍니다. 서로 다른 역할이므로 대체할 수 없습니다.

subscription URL

구독 링크

구독 링크는 클라이언트가 여러 노드 설정을 가져오는 원격 주소이며, 클라이언트가 응답 형식을 인식해야 합니다. 링크에 개인 접근 자격 증명이 포함될 수 있으므로 공개 스크린샷이나 로그에 노출하지 마세요. 업데이트 실패 시 주소 만료, 요청 실패, 형식 해석 오류를 구분해야 합니다. 클라이언트를 설치했다고 사용할 수 있는 구독이 자동으로 생기지는 않습니다.

node / server profile

노드

노드는 클라이언트에 저장된 원격 연결 설정으로, 보통 주소, 포트, 프로토콜, 인증, 전송 보안 설정을 포함합니다. 표시 이름은 관리용 라벨일 뿐 실제 서버 위치나 회선 품질을 보장하지 않습니다. 노드를 선택해도 연결에 사용할 아웃바운드 후보만 정해질 뿐, 앱 트래픽이 실제로 해당 노드를 거치는지는 프록시 진입점과 라우팅 규칙에 따라 달라집니다.

subscription group

구독 그룹

구독 그룹은 소스와 노드 목록을 관리해 각각 업데이트하고 필터링하거나 설정을 유지하기 쉽게 해줍니다. 그룹 이름은 보통 코어 라우팅 규칙에 직접 사용되지 않으며 규칙 집합과도 다릅니다. 구독을 업데이트하면 소스에서 가져온 노드 기록이 바뀔 수 있습니다. 수동 수정 사항이 유지되는지는 클라이언트 동작에 따라 다르므로 중요한 설정은 별도로 관리하세요.

TCPing

TCP 연결 테스트

TCPing은 일반적으로 TCP 연결을 설정하는 과정에서 대상 포트의 연결 가능 여부와 소요 시간을 측정합니다. 구체적인 테스트 방식은 클라이언트에 따라 다릅니다. 보통 프록시 인증을 완료하지 않으며 TLS, 전송 경로, 원격 전달이 모두 정상인지 확인해 주지도 않습니다. TCPing은 성공했는데 프록시 요청은 실패할 수 있으므로 전체 연결 테스트와 코어 로그를 추가로 확인하세요.

real connection latency

실제 연결 지연 시간

실제 연결 지연 시간은 선택한 노드를 통해 프록시 요청을 보내 측정하며, 단순 포트 테스트보다 더 많은 연결 과정을 확인합니다. 테스트 주소, DNS, 핸드셰이크, 서버 응답, 당시 네트워크 상태에 따라 결과가 달라지고 클라이언트마다 측정 방식도 다를 수 있습니다. 지연 시간은 처리량과 다릅니다. 노드를 비교할 때는 동일한 조건에서 측정한 뒤 실제 앱의 요청 결과도 함께 살펴보세요.

06 / Client functions

클라이언트 기능

트래픽이 프록시 처리 경로에 들어오는지 확인한 다음 아웃바운드를 선택하세요. 인터페이스의 스위치를 바꾼 뒤에는 실제 적용 범위를 점검해야 합니다.

system proxy

시스템 프록시

시스템 프록시는 운영체제가 앱에 제공하는 프록시 설정입니다. 이 설정을 따르는 프로그램만 지정된 엔드포인트를 사용합니다. 시스템 설정을 적용해도 코어가 실행되는 것은 아니며, 포트도 로컬 수신 포트와 일치해야 합니다. 특정 프로그램이 여전히 직접 연결된다면 시스템 프록시를 지원하는지, 별도의 프록시 설정이 있는지 확인하세요.

TUN

TUN 모드

TUN은 가상 네트워크 인터페이스로 IP 트래픽을 받은 뒤 클라이언트가 선택한 구현으로 연결을 처리합니다. 시스템 프록시를 읽지 않는 일부 앱의 트래픽도 처리할 수 있습니다. 실제 적용 범위는 시스템 라우팅, 제외 규칙, 권한, 구성 요소의 기능에 따라 달라지며 모든 연결이 원격 프록시를 통과한다는 뜻은 아닙니다. 클라이언트와 관련 네트워크 구성 요소가 함께 제공하는 기능이므로 일반 V2Ray 최상위 항목으로 만들어서는 안 됩니다.

PAC

자동 프록시 스크립트

PAC는 스크립트로 요청에 사용할 프록시 주소나 직접 연결 여부를 선택합니다. 앱이 PAC를 지원하고 실제로 사용해야 작동합니다. 판단은 앱이 연결 경로를 선택하는 단계에서 이루어지며, 트래픽이 코어에 들어온 뒤 적용되는 라우팅 규칙과는 다른 계층입니다. PAC가 직접 연결을 반환한 요청은 해당 프록시 엔드포인트를 통과하지 않으므로 이후 코어 규칙으로 가로챌 수 없습니다.

sniffing

트래픽 스니핑

스니핑은 연결 초기 데이터를 분석해 도메인이나 프로토콜 정보를 식별하고 라우팅 판단 등에 활용합니다. 확인 가능한 정보는 프로토콜, 암호화 방식, 코어 구현에 따라 제한되며 암호화된 내용을 전부 읽는 기능은 아닙니다. 식별한 도메인으로 대상 주소를 덮어쓸지, 라우팅에만 활용할지는 구체적인 옵션을 구분해 확인하세요.

log / loglevel

로그 수준

로그 수준은 코어가 출력하는 정보의 상세도를 정합니다. warning은 보통 경고와 오류를 확인할 때 사용하며, 문제를 조사하는 동안에는 필요에 따라 상세도를 높일 수 있습니다. 클라이언트 작업 로그와 코어 실행 로그가 따로 표시될 수 있으므로 오류가 발생한 위치를 확인하세요. 로그에는 연결 대상, 설정 경로, 구독 정보 등이 포함될 수 있으니 외부에 공유하기 전에 민감한 내용을 삭제하세요.