V2Ray 용어집: 프로토콜, 코어, 라우팅 및 DNS
VMess、VLESS 및 REALITY부터 구독, 라우팅 규칙, 시스템 프록시 및 FakeDNS까지, 이 페이지에서는 설정 상황에 맞춰 주요 용어를 설명합니다. 각 항목에서 개념의 범위와 v2rayN, v2rayNG 설정에서의 실제 위치도 함께 확인할 수 있습니다.
Protocols & Security
프로토콜 및 암호화
프로토콜은 클라이언트와 서버가 인증하고 데이터를 주고받는 방식을 정하며, 전송 보안 계층은 연결 암호화와 서버 신원 확인을 담당합니다. 노드를 가져올 때는 이러한 항목이 서버 설정과 일치해야 하며, 이름만 보고 서로 바꿔 사용할 수 없습니다.
- VMess
- VMess는 Project V 생태계에서 오래전부터 사용된 클라이언트와 서버 간 통신 프로토콜로, 사용자 식별자와 시간 기반 메커니즘으로 인증합니다. 노드에는 보통 TCP, WebSocket, gRPC 등의 전송 방식이 지정되며 TLS를 추가할 수도 있습니다. 시스템 시간이 크게 어긋나면 인증이 실패할 수 있으므로 연결 문제를 점검할 때는 먼저 기기 시간이 정확한지 확인해야 합니다.
- VLESS
- VLESS는 간결한 인증 구조를 사용하며 전송 계층 암호화는 자체적으로 담당하지 않고 TLS 또는 REALITY와 함께 사용하는 경우가 많습니다. 설정에는 보통 사용자 식별자, 흐름 제어, 전송 방식 및 보안 유형이 표시됩니다. VMess와 필드 구조가 다르므로 프로토콜 이름만 바꾼다고 노드가 다른 프로토콜로 변환되지는 않습니다.
- Trojan
- Trojan은 TLS 연결을 기반으로 비밀번호 인증을 사용하는 프로토콜입니다. 클라이언트 설정에는 보통 서버 주소, 포트, 비밀번호, 서버 이름 및 인증서 검증 관련 옵션이 포함됩니다. 시스템 시간, SNI 또는 인증서 체인에 문제가 있으면 인증 요청을 보내기도 전에 TLS 핸드셰이크 실패로 연결이 중단될 수 있습니다.
- REALITY
- REALITY는 Xray가 제공하는 전송 보안 방식으로, VLESS와 함께 사용하는 경우가 많습니다. 클라이언트에서는 공개 키, 서버 이름, 짧은 ID 및 클라이언트 지문 등의 매개변수를 입력해야 할 수 있으며, 이 값은 서버와 일치해야 합니다. REALITY는 단독 노드 프로토콜이 아니므로 인터페이스에서는 일반적으로 프로토콜 선택란이 아니라 전송 보안 설정에 표시됩니다.
- TLS
- TLS는 네트워크 연결을 보호하는 범용 암호화 프로토콜로, 암호화 채널을 만들고 서버 신원을 검증합니다. 노드 설정의 서버 이름, 인증서 도메인 및 시스템 시간이 검증에 함께 사용됩니다. 인증서 오류가 발생하면 바로 인증서 검증을 끄기보다 먼저 시간과 SNI를 확인해야 합니다.
Cores & Clients
코어 및 클라이언트
그래픽 클라이언트는 구독 관리, 매개변수 편집 및 상태 표시를 담당하고, 코어는 실제로 설정을 해석하고 연결을 수립하며 라우팅을 실행합니다. 이 두 계층을 구분하면 문제가 인터페이스 설정, 생성된 설정 파일 또는 코어 실행 단계에서 발생했는지 판단하기 쉽습니다.
- Xray
- Xray는 V2Ray 기술 생태계의 코어 구현 중 하나로, VMess, VLESS, Trojan, REALITY 및 다양한 라우팅·DNS 기능을 지원합니다. v2rayN과 v2rayNG의 일반적인 설정에서도 Xray를 호출할 수 있습니다. 인터페이스에 “Core 유형 Xray”가 표시되면 현재 연결 설정을 해당 코어가 해석하고 실행한다는 뜻입니다.
- V2Fly
- V2Fly는 Project V 기술 체계를 이어가는 커뮤니티 코어 구현으로, 프록시 프로토콜, 전송 계층, DNS 및 라우팅 기능을 제공합니다. Xray와 기술적 기원을 공유하지만 지원하는 프로토콜 범위와 일부 설정 항목은 완전히 같지 않습니다. 코어를 선택하기 전에 필요한 노드 기능이 해당 버전에서 지원되는지 확인해야 합니다.
- v2rayN
- v2rayN은 Windows, macOS 및 Linux용 그래픽 클라이언트로, 구독, 노드, 시스템 프록시, TUN 및 라우팅 규칙을 관리할 수 있습니다. 인터페이스 옵션을 코어가 읽을 수 있는 설정으로 정리하고 코어 프로세스의 시작과 중지도 담당합니다. 클라이언트 연결 성공은 프로세스가 실행 중이라는 뜻일 뿐이며, 대상에 접속할 수 있는지는 로그와 라우팅 결과를 함께 확인해야 합니다.
- v2rayNG
- v2rayNG는 Android용 그래픽 클라이언트로, 일반적으로 Xray 코어를 사용해 노드와 라우팅 설정을 실행합니다. 연결할 때 시스템이 제공하는 VPN 서비스 인터페이스를 통해 애플리케이션 트래픽을 수신하지만, 이것이 노드 프로토콜 자체가 바뀐다는 뜻은 아닙니다. 배터리 절약 정책, 백그라운드 제한 및 권한 상태가 지속적인 연결에 영향을 줄 수 있습니다.
- Core(코어)
- Core는 클라이언트가 실제로 호출하는 네트워크 코어를 뜻합니다. 그래픽 인터페이스가 매개변수를 수집하면 코어가 로컬 포트를 열고, 아웃바운드 연결을 수립하며, DNS를 해석하고 라우팅 규칙을 적용합니다. 충돌이나 시작 실패를 점검할 때는 인터페이스의 짧은 상태 메시지보다 코어 로그에 더 많은 원인이 기록되는 경우가 많습니다.
Subscriptions & Nodes
구독 및 노드
구독은 업데이트 가능한 노드 목록이고, 노드는 구체적인 연결 매개변수 묶음입니다. 지연 시간 결과는 특정 테스트 조건에서의 응답 상태만 보여 주므로 프로토콜 호환성, 대역폭 또는 장시간 연결 안정성을 단독으로 판단할 수 없습니다.
- 구독
- 구독은 일반적으로 업데이트 가능한 주소 형태로 제공되며, 클라이언트가 접속하면 노드 목록이나 설정 내용을 가져옵니다. 구독을 업데이트하면 원격 데이터를 다시 읽기 때문에 로컬에 표시되는 노드 이름, 매개변수 또는 정렬 순서가 바뀔 수 있습니다. 구독 가져오기는 성공했지만 목록이 비어 있다면 주소가 완전한지, 시스템 시간이 정확한지, 업데이트 로그에 구문 분석 오류가 있는지 확인해야 합니다.
- 노드
- 노드는 클라이언트가 연결할 수 있는 서버 매개변수 묶음으로, 일반적으로 프로토콜, 주소, 포트, 인증 정보, 전송 방식 및 보안 설정이 포함됩니다. 노드 이름은 식별을 위한 레이블일 뿐 인증에는 사용되지 않습니다. 이름이 같은 두 노드도 주소, 프로토콜 또는 라우팅 동작이 완전히 다를 수 있습니다.
- 구독 그룹
- 구독 그룹은 서로 다른 구독 출처를 구분하고 관련 노드를 하나의 관리 단위에 모으는 기능입니다. 클라이언트에서 그룹별로 노드를 업데이트하거나 필터링하고 확인할 수 있어 여러 출처가 한 목록에 뒤섞이는 것을 막을 수 있습니다. 그룹을 삭제하면 해당 출처의 로컬 노드에도 영향을 주는 경우가 많으므로 실행 전에 범위를 확인해야 합니다.
- 지연 시간 테스트
- 지연 시간 테스트는 현재 네트워크 환경에서 노드의 응답 속도를 추정하지만, 테스트 방식마다 측정하는 단계가 다릅니다. 포트만 테스트하면 서버 포트에 도달할 수 있다는 정도만 알 수 있으며 프록시 프로토콜 인증이 완료되었다는 뜻은 아닙니다. 결과에는 로컬 네트워크, DNS, 대상 주소 및 동시 작업도 영향을 줍니다.
- 실제 연결 지연 시간
- 실제 연결 지연 시간은 노드를 통해 프록시 연결을 실제로 수립한 뒤 테스트 대상에 접속해 응답 시간을 기록합니다. 단순한 TCP 포트 테스트보다 전체 사용 경로에 가깝고 프로토콜 매개변수나 TLS 설정 오류도 더 쉽게 드러납니다. 다만 한 번의 결과는 현재 시점의 표본일 뿐이므로 여러 차례 테스트와 실제 연결 상태를 함께 판단해야 합니다.
Routing
라우팅 및 트래픽 분기
라우팅 시스템은 도메인, IP, 포트 또는 프로토콜 등의 조건에 따라 아웃바운드를 선택합니다. 규칙은 매칭 조건을 올바르게 작성하는 것뿐 아니라 순서도 중요합니다. 여러 규칙이 같은 요청에 적용될 수 있을 때는 일반적으로 앞에 있는 유효한 규칙이 처리 방식을 먼저 결정합니다.
- 라우팅 규칙
- 라우팅 규칙은 “조건과 대상 아웃바운드”의 대응 관계로, 도메인, IP, 포트, 네트워크 유형 또는 프로세스 등의 정보로 트래픽을 매칭합니다. 규칙이 적용되면 코어는 요청을 지정된 프록시, 직접 연결 또는 차단 아웃바운드로 전달합니다. 규칙 순서가 부적절하면 범위가 넓은 조건이 뒤의 세부 조건을 먼저 덮어쓸 수 있습니다.
- 트래픽 분기
- 트래픽 분기는 서로 다른 네트워크 요청을 서로 다른 아웃바운드로 배정하는 설정 방식입니다. 예를 들어 특정 도메인 유형은 직접 연결하고 다른 요청은 현재 노드를 통해 처리할 수 있습니다. 분기 결과는 코어가 도메인과 조회된 IP를 확보할 수 있는지, 규칙 우선순위가 어떻게 설정되었는지에 따라 달라지므로 DNS 설정과 밀접하게 관련됩니다.
- GeoIP
- GeoIP는 IP 주소의 지리적 위치 또는 네트워크 유형에 따라 정리한 데이터 모음으로, 라우팅 규칙에서 해당 분류를 참조할 수 있습니다. 도메인 문자열이 아니라 조회 후 또는 연결 대상의 IP를 매칭합니다. 데이터가 오래되면 새로 할당되거나 변경된 주소 대역이 예상대로 분류되지 않을 수 있으므로 정기적으로 업데이트해야 합니다.
- GeoSite
- GeoSite는 용도나 범주별로 정리한 도메인 규칙 모음으로, 관련 도메인 그룹을 한 번에 참조할 때 적합합니다. GeoIP와 매칭 대상이 다릅니다. GeoSite는 도메인을 처리하고 GeoIP는 IP 주소를 처리합니다. 사용할 때는 규칙 집합 이름이 존재하는지, 클라이언트 내장 데이터와 사용자 지정 데이터의 출처가 다른지 확인해야 합니다.
- 아웃바운드(Outbound)
- 아웃바운드는 트래픽이 코어에서 처리된 후 전송되는 방향을 뜻합니다. 일반적인 아웃바운드로는 현재 노드를 통한 연결, 시스템 네트워크를 통한 직접 연결, 조건에 맞는 요청 차단이 있습니다. 라우팅 규칙은 최종적으로 유효한 아웃바운드 레이블을 가리켜야 하며, 레이블 철자가 다르면 규칙이 올바르게 연결되지 않습니다.
Network & DNS
네트워크 및 DNS
시스템 프록시와 TUN은 클라이언트가 애플리케이션 트래픽을 받는 방식을 결정하고, DNS는 도메인을 주소로 변환하는 방식과 트래픽 분기에 관여합니다. 연결 문제가 발생하면 “애플리케이션이 클라이언트로 들어오는가”, “도메인이 어떻게 해석되는가”, “요청이 최종적으로 어느 아웃바운드로 가는가”를 나누어 확인해야 합니다.
- 시스템 프록시
- 시스템 프록시는 운영체제가 프록시 설정을 지원하는 애플리케이션에 로컬 프록시 주소와 포트를 알려 주는 방식입니다. 활성화하면 브라우저처럼 시스템 설정을 따르는 프로그램이 요청을 v2rayN으로 전달하지만, 네트워크 연결을 직접 관리하는 애플리케이션은 이 설정을 읽지 않을 수 있습니다. 모드를 전환한 뒤 기존 연결이 이전 경로를 계속 사용할 수 있으므로 필요하면 연결을 다시 수립해야 합니다.
- TUN 모드
- TUN 모드는 가상 네트워크 인터페이스를 통해 시스템 트래픽을 수신하므로 시스템 프록시 설정을 읽지 않는 애플리케이션도 처리할 수 있습니다. 일반적으로 라우팅 테이블, DNS 가로채기 및 시스템 권한이 관련되어 일반 시스템 프록시보다 설정 항목이 많습니다. 활성화 후 인터넷에 연결되지 않으면 가상 인터페이스, 라우팅 규칙, DNS 설정 및 다른 네트워크 도구와의 충돌 여부를 순서대로 확인해야 합니다.
- FakeDNS
- FakeDNS는 먼저 도메인에 예약 주소를 반환하고, 트래픽이 코어로 들어온 뒤 원래 도메인을 복원해 라우팅 매칭에 사용합니다. 이를 통해 애플리케이션이 시스템에서 실제 DNS 조회를 먼저 수행하는 상황을 줄이고 도메인 기반 트래픽 분기 정보를 유지할 수 있습니다. 실제 IP 검증, 특수 UDP 동작 또는 조회 결과를 직접 기록하는 애플리케이션에는 이 모드가 적합하지 않을 수 있습니다.
- DNS 유출
- DNS 유출은 조회 요청이 예상한 경로로 처리되지 않고 다른 리졸버에 도달하는 현상입니다. 애플리케이션이 DNS를 직접 지정하거나, 브라우저가 별도의 암호화 DNS를 사용하거나, TUN 가로채기가 완전하지 않거나, 라우팅 규칙이 누락된 경우에 자주 발생합니다. 판단할 때는 리졸버, 조회 경로 및 최종 연결 아웃바운드를 함께 확인해야 하며 웹페이지에 표시되는 단일 결과만으로 판단해서는 안 됩니다.
- SNI
- SNI는 TLS 핸드셰이크에서 대상 서버 이름을 나타내는 필드이며, 클라이언트 노드 설정에서는 보통 serverName 또는 서버 이름으로 표시됩니다. 일반적으로 인증서 및 서버 설정과 일치해야 하므로 노드 주소를 단순히 복사해 입력해서는 안 됩니다. 잘못 입력하면 인증서 이름 불일치, 핸드셰이크 거부 또는 연결 시간 초과가 발생할 수 있습니다.
- Mux
- Mux는 적은 수의 하위 연결로 여러 논리 요청을 전달하는 멀티플렉싱 방식입니다. 연결을 자주 새로 만드는 비용을 줄일 수 있지만 모든 네트워크 환경에서 더 빠르다는 뜻은 아닙니다. 사용 여부는 프로토콜 지원, 서버 설정, 장시간 연결 안정성 및 실제 애플리케이션 유형을 기준으로 테스트해 결정해야 합니다.