공식 가이드 · iPhone / iPad

Shadowrocket 사용법

구독 가져오기, Global Routing 설정, 첫 연결까지 다섯 단계로 진행하세요.

아래 단계는 Home 화면부터 시작합니다. iPhone과 iPad는 화면 공간이나 레이아웃이 다를 수 있으므로, 앱에 표시되는 영어 메뉴명을 기준으로 진행하세요. 시스템 요구 사항은 App Store 페이지에 표시된 내용을 기준으로 합니다.

01 · Add Server / Subscribe

Shadowrocket을 열고 Home으로 이동합니다. 먼저 보유한 정보의 종류를 확인하세요. 여러 서버 항목을 한 번에 가져올 수 있는 전체 링크는 구독 링크이며, 주소·포트·비밀번호나 기타 인증 정보가 따로 제공된 경우는 서버 정보입니다. 두 정보는 입력 방법이 다릅니다. 구독 링크를 서버 주소로 입력하거나 서비스 제공업체의 계정 관리 페이지 주소를 구독 입력란에 넣지 마세요.

구독 링크가 있는 경우: Subscribe 선택

Home에서 오른쪽 위의 더하기 버튼을 눌러 Add Server로 이동한 다음 Type을 열고 Subscribe를 선택합니다. 입력 화면으로 돌아와 서비스 제공업체에서 받은 전체 구독 링크를 URL에 붙여 넣으세요. 메모 입력란이 있다면 구분하기 쉬운 이름을 적어도 됩니다. 메모는 목록에서 항목을 알아보기 위한 것으로 링크 내용에는 영향을 주지 않습니다. 입력 내용을 확인한 뒤 오른쪽 위의 Done을 눌러 저장하고, 구독 정보를 가져올 때까지 기다리세요.

붙여 넣은 뒤 링크의 시작과 끝을 확인하세요. 특히 물음표 뒤에 붙는 매개변수를 주의 깊게 살펴보세요. 일부 링크에는 인증 정보가 포함되어 있어 일부가 누락되거나 공백·줄 바꿈이 함께 들어가면 가져오기에 실패할 수 있습니다. 웹페이지 주소를 조합하지 말고 구독 정보에서 제공하는 복사 기능을 사용하세요. 붙여넣기 허용 여부를 묻는 시스템 안내가 표시되면, 본인의 정보를 Shadowrocket에 입력하는 것이 맞는지 확인한 뒤 진행하세요.

저장이 완료되면 Home으로 돌아가 구독 그룹에 서버 항목이 표시되는지 확인하세요. 그룹 이름만 보이고 항목이 없다면 가져오기가 완료된 것이 아닙니다. 가져오기 과정에서 오류가 발생했는지, 구독 내용에 인식 가능한 서버 정보가 있는지 확인하세요. 같은 구독이 이미 있다면 같은 이름의 그룹을 반복해서 만들기보다 기존 항목을 업데이트하는 편이 좋습니다. 업데이트 후 목록이 달라질 수 있으므로 현재 선택된 서버를 다시 확인하세요.

서버 정보가 하나만 있는 경우: 프로토콜에 맞춰 입력

더하기 버튼을 눌러 Add Server로 이동한 뒤 Type에서 받은 정보에 명시된 프로토콜을 선택하고 서버 주소, 포트 및 인증 정보를 입력합니다. 프로토콜마다 필요한 항목이 다릅니다. 예를 들어 비밀번호, UUID, 암호화 방식, TLS와 Server Name은 서로 대체할 수 없습니다. 원본 정보를 그대로 입력하세요. 프로토콜 이름만 보고 매개변수를 추측하거나 오류를 없애려고 TLS 또는 인증서 관련 옵션을 임의로 끄지 마세요.

가져오기에 사용할 서버 QR 코드가 있다면 Scan QR Code를 이용할 수 있습니다. 저장하기 전에 인식된 프로토콜과 주소가 원본 정보와 일치하는지 확인하세요. QR 코드도 원본 링크와 마찬가지로 안전하게 관리해야 합니다. 어떤 방법으로 추가했든 저장한 뒤 Home에서 사용할 서버 항목을 눌러 선택 상태인지 확인하고 다음 단계로 넘어가세요.

이 단계의 완료 기준은 Home에 선택 가능한 서버 항목이 표시되고 그중 하나가 선택된 상태인 것입니다. 목록에 표시된다고 서버에 연결할 수 있는 것은 아닙니다. 다음 단계에서 라우팅 모드를 선택하고 실제 접속을 확인해야 합니다. Subscribe, 프로토콜, 구성 파일의 차이는 용어 가이드에서 확인할 수 있습니다.

02 · Global Routing

서버 정보는 연결 대상에 필요한 값을 결정하고, Global Routing은 앱이 처리하는 요청에 적용할 정책을 결정합니다. Home으로 돌아가 Global Routing을 눌러 현재 선택된 모드를 확인하세요. 처음 설정할 때는 서버 이름만 보지 말고 이 항목도 확인해야 합니다. 사용 가능한 서버를 선택했더라도 직접 연결 모드나 구성 규칙에 따라 특정 요청은 서버를 거치지 않을 수 있습니다.

구성(Config): 현재 구성에 따라 처리

구성(Config)을 선택하면 앱은 현재 활성화된 구성 파일의 규칙을 확인하고 요청에 DIRECT, PROXY 또는 구성에 정의된 다른 정책을 적용합니다. 규칙에 따라 트래픽을 분기하는 일상적인 사용에 적합하지만, 어떤 구성을 사용 중인지 알고 있어야 합니다. Config 화면에서 현재 활성화된 항목을 확인하세요. 파일을 목록에 가져오는 것만으로는 부족하며, 실제 사용 중인 구성으로 선택되어 있는지 확인해야 합니다.

처음 연결할 때 규칙을 바로 수정할 필요는 없습니다. 구성 파일의 출처나 정책 이름, 규칙의 의미를 확실히 모른다면 현재 설정을 유지하고 다음 모드로 기본 연결을 확인하세요. 출처를 모르는 규칙 몇 줄을 인터넷에서 찾아 임의의 위치에 추가하지 마세요. 규칙은 순서에 따라 적용되며 구성에서 사용하는 정책도 올바르게 연결되어야 합니다. DOMAIN-SUFFIX, GEOIP 또는 FINAL의 의미가 궁금하다면 용어 가이드에서 각각 확인하세요.

프록시(Proxy): 프록시 연결 경로 먼저 확인

프록시(Proxy)를 선택하면 앱이 처리하는 연결에 프록시 모드가 적용됩니다. 처음 연결할 때는 사용자 지정 분할 규칙의 영향을 줄이기 위해 이 모드를 잠시 사용할 수 있습니다. 이 설정이 서버의 사용 가능성을 보장하는 것은 아니며, 모든 앱의 모든 트래픽을 하나의 테스트 결과로 판단할 수 있다는 뜻도 아닙니다. 모드를 선택한 뒤 Home으로 돌아가 방금 선택한 서버가 그대로 선택되어 있는지 확인하고 연결 권한을 승인하세요.

직접 연결(Direct): 서버 사용 가능 여부를 확인하는 모드가 아닙니다

직접 연결(Direct)을 선택하면 요청이 직접 연결 방식으로 처리됩니다. 직접 연결 동작을 확인할 때 사용할 수 있지만, 프록시 서버가 적용되었다는 증거로 볼 수는 없습니다. 가져온 서버를 테스트하려는 경우에는 이 모드에 두지 마세요. 기본 네트워크 상태를 비교하려면 연결 스위치를 끄고 테스트하는 편이 문제 발생 위치를 구분하기 쉽습니다.

이번 단계에서는 현재 목적에 맞는 모드 하나만 선택하세요. 서버를 먼저 확인할 때는 프록시(Proxy)를 사용합니다. 연결이 정상이고 현재 구성을 확인했다면 구성(Config)으로 전환하세요. 서버 변경, 구성 수정, 모드 전환을 동시에 하지 마세요. 문제가 생겼을 때 원인을 파악하기 어려워집니다.

03 · Home에서 연결 및 시스템 권한 승인

Home으로 돌아와 두 항목을 다시 확인하세요. 서버 목록에서 원하는 항목이 선택되어 있고 Global Routing에 방금 선택한 모드가 표시되어야 합니다. 확인을 마친 다음 화면 상단의 연결 스위치를 켭니다. 처음 연결할 때 시스템에서 Shadowrocket의 VPN 구성 추가를 허용할지 물을 수 있습니다. 이는 앱이 시스템 네트워크 기능을 사용해 연결을 처리하기 위한 권한 절차이며, 구독을 가져오는 과정과는 다릅니다.

시스템 팝업에서 요청한 앱이 Shadowrocket인지 확인하고 안내를 읽은 뒤 허용을 선택하세요. 기기의 안내에 따라 기기 암호, Face ID 또는 Touch ID로 인증을 완료합니다. 기기 암호는 시스템 인증 화면에만 입력해야 하며 구독 URL이나 서버 비밀번호 입력란에 넣으면 안 됩니다. 이번에 권한을 승인하지 않았다면 앱으로 돌아와 연결을 다시 시도하세요. 서버 항목을 선택하는 것만으로 시스템 권한이 자동 승인되지는 않습니다.

권한 승인을 마치고 Home으로 돌아와 연결 스위치가 켜진 상태로 유지되는지 확인하세요. 스위치가 바로 꺼지거나 오류가 표시되면 이 단계에서 먼저 해결해야 합니다. 브라우저 접속 실패를 곧바로 서버 문제로 단정하지 마세요. 시스템 Settings의 VPN 관련 항목에서 구성이 등록되어 있는지 확인하고, 기기에 관리 제한이 있는지 또는 다른 VPN 연결이 사용 중인지 살펴보세요. 기기가 관리 대상이라면 해당 관리 지침을 따르세요.

시스템에 VPN 표시가 나타나거나 앱의 스위치가 켜진 상태로 유지되어도 연결 기능이 시작되었다는 의미일 뿐, 원하는 정책으로 페이지에 접속했다는 증거는 아닙니다. 기기마다 상태 표시줄의 표시 방식도 다를 수 있으므로 아이콘만 확인하지 말고 다음 단계에서 실제 접속을 확인하세요.

처음 설정하는 동안에는 기존 On Demand 상태를 그대로 두고 자동 연결을 함께 켤 필요는 없습니다. 그래야 스위치를 끈 뒤 연결 상태를 더 쉽게 확인할 수 있습니다. 수동 연결과 연결 해제가 모두 예상대로 작동하면 On Demand의 작동 조건을 따로 살펴보세요. On Demand는 연결을 시작하는 시점을 정하는 기능이며 서버 정보, 라우팅 모드 또는 구성 규칙을 대신하지 않습니다.

04 · Connectivity Test 및 실제 접속 확인

연결을 켠 뒤 Home으로 돌아가 Connectivity Test를 실행해 서버를 테스트하세요. 테스트 방법과 대상은 앱 설정에 따라 달라질 수 있습니다. 결과는 해당 테스트 조건에서의 응답으로 봐야 하며 모든 웹사이트의 접속 상태를 나타내지는 않습니다. 응답이 있으면 다음 확인 단계로 넘어갈 수 있습니다. 시간 초과가 발생하면 실제 접속, 현재 네트워크와 서버 상태를 함께 살펴보세요. 한 번의 결과만으로 모든 구성을 삭제하지 마세요.

이어서 브라우저를 열고 평소 사용하는 페이지 중 접속 방식이 명확한 곳에 방문하세요. 먼저 페이지를 새로고침하고 주요 내용이 정상적으로 표시되는지 확인합니다. 이전에 열었던 탭의 캐시나 남아 있는 텍스트만으로는 이번 연결이 정상인지 판단할 수 없습니다. 연결을 확인하기 위해 계정 정보를 요구하거나 구독 정보를 업로드하라는 웹페이지를 이용할 필요도 없습니다.

그다음 Shadowrocket으로 돌아가 Data의 트래픽 변화를 확인하세요. 트래픽 수치는 앱이 데이터를 처리하고 있는지 살펴보는 데 도움이 되지만, 특정 페이지가 현재 서버를 이용했다는 사실을 단독으로 증명하지는 않습니다. 백그라운드 앱도 연결을 만들 수 있고 구성(Config)에서는 직접 연결 요청이 있을 수 있습니다. 앱에서 연결 기록을 제공한다면 총 트래픽 증가만으로 판단하지 말고 대상 도메인과 적용된 정책을 함께 확인하세요.

프록시(Proxy)에서는 실제 접속이 정상인데 구성(Config)으로 바꾼 뒤 일부 페이지만 달라진다면 현재 구성과 일치하는 규칙을 먼저 확인하세요. 이 경우 기본 서버 연결은 이미 정상일 수 있으므로 구독 가져오기를 처음부터 다시 할 필요는 없습니다. 반대로 두 모드 모두 실패한다면 기본 네트워크, 선택한 서버와 인증 정보를 차례로 점검하세요.

마지막으로 연결 스위치를 끄고 앱 상태가 바뀌는지 확인한 뒤 필요하면 다시 켭니다. 구성(Config)을 계속 사용할 계획이라면 전환한 뒤 방금 확인한 동일한 페이지에 다시 접속하세요. 프록시(Proxy)에서의 테스트 결과를 그대로 적용해서는 안 됩니다. 완료 기준은 연결 상태, 선택한 모드와 실제 접속 결과가 서로 일치하는 것이며 테스트 목록의 특정 수치가 충분히 낮은 것이 아닙니다.

05 · 자주 발생하는 문제 해결

문제를 해결할 때 먼저 어느 단계에서 실패했는지 기록하세요. 링크 가져오기 실패, 서버 목록이 비어 있음, 스위치가 켜진 상태로 유지되지 않음, 연결 후 일부 페이지만 접속되지 않음 중 어디에 해당하는지 확인합니다. 오류 메시지에서 핵심 표현을 기록한 뒤 한 번에 한 가지 조건만 바꾸고 같은 대상으로 다시 테스트하세요. 반복해서 삭제하고 다시 가져오면 원본 정보가 사라지고 이미 확인한 조건도 놓치기 쉽습니다.

구독을 가져오거나 업데이트할 수 없음

먼저 연결을 끄고 브라우저에서 기본 네트워크가 작동하는지 확인합니다. 필요한 경우 현재 Wi-Fi의 네트워크 인증 절차를 완료하세요. 그런 다음 URL 전체가 제대로 복사되었는지, 앞뒤에 공백이 없는지, 계정 웹페이지 주소가 아니라 실제 구독 링크인지 확인합니다. 인증이나 유효 기간 관련 오류가 표시되면 서비스 제공업체에서 현재 사용할 수 있는 링크를 받으세요. 계정 정보와 구독 인증 정보가 다를 수 있으므로 서로 바꿔 입력하지 마세요.

링크를 가져왔는데 목록이 비어 있다면 반환된 내용이 Shadowrocket에서 지원하는 구독 형식인지, 구독에 현재 서버 항목이 포함되어 있는지 확인하세요. 파일 확장자를 바꾸거나 프로토콜 이름을 임의로 변경해 형식 문제를 해결하려 하지 마세요. 목록이 이미 있고 새로고침하려는 경우 기존 구독 항목의 업데이트 기능을 사용하세요. 완료 후 선택된 항목을 다시 확인해 변경되거나 삭제된 이전 항목을 사용하지 않도록 합니다.

서버 항목은 있지만 테스트 시간이 초과됨

Home에서 실제로 테스트하려는 서버가 선택되어 있는지 확인한 다음 주소, 포트와 인증 정보를 다시 살펴보세요. 직접 입력한 경우에는 UUID, 비밀번호, TLS와 Server Name이 원본 정보와 일치하는지 특히 주의하세요. 다른 서버 항목이 있다면 네트워크와 모드를 그대로 둔 채 다른 항목으로 바꿔 비교해 볼 수 있습니다. 다른 항목이 없다면 문제를 해결하기 위해 별도의 서버 정보를 찾을 필요는 없습니다.

이어서 Wi-Fi와 셀룰러 네트워크에서 각각 테스트해 한쪽에서만 실패하는지 확인하세요. 네트워크를 바꾼 뒤의 결과는 연결 경로의 차이를 파악하는 데 도움이 되지만, 서버나 기기 설정이 완전히 정상임을 증명하지는 않습니다. Connectivity Test만 시간 초과되고 실제 페이지는 열리는 경우에는 테스트 조건을 먼저 확인하고 서버 정보를 바로 수정하지 마세요.

스위치가 바로 꺼지거나 권한 승인이 완료되지 않음

먼저 시스템 권한과 VPN 구성 상태를 확인하세요. 시스템 인증이 완료되었는지, 기기에서 구성을 추가할 수 있는지 확인하고 연결을 사용할 수 있는 다른 VPN은 잠시 중지합니다. 처음부터 모든 구독을 삭제하거나 네트워크 설정 전체를 재설정하지 마세요. 영향 범위가 크고 권한 제한 문제를 해결하지 못할 수도 있습니다. 설치, 권한 승인 및 구입 관련 내용은 자주 묻는 질문에서 확인할 수 있습니다.

연결은 유지되지만 일부 페이지만 열리지 않음

Global Routing을 다시 확인하세요. 직접 연결(Direct)로는 프록시 경로가 적용되었는지 확인할 수 없으며, 구성(Config)에서는 일치하는 규칙과 연결된 정책을 살펴봐야 합니다. 잠시 프록시(Proxy)로 전환하고 같은 서버와 페이지로 비교할 수 있습니다. 구성(Config)에서만 실패한다면 구성을 중점적으로 확인하세요. 모든 모드에서 실패한다면 서버, 기본 네트워크와 해당 페이지의 상태를 계속 점검합니다.

페이지가 기존 연결을 재사용하는 것은 아닌지, 새 요청을 시작하려면 앱을 다시 열어야 하는지도 확인하세요. DNS, 인증서와 규칙 문제는 구체적인 안내에 따라 각각 해결해야 합니다. 인증 확인을 끄거나 모든 설정을 초기화하는 방법을 일반적인 해결책으로 사용하지 마세요. 규칙 키워드는 용어 가이드에서 확인하고, 구입 경로·스토어 및 구입 항목 복원은 App Store 정식 안내에서 확인할 수 있습니다.

문제를 정리할 때는 기기 종류, 네트워크 종류, Global Routing 모드, 실패한 단계와 오류 메시지의 핵심 표현을 기록하세요. 스크린샷이나 텍스트를 공유하기 전에는 전체 구독 URL, QR 코드, 서버 비밀번호와 기타 인증 정보를 가리세요. 마지막으로 정상 작동했던 상태로 되돌린 다음 다시 조정하는 편이 여러 항목을 한꺼번에 바꾸는 것보다 원인을 찾기 쉽습니다.