vmess://와 vless://는 보통 각각 하나의 노드를 설명하고, 구독 주소는 여러 노드를 한꺼번에 가져오고 업데이트하는 데 사용합니다. 공유 링크나 구독 주소를 처음 받아 가져오기 메뉴를 찾는 사용자에게 적합한 글로, 형식 확인부터 데스크톱·안드로이드 가져오기, 구독 업데이트, 노드 전환과 흔한 오류 해결까지 안내합니다.
공유 링크와 구독 주소의 핵심 차이
vmess://와 vless://는 모두 설정을 전달하는 형식이지만, 담고 있는 프로토콜 필드는 다릅니다. VMess 공유 정보는 보통 인코딩되어 있으며, 클라이언트가 디코딩하면 서버 주소, 포트, 사용자 식별자, 전송 방식, TLS 설정, 메모 등의 필드를 확인할 수 있습니다. VLESS는 표준 URI에 더 가깝습니다. 사용자 식별자는 주소 본문에, 전송·보안 계층·SNI·지문 등의 매개변수는 쿼리 문자열에 들어갑니다.
이런 링크는 보통 하나의 노드에 대응합니다. 링크를 클라이언트에 복사하면 클라이언트가 로컬에 서버 설정 하나를 생성합니다. 이후 원본 링크가 변경되어도 로컬 설정은 자동으로 바뀌지 않으므로, 새 링크를 다시 받아 가져오거나 기존 설정을 직접 수정해야 합니다.
구독 주소 자체는 보통 특정 노드 하나를 직접 설명하지 않습니다. 클라이언트가 구독 주소에 접속하면 여러 설정이 포함된 응답을 받아 노드 목록으로 변환합니다. 이후 ‘구독 업데이트’를 실행하면 해당 주소를 다시 요청하고, 구독 그룹에 따라 노드 이름, 서버 매개변수와 사용 가능한 항목을 새로 반영합니다.
단일 노드 공유 링크
한 번에 VMess 또는 VLESS 설정 하나를 가져오며, 노드 매개변수가 현재 클라이언트에 직접 저장됩니다.
적합한 용도: 임시 테스트, 단일 노드 이전, 수동 관리
구독 주소
권장한 번에 여러 노드를 가져온 뒤 업데이트를 통해 서버 목록과 매개변수 변경 사항을 동기화할 수 있습니다.
적합한 용도: 일상적인 사용, 여러 기기 동기화, 잦은 노드 변경
QR 코드 내용
QR 코드는 보통 공유 링크를 그래픽으로 표현한 것일 뿐입니다. 스캔하면 VMess, VLESS 또는 기타 지원되는 설정으로 다시 해석됩니다.
적합한 용도: 컴퓨터 화면에서 안드로이드 기기로 가져오기
| 비교 항목 | 공유 링크 | 구독 주소 |
|---|---|---|
| 일반적인 시작 부분 | vmess://、vless:// |
https:// |
| 한 번 가져온 결과 | 보통 노드 1개 | 노드 1개 또는 여러 개일 수 있음 |
| 이후 매개변수 변경 | 다시 가져오거나 수동으로 편집 | 구독 업데이트 실행 |
| 클라이언트 내 소속 | 로컬 서버 목록 | 지정된 구독 그룹 |
형식을 먼저 확인한 뒤 가져오기 메뉴를 선택하세요
가장 간단한 판단 방법은 텍스트의 시작 부분을 확인하는 것입니다. vmess:// 또는 vless://로 시작하는 완전한 문자열은 ‘클립보드에서 가져오기’와 같은 메뉴를 사용하고, 일반적인 HTTPS 주소는 보통 ‘구독 그룹 설정’으로 들어갑니다. 구독 주소를 단일 노드 가져오기 입력란에 붙여 넣거나 VLESS 공유 링크를 구독 URL로 저장하지 마세요.
링크는 반드시 전체를 복사해야 합니다. VLESS 쿼리 매개변수는 보통 &로 구분되며, 끝의 # 뒤에는 노드 메모가 들어갈 수 있습니다. 메신저의 자동 줄바꿈이나 텍스트 일부만 선택하는 동작으로 인해 가져온 뒤 전송 계층 또는 보안 계층 필드가 누락될 수 있습니다. VMess 내용은 직접 읽기 어렵더라도 끝부분 문자를 삭제해서는 안 됩니다.
단일 노드 구조 예시, 연결에는 사용할 수 없음:
vmess://BASE64_ENCODED_CONFIG
vless://[email protected]:443?encryption=none&security=tls&type=ws&host=edge.example.com&path=%2Fconnect#예시 노드
구독 주소 구조 예시:
https://sub.example.com/client/list
예시의 VLESS 필드는 몇 부분으로 나눌 수 있습니다. 사용자 식별자는 @ 앞에 있고, 서버와 포트는 그 뒤에 있습니다. security=tls는 보안 계층을, type=ws는 WebSocket 전송을 뜻하며, host와 path는 해당 전송 매개변수입니다. 실제 설정은 TCP, gRPC 또는 다른 조합을 사용할 수도 있으므로 클라이언트는 링크 내용을 기준으로 해석해야 하며, 전송 방식을 임의의 값으로 바꾸면 안 됩니다.
vmess://로 시작: VMess 단일 노드 가져오기를 사용합니다.vless://로 시작: VLESS 단일 노드 가져오기를 사용합니다.https://로 시작하고 구독이라고 명시됨: 구독 그룹에 추가합니다.- 여러 줄의 공유 링크가 포함된 텍스트: 클라이언트의 클립보드 일괄 가져오기를 사용합니다.
- 서버, 포트, 사용자 식별자 등 개별 필드만 받은 경우: URI를 직접 조합하지 말고 서버 수동 추가를 사용합니다.
v2rayN에서 VMess 및 VLESS 링크 가져오기
다음 경로는 v2rayN 7.x 데스크톱 인터페이스를 기준으로 설명합니다. 세부 버전에 따라 메뉴 이름은 달라질 수 있지만 작업 흐름은 같습니다. 먼저 완전한 공유 링크를 시스템 클립보드에 넣은 다음 클라이언트가 클립보드 내용을 해석하도록 합니다. 여러 링크를 한 번에 복사할 때는 링크마다 한 줄을 사용하세요.
- 완전한
vmess://또는vless://링크를 복사하고, 링크 앞뒤에 설명 문구를 붙이지 마세요. - v2rayN을 열고 ‘서버’ → ‘클립보드에서 일괄 URL 가져오기’로 들어갑니다.
- 서버 목록에서 새로 추가된 프로토콜, 별칭, 주소와 포트를 확인하고 가져온 수량이 복사한 수량과 같은지 확인합니다.
- 사용할 노드를 선택한 뒤 Enter 키를 누르거나 마우스 오른쪽 메뉴에서 활성 서버로 지정합니다.
- ‘시스템 프록시’로 들어가 ‘시스템 프록시 자동 구성’을 선택한 다음 인터넷 연결이 필요한 프로그램을 열어 테스트합니다.
가져오기에 성공했다고 해서 이미 활성화된 것은 아닙니다. v2rayN의 서버 목록에는 여러 설정을 저장할 수 있지만 현재 코어가 실행하는 것은 활성 서버뿐입니다. 브라우저와 시스템 프록시를 따르는 다른 프로그램도 시스템 프록시가 해당 상태로 설정되어 있어야 합니다. 매개변수 설정에서 로컬 포트를 변경했다면 ‘설정’ → ‘매개변수 설정’에 표시된 포트를 기준으로 삼아야 하며, 항상 10808이라고 가정해서는 안 됩니다.
노드를 가져온 직후 오류가 발생하면 먼저 ‘업데이트 확인’이 아닌 코어 로그 영역을 열고 주소 해석, 연결 시간 초과, 인증 실패와 포트 사용 중 등의 정보를 확인하세요. VMess의 사용자 식별자, alterId와 보안 매개변수는 서버 측과 일치해야 합니다. VLESS의 전송 방식, TLS, SNI, Reality 공개 키 등의 필드도 완전히 일치해야 합니다. 노드 메모만 바꾸는 것은 연결에 영향을 주지 않지만, 이러한 프로토콜 필드를 임의로 수정하면 연결 결과가 달라집니다.
v2rayN에서 구독 추가 및 노드 업데이트
구독 가져오기의 첫 단계는 ‘클립보드에서 일괄 URL 가져오기’가 아니라 구독 그룹을 만드는 것입니다. 그룹에는 이름, 구독 주소와 업데이트 옵션을 저장할 수 있어 업데이트한 노드의 소속을 명확하게 유지할 수 있습니다. 데스크톱과 안드로이드에서 같은 구독을 사용할 때도 동일한 그룹 메모를 설정하면 업데이트 결과를 대조하기 편합니다.
- 완전한 구독 주소를 복사하고 v2rayN의 ‘구독 그룹’ → ‘구독 그룹 설정’을 엽니다.
- 그룹을 추가하고 메모에 식별하기 쉬운 이름을 입력한 뒤, 주소를 구독 URL 입력란에 붙여 넣고 저장합니다.
- 메인 화면으로 돌아가 ‘구독 그룹’ → ‘모든 구독 업데이트’로 들어갑니다. 네트워크 환경상 기존 프록시를 먼저 사용해야 한다면 프록시를 통한 업데이트 메뉴를 선택합니다.
- 상태 표시줄에 업데이트 결과가 표시될 때까지 기다린 뒤 새 노드가 방금 만든 그룹에 들어갔는지 확인합니다.
- 업데이트된 목록에서 활성 서버를 선택한 다음 필요에 따라 시스템 프록시 또는 TUN을 켭니다.
구독을 업데이트할 때 클라이언트는 원격 목록을 요청합니다. 시간 초과가 표시되면 현재 네트워크에서 구독 주소에 접속할 수 있는지 먼저 확인하세요. 반환된 콘텐츠를 해석할 수 없다는 메시지가 나오면 주소가 완전히 복사되지 않았거나, 현재 버전에서 인식하지 못하는 응답 형식이거나, 로그인 페이지가 반환된 것일 수 있습니다. 같은 주소를 반복해서 추가하지 마세요. 서버 목록에 같은 이름의 그룹과 중복 노드가 여러 개 생길 수 있습니다.
권장 방식: 데스크톱과 안드로이드에서 하나의 구독 공유
데스크톱 v2rayN
- ‘구독 그룹 설정’에서 주소 저장
- 업데이트 후 지연 시간 테스트를 실행하고 활성 노드 선택
- 앱 사용 범위에 따라 시스템 프록시 또는 TUN 선택
안드로이드 v2rayNG
- 같은 구독 주소와 그룹 메모 저장
- 필요할 때 노드 목록 수동 업데이트
- 앱별 요구에 맞게 앱별 프록시 설정
두 기기는 같은 출처에서 노드를 가져오지만, 활성 노드, 라우팅 규칙과 로컬 프록시 상태는 각 기기에 별도로 저장되며 구독을 통해 동기화되지 않습니다.
구독 업데이트로 노드가 추가되거나 삭제되거나 이름이 바뀔 수 있습니다. 업데이트 전에 구독 노드의 서버 매개변수를 수동으로 수정해도 다음 업데이트에서 원격 콘텐츠로 덮어써질 수 있습니다. 실험 설정을 보존해야 한다면 별도의 로컬 노드로 복사한 뒤 메모를 수정하세요. 라우팅 규칙, 시스템 프록시 모드와 클라이언트 환경설정은 일반적인 노드 구독에 포함되지 않는 경우가 많으므로 각각 설정해야 합니다.
v2rayNG에서 클립보드 가져오기 및 구독 추가
v2rayNG는 Xray 코어로 일반적인 VMess 및 VLESS 설정을 처리합니다. v2rayNG 1.10.x 인터페이스를 예로 들면 단일 노드 링크와 구독 주소는 여전히 서로 다른 메뉴를 사용합니다. 처음 연결을 시작할 때 시스템에서 로컬 VPN 연결을 설정하도록 요청하는데, 이는 트래픽을 클라이언트 처리 경로로 보내기 위해 필요한 권한 부여 단계입니다.
단일 공유 링크 가져오기
- 다른 앱에서 완전한 공유 링크를 복사합니다.
- v2rayNG를 열고 오른쪽 위의 ‘+’를 누른 다음 ‘클립보드에서 구성 가져오기’를 선택합니다.
- 가져오기가 완료되면 새로 추가된 노드를 눌러 현재 구성으로 지정합니다.
- 메인 화면의 연결 버튼을 누르고 시스템 권한 안내에서 확인합니다.
- 연결 상태와 실시간 트래픽을 확인하고, 접속할 수 없으면 로그에서 구체적인 오류를 확인합니다.
구독 추가 및 업데이트
- 왼쪽 위 메뉴를 열고 ‘구독 그룹 설정’으로 들어갑니다.
- ‘+’를 누르고 그룹 메모를 입력한 뒤 구독 주소를 붙여 넣고 저장합니다.
- 메인 화면으로 돌아가 오른쪽 위 메뉴를 연 다음 ‘구독 업데이트’를 실행합니다.
- 업데이트가 끝나면 노드 수를 확인하고 노드를 하나 선택한 뒤 연결을 시작합니다.
클립보드에 설명 문구와 링크가 함께 있으면 자동 인식에 실패할 수 있습니다. 먼저 내용을 일반 텍스트 편집 영역에 붙여 넣고 프로토콜 시작 부분부터 링크 끝까지 남긴 뒤 다시 복사하세요. VLESS 링크의 쿼리 매개변수는 임의로 삭제하면 안 됩니다. 특히 security, type, sni, pbk, sid, path 등 서버 측 전송 설정과 관련된 필드에 주의하세요.
v2flyNG는 v2fly 코어를 사용하므로 기존 VMess 등 호환 설정을 사용하는 경우에 적합합니다. 가져오기 전에 현재 코어가 해당 프로토콜과 전송 매개변수를 지원하는지 확인해야 합니다. 최신 VLESS 확장 매개변수가 포함된 설정은 v2rayNG에서 원본 링크 그대로 가져오는 것을 우선하고, 링크가 해석되도록 알 수 없는 필드를 삭제하지 마세요.
구독, 노드와 라우팅 분할은 서로 다른 계층의 설정입니다
공유 링크는 ‘서버 설정을 어떻게 설명할지’를, 구독은 ‘설정을 어떻게 일괄적으로 가져오고 업데이트할지’를, 라우팅 분할은 ‘어떤 요청을 어느 출구로 보낼지’를 해결합니다. 세 가지는 서로 다른 계층에 있습니다. VLESS 노드를 가져온다고 전체 프록시가 자동으로 켜지지 않으며, 구독을 업데이트해도 새 노드가 자동으로 활성 서버가 되지 않습니다.
v2rayN에서 시스템 프록시는 주로 운영체제의 프록시 설정을 따르는 프로그램에 영향을 줍니다. TUN은 더 넓은 범위의 트래픽을 가로채며 추가적인 시스템 권한이 필요할 수 있습니다. v2rayNG는 로컬 VPN 인터페이스로 트래픽을 받아 앱별 프록시와 결합해 어떤 앱을 처리 경로에 넣을지 결정할 수 있습니다. 모드는 VMess 또는 VLESS라는 이름이 아니라 실제 적용할 앱 범위에 따라 선택해야 합니다.
라우팅 규칙은 보통 도메인, IP, 포트 또는 프로토콜을 기준으로 일치 여부를 판단한 뒤 직접 연결, 프록시 또는 차단을 결정합니다. 노드 연결에 성공했다는 것은 클라이언트와 서버 사이의 경로가 구축되었다는 뜻일 뿐입니다. 특정 웹사이트가 해당 노드를 사용할지는 현재 라우팅 모드, DNS 결과와 규칙 적용 순서에 달려 있습니다.
- 노드가 시작되지 않음: 서버 주소, 포트, 사용자 식별자, 전송 계층과 보안 계층 매개변수를 확인하세요.
- 노드는 시작됐지만 브라우저가 프록시를 사용하지 않음: 시스템 프록시, TUN 또는 안드로이드 연결 상태를 확인하세요.
- 일부 도메인만 접속할 수 없음: 라우팅 규칙, DNS 설정과 규칙 순서를 확인하세요.
- 구독 업데이트는 성공했지만 노드가 바뀌지 않음: 현재 그룹을 업데이트했는지 확인하고 노드 이름과 수를 비교하세요.
- 업데이트 후 기존 노드가 사라짐: 해당 노드가 구독 관리 대상인지 확인하세요. 원격 목록에서 항목이 삭제되면 로컬 그룹도 업데이트에 따라 바뀝니다.
문제를 해결할 때는 한 번에 변수 하나만 바꾸세요. 먼저 라우팅을 기본 모드로 유지하고 매개변수가 완전한 노드 하나를 선택해 연결을 테스트할 수 있습니다. 연결이 정상임을 확인한 뒤 사용자 지정 분할 라우팅, 원격 DNS 또는 앱별 프록시를 활성화하세요. 노드, 코어, DNS와 라우팅을 동시에 바꾸면 로그의 오류를 특정 변경 사항과 연결하기 어렵습니다.
자주 묻는 질문과 오류 해결
대부분의 가져오기 문제는 네 가지로 나뉩니다. 잘못된 메뉴 사용, 불완전한 링크 복사, 구독 요청 실패, 노드는 성공적으로 가져왔지만 활성화되지 않은 경우입니다. 먼저 텍스트 유형과 메뉴 경로를 확인한 뒤 클라이언트 상태와 코어 로그를 살펴보면 반복해서 삭제하고 재설치하는 것보다 빠르게 해결할 수 있습니다.
vless://를 구독 설정에 붙여 넣으면 왜 업데이트에 실패하나요?
보통 단일 노드 공유 링크이지 구독 주소가 아니기 때문입니다. 잘못 만든 그룹을 삭제하고 완전한 링크를 복사한 뒤, v2rayN에서는 ‘서버’ → ‘클립보드에서 일괄 URL 가져오기’를 사용하고 v2rayNG에서는 ‘+’ → ‘클립보드에서 구성 가져오기’를 사용하세요.
구독 업데이트는 성공했는데 왜 계속 이전 노드가 표시되나요?
먼저 대상 그룹을 업데이트했는지 확인한 다음 노드 수, 메모와 서버 포트를 비교하세요. 원격 콘텐츠가 바뀌지 않았다면 로컬 목록도 달라지지 않습니다. 같은 이름의 그룹이 있다면 중복 항목을 삭제한 뒤 다시 업데이트하세요.
가져오기는 성공으로 표시되는데 웹페이지가 열리지 않으면 어떻게 하나요?
먼저 새 노드를 활성 서버로 지정한 뒤 시스템 프록시, TUN 또는 안드로이드 연결 버튼이 켜져 있는지 확인하세요. 그다음 로그에서 연결 시간 초과, 도메인 해석 실패 또는 로컬 포트 사용 중 메시지가 있는지 확인합니다.
구독 업데이트에 시간 초과가 표시되면 주소를 다시 추가해야 하나요?
대부분 그럴 필요가 없습니다. 먼저 주소에 불필요한 공백이 없는지 확인한 뒤 현재 사용할 수 있는 프록시를 통해 업데이트해 보세요. 그래도 시간 초과가 계속되면 응답 상태와 발생 시간을 기록하고, 같은 구독을 계속 추가해 중복 그룹을 만들지 마세요.
하나의 구독을 v2rayN과 v2rayNG에서 함께 사용할 수 있나요?
응답 형식과 포함된 프로토콜 설정이 각 클라이언트에서 지원된다면 각각 추가할 수 있습니다. 두 클라이언트는 활성 노드, 라우팅, DNS와 프록시 상태를 독립적으로 저장하므로 한 기기를 업데이트해도 다른 기기가 자동으로 업데이트되지는 않습니다.
장기간 사용할 VMess 또는 VLESS 설정 하나만 받았다면 클립보드로 바로 가져오면 됩니다. 노드가 계속 추가·중단되거나 매개변수가 변경된다면 구독 그룹으로 관리하는 편이 좋습니다. 어떤 방식을 사용하든 가져온 뒤 활성 노드, 프록시 모드와 라우팅 범위를 다시 확인해야 합니다. 이 세 단계가 실제 트래픽이 원하는 경로로 들어갈지를 결정합니다.