핵심 내용

구독 업데이트 실패는 ‘내용을 가져오지 못함’, ‘내용을 파싱하지 못함’, ‘노드를 가져왔지만 연결할 수 없음’으로 나눠 확인해야 합니다. v2rayN이나 v2rayNG에서 시간 초과, 구독 파싱 오류, 업데이트 후 노드가 비는 문제가 생겼다면 주소, 응답, 프록시 경로, 시스템 시간, 프로토콜 호환성 순으로 점검하세요. 기존에 작동하던 노드는 가능한 한 유지하고, 재설치부터 시작하지 않는 것이 좋습니다.

먼저 실패 단계 확인: 가져오기, 파싱, 연결

구독 업데이트에 성공했다고 노드 연결까지 성공한 것은 아닙니다. 구독 주소는 서버 설정 목록을 가져오는 데 사용되며, 클라이언트는 먼저 응답을 다운로드한 다음 형식을 인식해 노드를 가져옵니다. 노드를 선택한 뒤에는 코어가 실제 연결을 담당합니다. 각 단계를 구분해야 HTTP 요청 오류가 났을 때 코어를 계속 바꾸거나, 프로토콜이 호환되지 않을 때 같은 주소를 반복해서 복사하는 일을 피할 수 있습니다.

구독 주소 읽기구독 서버에 요청응답 내용 파싱노드 설정 가져오기코어로 연결
증상우선 점검할 항목판단 기준
시간 초과, 연결 거부네트워크 경로와 프록시 상태구독 응답을 끝까지 가져오지 못했을 가능성이 큽니다
401、403、404액세스 토큰, 권한, 주소서버는 응답했지만 요청한 내용을 받지 못했습니다
파싱 오류, 가져온 노드가 0개응답 본문과 구독 형식웹페이지나 호환되지 않는 설정 형식을 받았을 수 있습니다
노드는 표시되지만 연결되지 않음노드 매개변수, 코어, 서버 상태구독 가져오기와 노드 등록은 완료되었을 수 있습니다

오류가 발생한 시각, 업데이트 방식, 현재 그룹 이름을 먼저 기록하세요. 업데이트 전후 노드 수도 확인해야 합니다. 예를 들어 기존 노드가 12개였는데 업데이트 후 0개가 된 경우와 노드 수는 그대로지만 연결에 실패하는 경우는 서로 다른 문제입니다. 모든 그룹을 먼저 삭제하지 마세요. 작동하는 기존 노드가 있다면 유지해 두어야 ‘프록시를 통해 업데이트’가 되는지 확인하는 데 도움이 됩니다.

구독 주소 확인: 토큰, 권한, 응답 상태

클라이언트를 다시 설치하기 전에 주소가 완전한지 먼저 확인하세요. 구독 서비스의 계정 페이지에서 클라이언트용 구독 주소를 다시 복사해야 합니다. 계정 홈이나 로그인 페이지, 개별 노드 공유 문자열을 복사하면 안 됩니다. vmess:// 또는 vless://로 시작하는 내용은 보통 노드 공유 링크이며, 여러 설정을 정기적으로 가져오는 HTTP 구독 주소가 아닙니다.

  1. 기기에서 주소 앞뒤에 공백, 줄바꿈, 따옴표, 한글 문장 부호가 붙지 않았는지 확인하세요. 쿼리 매개변수는 그대로 유지하고 물음표 뒤의 토큰을 삭제하지 마세요.
  2. 계정이 만료되었거나 사용량을 모두 소진했는지, 구독 토큰이 재설정되었는지 확인하세요. 토큰을 새로 발급했다면 클라이언트에 저장된 기존 주소도 교체해야 합니다.
  3. 복사한 주소가 제공업체에서 해당 클라이언트용으로 안내한 구독 형식인지 확인하세요. 브라우저에서 열리는 설정 파일이라고 해서 현재 클라이언트가 가져올 수 있는 것은 아닙니다.
  4. 페이지가 로그인, CAPTCHA 또는 액세스 확인 화면으로 이동한다면 클라이언트에서 직접 요청할 수 있는 구독 주소를 제공업체에 문의하세요. 확인 페이지를 노드 목록으로 간주하면 안 됩니다.
200
요청 성공 후에도 응답 본문을 확인하세요
401
인증 정보가 유효한지 확인
403
권한 및 액세스 제한 확인
443
HTTPS에서 일반적으로 사용하는 서버 포트

HTTP 200은 요청이 성공 응답을 받았다는 뜻일 뿐, 본문이 구독 데이터라는 보장은 없습니다. 서버가 오류 안내 페이지를 반환했을 수도 있습니다. 401은 인증 정보, 403은 권한이나 액세스 정책, 404는 변경된 경로와 관련된 경우가 많습니다. 정확한 원인은 응답 내용과 제공업체 안내를 함께 확인하세요. 상태 코드만 보고 계정이 반드시 만료되었다고 판단하지 마세요.

파싱 오류: Base64와 실제 응답 본문 확인

파싱 오류가 나면 인코딩을 임의로 보정하지 말고 ‘무엇을 받았는지’부터 확인하세요. 일반적인 구독은 여러 줄의 노드 공유 링크를 통째로 Base64 인코딩하지만, 클라이언트가 지원하는 다른 형식을 반환하는 서비스도 있습니다. HTML 로그인 페이지, JSON 오류 메시지, 다른 소프트웨어용 YAML 설정은 정상적으로 다운로드되더라도 현재 클라이언트에서 노드 구독으로 파싱되지 않을 수 있습니다.

Base64 끝에 =가 없다고 해서 반드시 데이터가 손상된 것은 아닙니다. 일부 형식은 패딩을 생략할 수 있으며 줄바꿈도 반드시 파싱 오류를 일으키지는 않습니다. 확인해야 할 것은 원본 응답이 완전한지, 어떤 인코딩을 사용했는지, 클라이언트가 구독 구조를 지원하는지입니다. 인코딩과 디코딩을 반복한 뒤 다시 붙여 넣으면 정상 구독이 이중 인코딩될 수 있습니다.

오류: Invalid length for a Base-64 char array or string.

원인 및 해결: .NET에서 Base64를 파싱할 때 발생할 수 있는 오류입니다. 내용이 잘렸거나 구독 본문이 아닌 데이터를 디코딩하려고 하면 나타날 수 있습니다. 먼저 원본 응답과 형식을 확인하고 주소를 다시 복사하세요. 문자열 끝에 기호만 덧붙이지 마세요.

오류: Response status code does not indicate success: 403 (Forbidden).

원인 및 해결: HTTP 요청이 서버에서 거부된 상태로, 아직 노드 프로토콜 파싱 문제는 아닙니다. 액세스 토큰과 서버 제한을 확인한 뒤 유효한 응답을 받은 후 Base64를 점검하세요.

업데이트 시간 초과: 직접 연결과 프록시를 비교해 순환 의존성 확인

프록시를 통한 업데이트는 현재 프록시가 정상 작동해야 가능합니다. 사용 중인 노드 자체가 작동하지 않는데 구독 요청까지 그 노드를 거쳐야 한다면 ‘업데이트하려면 프록시가 필요하고, 프록시를 복구하려면 업데이트가 필요하다’는 의존성 문제가 생깁니다. 실제 네트워크 패킷이 순환하는 상황은 아닐 수 있지만, 해결 방법은 같습니다. 의존성을 분리하고 직접 연결과 정상 작동이 확인된 프록시 경로를 각각 테스트하세요.

  1. 현재 노드 확인

    기존 노드를 하나 선택해 클라이언트 코어가 실행 중인지 확인하고 일반 HTTPS 요청이 해당 노드를 통해 처리되는지 테스트하세요. ‘연결됨’ 표시나 트레이 아이콘만으로 프록시 출구가 정상이라고 볼 수는 없습니다.

  2. 직접 연결로 업데이트 테스트

    v2rayN의 ‘구독 그룹’ 메뉴에서 ‘모든 구독 업데이트(프록시 사용 안 함)’를 실행하세요. 현재 버전에서 그룹별 업데이트가 가능하다면 대상 그룹만 테스트해 불필요한 로그를 줄이세요.

  3. 프록시를 통한 업데이트 테스트

    정상 작동이 확인된 노드를 연결한 상태에서 ‘구독 그룹’ → ‘모든 구독 업데이트(프록시 사용)’를 실행하세요. 버전에 따라 괄호나 표현은 다를 수 있으므로 ‘프록시 사용 안 함’과 ‘프록시 사용’의 의미를 기준으로 구분하세요.

  4. Android 설정 확인

    v2rayNG에서는 메인 화면 오른쪽 위 메뉴의 ‘구독 그룹 설정’에서 주소를 확인한 다음 메인 화면으로 돌아와 ‘구독 업데이트’를 실행하세요. 사용 중인 버전의 ‘설정’에 구독 업데이트 프록시 옵션이 있다면 옵션을 끄고 켠 상태를 각각 테스트하세요. VPN 상태만 보고 업데이트 요청도 프록시를 거친다고 판단하지 마세요.

  5. 로컬 연결 지점 확인

    로그에 127.0.0.1:10808로 연결을 시도한 기록이 있다면 실제 로컬 수신 포트가 같은지 확인하세요. 10808은 점검을 위한 예시이며 현재 클라이언트의 인바운드 설정을 기준으로 해야 합니다. 로컬 프록시 포트를 구독 서버 주소에 입력하지 마세요.

직접 연결은 성공하고 프록시는 실패한다면 현재 노드, 로컬 수신 포트, 프록시 설정을 집중적으로 확인하세요. 직접 연결은 실패하고 프록시는 성공한다면 현재 네트워크에서 해당 구독 주소에 접속할 다른 경로가 필요하다는 뜻입니다. 두 방법 모두 실패하면 다른 네트워크에서도 비교하고 서버 상태를 확인하세요. 로컬 프록시끼리 서로 전달하거나 TUN 라우팅에서 프록시 프로세스가 제외되지 않아 실제 순환이 생길 수도 있습니다. 트래픽을 반복해서 가로채지 않도록 중지한 후 다시 테스트하세요.

인증서 및 DNS 오류: 먼저 시스템 시간을 맞춘 뒤 이름 해석 확인

인증서 오류를 검증 기능을 꺼서 우회하지 마세요. HTTPS 검증은 인증서 유효 기간을 확인하므로 시스템 날짜가 크게 어긋나면 정상 인증서가 아직 유효하지 않거나 만료된 것으로 표시될 수 있습니다. 다만 ‘인증서 검증 실패’는 서버 인증서 체인이 불완전하거나, 네트워크 로그인 페이지가 표시되거나, 로컬 HTTPS 검사 소프트웨어가 작동해도 발생할 수 있습니다. 시간과 네트워크 환경을 함께 확인하세요.

오류: certificate has expired

원인 및 해결: 인증서 만료와 기기 시간 오차 모두 원인일 수 있습니다. 먼저 시스템 날짜와 시간을 동기화하세요. 시간이 정확한 여러 기기에서도 계속 오류가 나면 서비스 제공업체가 인증서를 수정해야 합니다.

오류: No such host is known.

원인 및 해결: Windows 환경에서 발생할 수 있는 호스트 이름 해석 오류입니다. 구독 도메인의 철자와 현재 DNS 연결 상태를 확인하고 다른 네트워크에서도 테스트하세요. 노드 프로토콜만 바꿔서는 해결되지 않습니다.

오류: Connection refused

원인 및 해결: 대상 포트에서 연결을 수락하지 않거나 연결이 명시적으로 거부된 상태입니다. 대상이 로컬 프록시 포트라면 코어가 실행 중인지 확인하고, 구독 서버라면 서버 포트와 서비스 상태를 확인하세요.

노드를 가져온 뒤 확인할 사항: 클라이언트와 코어 호환성

코어 호환성 문제는 대개 ‘노드를 가져온 뒤 실행 또는 연결이 되지 않는’ 상황에 해당하며, 모든 구독 실패의 기본 원인으로 볼 수는 없습니다. v2rayN은 데스크톱 클라이언트이고, v2rayNG는 Xray 코어를 사용하는 Android 클라이언트이며, v2flyNG는 V2Fly 코어를 사용하는 Android 클라이언트입니다. 인터페이스는 설정을 관리하고 코어는 연결을 실행하므로 양쪽의 지원 범위를 모두 확인해야 합니다.

상황확인 위치조치
구독 HTTP 요청 실패클라이언트 업데이트 로그주소와 네트워크부터 해결하고 코어는 먼저 바꾸지 마세요
특정 노드 공유 형식이 건너뛰어짐클라이언트 버전 및 가져오기 결과클라이언트를 업데이트하고 제공업체의 형식 안내를 확인하세요
VLESS 노드에 REALITY 매개변수가 포함됨선택한 코어의 매개변수 지원 여부해당 조합을 지원하는 코어를 사용하고 공개 키 등의 매개변수를 유지하세요
VMess 노드 연결 오류시스템 시간, 노드 설정, 서버 로그시간을 동기화한 뒤 서버 요구 사항을 확인하고 프로토콜 필드를 함부로 바꾸지 마세요

VLESS와 VMess는 프로토콜 이름이지 서로 바꿔 쓸 수 있는 구독 인코딩이 아닙니다. REALITY 같은 연결 매개변수도 프로토콜 선택을 VLESS로 바꾸기만 하면 자동으로 채워지지 않습니다. 먼저 클라이언트의 버전 정보에서 현재 버전을 기록한 다음, 이 사이트의 다운로드 센터에서 플랫폼에 맞는 버전을 받으세요. 업데이트 전에 그룹과 설정을 백업하고, 업데이트 후에는 노드 하나로 테스트하세요. 전송 방식, TLS, 라우팅 규칙을 한꺼번에 변경하지 마세요.

클라이언트에서 알 수 없는 설정 필드나 코어 시작 실패가 표시되면 의미 있는 첫 오류와 앞뒤 로그를 보관하세요. 원격 핸드셰이크만 실패한다면 서버 주소, 포트, 인증 정보, 서버 상태도 확인해야 합니다. 구독 내용은 제공업체가 생성합니다. 필수 매개변수가 빠졌다면 올바른 설정을 요청하세요. 다른 노드에서 매개변수를 복사해 조합하지 마세요.

자주 묻는 질문: 근거를 보존하고 점검 범위 좁히기

브라우저에서는 구독 주소가 열리는데 클라이언트에서는 왜 실패하나요?

먼저 브라우저에 표시된 것이 노드 텍스트인지 로그인 페이지인지 확인한 뒤 두 경로의 프록시 설정을 비교하세요. 브라우저에는 로그인 정보가 있지만 클라이언트에는 없을 수 있고, 브라우저는 프록시를 사용하지만 클라이언트는 직접 연결할 수도 있습니다. 두 업데이트 방식을 각각 테스트하세요. 페이지가 열린다는 이유만으로 형식이 올바르다고 판단하면 안 됩니다.

업데이트 후 노드가 하나도 없는데 다시 설치해야 하나요?

먼저 현재 그룹의 필터, 로그에 표시된 가져오기 개수, 응답 형식을 확인하세요. 기존 그룹을 바로 삭제하지 마세요. v2rayN에서는 ‘구독 그룹’ → ‘구독 그룹 설정’, v2rayNG에서는 ‘구독 그룹 설정’에서 대상 주소를 확인하고 다른 빈 그룹을 선택한 것은 아닌지 살펴보세요.

노드를 바꿔도 시간 초과가 계속됩니다. 구독이 잘못된 건가요?

먼저 업데이트 요청에 프록시 사용이 실제로 적용됐는지 확인하세요. 클라이언트가 계속 직접 연결한다면 노드를 바꿔도 요청 경로는 달라지지 않습니다. 프록시 자체가 작동하지 않는다면 다른 고장 난 노드로 바꿔도 나아지지 않습니다. 직접 연결과 프록시를 통한 업데이트 결과를 각각 기록한 뒤 제공업체에 구독 서버 상태를 문의하세요.

문의를 보낼 때 어떤 정보를 제공해야 하나요?

클라이언트 이름과 버전, 시스템 버전, 오류 발생 시각, 업데이트 방식, HTTP 상태 코드 또는 첫 번째 오류, 기존 노드의 작동 여부를 알려주세요. 구독 주소는 도메인과 형식만 설명하고 토큰은 가리세요. 로그에서도 비밀번호, 사용자 식별 정보, 전체 노드 공유 링크를 먼저 가려야 합니다.

플랫폼에 맞는 클라이언트 다운로드

Windows, macOS, Android 또는 Linux용 클라이언트를 선택하세요. 설치한 뒤 안내에 따라 구독을 추가하고 업데이트 방식과 노드 연결을 확인하면 됩니다.