공식 매뉴얼 / 첫 설정

Shadowrocket 사용법

구독 가져오기, Global Routing 설정, 연결 확인 방법을 안내합니다. 순서대로 설정한 다음 각 단계의 결과를 확인하세요.

이 안내는 iPhone과 iPad를 대상으로 합니다. 먼저 본인의 연결 정보를 준비한 뒤 Home, Config, Settings에서 설정하세요. 앱 언어나 화면 구성에 따라 차이가 있을 수 있어 아래에서는 영문 메뉴명을 기준으로 설명합니다. 시스템 요구 사항은 App Store 페이지를 기준으로 확인하세요.

권장 순서: 먼저 SERVER에 본인의 서버가 표시되는지 확인한 다음 모드를 선택하고 연결하세요. 한 단계를 마칠 때마다 결과를 확인해 여러 설정을 동시에 바꾸지 않도록 합니다.

STEP 01 / Add Server · Subscribe

서버 추가 또는 구독 가져오기

Shadowrocket을 열고 Home으로 이동하세요. 아래쪽 SERVER 영역을 먼저 확인합니다. 목록이 비어 있다면 연결 스위치만으로는 서버 정보가 준비되지 않습니다. Add Server를 찾거나 화면의 추가 버튼을 눌러 Add Server로 이동하세요. 보유한 정보에 맞는 방법 하나를 선택하면 됩니다. 같은 정보를 여러 방법으로 중복해서 가져올 필요는 없습니다.

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

Add Server의 Type에서 Subscribe를 선택하고 구독 주소 입력란에 본인의 서비스 제공업체가 알려 준 전체 링크를 붙여 넣으세요. 도메인만 복사하거나 주소 뒤의 경로와 매개변수를 빼먹지 않도록 합니다. 알아보기 쉬운 이름을 입력하고 저장한 뒤 구독 정보를 가져올 때까지 기다리세요. 그런 다음 Home으로 돌아가 목록을 확인합니다. 구독 그룹이 표시되면 펼쳐서 그룹 이름만 있는 것이 아니라 개별 서버도 들어 있는지 확인하세요.

구독 링크에는 계정을 식별하는 정보가 포함될 수 있으므로 비밀번호처럼 안전하게 보관하세요. 붙여 넣기 전후로 본인의 기기에서만 확인하고, 전체 주소가 공개 스크린샷이나 채팅 기록에 노출되지 않도록 합니다. 주소를 저장하는 것과 구독 정보를 성공적으로 가져오는 것은 별개입니다. 그룹은 표시되지만 서버가 없다면 먼저 업데이트가 성공했는지 확인하고, 비어 있는 목록으로 바로 연결을 시도하지 마세요. 이후 구독 정보를 다시 가져오면 서버 이름과 개수는 본인이 이용 중인 서비스 내용에 따라 달라질 수 있습니다.

개별 서버 정보가 있는 경우: 항목별로 입력

서버를 직접 추가할 때는 먼저 올바른 Type을 선택한 다음 해당 유형에 표시되는 항목을 입력하세요. 스크린샷의 Host, Port, Password, Method는 특정 유형의 입력 양식에 해당하며 모든 프로토콜에서 공통으로 사용하는 고정 항목은 아닙니다. Host에는 서버 주소를, Port에는 포트 번호를 입력하세요. 나머지 인증, 전송, TLS 항목은 본인이 보유한 정보와 하나씩 대조해야 합니다. 이름만 보고 프로토콜을 추측하거나 한 프로토콜의 비밀번호를 다른 프로토콜의 인증 항목에 입력하지 마세요.

서비스 제공업체가 호환되는 QR 코드를 제공했다면 Scan QR Code를 사용하고 시스템 안내에 따라 카메라 접근을 허용할 수 있습니다. Import from Cloud JSON은 해당 형식의 정보를 가져오는 기능이며 일반 구독 주소를 입력하는 범용 메뉴가 아닙니다. 가져온 뒤에도 항목을 열어 Type, 주소, 포트를 확인하세요. 각 항목의 차이를 알아보려면 용어 빠른 확인을 먼저 읽어보세요. 이 단계에서는 정보가 빠짐없이 입력되었고 원래 받은 내용과 일치하는지 확인하면 됩니다.

완료 확인: Home으로 돌아가 SERVER에 알아볼 수 있는 개별 서버가 표시되는지 확인하고, 항목을 열어 주요 정보가 보유한 자료와 일치하는지 살펴보세요. 이 단계는 정보를 입력했다는 뜻일 뿐 서버에 연결할 수 있다는 의미는 아닙니다. 계속해서 Global Routing을 선택한 뒤 연결 및 접속을 확인하세요.

Shadowrocket의 Add Server 공식 스크린샷. Type, Host, Port, Password, Method와 Scan QR Code 및 Import from Cloud JSON 메뉴가 표시됩니다.
Add Server: 먼저 Type을 선택한 다음 보유한 정보에 맞춰 해당 항목을 입력하세요.

STEP 02 / Global Routing · Config

Global Routing 모드 선택

서버 정보를 입력한 뒤 Home으로 돌아가 Global Routing을 여세요. 이 설정은 연결을 어떤 모드로 처리할지 결정합니다. 서버 정보를 가져오거나 잘못 입력한 포트와 인증 정보를 수정하는 기능은 아닙니다. 모드는 Config, Proxy, Direct 세 가지입니다. 각 차이를 파악한 뒤 사용 목적에 맞는 모드를 선택하세요. 이름만 보고 설정이 적용됐다고 판단하지 마세요.

  • Config: 현재 선택된 구성 파일에 따라 연결을 처리합니다. 규칙에 따라 대상마다 PROXY, DIRECT 또는 REJECT를 적용할 수 있으며 실제 결과는 규칙의 내용과 순서에 따라 달라집니다.
  • Proxy: 일반 연결을 현재 프록시 정책으로 처리합니다. 규칙에 따른 차이를 잠시 줄여 서버 접속 여부를 확인할 때 유용합니다. 모든 앱과 트래픽에서 같은 결과를 보장하는 설정은 아닙니다.
  • Direct: 연결을 직접 연결 방식으로 처리합니다. 기존 네트워크와 비교할 때 사용할 수 있지만, Direct로 웹페이지가 열린다고 해서 프록시 서버가 정상이라고 판단할 수는 없습니다.

규칙에 따라 사용하려면 Config를 선택한 다음 하단의 Config 화면으로 이동하세요. 현재 선택된 파일이 실제로 사용할 파일인지 확인합니다. 파일을 가져오거나 편집하는 것만으로 현재 구성으로 선택되는 것은 아닙니다. 해당 파일을 열면 General, Rule, Hosts, URL Rewrite, HTTPS Decryption 등의 구역이 표시됩니다. 시작 단계에서는 Rule을 먼저 살펴보고, 서버에 연결하기 위해 모든 구역을 수정할 필요는 없습니다.

Rule의 규칙은 일반적으로 위에서부터 순서대로 적용됩니다. 대상이 앞쪽 규칙에 일치하면 뒤쪽의 기본 규칙은 더 이상 해당 연결을 결정하지 않습니다. 아래 예시에서는 example.com과 하위 도메인에 PROXY를 적용하고, 사설 네트워크에는 DIRECT를 적용하며, 나머지 연결은 FINAL에 지정된 정책을 사용합니다. 문법을 설명하기 위한 예시일 뿐 개인의 전체 구성을 대체할 수 있는 파일이 아니며 연결 정보도 포함하지 않습니다.

DOMAIN-SUFFIX,example.com,PROXY
IP-CIDR,192.168.0.0/16,DIRECT
FINAL,PROXY

처음 설정할 때는 Add Rule을 서두르지 마세요. 먼저 원래 구성의 사본을 보관하고, 현재 파일이 보유한 서버의 용도에 맞는지 확인한 다음 규칙을 변경할지 결정하세요. 구성에서 별도의 정책 이름을 사용한다면 해당 이름이 존재하는지, 어디를 가리키는지도 확인해야 합니다. 규칙 키워드의 자세한 뜻은 용어 빠른 확인에서 살펴보세요. 복잡한 규칙 적용 순서와 예외 상황은 문제 해결 매뉴얼에서 확인할 수 있습니다.

완료 확인: Home의 Global Routing에 원하는 모드가 표시되는지 확인하세요. Config를 선택했다면 현재 사용 중인 구성 파일도 확인할 수 있어야 합니다. 다음으로 Home에서 서버를 선택해 연결하세요. 연결하기 전에 규칙, DNS, 전송 설정을 연달아 변경하지 마세요.

Shadowrocket의 Config 공식 스크린샷. General, Rule, Hosts, URL Rewrite, HTTPS Decryption 구역과 Add Rule이 표시됩니다.
Config: 현재 파일을 확인하고 Rule 구역에서 규칙 분기를 살펴보세요.

STEP 03 / Home · SERVER

서버를 선택하고 연결 스위치 켜기

Home으로 돌아가 SERVER에서 사용할 개별 서버를 선택하세요. 선택 표시가 대상 항목에 있는지 확인합니다. 편집 화면만 열어 둔 상태와 서버를 선택한 상태는 다릅니다. 목록에 항목이 여러 개라면 정보를 확인한 서버 하나를 테스트 대상으로 선택하세요. 확인이 끝나기 전에 서버를 자주 바꾸면 결과가 무엇 때문에 달라졌는지 판단하기 어렵습니다.

서버를 선택한 뒤 Home 상단의 연결 스위치를 켜세요. 처음 연결할 때 시스템에서 VPN 구성을 추가할지 물을 수 있습니다. 이 권한은 Shadowrocket이 시스템 네트워크 확장 기능을 통해 연결을 처리하도록 허용하는 것이며 서버가 사용 가능하다고 시스템이 확인했다는 뜻은 아닙니다. 알림에 표시된 앱 이름을 확인하고 허용을 선택한 다음 기기에 따라 Face ID, Touch ID 또는 기기 암호로 인증하세요. 인증은 시스템 화면에서 진행하며 Add Server에 기기 암호를 입력할 필요는 없습니다.

이전에 권한 요청을 취소했다면 앱으로 돌아가 스위치를 다시 조작하고 시스템 확인 화면이 다시 표시되는지 살펴보세요. 시스템에서 VPN 구성 추가를 제한한다면 기기 설정에서 관련 제한을 확인하세요. 조직에서 관리하는 기기라면 해당 관리 정책을 따라야 합니다. 알 수 없는 프로파일을 반복해서 삭제하거나 용도를 모르는 관리 구성을 테스트 목적으로 제거하지 마세요.

권한 승인을 마친 뒤 Home으로 돌아가 상단에 Not Connected가 계속 표시되는지, 스위치가 켜진 상태를 유지하는지 확인하세요. 스위치가 바로 꺼지면 앱이나 시스템에 표시된 안내를 기록하고 마지막 단계에서 문제를 점검하세요. 스위치가 켜진 상태여도 확인은 계속해야 합니다. 이는 기기에서 연결 절차가 진행됐다는 뜻일 뿐 원격 서버, DNS 또는 모든 분기 규칙이 정상이라는 증거는 아닙니다.

연결을 확인하는 동안 현재 네트워크 상태를 가능한 한 안정적으로 유지하세요. Wi-Fi에서 셀룰러 네트워크로 전환하거나 신호가 약한 곳으로 이동하거나 핫스팟이 바뀌면 테스트 결과도 달라질 수 있습니다. 두 네트워크를 비교하려면 한쪽에서 전체 확인을 마친 뒤 다른 네트워크로 전환해 다시 테스트하세요. 한 번의 시도에서 네트워크 전환과 프로토콜 설정 변경을 함께 하지 마세요.

연결을 껐는데 다시 자동으로 켜진다면 On Demand가 활성화되어 있는지 확인하세요. On Demand는 네트워크 조건에 따라 자동 연결하는 기능이지 새로운 서버를 제공하는 기능이 아닙니다. 처음 문제를 확인할 때는 기존 설정을 기록한 뒤 관련 자동 연결 조건을 잠시 꺼서 각 테스트를 수동으로 제어할 수 있습니다. 앱을 백그라운드로 보낸다고 연결이 끊기는 것은 아니므로 앱 상태와 시스템 VPN 상태를 함께 확인하세요.

완료 확인: 시스템 권한 승인이 끝났고 Home 상단 상태가 Not Connected에서 벗어났으며 스위치가 바로 꺼지지 않는지 확인하세요. 서버와 Global Routing 설정을 그대로 유지한 채 다음 단계에서 실제 웹 요청을 확인하세요. 스위치 상태만으로 설정이 끝났다고 판단하지 마세요.

Shadowrocket의 Home 공식 스크린샷. 상단에 Not Connected 스위치가 있고 아래에 Global Routing, Connectivity Test, SERVER 그룹, Add Server가 표시됩니다.
Home: 스크린샷은 연결되지 않은 상태입니다. 먼저 SERVER에서 항목을 선택한 뒤 상단 스위치를 조작하세요.

STEP 04 / Connectivity Test · Data

접속 결과와 규칙 정책 확인

연결을 켠 상태에서 Home의 Connectivity Test를 찾아 실행하고 결과가 표시될 때까지 기다리세요. 이 테스트는 연결 상태를 파악하는 데 참고가 되지만, 테스트 방식에 따라 결과의 의미가 달라집니다. 수치가 표시되어도 모든 웹페이지와 프로토콜이 정상이라는 뜻은 아닙니다. 테스트가 실패해도 현재 네트워크와 테스트 방법을 함께 살펴봐야 하며 구독 전체에 문제가 있다고 바로 단정할 수 없습니다. 비교할 수 있도록 현재 서버, 네트워크 유형, 테스트 결과를 기록하세요.

이어서 브라우저를 열고 주소가 정확하며 평소 접속할 수 있는 것으로 확인된 웹페이지를 방문하세요. 일반 웹페이지를 먼저 확인하고 대용량 다운로드나 긴 동영상은 처음부터 테스트에 사용하지 마세요. 도메인이 확인되는지, 페이지 본문이 로드되는지, 이미지와 같은 리소스가 정상적으로 표시되는지 차례로 살펴보세요. 이전 페이지가 그대로 보일 뿐이라면 페이지를 새로고침하거나 새 페이지를 여세요. 브라우저 캐시를 새 네트워크 접속 결과로 오인하지 않도록 합니다.

Config를 사용할 때 웹페이지 접속에 성공해도 실제 연결은 PROXY가 아닌 DIRECT를 사용했을 수 있습니다. 분기 규칙을 확인하려면 PROXY로 처리될 것이라고 알고 있는 대상과 DIRECT가 예상되는 대상을 각각 선택해 확인하세요. 생소한 도메인으로 규칙의 효과를 추측하거나 웹페이지가 열렸다는 이유만으로 선택한 서버를 거쳤다고 판단하지 마세요. 프록시를 사용했는지는 구성 내용과 연결 기록을 함께 확인해야 합니다.

Shadowrocket으로 돌아가 Data에서 현재 확인할 수 있는 연결 또는 트래픽 기록을 살펴보세요. 화면 구성에 따라 기록을 여는 위치가 다를 수 있습니다. 방금 보낸 요청을 찾아 대상 도메인, 사용된 정책, 화면에 표시되는 규칙 일치 정보를 확인하세요. 기록에 DIRECT가 표시되면 Config로 돌아가 해당 대상이 왜 직접 연결 규칙에 일치했는지 확인하세요. REJECT가 표시되면 서버를 계속 바꾸기보다 차단 정책에 일치했는지 먼저 살펴보세요.

기록에 예상한 도메인이 없다면 이번에 보낸 요청을 확인하고 있는지, 연결이 켜져 있는지 먼저 확인하세요. 일부 앱은 기존 연결을 재사용하므로 모드를 변경한 뒤에는 새 요청을 보내 다시 비교해야 합니다. 한 번에 하나의 변수만 바꾸세요. 예를 들어 잠시 Config에서 Proxy로 전환해 같은 대상을 비교한 다음 테스트가 끝나면 원래 모드로 되돌리고 동일한 대상을 다시 확인합니다. 그래야 차이가 규칙에서 비롯됐는지 판단할 수 있습니다.

완료 확인: 테스트 웹페이지를 새로고침할 수 있고 이번 요청을 예상한 모드나 정책과 연결해 확인할 수 있는지 살펴보세요. 일부 웹페이지가 계속 실패한다면 성공 사례와 실패 사례를 하나씩 기록한 뒤 다음 단계에서 증상별로 점검하세요. 모든 정보를 처음부터 다시 입력할 필요는 없습니다.

STEP 05 / Settings · Diagnostics

자주 발생하는 문제의 점검 순서

문제를 해결하려면 어느 단계에서 실패했는지 먼저 확인하세요. 구독 정보를 가져오지 못하는 경우, 서버 테스트가 실패하는 경우, 스위치가 켜진 상태를 유지하지 못하는 경우, 웹 요청이 실패하는 경우는 서로 다른 단계의 문제입니다. 현재 구성을 보존하고 선택한 서버와 Global Routing을 기록한 다음 아래 순서대로 범위를 좁히세요. 한 번에 한 가지 항목만 변경하고 같은 요청을 다시 보내세요. 개선되지 않으면 원래 값으로 되돌리고, 여러 시도의 설정을 뒤섞어 원인을 알기 어려운 상태로 만들지 마세요.

구독을 저장했지만 서버가 표시되지 않는 경우

Subscribe에 해당하는 항목으로 돌아가 링크가 완전한지, 불필요한 공백이나 줄바꿈이 들어갔는지, 업데이트 중 오류가 표시됐는지 확인하세요. 기기 시간이 정확한지, 현재 네트워크에서 구독 정보를 가져올 수 있는지, 본인의 구독이 유효한지도 확인합니다. 구독 주소는 서버 목록을 가져오는 주소이므로 일반 서버의 Host 항목에 입력하면 안 됩니다. 서버 응답 내용이나 계정 상태에 관한 문제는 본인의 서비스 제공업체에 문의하세요. 이 사이트에서는 이를 확인할 수 없습니다.

스위치는 켜지지만 테스트 또는 웹페이지 접속이 실패하는 경우

먼저 선택한 서버가 맞는지 확인한 뒤 Type, Host, Port, 인증 항목을 살펴보세요. 지연 시간 테스트는 성공했지만 웹페이지 접속이 실패한다면 전송 및 TLS 설정도 확인해야 합니다. 일부 테스트 결과만으로 이 항목들이 모두 올바르다고 판단할 수 없습니다. 다음으로 Global Routing을 확인하세요. Direct는 프록시가 정상이라는 증거가 아니며 Config를 사용하는 경우 요청이 예상한 규칙에 일치하는지 살펴봐야 합니다. 같은 대상을 Proxy로 잠시 비교한 뒤 테스트가 끝나면 원래 설정으로 되돌리세요.

일부 도메인에 접속할 수 없거나 특정 리소스 로딩이 멈추는 경우

연결 기록에서 도메인 조회에 실패했는지, 요청이 REJECT로 전달됐는지 확인하세요. DNS는 도메인을 주소로 변환하는 단계이므로 서버 테스트 수치만으로 정상 여부를 판단할 수 없습니다. 모든 DNS 설정을 한꺼번에 바꾸거나 이해하지 못한 전체 구성을 그대로 복사하지 마세요. 같은 실패 도메인으로 먼저 다시 테스트하고 기존 값을 저장한 다음 DNS 문제 해결을 참고해 증상에 따라 점검하세요.

연결 상태가 반복해서 바뀌거나 진단 정보를 확인해야 하는 경우

Settings에서 Test Method가 현재 테스트 목적에 맞는지 확인하고 자동으로 연결되는 경우 On Demand 설정을 살펴보세요. 원인을 더 파악해야 한다면 Diagnostics의 정보를 확인합니다. 오류가 발생한 시각, 대상, 유형부터 살펴보고 모든 Proxy, TCP, UDP 항목을 변경할 필요는 없습니다. Settings의 Language나 Today Widget 설정은 서버 인증 오류를 해결하지 않습니다. 문제가 발생한 단계에 초점을 맞춰 점검하세요.

본인의 서비스 제공업체에 문제를 문의하려면 기기의 현재 네트워크, 선택한 프로토콜, 오류 증상, 지금까지 진행한 비교 테스트를 정리할 수 있습니다. 공유하기 전에 구독 링크, 비밀번호, 식별 정보, 전체 구성에 포함된 비공개 항목 및 기타 개인정보를 삭제하세요. 구성 파일 전체를 공개적으로 붙여 넣지 마세요. iPad에서도 같은 순서로 점검하면 됩니다. 화면을 가로 또는 세로로 돌리거나 레이아웃이 달라져도 서버 정보가 일치해야 한다는 점은 같습니다.

다음 단계: 안정적으로 접속할 수 있다면 현재 사용 가능한 구성을 유지하고 선택한 서버와 모드를 기록하세요. 원인을 계속 찾기 어렵다면 문제 해결에서 증상별 안내를 확인하세요. Subscribe, DNS, FINAL 등의 개념이 불분명하다면 먼저 용어 빠른 확인을 읽은 뒤 이 안내로 돌아와 다시 테스트하세요.

Shadowrocket의 Settings 공식 스크린샷. Language, Test Method, Today Widget, On Demand, Diagnostics, Proxy, TCP, UDP 설정 항목이 표시됩니다.
Settings: 증상에 따라 Test Method, On Demand 또는 Diagnostics를 확인하고 여러 항목을 동시에 변경하지 마세요.