이 글 미리보기

먼저 구독 URL과 노드 공유 링크를 구분한 뒤 알맞은 메뉴를 선택하세요. 구독 URL을 보유하고 데스크톱이나 Android에서 가져오려는 사용자를 위해 그룹 설정부터 업데이트까지 안내합니다. 문제가 생기면 URL, 네트워크 요청, 응답 내용 파싱 순서로 원인을 확인하세요. 가져오기에 성공해도 연결이 실제로 작동하는지는 별도로 검증해야 합니다.

구독 URL과 공유 링크 구분하기

구독 URL은 클라이언트가 주기적으로 요청하는 주소로, 보통 https://로 시작합니다. 클라이언트가 이 주소에 접속해 여러 노드 설정을 받아 구독 그룹에 등록합니다. 반면 단일 공유 링크는 노드 하나의 접속 정보를 직접 담으며, 흔히 vmess://, vless://, trojan://으로 시작합니다. 둘 다 긴 문자열처럼 보여도 같은 메뉴에서 가져올 수는 없습니다.

HTTPS 주소라고 해서 모두 구독 URL인 것은 아닙니다. 계정 홈이나 결제 페이지, 웹 로그인 후에만 접속할 수 있는 관리 화면은 노드 목록이 아닌 웹페이지를 반환할 수 있습니다. 서비스 제공자가 클라이언트용으로 안내한 구독 URL을 복사하고, 해당 형식이 v2rayN 또는 v2rayNG에서 지원되는지 확인하세요.

구독 URL

일반적인 시작 부분
https://
포함된 내용
서버가 반환하는 여러 노드 설정
가져오기 위치
구독 그룹의 URL 입력란
업데이트 방법
URL에 다시 요청해 해당 그룹 새로고침

주소를 저장한 뒤 구독 업데이트를 실행해야 노드를 가져옵니다. 저장만으로는 노드가 다운로드되지 않습니다.

노드 공유 링크

일반적인 시작 부분
vmess://、vless://
포함된 내용
단일 노드의 연결 정보
가져오기 위치
클립보드에서 설정 가져오기
업데이트 방법
새 공유 내용을 다시 가져와 등록

공유 링크 여러 개를 한꺼번에 복사할 수는 있지만, 구독 업데이트 기능이 생기는 것은 아닙니다.

v2rayN: 구독 그룹을 만든 뒤 업데이트

데스크톱에서는 먼저 그룹을 만들고 업데이트를 실행합니다. 아래 메뉴 이름은 v2rayN 중국어 인터페이스를 기준으로 합니다. 데스크톱 크로스 플랫폼 버전과 WPF 버전은 버튼 위치가 다를 수 있으며, 일부 버전에서는 추가 버튼이 ‘추가’ 또는 ‘+’로 표시됩니다. ‘구독 그룹 설정’ 창의 메모와 주소 입력란을 사용하고, 개별 서버 편집 창은 열지 마세요.

  1. 그룹 설정 열기

    메인 화면에서 ‘구독 그룹’ → ‘구독 그룹 설정’을 선택해 그룹 관리 창을 엽니다. 기존 그룹이 있다면 이름을 먼저 확인해 새 구독이 기존 그룹을 덮어쓰지 않도록 하세요.

  2. 구독 URL 추가

    ‘추가’ 또는 ‘+’를 선택하고, 메모에는 알아보기 쉬운 이름을 입력한 다음 주소 또는 URL 입력란에 전체 구독 URL을 붙여 넣습니다. 설명 문구나 따옴표, 줄바꿈은 함께 복사하지 마세요.

  3. 저장 후 그룹 선택

    저장한 뒤 메인 화면으로 돌아와 방금 만든 구독 그룹을 선택합니다. 버전에 활성화 옵션이 있다면 그룹이 비활성화되지 않았는지 확인하세요.

  4. 현재 구독 업데이트

    ‘구독 그룹’ → ‘현재 구독 업데이트(프록시 사용 안 함)’을 선택합니다. 현재 네트워크에서 구독 URL에 직접 접속할 수 있을 때 사용하는 메뉴입니다. 업데이트 후 하단 로그나 알림을 확인해 노드를 가져와 등록했는지 살펴보세요.

  5. 노드 목록 확인

    검색 조건을 지우고 현재 그룹에 노드가 표시되는지 확인하세요. 사용 가능한 프록시가 있고 구독 URL에 프록시를 통해 접속해야 한다면 ‘현재 구독 업데이트(프록시 사용)’를 시도해 보세요. 아직 연결 가능한 프록시가 없다면 이 옵션을 반복해서 바꾸지 마세요.

‘모든 구독 업데이트’는 여러 그룹에 요청을 보내므로 첫 가져오기 문제를 찾기 어렵습니다. 먼저 한 그룹의 업데이트를 성공시킨 뒤 일괄 업데이트하는 편이 좋습니다. 프록시 업데이트를 사용하려면 기존 프록시가 정상 작동해야 합니다. 고장 난 노드가 구독 URL에 접근할 유일한 경로라면, 연결을 복구하거나 직접 접속 가능한 구독 경로를 사용하세요.

v2rayNG: 구독 설정과 클립보드 가져오기는 별도 기능

Android에서도 구독을 저장한 뒤 업데이트해야 합니다. v2rayNG는 Xray 코어로 연결을 처리하지만, 구독 URL 다운로드와 목록 파싱은 클라이언트가 담당합니다. 따라서 목록이 비어 있다면 전송 매개변수를 바꾸거나 VPN 권한을 반복해서 요청하기 전에 업데이트 결과부터 확인하세요.

  1. 구독 설정 열기

    메인 화면 왼쪽 위 메뉴를 누른 뒤 ‘구독 그룹 설정’으로 이동합니다. 일부 구버전에서는 ‘구독 설정’으로 표시됩니다. 두 메뉴 모두 구독 이름과 URL을 관리하는 곳입니다.

  2. 추가 후 저장

    ‘+’를 누르고 메모와 URL을 입력합니다. 붙여 넣은 내용에 공백이나 누락, 불필요한 문장부호가 없는지 확인한 다음 확인 아이콘을 눌러 저장하세요. 노드 QR 코드에 담긴 공유 링크를 구독 URL에 입력하지 마세요.

  3. 구독 업데이트 실행

    메인 화면으로 돌아와 오른쪽 위 메뉴에서 ‘구독 업데이트’를 선택합니다. 현재 버전에서 현재 그룹과 전체 그룹을 구분한다면, 먼저 새로 만든 그룹을 업데이트하고 결과 알림을 확인하세요.

  4. 노드를 선택한 뒤 연결

    노드가 표시되면 설정 하나를 선택하고 연결 버튼을 누릅니다. 시스템에서 VPN 연결을 요청하면 필요한 경우 허용하세요. 이 권한은 기기의 트래픽을 처리하기 위한 것이며 구독 내용의 연결 가능성을 검증해 주지는 않습니다.

vless:// 같은 공유 링크만 있다면 전체 내용을 복사한 뒤 메인 화면에서 ‘+’ → ‘클립보드에서 가져오기’를 선택해 설정을 추가하세요. 이 작업에는 구독 그룹을 미리 만들 필요가 없습니다. QR 코드는 정보 전달 수단일 뿐입니다. 스캔 결과가 공유 링크인지 구독 URL인지에 따라 사용할 메뉴가 달라집니다.

같은 구독도 기기별로 따로 관리

데스크톱 v2rayN
  • 구독 그룹 설정에서 URL을 저장합니다.
  • 먼저 현재 구독을 업데이트하고 필요하면 프록시 사용 여부를 선택합니다.
  • 노드를 가져온 뒤 시스템 프록시 또는 Tun 모드를 확인합니다.
Android v2rayNG
  • 구독 그룹 설정에서 URL을 저장합니다.
  • 메인 화면으로 돌아가 구독을 업데이트합니다.
  • 노드를 선택해 연결한 다음 대상 앱에서 네트워크 접속을 확인합니다.

두 기기에서 같은 주소를 사용할 수 있지만 업데이트는 각각 따로 실행됩니다. 업데이트 시점, 형식 호환성, 필터 조건이 달라 목록이 완전히 일치하지 않을 수 있습니다.

Base64 구독, 공유 URI, 설정 파일의 차이

일반적인 기존 구독은 줄마다 공유 링크가 들어 있는 텍스트를 Base64로 인코딩한 형태입니다. 클라이언트는 먼저 바깥쪽 텍스트를 디코딩한 뒤 각 줄에서 노드를 인식합니다. 서비스에 따라 공유 링크 목록을 평문으로 반환하기도 합니다. 가져올 수 있는지는 문자열 길이가 아니라 클라이언트가 구독 형식과 각 링크의 매개변수를 지원하는지에 달려 있습니다.

‘구독 전체를 감싼 인코딩’과 ‘단일 프로토콜 링크 내부의 인코딩’도 구분해야 합니다. 예를 들어 일반적인 VMess 공유 링크는 vmess:// 뒤에 Base64로 인코딩된 JSON을 포함합니다. VLESS 공유 링크는 보통 URI의 사용자 정보, 호스트, 포트, 쿼리 매개변수로 설정을 표현합니다. 디코딩한 내용을 다른 프로토콜의 링크로 그대로 사용하면 안 됩니다.

받은 내용실제 의미처리 방법
HTTPS 구독 URL원격 설정을 가져오는 주소이며 설정 본문이 아님구독 그룹에 추가한 뒤 업데이트 실행
Base64 인코딩 텍스트공유 링크 목록을 바깥에서 인코딩한 경우가 많음클라이언트가 구독 URL에서 다운로드해 파싱하도록 사용
여러 줄로 된 공유 URI각 줄이 보통 노드 하나를 나타냄클라이언트 지원 여부를 확인한 뒤 클립보드에서 일괄 가져오기
완전한 JSON 설정인바운드, 아웃바운드, 라우팅 등의 구조를 포함할 수 있음해당 사용자 지정 설정 메뉴를 사용하고 일반 구독 URL로 취급하지 않기
웹페이지 또는 기타 설정 문법로그인 페이지, 오류 페이지 또는 호환되지 않는 출력 형식일 수 있음현재 클라이언트에 맞는 구독 형식으로 다시 가져오기

구독 업데이트 후 노드가 없을 때: 세 단계로 확인

설정을 바꾸기 전에 업데이트 알림을 먼저 기록하세요. 연결 시간 초과, HTTP 오류, 파싱 후 노드 0개는 서로 다른 단계에서 발생한 문제입니다. 아래 숫자는 HTTP 상태 코드의 의미이며 연결 속도 측정 결과가 아닙니다. 로그나 서버 응답에 상태 코드가 실제로 표시된 경우에만 참고하세요.

200
요청 성공, 응답 내용은 추가 확인 필요
401
유효한 인증 정보가 필요한 경우가 많음
403
접근 거부됨, 권한 확인 필요

1단계: URL이 완전한지 확인

2단계: 요청이 완료됐는지 확인

3단계: 응답 본문을 파싱할 수 있는지 확인

HTTP 200은 요청 처리가 성공했다는 뜻일 뿐, 노드가 반환됐다는 보장은 아닙니다. 로그인 페이지나 접근 확인 페이지, 오류 안내 텍스트도 이 상태 코드를 사용할 수 있습니다. 브라우저에서 페이지가 열려도 클라이언트가 호환되는 구독 본문을 받았다는 뜻은 아닙니다. 브라우저에는 로그인 쿠키가 있지만 클라이언트에는 없을 수 있습니다.

  1. 클라이언트 업데이트 로그를 먼저 확인해 다운로드 실패, 디코딩 실패, 미지원 프로토콜, 노드 0개 가져오기를 구분하세요.
  2. 서비스 제공자가 형식 옵션을 제공한다면 v2rayN 또는 v2rayNG용 출력을 선택하세요. 파일 확장자만 보고 호환성을 판단하지 마세요.
  3. 일부 노드만 누락됐다면 클라이언트가 해당 프로토콜과 매개변수를 지원하는지 확인하고 공식 다운로드 경로에서 클라이언트를 업데이트하세요. 파싱을 통과시키려고 TLS, Reality, 전송 매개변수를 삭제하지 마세요.
  4. 검색 조건을 지우고 올바른 그룹으로 전환하세요. 로그에는 노드를 가져왔다고 나오는데 화면이 비어 있다면 그룹 선택과 표시 필터 문제부터 확인하세요.

가져온 뒤 연결 확인 및 유지 관리

노드가 목록에 들어온 것은 첫 단계일 뿐입니다. 노드를 하나 선택해 연결한 뒤 실제 연결 속도 측정과 대상 앱 접속 테스트를 진행하세요. TCPing은 보통 대상 포트의 TCP 연결 상태를 확인하는 데 도움이 되지만 인증, TLS, 전송 핸드셰이크, 최종 네트워크 접속까지 성공했음을 단독으로 증명하지는 못합니다. 실제 연결 속도 측정도 해당 시점의 테스트 대상에 대한 결과일 뿐 모든 웹사이트에 접속할 수 있다는 뜻은 아닙니다.

구독을 업데이트하면 가장 빠른 노드로 자동 전환되나요?

그렇게 볼 수 없습니다. 구독 업데이트는 설정을 가져오고, 속도 측정은 연결 상태를 확인하며, 현재 노드 선택은 실제로 사용할 설정을 결정합니다. 해당 자동 선택 기능을 명시적으로 설정하지 않았다면 업데이트에 성공해도 노드가 바뀌지 않습니다. 업데이트 후 현재 선택된 항목을 확인하세요. 특히 기존 노드가 구독에서 삭제된 경우 주의해야 합니다.

같은 URL을 데스크톱에서는 가져오지만 Android에서는 목록이 비어 있으면 어떻게 하나요?

먼저 두 기기의 업데이트 로그와 실제 네트워크 경로를 비교한 다음 클라이언트가 지원하는 형식을 확인하세요. 서버가 요청 특성에 따라 서로 다른 내용을 반환할 수 있고, 클라이언트마다 특정 매개변수 지원 여부도 다를 수 있습니다. 노드 비밀번호부터 수동으로 바꾸지 마세요. Android가 오류 페이지가 아닌 노드 목록을 가져왔는지 확인한 뒤 프로토콜 호환성을 살펴보세요.