이 글의 핵심 내용

Shadowrocket의 On Demand는 조건에 따라 VPN 연결을 시작하는 기능이지, 배터리 절약 기능은 아닙니다. 이미 사용할 서비스와 구독이 있는 iPhone 및 iPad 사용자가 백그라운드 배터리 소모 원인을 확인할 수 있도록, 자동 연결과 연결 중 트래픽 처리를 구분하고 시스템 배터리 기록을 살펴본 뒤 같은 네트워크와 설정에서 기능을 켜고 끄는 방법을 안내합니다. 이를 바탕으로 자동 연결을 유지할지 수동 연결로 바꿀지 판단할 수 있습니다.

On Demand와 백그라운드 연결은 서로 다른 기능입니다

먼저 결론부터 말하면, On Demand가 켜져 있다는 이유만으로 배터리 소모 원인이라고 단정할 수 없고, 껐다는 이유만으로 VPN 연결이 끊겼다고 볼 수도 없습니다. On Demand는 기존 조건에 따라 시스템이 언제 연결을 시작할지 결정합니다. VPN이 연결된 뒤에는 라우팅 설정에 해당하는 네트워크 요청을 계속 처리합니다. 실제 배터리 소모량은 요청 수, 네트워크 신호, 연결 재시도, 서버 응답, 화면 사용 여부에도 영향을 받습니다.

Shadowrocket에서 Settings → On Demand로 이동해 기능이 켜져 있는지, 어떤 조건이 설정되어 있는지 먼저 확인하세요. 시스템은 해당 On Demand 조건에 따라 연결 여부를 판단하며, 조건에는 현재 네트워크 환경이나 네트워크 접근 상태가 포함될 수 있습니다. 특정 웹페이지를 열어야만 작동한다는 뜻도 아니고, 화면을 잠근 직후 연결이 끊긴다는 보장도 없습니다. 설정할 수 있는 항목은 앱에 실제로 표시되는 내용을 따르세요. 현재 화면에 없는 스위치 이름을 그대로 적용하지 마세요.

네트워크 조건 변경 On Demand 조건 확인 시스템 터널 연결 라우팅 정책 적용 요청 완료 또는 재시도

이 과정은 연결이 시작되는 단계와 연결된 상태에서 작동하는 단계를 구분합니다. Shadowrocket 화면을 닫아도 시스템 VPN 터널은 연결된 상태로 유지될 수 있습니다. 반대로 앱 화면을 오래 열어 두지 않았다고 해서 백그라운드에서 트래픽을 처리하지 않았다는 뜻은 아닙니다. 앱 화면을 닫는 것만으로 연결 해제 여부나 배터리 절약 효과를 확인할 수는 없습니다.

먼저 iPhone 배터리 화면에서 세 가지를 확인하세요

시스템의 설정 → 배터리를 열고 화면에 표시되는 기간을 선택한 다음 앱 목록을 확인하세요. 시스템 버전에 따라 그래프와 기간 항목의 이름이 다를 수 있으니 기기에 표시되는 화면을 기준으로 조작하세요. 앱의 배터리 사용 비율만 따로 캡처하지 마세요. 이 수치는 대개 선택한 기간의 전체 배터리 사용량 중 해당 앱이 차지하는 비율이며, 앱 하나 때문에 배터리가 몇 퍼센트포인트 줄었는지를 나타내는 값은 아닙니다.

  1. 통계 기간을 확인하세요. 문제가 발생한 시간을 포함하는 기간을 선택하세요. 그래프에서 시간이나 날짜를 선택할 수 있다면 배터리가 비정상적으로 줄어든 구간으로 범위를 좁히세요. 충전 여부, 화면을 켜 둔 시간, 당시 Wi-Fi와 셀룰러 네트워크 중 어떤 것을 사용했는지도 기록하세요.
  2. 활동 내역을 확인하세요. Shadowrocket 항목을 누르거나 화면의 활동 표시 기능을 사용해 백그라운드 활동이 있었는지 확인하세요. 시스템은 네트워크 확장 기능의 배터리 사용량을 자체 기준에 따라 집계하므로, 목록의 단일 항목만으로 전체 네트워크 연결의 전력 소비량을 측정할 수는 없습니다.
  3. 같은 시간대에 사용한 다른 앱도 확인하세요. 배터리가 줄어든 동안 동영상 재생, 사진 동기화, 시스템 업데이트 또는 대용량 파일 전송이 있었다면 함께 고려해야 합니다. 다른 앱에서 시작한 요청도 VPN을 통과할 수 있습니다. 백그라운드 활동 시간이 길다는 것과 배터리 소모가 비정상적이라는 것은 같은 의미가 아닙니다.

예를 들어 특정 시간대에 Shadowrocket의 배터리 사용 비율이 어제보다 높아도, 오늘 다른 앱의 사용량이 적어서 비율이 올라간 것일 수 있습니다. Shadowrocket의 절대적인 전력 소비량이 늘었다고 단정할 수는 없습니다. 해당 시간대의 기기 전체 배터리 그래프, 활동 내역, 사용 작업을 함께 확인하세요. 아래 수치는 관찰 방법을 제안하기 위한 예시이며 제품 성능이나 실제 배터리 사용 시간을 측정한 결과가 아닙니다.

2회
다른 조건은 동일하게 유지하고 On Demand를 켠 상태와 끈 상태를 각각 관찰합니다
30분
각 회차의 권장 초기 관찰 시간입니다. 차이가 뚜렷하지 않으면 관찰 시간을 늘리세요.
3가지
배터리 변화, 백그라운드 활동, 연결 재시도 여부를 함께 기록합니다

결론: 같은 시간 범위에서 비교하고, 사용 비율만 보고 설정을 끄지 마세요

배터리가 눈에 띄게 줄어든 시간대를 선택한 뒤 네트워크 작업과 재연결 기록을 확인하세요. 사용 비율만 높아지고 기기 전체의 배터리 소모 속도는 빨라지지 않았다면, 그 수치만으로 연결 방식을 바꿀 필요는 없습니다.

정해진 절차에 따라 켜고 끈 상태를 비교하세요

비교 테스트를 시작하기 전에 먼저 확인하려는 문제를 정하세요. 자동 연결이 자주 시작되는지, 아니면 연결된 상태가 연결을 끊은 상태보다 배터리를 더 소모하는지 구분해야 합니다. 두 가지를 한 번의 테스트에서 함께 판단할 수는 없습니다. 두 회차 모두 VPN을 수동으로 연결해 같은 상태를 유지했다면, On Demand 설정 차이는 주로 자동 연결 동작에 영향을 줍니다. 같은 트래픽을 처리하는 데 드는 비용이 달라질 것으로 기대해서는 안 됩니다.

  1. 현재 상태를 기록하세요. Home에서 현재 연결 상태와 Global Routing 선택 항목을 기록하고, Config에서 사용 중인 구성을 확인한 뒤 Settings → On Demand에서 기존 설정을 기록하세요. 배터리 문제를 확인하는 중에 규칙, 프로토콜, 구독까지 함께 바꾸지 말고 현재 상태만 기록하세요.
  2. 테스트 환경을 동일하게 유지하세요. 두 회차 모두 같은 장소의 Wi-Fi, 비슷한 화면 밝기, 동일한 작업을 사용하고 저전력 모드 상태도 맞추세요. 한 회차는 셀룰러 신호가 약한 곳에서, 다른 회차는 안정적인 Wi-Fi에서 테스트한 뒤 차이를 On Demand 탓으로 돌리지 마세요.
  3. 켜진 상태를 관찰하세요. 기존 On Demand 조건을 유지하면서 시작과 종료 시점의 배터리 잔량, VPN이 자동으로 연결되는지, 연결이 여러 차례 끊겼다가 다시 연결되는지, 화면 잠금 중 실제 동기화 작업이 있었는지 기록하세요.
  4. 꺼진 상태를 관찰하세요. On Demand를 끄세요. 자동 재연결을 확인하려는 경우 먼저 Home에서 연결을 끊고 이후 연결 동작이 있는지 관찰하세요. 연결 중 트래픽 처리에 드는 비용을 비교하려는 경우에는 수동으로 연결하고 이전 회차와 같은 작업을 유지하세요.
  5. 결과를 다시 확인하고 설정을 복원하세요. 시스템 배터리 화면과 결과를 비교하세요. 차이가 작거나 통계 기간이 맞지 않거나 환경이 크게 달라졌다면 테스트를 반복하세요. 테스트가 끝나면 필요한 설정을 복원하고, 꼭 필요한 연결을 장기간 끊어 두지 마세요.

Global Routing은 트래픽 경로를 정하며 연결을 켜고 끄지는 않습니다

Global Routing과 On Demand는 서로 다른 역할을 합니다. Global Routing은 요청을 어떤 경로로 보낼지 정하고, On Demand는 조건에 따라 연결을 시작합니다. Global Routing을 Direct로 바꿔도 시스템 VPN 터널이 종료되는 것은 아닙니다. Config로 바꾼다고 해서 프록시 정책에 해당하는 요청이 사라지는 것도 아닙니다.

항목확인할 내용문제 해결 시 유의점
Proxy프록시 라우팅 방식을 사용하고 현재 선택한 아웃바운드 연결을 사용할 수 있는지 확인합니다.이 설정만으로 배터리 소모량을 판단할 수는 없습니다. 트래픽과 연결 품질도 확인해야 합니다.
Direct직접 연결 방식을 사용합니다.VPN 연결을 끊는 버튼이 아니므로 터널이 중단되었는지 판단하는 기준으로 사용할 수 없습니다.
Config현재 Config에 설정된 규칙과 정책에 따라 요청을 처리합니다.규칙을 동시에 변경하면 트래픽 경로가 달라질 수 있으므로 같은 Config를 사용해 비교하세요.
Scene기존 Scene 설정과 실제 적용 결과를 확인합니다.Scene 설정은 비교 조건에 영향을 줄 수 있으므로 실제로 적용된 라우팅 동작을 기록하세요.

Config를 사용할 때 DOMAIN-SUFFIX, IP-CIDR, GEOIP, FINAL 등의 규칙은 요청이 매칭되는 방식에 영향을 줍니다. 하지만 규칙을 더 많이 수정하는 것이 일반적인 배터리 절약 방법은 아닙니다. 먼저 해당 요청에 적용된 정책이 예상과 일치하는지 확인하고, 중복 요청이나 실패 후 재시도가 있는지 살펴보세요. 확인된 근거가 없다면 비교하기 쉽도록 기존 Config를 유지하세요.

연결이 반복해서 끊겼다 다시 연결되면 먼저 네트워크 오류를 확인하세요

신호가 약하거나 네트워크가 전환되는 경우, 서버에 연결할 수 없는 경우, 설정값이 맞지 않는 경우에는 연결 시도가 반복될 수 있습니다. On Demand를 끈 뒤 재연결이 줄었다면 자동 연결이 이 과정에 관여했을 가능성만 확인된 것입니다. 근본적인 연결 문제까지 해결되었다고 볼 수는 없습니다. 먼저 안정적인 네트워크에서 이미 보유한 연결을 테스트하고 주소, 포트, 프로토콜 설정을 확인하세요. 오류를 가리기 위해 프로토콜부터 바꾸지 마세요.

아래는 네트워크 로그에 나타날 수 있는 오류 문구 예시이며, 모든 문제에서 동일하게 표시되는 것은 아닙니다. 실제 기록에 해당 문구가 있을 때만 관련 항목을 확인하세요. 연결 단계가 달라도 같은 문구가 나타날 수 있으므로 앞뒤 로그를 함께 살펴봐야 합니다.

오류: i/o timeout

원인 및 해결 방법: 네트워크 읽기 또는 쓰기 작업이 정해진 시간 안에 완료되지 않았습니다. 현재 네트워크, 이름 확인 또는 원격 서버 응답과 관련된 문제일 수 있습니다. 먼저 안정적인 네트워크로 바꿔 다시 테스트하세요. 그런 다음 서비스 제공업체가 안내한 주소와 포트를 확인하고 오류가 연결 과정에서 발생했는지 데이터 전송 중에 발생했는지 살펴보세요.

오류: connection refused

원인 및 해결 방법: 연결 시도가 거부되었습니다. 대상 포트에서 해당 서비스를 제공하지 않거나 접근이 명시적으로 거부된 경우가 흔한 원인입니다. 주소, 포트, 서비스 상태를 꼼꼼히 확인하고 서비스 제공업체에 문의한 뒤 다시 테스트하세요. On Demand를 반복해서 켜고 꺼도 원격 서버의 수신 대기 문제는 해결되지 않습니다.

사용 환경에 따라 On Demand를 켜거나 끄세요

선택할 때는 연결을 자동으로 복구해야 하는지, 필요할 때 수동으로 연결하는 것을 잊지 않을 수 있는지를 고려하세요. On Demand가 모든 사용자에게 배터리를 절약해 주는 설정은 아닙니다. 끄면 자동 연결 동작이 달라지지만 배터리 그래프가 반드시 개선되는 것은 아닙니다. 켜 두면 조건에 해당할 때 수동 조작을 줄일 수 있지만, 네트워크가 바뀔 때마다 별도 확인 없이 연결된다는 보장은 없습니다.

결론: 자동 복구가 필요하면 On Demand를 유지하고, 필요하지 않다면 확인 가능한 수동 연결 절차를 사용하세요

필요한 작업을 안정적으로 완료할 수 있는지를 기준으로 연결 방식을 선택하세요. 반복 비교 결과 On Demand를 껐을 때 불필요한 연결이 줄었고 일상적인 사용에도 문제가 없을 때만 개인 환경에 맞는 설정으로 끄는 것을 고려하세요.

설정을 변경한 뒤 마지막으로 전체 상태를 확인하세요

문제 해결을 마친 뒤 Home에서 연결 상태를 확인하고, Global Routing에서 실제 적용 중인 방식을 확인한 다음 Config에서 활성화된 설정을 점검하세요. 자동 연결이 필요하면 Settings → On Demand에서 적절한 설정을 복원하세요. 수동 연결을 선택했다면 연결을 끊은 뒤 다른 기존 VPN 자동 연결 설정으로 다시 연결되지 않는지도 확인하세요.

  1. 평소 사용하는 서비스에 접속해 예상대로 이용할 수 있는지 확인하고 요청의 라우팅 경로도 살펴보세요. VPN 상태 표시만으로 모든 요청이 성공했다고 판단하지 마세요.
  2. 비슷한 시간 동안 사용한 뒤 시스템의 설정 → 배터리를 다시 확인하세요. Shadowrocket의 앱 목록 순위만 보지 말고 기기 전체의 배터리 감소가 지속적으로 개선되었는지 판단하세요.
  3. 최종 설정 상태, 테스트에 사용한 네트워크, 오류 기록을 보관하세요. 반복해서 확인할 수 있는 차이가 없다면 일상적인 사용에 적합한 설정으로 되돌리고 여러 항목을 계속 바꾸지 마세요.

이 글에서는 Shadowsocks, VMess, VLESS, Trojan, Hysteria2, WireGuard의 배터리 소모 순위를 일률적으로 정하지 않습니다. 프로토콜 설정, 연결 품질, 작업량이 다르므로 프로토콜 이름만으로 기기의 배터리 사용 시간을 예측하기는 어렵습니다. 자세한 사용 방법은 시작하기에서 확인하고, 용어는 용어집에서 찾아보세요.

App Store 정식 앱 확인 및 연결 설정

Shadowrocket은 Apple 플랫폼용 클로즈드 소스 상용 앱이며 App Store에서 한 번 구매하면 됩니다. 구매 전에 개발자 Shadow Launch Technology Limited와 앱 ID 932747118을 확인하세요. 시스템 요구 사항은 App Store 페이지에 표시된 내용을 기준으로 합니다. 앱을 구매하는 것과 네트워크 서비스 요금제는 별개입니다. 이 글은 이미 서비스 제공업체와 구독을 이용 중인 사용자를 대상으로 하며, 서버나 구독을 제공·판매·추천하지 않습니다.

App Store 정식 앱 확인 페이지 사용 방법 보기