v2rayN에서 구독 업데이트 요청이 실패하거나, 가져온 서버가 0개이거나, 서버 목록이 비어 있을 때 확인할 내용입니다. 기존 설정을 보존한 뒤 그룹 주소, 업데이트 경로, 서버 응답을 확인하고 마지막으로 형식과 필터 조건을 점검하세요. 구독을 반복해서 삭제하거나 클라이언트를 재설치하기보다 문제가 발생한 단계를 찾아내는 것이 목표입니다.
1. 구독 업데이트 실패와 노드 연결 실패 구분하기
구독 업데이트는 클라이언트가 구독 주소에 접속해 설정을 가져온 뒤, 인식 가능한 서버 항목을 그룹에 추가하는 과정입니다. 노드 연결은 코어가 해당 설정으로 프록시 연결을 만드는 과정입니다. 서로 다른 요청이므로 웹페이지가 열린다고 구독 API에 접속할 수 있는 것은 아니며, 구독 업데이트에 성공해도 모든 노드가 연결되는 것은 아닙니다.
업데이트 로그에서 처음 나타난 구체적인 오류부터 확인하세요. 도메인 이름 확인 실패, 시간 초과 또는 HTTP 상태 코드가 표시되면 네트워크 요청을 먼저 점검합니다. 요청은 완료됐지만 가져온 항목이 0개라면 응답 내용과 형식을 확인하고, 로그에는 가져온 수량이 있지만 목록이 비어 있다면 필터를 해제해 보세요. 마지막 줄의 ‘업데이트 완료’만 보고 성공으로 판단하지 마세요.
- 요청 실패: 사용할 수 있는 응답 본문을 아직 받지 못한 상태입니다. VMess 또는 VLESS 노드 설정을 바꿔도 대개 해결되지 않습니다.
- 가져온 항목 없음: 응답은 받았지만 로그인 페이지나 안내 문구이거나, 현재 클라이언트가 인식하지 못하는 설정일 수 있습니다.
- 노드 연결 실패: 목록은 이미 있으므로 서버 상태, 연결 매개변수, 라우팅을 별도로 확인해야 합니다. 연결 문제를 구독 업데이트로 해결하려고 하지 마세요.
2. 구독 그룹과 주소 확인하기
먼저 ‘구독 그룹’ → ‘구독 그룹 설정’에서 문제가 발생한 그룹을 확인하세요. 데스크톱 버전, WPF 버전, 클라이언트 버전에 따라 화면 구성이 달라질 수 있지만 확인할 항목은 그룹 이름, 구독 주소, 그룹 필터 설정입니다. 그룹이 여러 개라면 대상 그룹만 업데이트해야 로그와 작업을 쉽게 대조할 수 있습니다.
-
현재 상태 기록
클라이언트 버전, 대상 그룹 이름, 기존 항목 수를 기록하세요. 백업이 필요하면 클라이언트에서 제공하는 방법을 사용하고, 인증 정보가 들어 있을 수 있는 백업 파일은 본인이 관리할 수 있는 안전한 위치에 보관하세요.
-
주소 확인
‘구독 그룹’ → ‘구독 그룹 설정’으로 이동해 대상 그룹을 수정하세요. 서비스 제공업체 홈페이지나 계정 페이지 주소, 개별 노드 공유 링크가 아니라 구독 링크 전체를 붙여 넣었는지 확인합니다.
-
링크 다시 복사
서비스 제공업체 계정 페이지에 로그인해 구독이 유효한지 확인한 다음, v2rayN용 구독 주소를 다시 복사하세요. 앞뒤 공백과 줄바꿈은 제거하되 물음표 뒤의 쿼리 매개변수는 유지하고, 토큰을 임의로 디코딩하거나 수정하지 마세요.
-
대상 그룹만 업데이트
‘구독 그룹’ 메뉴로 돌아가 현재 버전에 있는 대상 그룹 업데이트 기능을 선택하세요. 일괄 업데이트만 가능하다면 대상 그룹의 로그를 따로 확인하세요. 다른 그룹이 성공했다는 이유만으로 이 그룹도 정상이라고 판단하지 마세요.
-
결과 기록
작업 시간, 업데이트 경로, 오류 원문, 가져온 항목 수를 기록하세요. 한 번에 조건 하나만 바꾸고 다시 업데이트해야 주소, DNS, 프록시 중 무엇이 영향을 줬는지 확인할 수 있습니다.
3. 직접 연결과 프록시 경유 업데이트 비교하기
v2rayN 일부 버전에서는 구독 업데이트를 ‘프록시 사용 안 함’과 ‘프록시 사용’으로 구분합니다. 먼저 ‘구독 그룹’ 메뉴에 실제로 어떤 옵션이 있는지 확인한 뒤 해당 경로를 선택하세요. 시스템 프록시 아이콘만 바꿨다고 구독 요청 경로까지 바뀌었다고 단정하지 마세요. 클라이언트의 업데이트 옵션이 요청 경로를 결정할 수 있습니다.
| 테스트 조건 | 결과 | 다음 단계 |
|---|---|---|
| 프록시를 사용하지 않고 업데이트 | 항목을 가져옴 | 이 경로를 유지하고 기존 프록시가 정상인지 확인 |
| 프록시를 사용하지 않고 업데이트 | 시간 초과 또는 연결 끊김 | 정상 작동이 확인된 노드로 프록시 업데이트 테스트 |
| 프록시를 사용해 업데이트 | 로컬 연결이 거부됨 | 코어 실행 상태와 실제 수신 포트 확인 |
| 두 경로 모두 실패 | 같은 상태 코드 또는 오류 메시지 | 주소 권한, 계정 상태, 서버 응답 확인 |
프록시 경유로 업데이트하기 전에 현재 노드가 실제로 작동하는지 확인하세요. 사용할 수 없는 노드로 구독을 업데이트하면 ‘노드를 복구하려면 업데이트해야 하는데, 업데이트하려면 고장 난 노드에 연결해야 하는’ 상황이 반복될 수 있습니다. 쓸 수 있는 노드가 없다면 먼저 직접 연결이나 신뢰할 수 있는 다른 네트워크를 시도하세요. 같은 고장 난 연결을 반복해서 켤 필요는 없습니다.
- 로그에
127.0.0.1:10808같은 로컬 주소가 표시되면 ‘설정’ → ‘매개변수 설정’에서 로컬 수신 설정을 먼저 확인하세요. 포트는 예시일 뿐이므로 현재 설정을 기준으로 확인해야 합니다. - HTTP와 SOCKS는 서로 다른 프록시 프로토콜이므로 포트 번호가 익숙해 보인다는 이유로 서로 바꿔 쓸 수 없습니다. 구버전은 각 프로토콜을 별도 포트로 수신할 수 있고, 최신 버전은 혼합 포트를 사용할 수 있습니다.
- TUN 모드, 다른 프록시 프로그램, 환경 변수도 실제 네트워크 경로를 바꿀 수 있습니다. 비교 테스트를 할 때 이 상태를 기록하세요. ‘프록시 사용 안 함’ 옵션만으로 모든 시스템 수준의 트래픽 가로채기를 피했다고 보장할 수는 없습니다.
4. HTTP 상태 코드와 실제 오류 확인하기
오류 메시지는 영어로 표시되거나 클라이언트에서 번역될 수 있습니다. ‘업데이트 실패’만 기록하지 말고 상태 코드, 호스트 이름, 내부 예외를 확인하세요. 아래 숫자는 프로토콜 상태 코드이며 속도 테스트 결과가 아닙니다. 200은 HTTP 요청이 성공적으로 응답했다는 뜻일 뿐, 유효한 구독을 받았다는 의미는 아닙니다.
오류: Response status code does not indicate success: 403 (Forbidden).
원인 및 해결 방법: 서버가 요청을 거부했습니다. 토큰 만료, 계정 권한 또는 접근 정책이 원인일 수 있습니다. 구독 링크를 다시 발급받고 계정 상태를 확인하세요. 브라우저와 클라이언트의 결과가 다르면 서비스 제공업체에 클라이언트 요청이 차단되는지 문의하세요.
오류: Connection refused
원인 및 해결 방법: 대상 주소에서 연결을 거부했습니다. 대상이 로컬 루프백 주소라면 프록시 코어와 수신 포트를 확인하세요. 원격 서버라면 해당 서버의 서비스가 실행 중인지 확인해야 합니다. 모든 경우를 로컬 포트 충돌 탓으로 돌리지 마세요.
오류: The SSL connection could not be established, see inner exception.
원인 및 해결 방법: TLS 연결을 설정하지 못했지만 이 메시지만으로는 원인을 특정할 수 없습니다. 시스템 날짜와 시간대, 내부 인증서 오류를 확인하고 네트워크 인증 페이지나 HTTPS 검사 여부를 점검하세요. 인증서 검증을 영구적으로 끄는 방법으로 문제를 덮지 마세요.
429가 표시되면 업데이트를 연속으로 시도하지 말고 서버 안내에 따라 기다리세요. 5xx 오류가 발생하면 시간을 기록하고 서비스 제공업체에 API 상태를 확인하세요. 도메인 확인 오류는 구독 도메인 철자를 먼저 확인한 뒤 현재 네트워크의 DNS를 점검합니다. DNS만 바꿔서는 계정 만료나 토큰 취소를 해결할 수 없습니다.
5. 구독을 가져온 항목이 없을 때 응답 형식 확인하기
구독 링크를 열면 공유 링크 여러 개가 표시되거나 인코딩된 공유 링크 묶음이 반환될 수 있습니다. VMess와 VLESS는 프록시 프로토콜 이름이고, 구독은 설정을 여러 개 전달하는 방식입니다. 클라이언트마다 전체 설정 파일 형식이 다르므로 임의의 설정 텍스트를 구독 입력란에 붙여 넣는다고 자동 변환되지는 않습니다.
| 응답 내용 특징 | 가능한 원인 | 해결 방법 |
|---|---|---|
| 로그인 양식, 웹페이지 제목, HTML 태그 | 계정 페이지 주소를 복사했거나 인증 페이지로 리디렉션됨 | 구독 전용 주소를 다시 복사하고 네트워크 인증 완료 |
| 만료, 사용량 제한 또는 접근 거부 안내 | API가 안내 문구를 반환함 | 계정 권한과 서비스 제공업체 안내 확인 |
| 빈 본문 또는 항목이 없는 목록 | 계정에 노드가 할당되지 않았거나 API에 오류가 발생함 | 계정 페이지의 노드 목록과 구독 생성 상태 확인 |
| 다른 형식의 전체 설정 파일 | 내보낸 형식이 클라이언트와 맞지 않음 | 서비스 제공업체가 v2rayN용으로 안내한 형식 선택 |
| 공유 링크 묶음 중 일부만 가져오지 못함 | 일부 항목의 필드가 불완전하거나 현재 버전에서 지원되지 않음 | 개별 항목의 파싱 오류와 클라이언트 버전 확인 |
브라우저 접속 결과는 참고 자료일 뿐입니다. 브라우저는 계정 로그인 상태를 유지하거나 다른 프록시 경로를 사용할 수 있으며, 클라이언트에는 같은 쿠키가 전달되지 않을 수 있습니다. 브라우저에서 계정 페이지가 열린다고 클라이언트의 구독 API 접근까지 허용된 것은 아닙니다. 응답을 확인할 때는 페이지가 ‘열리는지’가 아니라 최종 응답의 콘텐츠 유형과 본문을 살펴보세요.
6. 로그에는 가져온 수가 있지만 서버 목록이 비어 있을 때
이 경우 구독 링크를 바로 바꾸기보다 표시 조건을 먼저 확인하세요. 그룹 선택, 검색어, 그룹 필터 규칙이 동시에 적용될 수 있습니다. 특히 서비스 제공업체가 노드 이름을 바꾸면 기존 키워드 필터에 일치하지 않아 구독에 서버가 없는 것처럼 보일 수 있습니다.
- 검색어 지우기: 서버 목록의 검색창을 비우고 특정 지역이나 이전 노드 이름만 표시하도록 설정되어 있지 않은지 확인하세요.
- 그룹 전환: 방금 업데이트한 대상 그룹을 선택하세요. 필요하다면 전체 그룹으로 전환해 비교하고, 다른 빈 그룹이 선택되어 있지 않은지 확인합니다.
- 필터 확인: ‘구독 그룹’ → ‘구독 그룹 설정’에서 대상 그룹의 필터 항목을 확인하세요. 기존 값을 먼저 기록한 뒤 임시로 비우세요. 일부 필터 설정은 가져오기 결과에 영향을 주므로 다시 업데이트해야 확인할 수 있습니다.
- 수량 대조: 업데이트 로그의 가져온 수와 화면에 표시되는 수를 각각 기록하세요. 전자는 0보다 큰데 후자가 0이면 필터를 먼저 확인하는 것이 좋습니다. 둘 다 0이면 응답과 형식을 다시 점검하세요.
필터를 해제한 뒤 항목이 보이지만 노드를 활성화해도 연결되지 않는다면 구독 문제와 연결 문제를 따로 기록하세요. 이때는 노드 주소, 포트, 전송 방식, TLS 매개변수가 서비스 제공업체의 안내와 일치하는지 확인하고 구독 그룹을 계속 삭제하지 마세요.
7. 재테스트 기록과 서비스 제공업체 문의 준비
문제를 해결한 뒤 대상 그룹만 한 번 더 업데이트해 로그에 인식 가능한 가져오기 결과가 있는지 확인하고, 필터를 해제한 상태에서 항목을 살펴보세요. 그런 다음 노드 하나를 선택해 실제 접속을 테스트합니다. 목록이 복구됐다는 사실만으로 구독 과정이 정상화된 것이며, 노드 연결까지 확인된 것은 아닙니다.
- v2rayN의 전체 버전 번호, 운영체제, 데스크톱 버전 또는 WPF 버전 여부를 기록하세요.
- 문제가 발생한 시간, 대상 그룹, 직접 연결 또는 프록시 업데이트 여부, TUN 활성화 여부를 기록하세요.
- 개인정보를 가린 첫 번째 오류 메시지, HTTP 상태 코드, 가져온 항목 수를 제공하세요. 구독 토큰 전체는 보내지 마세요.
- 네트워크를 바꿨는지, 링크를 다시 발급받았는지, 같은 주소에서 웹페이지나 빈 본문이 반환되는지 알려 주세요.
- 서비스 제공업체에서 구독 형식을 변경했다면 적용 가능한 클라이언트 버전을 확인한 뒤 업그레이드 여부를 결정하세요. ‘최신 버전’이라는 이유만으로 원인을 단정하지 마세요.
기본 설정을 다시 정리해야 한다면 튜토리얼을 참고해 구독 가져오기와 프록시 설정을 확인하세요. ‘구독 전체 업데이트’를 반복해서 누르는 것보다 재현 가능한 작업 기록을 남기는 편이 원인을 찾는 데 도움이 되고 API 요청 제한에 걸릴 가능성도 줄여 줍니다.