Shadowrocket 구독을 업데이트하려면 먼저 서버 응답을 받은 다음 그 안의 서버 항목을 파싱해야 합니다. 이 글은 이미 이용 중인 제공업체 계정과 구독 주소가 있다는 전제에서, 현재 상태 보존, 주소 확인, 응답 점검, 네트워크 검증, 자동 업데이트 확인 순으로 문제를 살펴봅니다. 요청 실패, 용도에 맞지 않는 응답, 요청은 성공했지만 목록이 비어 있는 경우를 구분해 다음 조치를 정하면 구독을 반복해서 삭제해 비교할 자료를 잃는 일을 막을 수 있습니다.
1. 업데이트 실패, 파싱 실패, 빈 목록 구분하기
구독 업데이트에 실패했다고 기존 서버가 곧바로 작동하지 않는 것은 아니며, 목록이 비어 있다고 요청이 전송되지 않은 것도 아닙니다. 업데이트에는 네트워크 요청, 인증, 콘텐츠 파싱, 목록 표시 과정이 포함됩니다. 어느 단계에서 문제가 생겼는지 기록하고, 모든 상황을 막연히 ‘링크 오류’로 취급하지 마세요.
먼저 Home으로 돌아가 확인하려는 구독 그룹을 보고 있는지 확인하세요. 다른 그룹이나 필터 적용 결과를 보고 있는 것은 아닌지도 살펴봅니다. 기존 항목은 남아 있지만 업데이트 실패 알림이 표시되는 경우와 업데이트 후 해당 그룹에 항목이 실제로 하나도 없는 경우를 구분하세요. Config에 구성 파일이 보이더라도 구독이 정상이라고 단정할 수는 없습니다. 구성 파일과 Home의 서버 목록은 별도로 확인해야 합니다.
- 수동 업데이트 시간, 현재 네트워크가 Wi-Fi인지 셀룰러인지, 오류 메시지 전체를 기록하세요.
- 업데이트 전 해당 그룹의 항목 수를 적어 두세요. 복구할 수 있는 구성이 있다면 먼저 사본을 보관하고, 구독 삭제부터 시작하지 마세요.
- 문제가 있는 구독만 한 번 수동 업데이트하고 오류 메시지와 목록 변화를 확인하세요. 여러 출처를 동시에 업데이트하지 마세요.
- 특정 항목 하나만 연결되지 않는다면 해당 항목의 주소, 포트, 인증 정보를 확인하세요. 이를 빈 구독 문제로 계속 다루지 마세요.
2. 구독 주소가 완전한지, 응답 형식이 맞는지 확인하기
구독 주소는 여러 항목을 가져오는 주소이지, 제공업체 계정 페이지나 단일 서버 공유 링크가 아닙니다. ss://, vmess://, vless://, trojan://은 보통 단일 연결 정보를 나타냅니다. 가져오기가 가능하다는 이유만으로 정기 업데이트용 구독 주소로 간주할 수는 없습니다. HTTPS 주소라고 해서 반드시 구독 주소인 것도 아닙니다. 로그인 페이지, 도움말 페이지, 오류 페이지도 HTTPS를 사용할 수 있습니다.
https://example.com/sub?token=xxxx
위 내용은 연결에 사용할 수 없는 형식의 예입니다. 실제 주소를 확인할 때는 프로토콜, 호스트 이름, 경로, 쿼리 매개변수를 하나씩 비교하세요. 특히 복사 과정에서 ? 뒤의 내용이 빠지지 않았는지, &를 문자 그대로 &로 잘못 입력하지 않았는지, 채팅 문장에 붙은 마침표·따옴표·줄바꿈까지 함께 복사하지 않았는지 살펴보세요. 길어 보이는 token을 임의로 지우거나 퍼센트 인코딩을 함부로 바꾸지 마세요.
- 복사 위치: 본인의 제공업체 계정 페이지에서 Shadowrocket용 구독 주소를 다시 복사하세요. 교체하기 전에 기존 주소와 새 주소가 같은지 비교합니다.
- 응답 형식: 서버가 앱에서 인식할 수 있는 구독 콘텐츠를 반환하는지 확인하세요. 전체 설정 페이지, 계정 안내문, 웹 양식이어서는 안 됩니다.
- 민감 정보: token에는 접근 권한이 포함될 수 있습니다. 전체 주소를 공개 스크린샷, 온라인 디코딩 페이지, 공개 게시판에 올리지 마세요.
- 확인 범위: 브라우저에서 주소가 열린다는 것은 브라우저가 어떤 응답을 받았다는 뜻일 뿐입니다. 브라우저에 저장된 로그인 상태가 앱의 구독 요청에도 전달된다고 볼 수는 없습니다.
브라우저에 로그인 화면, CAPTCHA, 만료 안내가 표시된다면 먼저 계정 문제를 해결하세요. 웹페이지를 저장한 텍스트를 구독으로 다시 가져오지 마세요. 인코딩된 것처럼 보이는 텍스트가 표시되더라도 겉모습만으로 파싱 가능한 콘텐츠라고 판단할 수 없습니다. 해당 주소가 실제로 이 클라이언트용 내보내기 경로인지 확인해야 합니다.
3. HTTP 응답으로 만료, 제한, 빈 콘텐츠 확인하기
제공업체 계정의 유효 기간과 트래픽 상태, 구독 주소 변경 여부, 요청 빈도 제한 등이 응답에 영향을 줄 수 있습니다. 본인의 계정 페이지에서 항목별로 확인한 뒤 실제 응답에 따라 판단하세요. 아래는 HTTP 표준 응답 문구입니다. 오류 상세 정보나 서버 기록에서 해당 상태가 확인된 경우에만 참고하세요. Shadowrocket에 반드시 같은 문구가 그대로 표시된다는 뜻은 아닙니다.
오류: 401 Unauthorized
원인: 인증에 실패했습니다. 인증 정보가 누락되었거나 만료되었을 수 있습니다. 해결: 본인의 계정 페이지에서 구독 주소가 재설정되었는지 확인하고, 전체 주소를 다시 복사해 한 번 더 시도하세요.
오류: 403 Forbidden
원인: 서버가 이번 요청을 거부했습니다. 계정 권한, 출처 제한, 접근 정책 등이 원인일 수 있습니다. 해결: 계정 상태를 확인하고, 개인정보를 가린 오류 내용과 발생 시간을 본인의 제공업체에 전달하세요. 클라이언트 파싱 문제라고 바로 단정하지 마세요.
오류: 429 Too Many Requests
원인: 요청이 서버의 빈도 제한에 걸렸습니다. 해결: 연속으로 새로고침하지 마세요. 응답에 Retry-After가 포함되어 있다면 지정된 대기 시간을 따른 뒤 한 번만 확인하세요.
오류: 503 Service Unavailable
원인: 서버가 일시적으로 요청을 처리할 수 없습니다. 점검 중이거나 과부하 상태일 수 있습니다. 해결: 기존 항목은 보존하고 나중에 다시 시도하세요. 본인의 제공업체가 현재 서비스 상태를 안내했는지도 확인합니다.
상태가 200 OK여도 HTTP 요청이 성공적으로 처리되었다는 뜻일 뿐, 유효한 서버 정보가 응답에 포함되었다는 보장은 없습니다. 응답 본문이 비어 있거나 계정 안내문 또는 HTML 페이지일 수 있습니다. 항목 수가 0이 되었다면 계정에 이용 가능한 항목이 남아 있는지, 구독 내보내기가 예상한 콘텐츠를 반환하는지 함께 확인하세요.
정리: 응답을 먼저 확인한 다음 파싱 관련 설정을 조정하세요
실제 응답이 로그인 페이지, 권한 안내 또는 빈 본문이라면 규칙이나 서버 프로토콜을 바꿔도 누락된 항목을 복구할 수 없습니다. 먼저 구독 주소가 유효한 응답을 반환하도록 해결한 뒤 한 번 수동 업데이트하세요.
4. 한 번에 하나씩 바꿔 업데이트 네트워크 경로 확인하기
구독 업데이트 요청이 연결되는지와 구독에 포함된 특정 서버에 연결되는지는 별개의 문제입니다. 기존 항목에 연결할 수 있어도 구독 주소에 접근할 수 있다는 뜻은 아닙니다. 구독 업데이트에 성공해도 새 항목마다 연결이 되는 것은 아닙니다. 문제를 확인하는 동안 현재 구성을 보존하고 매번 조건 하나만 바꾼 뒤 결과를 기록하세요.
- 기본 네트워크 확인: 현재 Wi-Fi의 웹 인증을 완료하세요. 네트워크 자체가 작동하지 않는다면 먼저 접속 문제를 해결한 다음 앱으로 돌아와 업데이트합니다.
- 접속 네트워크 전환: 가능하다면 Wi-Fi에서 셀룰러 네트워크로 바꾸고 같은 주소를 한 번 업데이트하세요. 주소는 바꾸지 말고 두 번의 성공 여부만 기록합니다.
- 업데이트 전용 설정 확인: Settings → Subscribe로 이동해 현재 화면에 표시되는 업데이트 옵션을 확인하세요.
Update via Proxy가 있다면 먼저 기존 상태를 기록합니다. 사용 가능한 연결이 있을 때만 프록시를 통한 업데이트를 시험하고 기존 상태와 비교하세요. - 인증서와 시간 확인: 인증서 또는 TLS 오류가 표시되면 기기의 날짜와 시간, 대상 도메인이 올바른지 확인하세요. 인증서 검증을 꺼서 오류를 숨기지 마세요.
Home → Global Routing의 Proxy, Direct, Config, Scene을 구독 파싱 형식 설정으로 여기지 마세요. 이 항목들은 라우팅 방식과 관련이 있으며 잘린 token을 복구하거나 HTML을 서버 목록으로 바꾸지는 못합니다. 업데이트 요청이 프록시를 거치는지는 업데이트 전용 설정과 현재 연결 상태를 함께 확인해야 합니다. 특정 라우팅 방식의 이름만으로 모든 요청의 경로를 추측할 수는 없습니다.
마찬가지로 DOMAIN-SUFFIX, GEOIP, IP-CIDR, FINAL을 바꾸는 것은 빈 응답을 해결하는 첫 단계가 아닙니다. 구독 도메인이 현재 라우팅 경로의 영향을 받는다는 점을 확인한 경우에만 관련 구성을 점검하고, 수정하기 전에 사본을 저장하세요.
5. 수동 업데이트 성공 후 자동 업데이트 시점 확인하기
자동 업데이트는 유효한 주소나 작동하는 네트워크를 대신할 수 없습니다. 먼저 앱을 전면에 둔 상태에서 수동 업데이트를 한 번 완료해 예상한 항목이 목록에 표시되는지 확인하세요. 그다음 Settings → Subscribe에서 실제로 제공되는 자동 업데이트 옵션과 간격을 살펴봅니다. 화면마다 문구가 다를 수 있으므로 기기에 표시된 항목을 기준으로 하세요. 특정 시간에 모든 기기에서 반드시 실행된다고 단정하지 마세요.
- 전면 실행 상태를 기준으로 확인: 수동 업데이트에 성공한 시간과 항목 수를 기록한 다음 자동 업데이트를 켜거나 조정하세요. 요청 실패와 실행 시점 차이를 구분하는 데 도움이 됩니다.
- 지나치게 자주 새로고침하지 않기: 자동 업데이트를 확인하려고 새로고침을 연속으로 누르지 마세요. 짧은 시간에 요청을 반복하면 빈도 제한에 걸려 원래의 테스트 조건을 바꿀 수 있습니다.
- 시스템 실행 일정 고려: 화면 잠금, 백그라운드 실행, 네트워크 전환 중에 앱이 항상 실행 기회를 얻는다고 가정하지 마세요. 앱을 다시 전면에 표시한 뒤 목록과 업데이트 결과를 확인하세요.
- 실행 조건 구분: Settings → On Demand는 조건에 따라 VPN 연결을 설정하는 기능이며 구독 정기 업데이트 스위치가 아닙니다. On Demand를 켜도 매번 구독을 가져오는 것은 아닙니다.
자동 업데이트는 실패하지만 수동 업데이트는 성공한다면 두 시점의 네트워크, 연결 상태, 업데이트 경로를 먼저 비교하세요. 수동 업데이트도 실패한다면 주소와 응답 확인으로 돌아가고 업데이트 간격을 더 짧게 설정하지 마세요. 문제가 해결되면 새 항목의 주소, 포트, 프로토콜 정보를 몇 개 확인하세요. 구독 업데이트 성공은 구성을 가져왔다는 뜻일 뿐, 연결이 가능한지는 별도로 확인해야 합니다.
6. 자주 묻는 질문과 문제 해결 시 전달할 정보
기존 노드는 연결되는데 구독은 왜 업데이트되지 않나요?
기존 항목에는 이미 저장된 연결 정보가 있고, 업데이트 요청은 구독 주소에 접근합니다. 먼저 본인의 계정 페이지에서 주소와 token이 여전히 유효한지 확인한 뒤 Home에서 해당 구독을 한 번 수동 업데이트하세요. 업데이트를 확인하려고 사용 가능한 항목을 먼저 지우지 마세요.
브라우저에서는 콘텐츠가 열리는데 앱 목록은 왜 비어 있나요?
먼저 표시된 콘텐츠가 로그인 페이지, 오류 안내 또는 지원되지 않는 내보내기 형식인지 확인하세요. 브라우저 로그인에 성공해도 앱 요청에 동일한 세션 정보가 전달되는 것은 아닙니다. 브라우저 주소 표시줄의 계정 페이지를 복사하지 말고, 계정 페이지에서 Shadowrocket용 구독 주소를 다시 확인하세요.
업데이트 후 항목 수가 줄었는데 바로 여러 번 새로고침해야 하나요?
먼저 대상 그룹과 필터 상태를 확인한 다음 계정 측에서 실제로 제공하는 항목 수를 살펴보세요. 변경 시각을 기록하고 연속 새로고침은 중단하세요. 수가 줄어든 것은 서버 측 콘텐츠 변경이나 일부 콘텐츠의 파싱 실패 때문일 수 있으므로 응답과 오류 상세 정보를 함께 확인해야 합니다.
전체 구독 링크를 다른 사람에게 보내 점검을 부탁해도 되나요?
token이 포함된 전체 주소를 공개적으로 보내지 마세요. 문의할 때는 일부를 가린 도메인, 발생 시간, 네트워크 유형, 오류 원문, 업데이트 전후 항목 수만 전달하면 됩니다. 인증 정보가 유출되었다면 먼저 본인의 제공업체 계정에서 재설정한 뒤 앱에 저장된 주소를 교체하세요.
제공업체에 문의할 때는 ‘안 돼요’ 대신 재현할 수 있는 상황을 설명하세요. 예: ‘셀룰러 네트워크에서 앱을 전면 실행한 상태로 수동 업데이트했더니 응답이 403으로 표시됐고 기존 항목은 남아 있었습니다. Wi-Fi로 바꿔도 결과는 같았습니다.’ 상태 코드를 확인하지 못했다면 추측하지 말고 실제로 표시된 메시지를 적으세요. 이렇게 기록하면 계정, 네트워크, 콘텐츠 형식 문제를 구분하기 쉬워지고 민감한 주소를 반복해서 요청할 필요도 줄어듭니다.
Shadowrocket 정품 확인 및 사용 안내
Shadowrocket은 Apple 플랫폼에서 제공되는 클로즈드 소스 상용 앱이며, 유일한 다운로드 경로는 App Store입니다. 주로 iPhone과 iPad에서 사용할 수 있습니다. 개발자 Shadow Launch Technology Limited와 앱 ID 932747118을 확인하세요. 시스템 요구 사항과 구매 가능 범위는 App Store 페이지에 표시된 내용을 기준으로 합니다. 앱은 일회성 구매이며 회선 요금제와는 별개입니다. 구독 상태는 사용자가 이용 중인 제공업체 측에서 확인해야 합니다.