Shadowrocket 첫 실행 설정: VPN 구성 허용과 Home 화면 안내

Shadowrocket을 처음 실행하면 iOS에서 VPN 구성을 추가할지 묻습니다. 허용이 필요한 이유와 Home의 Not Connected 스위치, Global Routing, Connectivity Test, SERVER 목록의 기능을 알아보세요.

이 글의 핵심 내용

Shadowrocket을 처음 설정할 때는 먼저 기존 연결 설정을 준비한 다음, 처음 연결을 시도할 때 시스템에서 VPN 구성을 추가하도록 허용해야 합니다. 이 글에서는 Home 화면을 기준으로 연결 스위치, 라우팅 모드, 테스트 메뉴, 서버 목록의 역할을 설명합니다. 앱을 설치했지만 아직 첫 연결을 완료하지 않은 iPhone 및 iPad 사용자를 위한 안내로, 권한과 선택한 서버, 트래픽 라우팅 결과를 순서대로 확인할 수 있습니다. 스위치 색상만으로 사용 가능 여부를 판단하지 마세요.

1. 앱 구매, 서비스 설정, VPN 권한 구분하기

Shadowrocket은 Apple 플랫폼용 유료 상용 앱이며, App Store에서만 받을 수 있습니다. 개발자는 Shadow Launch Technology Limited이고 앱 ID는 932747118입니다. 구매 전 정품 확인 페이지에서 제품 정보를 확인하세요. 시스템 요구 사항, 기기 호환성 및 일반적인 구매 범위는 App Store 페이지의 안내를 기준으로 합니다.

클라이언트 앱을 한 번 구매하는 것과 연결 서비스 요금제는 별개입니다. 아래 설명은 사용자가 이미 이용 중인 서비스 제공업체와 구독이 있다고 전제하며, 기존 설정을 사용하는 방법만 안내합니다. 앱 설치, 서버 가져오기, VPN 구성 허용은 각각 별개의 작업입니다. 설치하면 조작 화면을 사용할 수 있고, 서버를 가져오면 연결 매개변수가 추가되며, 시스템 권한을 허용하면 앱이 트래픽을 처리하는 네트워크 터널을 만들 수 있습니다.

첫 설정에서 확인할 두 가지 구성

앱 내 연결 설정
  • 사용자가 이미 보유한 구독 또는 연결 매개변수에서 가져옵니다.
  • 서버 주소, 포트, 프로토콜 및 인증 정보가 포함됩니다.
  • 가져온 뒤 Home의 SERVER 영역에서 확인합니다.
시스템 VPN 구성
  • 앱에서 연결을 요청할 때 iOS가 추가 여부를 묻습니다.
  • 사용자가 직접 허용하고 시스템 안내에 따라 확인해야 합니다.
  • 권한을 허용해도 서버가 생성되거나 인증 정보가 자동으로 채워지지는 않습니다.

먼저 앱의 신원과 매개변수의 출처를 확인한 뒤 연결을 허용하세요. 권한 허용에 성공했다고 원격 서비스까지 정상이라고 확인된 것은 아닙니다.

2. 첫 연결: VPN 구성 추가를 허용하는 시점

“처음 실행하자마자 허용해야 한다”는 흔히 쓰이는 간단한 설명입니다. 정확히는 처음 연결을 시도할 때 해당 VPN 구성이 아직 추가되지 않은 경우 시스템 권한 요청이 나타나는 것이 일반적이며, 앱에 처음 들어가는 순간 반드시 표시되는 것은 아닙니다. Home이 비어 있다면 먼저 설정을 가져오세요. 권한 요청을 기다리며 스위치를 반복해서 누를 필요는 없습니다.

  1. 설정 가져오기

    Home 오른쪽 위의 “+”를 누르고 Type에서 Subscribe를 선택한 다음, 사용자가 이미 보유한 구독 주소를 입력하고 저장합니다. 예시는 https://example.com/sub?token=xxxx와 같은 형식입니다. 이는 연결에 사용할 수 없는 가상의 주소입니다. 실제 주소와 토큰은 안전하게 보관하세요.

  2. 목록 확인

    Home으로 돌아와 가져오기가 완료될 때까지 기다린 뒤 SERVER 목록을 확인합니다. 서버가 표시되지 않으면 먼저 구독을 가져온 결과를 확인하세요. 업데이트가 필요하면 해당 구독의 업데이트 기능을 사용하세요. 목록이 비어 있다고 해서 시스템 권한 문제라고 단정하지 마세요.

  3. 서버 선택

    기존 서버 하나를 눌러 선택 표시가 원하는 항목에 있는지 확인합니다. 구독 그룹 이름과 개별 서버 항목은 서로 다른 개념입니다. 실제 연결에는 현재 선택한 항목이나 현재 정책에서 지정한 대상이 사용됩니다.

  4. 연결 켜기

    Home 상단의 Not Connected 행에서 스위치를 누릅니다. 시스템에서 VPN 구성을 추가하라는 메시지가 나타나면 이번 작업으로 요청된 것인지 확인하고 허용을 선택한 다음, iOS 안내에 따라 암호 또는 신원 확인을 완료합니다.

  5. 접속 확인

    Home으로 돌아와 연결 상태를 확인한 다음, 접속 여부를 점검할 대상에 연결해 봅니다. 연결이 즉시 끊기는지, 오래 기다리는지, 연결 상태는 유지되지만 대상에 접속할 수 없는지를 기록하세요. 각 증상에 따라 점검 방향이 달라집니다.

3. Home 화면의 각 영역이 제어하는 항목

Home은 연결을 조작하는 화면이고, Config는 규칙 설정을 관리하며, Settings는 앱 설정을 관리합니다. 처음 사용할 때는 각 화면의 역할을 구분하세요. Home에서 서버를 바꿔도 Config의 규칙이 자동으로 변경되지는 않습니다. Settings에서 자동 연결 조건을 수정해도 도메인별 라우팅 정책이 바뀌는 것은 아닙니다.

화면 메뉴 3개
Home / Config / Settings: 연결, 구성, 설정을 각각 관리
라우팅 모드 4가지
Global Routing:Config / Proxy / Direct / Scene

연결 상태와 트래픽 처리 방식

Not Connected
앱 연결이 아직 설정되지 않은 상태입니다. 옆의 스위치로 연결을 시작하거나 끌 수 있습니다.
Global Routing
라우팅 모드를 선택해 구성 규칙에 따라 처리할지, 다른 라우팅 방식을 사용할지 결정합니다.
Config
하단 메뉴에서 설정 파일을 선택하고 편집합니다. 이름이 같은 라우팅 모드와 관련은 있지만 서로 다른 컨트롤입니다.

연결 상태는 “터널이 작동 중인지”를 나타내고, 라우팅 모드는 “트래픽을 어떻게 처리하는지”를 나타냅니다.

테스트 메뉴와 서버 목록

Connectivity Test
현재 테스트 방식에 따라 서버 연결 가능 여부나 지연 시간을 확인합니다. 결과는 테스트 대상과 네트워크 환경의 영향을 받습니다.
SERVER
가져오거나 직접 추가한 서버가 표시되며, 확인하고 선택하거나 관리할 수 있습니다.
Subscribe
설정을 가져올 때 사용한 구독 유형으로, 사용자가 이미 보유한 주소에서 설정 항목을 가져옵니다.

테스트 결과는 연결 스위치와 다릅니다. 목록에 항목이 있어도 인증에 성공했다는 뜻은 아닙니다.

처음에 Not Connected가 표시되어도 설치 실패를 의미하지 않습니다. 일반적으로 아직 연결을 켜지 않은 상태입니다. 반대로 연결됨으로 바뀌더라도 로컬 터널이 실행 중이라는 뜻일 뿐, 선택한 서버와 DNS, 규칙, 대상 웹사이트가 모두 정상임을 단독으로 증명하지는 않습니다.

4. 처음에는 Global Routing을 어떻게 선택할까

처음 문제를 확인할 때는 “라우팅 모드를 잘못 선택한 경우”와 “서버 매개변수가 잘못된 경우”를 구분해야 합니다. 신뢰할 수 있고 현재 상황에 맞는 규칙 설정이 있다면 Config부터 확인할 수 있습니다. 설정 내용을 아직 확인하지 않았다면 하단의 Config 화면에서 현재 사용 중인 파일을 먼저 확인하세요. Config를 선택했다고 앱이 모든 웹사이트에 적합한 규칙을 자동으로 정해 주는 것은 아닙니다.

Config

권장

현재 적용된 설정 파일의 규칙에 따라 트래픽을 처리합니다. 규칙은 트래픽을 PROXY, DIRECT 또는 다른 정의된 정책으로 보낼 수 있습니다. 어떤 규칙에도 일치하지 않는 트래픽은 일반적으로 FINAL 규칙으로 처리되며, 실제 동작은 파일 내용에 따라 달라집니다.

적합한 경우: 사용할 수 있는 규칙 설정이 있고 평소 규칙에 따라 트래픽을 분리하려는 경우

Proxy

앱이 처리하는 트래픽을 모두 프록시 경로로 보내 Config 적용 결과와 비교하기 쉽습니다. 잘못된 암호나 사용할 수 없는 서버 주소, 원격 서비스 장애를 해결해 주지는 않습니다.

적합한 경우: 특정 대상의 경로가 규칙 때문에 잘못 선택됐는지 임시로 확인하려는 경우

Direct

앱이 처리하는 트래픽을 선택한 프록시 서버를 거치지 않고 직접 연결합니다. 직접 연결 라우팅 모드이며 Home의 연결 스위치를 끄는 것과는 다릅니다.

적합한 경우: 현재 네트워크의 직접 연결 결과와 비교해 로컬 네트워크 문제인지 프록시 경로 문제인지 확인하려는 경우

Scene

설정된 시나리오 조건에 따라 해당 라우팅 동작으로 전환합니다. 먼저 시나리오 설정과 현재 조건을 확인해야 하며, 이를 Config의 다른 이름으로 이해하면 안 됩니다.

적합한 경우: 시나리오 조건을 설정하고 검증했으며 환경에 따라 동작을 전환하려는 경우

예를 들어 현재 설정에 아래 규칙이 있으면 example.com과 그 하위 도메인은 PROXY에 일치하고, 앞선 규칙에 일치하지 않는 나머지 트래픽은 DIRECT로 처리됩니다. 이는 규칙 문법의 예시이지 첫 연결을 위해 붙여 넣어야 하는 완성된 설정은 아닙니다. 사용하기 전에 설정의 PROXY가 사용 가능한 대상으로 연결되는지 확인해야 합니다.

[Rule]
DOMAIN-SUFFIX,example.com,PROXY
FINAL,DIRECT

규칙은 순서대로 확인하며 처음 일치하는 규칙에 따라 처리 방식이 결정됩니다. Config에서 접속할 수 없는 대상이 Proxy로 전환한 뒤에는 접속된다면, 구독을 바로 삭제하지 말고 해당 대상에 적용된 규칙과 정책부터 확인하세요. 테스트가 끝나면 라우팅 모드를 원래대로 되돌려 임시 설정이 계속 유지되지 않도록 합니다.

5. Connectivity Test: 지연 시간만으로 접속 여부를 확인할 수 없습니다

Home에서 Connectivity Test를 누르면 표시되는 결과는 “현재 네트워크에서 특정 방식으로 테스트한 결과”입니다. 일부 테스트는 서버 포트에 연결할 수 있는지 확인하고, 일부는 프록시를 통해 테스트 대상에 접속합니다. 두 테스트가 확인하는 연결 구간은 서로 다릅니다. 테스트 유형, 대상, 시간 초과 설정을 바꾸면 결과 숫자도 달라질 수 있습니다.

확인된 증상알 수 있는 내용다음 단계
지연 시간은 표시되지만 웹페이지가 열리지 않음테스트가 완료됐지만 대상에 요청하는 전체 과정이 정상이라는 뜻은 아닙니다.인증, 라우팅 규칙, DNS 및 실제 대상 접속을 확인합니다.
timeout 표시이번 테스트가 지정된 시간 안에 완료되지 않았습니다.다른 네트워크에서 다시 테스트하고 주소, 포트, 테스트 대상을 확인합니다.
연결이 즉시 끊김터널 시작 또는 연결 과정이 유지되지 않았습니다.먼저 시스템 권한과 앱에 표시된 오류 정보를 확인합니다.
특정 웹사이트 하나만 열리지 않음이것만으로 서버 전체가 작동하지 않는다고 단정할 수 없습니다.Proxy와 Config 결과를 비교하고 대상 규칙 및 서버 응답을 확인합니다.

예를 들어 사용자가 이미 보유한 매개변수에 포트가 443으로 지정되어 있다면, 가져온 뒤에도 포트가 443인지 확인해야 합니다. 테스트가 시간 초과됐다고 임의로 80으로 바꾸면 안 됩니다. 포트는 연결 매개변수의 일부일 뿐이며, 프로토콜, 인증 방식, TLS 옵션도 기존 서비스 설정과 일치해야 합니다. 여기서 포트는 확인 방법을 설명하기 위한 예시이며 모든 서버에 공통으로 적용되는 값은 아닙니다.

6. SERVER 목록과 구독 업데이트: 선택 항목부터 확인하기

SERVER 목록은 연결에 사용할 항목의 목록이지 구매 내역이 아닙니다. 구독을 가져오면 여러 항목이 포함될 수 있습니다. 이름은 항목을 식별하기 위한 표시일 뿐이며, 프로토콜이나 매개변수를 확인하는 일을 대신하지 않습니다. 해당 그룹을 펼쳐 실제로 선택된 항목을 확인한 뒤 테스트하세요. 서버를 바꾼 뒤에는 이전 항목의 테스트 결과를 그대로 적용하지 말고 다시 확인해야 합니다.

구독 업데이트는 원격에서 제공하는 항목을 다시 가져오는 기능이며 앱 업데이트와는 다릅니다. 원격 콘텐츠가 변경되면 서버 이름과 개수, 매개변수가 달라질 수 있으므로 업데이트 후 선택한 항목이 여전히 원하는 대상인지 확인하세요. 구독을 업데이트할 때마다 시스템 VPN 구성을 다시 추가할 필요는 보통 없습니다.

7. 첫 연결이 확인된 후 On Demand 설정하기

수동 연결이 정상인지 확인하기 전까지는 자동 연결 조건을 변경하지 않는 것이 좋습니다. 수동 연결이 한 번 안정적으로 되는 것을 확인한 뒤 Settings → On Demand에서 주문형 연결 설정을 살펴보세요. On Demand는 “언제 자동으로 연결하거나 끊을지”를 정하고, Global Routing은 “연결 후 트래픽을 어떻게 처리할지”를 정합니다. 서로 대체하는 기능이 아닙니다.

  1. Home에서 수동으로 연결해 선택한 서버와 현재 라우팅 설정이 작동하는지 확인합니다.
  2. Settings → On Demand로 이동해 기존 조건을 하나씩 확인한 다음 실제 필요에 맞게 설정합니다.
  3. 해당 Wi-Fi 또는 셀룰러 네트워크로 전환해 실제 연결 상태를 살펴보고 조건이 적용되는지 확인합니다.
  4. 수동으로 연결을 끊은 뒤 다시 자동 연결된다면 On Demand 조건과 시스템 VPN의 주문형 연결 상태를 다시 확인합니다.
App Store 정품 페이지구매 전 개발자와 앱 ID를 확인하세요