Shadowrocket 설정 및 기능 안내
먼저 연결이 언제 설정되는지 확인한 뒤 요청 처리 방식을 정하세요. Global Routing, Config, On Demand, Data 순서로 살펴보면 모드 선택, 규칙 판단, 결과 확인을 나누어 진행할 수 있습니다.
설명은 주로 iPhone과 iPad를 기준으로 합니다. 앱 업데이트에 따라 메뉴 위치가 달라질 수 있으므로, 정확한 항목명은 현재 앱 화면을 확인하세요. 시스템 요구 사항은 App Store 페이지를 기준으로 확인하세요. 첫 연결 방법은 시작 가이드를 참고하세요.
Global Routing: Config, Proxy, Direct
Global Routing은 전체 요청의 처리 방식을 결정합니다. 서버 프로토콜을 선택하는 기능도, 연결을 켜고 끄는 스위치도 아닙니다.
Home에서 Global Routing을 찾아 Config, Proxy 또는 Direct를 선택하세요. 선택하기 전에 Home에서 서버를 선택했는지, Config에서 사용할 구성 파일을 활성화했는지 확인하세요. 모드를 바꾼 뒤에는 새로 시작한 요청으로 확인하는 것이 좋습니다. 기존 연결은 이전 경로를 계속 사용할 수 있으므로, 페이지를 한 번 새로고침하는 것만으로 설정 적용 여부를 판단하지 마세요.
| 화면의 모드 | 처리 방식 | 확인할 상황 | 유의 사항 |
|---|---|---|---|
| Config | 현재 구성의 규칙에 따라 요청 처리 방식을 결정합니다. | 도메인이나 주소 등 조건에 따라 요청을 라우팅할 때 사용합니다. | 현재 활성화된 Config와 편집 중인 파일이 같은지 확인해야 합니다. |
| Proxy | Proxy를 전체 라우팅 방식으로 사용합니다. | 선택한 서버의 실제 연결 가능 여부를 임시로 확인할 때 사용합니다. | 모든 규칙의 PROXY 항목을 각각 다시 선택하는 기능은 아닙니다. |
| Direct | 직접 연결 방식을 사용합니다. | 현재 네트워크에서 직접 접속할 수 있는지 임시로 확인할 때 사용합니다. | 시스템 연결 설정을 끄거나 On Demand를 비활성화하는 것과는 다릅니다. |
일반적인 사용에는 Config 선택
요청마다 다른 정책을 적용하려면 Config를 선택한 뒤 규칙 순서를 확인하세요. 이때 Home에서 서버 하나를 선택했더라도 모든 요청이 그 서버를 거치는 것은 아닙니다. DIRECT에 매칭된 요청은 직접 연결하고, REJECT에 매칭된 요청은 거부하며, PROXY에 매칭된 요청만 해당 프록시 정책에 따라 처리합니다. 규칙에서 특정 정책 그룹을 참조한다면 해당 그룹의 현재 선택 항목도 확인하세요.
Proxy와 Direct로 문제 범위 좁히기
Config 모드에서 특정 대상에만 문제가 생기면 Proxy 또는 Direct로 잠시 바꿔 같은 대상을 비교해 규칙 경로와 관련된 문제인지 확인할 수 있습니다. 한 번에 모드 하나만 바꾸고 결과를 기록한 다음 원래 설정으로 되돌리세요. 이 비교만으로 DNS, 서버 또는 대상 서비스가 정상이라고 단정할 수는 없습니다. 모드 이름은 전체 라우팅 옵션이므로, 개별 요청은 연결 기록과 함께 확인하세요.
규칙 라우팅: 매칭 조건과 처리 정책
규칙의 왼쪽은 매칭 조건을 지정하고 끝부분은 처리 정책을 지정합니다. 규칙 유형과 정책은 서로 다른 항목이므로 PROXY를 도메인 매칭 방식으로 취급하면 안 됩니다.
Config에서 현재 사용 중인 파일을 선택하고 Rule 영역을 확인하세요. 규칙은 대체로 위에서 아래 순서로 평가되며, 먼저 매칭된 항목이 요청의 경로를 결정합니다. 범위가 좁은 예외를 먼저 두고 적용 범위가 넓은 일반 규칙을 뒤에 배치한 다음, 앞선 조건에 매칭되지 않은 요청에 적용할 FINAL을 마지막에 둡니다. 편집 후 저장하고 해당 파일이 활성화되어 있는지도 확인하세요.
| 키워드 | 매칭 대상 또는 의미 | 확인할 점 |
|---|---|---|
DOMAIN | 전체 도메인 이름입니다. | 경로를 붙이지 말고 도메인만 입력하세요. |
DOMAIN-SUFFIX | 지정한 도메인과 하위 도메인입니다. | 단일 전체 도메인보다 적용 범위가 넓습니다. |
DOMAIN-KEYWORD | 도메인에 포함된 키워드입니다. | 짧은 키워드는 의도보다 넓게 매칭될 수 있습니다. |
IP-CIDR / IP-CIDR6 | IPv4 / IPv6 주소 대역입니다. | 주소 대역과 마스크가 해당 형식에 맞는지 확인하세요. |
GEOIP | IP의 지리적 분류입니다. | 분류 결과가 대상의 실제 운영 위치를 뜻하지는 않습니다. |
USER-AGENT | 식별 가능한 User-Agent 정보입니다. | 요청 정보의 가시성에 영향을 받으므로 단독 판단 기준으로 삼지 마세요. |
FINAL | 앞선 규칙에 매칭되지 않은 요청에 적용되는 최종 정책입니다. | 뒤에 오는 규칙을 미리 덮어쓰지 않도록 마지막에 배치하세요. |
PROXY / DIRECT / REJECT | 프록시 처리 / 직접 연결 / 요청 거부입니다. | 매칭 조건이 아닌 처리 정책입니다. |
간단한 규칙으로 순서 이해하기
[Rule]
DOMAIN,account.example.com,DIRECT
DOMAIN-SUFFIX,example.com,PROXY
FINAL,DIRECT
아래 예시는 문법 설명용입니다. account.example.com에 접속하면 첫 번째 규칙이 먼저 매칭되어 DIRECT가 적용됩니다. 그 밖의 example.com 도메인은 두 번째 규칙에 매칭되고, 나머지 요청에는 FINAL이 적용됩니다. 두 번째 규칙을 첫 번째 규칙보다 위에 두면, 정확한 도메인에 대한 예외가 뒤에 평가되는 접미사 규칙에 먼저 매칭되어 무시됩니다. 이 예시는 모든 네트워크에 그대로 적용할 수 있는 완성된 구성이 아닙니다.
요청이 예상과 다르게 라우팅되면 먼저 Global Routing이 Config인지 확인한 다음, 실제로 매칭된 규칙과 정책을 살펴보세요. 매칭 결과를 확인하기 전에 DNS, 서버, 규칙 순서를 한꺼번에 바꾸지 마세요. 구성 구조, 주소 대역 표기, 우선순위에 관한 자세한 내용은 구성 항목 참고를 확인하세요.
구독 및 서버 관리
Subscribe는 업데이트 가능한 서버 정보를 관리하고, 서버를 직접 추가하면 연결 매개변수를 항목별로 저장합니다. 어느 쪽도 라우팅 규칙 설정을 대신하지 않습니다.
Subscribe: 기존 구독 가져오기
Home에서 Add Server를 열고 Subscribe 유형을 선택한 다음, 서비스 제공업체에서 받은 구독 주소를 해당 항목에 입력하세요. 저장 후 업데이트를 실행하고 서버 항목이 표시되는지 확인한 뒤 사용할 항목을 선택하세요. 구독 주소에는 접근 자격 증명이 포함될 수 있으므로 민감한 정보로 취급하고, 전체 주소를 공개 스크린샷이나 문의 글에 올리지 마세요.
구독 업데이트 성공은 콘텐츠를 가져와 처리했다는 뜻일 뿐, 포함된 모든 서버를 사용할 수 있다는 의미는 아닙니다. 업데이트 후 선택한 항목이 남아 있는지, 이름이 바뀌었는지, 연결 매개변수가 원래 용도에 맞는지 확인하세요. 구독 항목은 다음 업데이트 때 다시 생성될 수 있으므로, 임시로 직접 수정한 값만 장기 보존 방법으로 삼지 마세요. 필요하다면 기존 구성 내용을 따로 기록해 두세요.
Add Server: 서버 정보 직접 입력
서버를 직접 추가할 때는 Add Server에서 올바른 프로토콜 유형을 선택한 뒤 주소, 포트, 인증 정보를 입력하세요. Shadowsocks, VMess, VLESS, Trojan, Hysteria2, WireGuard 등은 프로토콜별 입력 항목이 다르므로 한 프로토콜의 매개변수를 다른 유형의 양식에 입력하면 안 됩니다. TLS, 전송 방식, 공개 키 등의 항목은 서버 정보를 바탕으로 하나씩 확인하고 서버 이름만으로 추측하지 마세요.
저장 전에 메모를 적어 용도를 구분할 수 있지만, 메모 자체가 요청 경로를 바꾸지는 않습니다. 저장한 뒤 서버를 선택하고 Connectivity Test를 실행한 다음 실제 접속도 확인하세요. 목록에 비슷한 항목이 여러 개 있다면 이름만 보지 말고 주소와 프로토콜을 대조해 오래된 항목을 잘못 선택하지 않도록 하세요.
Connectivity Test와 Test Method의 차이
Connectivity Test는 지정된 테스트 조건에서의 결과를 확인하는 기능입니다. Test Method 등의 설정에 따라 테스트 방식이 달라지며, 테스트 수치가 모든 대상의 접속 시간을 나타내거나 실제 전송 속도를 의미하지는 않습니다. 테스트는 성공했는데 접속에 실패하면 규칙, DNS, 인증 정보, 대상 자체를 추가로 확인하세요. 테스트가 실패한 경우에도 테스트 대상과 방식이 현재 네트워크에 적합한지 먼저 살펴보세요.
On Demand: 네트워크 조건에 따른 연결
On Demand는 연결을 언제 시작할지 관리하고, Global Routing과 Config는 연결된 뒤 요청을 어떻게 처리할지 관리합니다.
Settings에서 On Demand를 찾아 현재 표시된 트리거 조건과 예외를 먼저 읽은 다음, 사용 환경에 맞게 활성화하거나 조정하세요. 설정할 수 있는 네트워크 조건은 앱에 실제로 표시되는 옵션을 기준으로 확인하세요. 처음 설정할 때는 간단한 조건으로 확인하고 네트워크 예외를 하나씩 추가하면, 예상과 다른 연결 동작을 일으킨 조건을 파악하기 쉽습니다.
예를 들어 특정 네트워크 환경에서 자동으로 연결하려면 먼저 수동 연결이 정상적으로 작동하는지 확인한 뒤 해당 On Demand 조건을 활성화하세요. 그다음 조건에 맞는 네트워크로 한 번 전환하고 시스템 연결 상태와 앱 상태를 확인하세요. On Demand는 사용할 수 없는 서버를 고치는 기능이 아닙니다. 잘못된 비밀번호, 인증서 또는 규칙을 보완해 주지 않습니다.
수동으로 연결을 끊었는데 다시 연결되면 먼저 On Demand가 활성화되어 있는지, 현재 네트워크가 트리거 조건에 맞는지 확인하세요. 자동 연결을 잠시 중지하려면 연결 스위치보다 On Demand 설정을 먼저 조정한 뒤 연결 상태를 확인하세요. Global Routing을 Direct로 바꾸는 것만으로 자동 연결 조건이 비활성화되지는 않습니다.
Data: 트래픽 통계와 수치 확인
Data는 클라이언트가 기록한 전송량을 확인하는 기능입니다. 서비스 제공업체의 청구 내역이 아니며, 이 수치만으로 규칙이 올바른지 판단할 수 없습니다.
Data를 열고 현재 표시되는 통계 분류, 집계 범위, 업로드·다운로드 방향을 먼저 확인한 다음 해당 서버의 변화를 살펴보세요. 현재 화면에서 앱별 분류를 지원한다면 분류를 바꾸어 확인할 수 있습니다. 앱 식별과 분류는 시스템 및 요청 정보의 영향을 받으므로, 미분류 항목을 곧바로 비정상 연결로 해석하면 안 됩니다. 두 작업을 비교하려면 동일한 분류와 관찰 구간을 유지하세요.
특정 대상에서 트래픽이 발생하는지 확인하려면 먼저 초기 수치를 기록하고 명확한 동작을 한 번 수행한 뒤, 화면이 갱신되면 증가량을 비교하세요. 백그라운드 동기화, 미디어 미리 로드, 다른 앱의 활동도 데이터를 전송할 수 있으므로 증가량 전체를 방금 연 페이지의 사용량으로 간주하면 안 됩니다. 통계를 초기화하기 전에 필요한 수치를 기록한 뒤 앱의 초기화 메뉴를 사용하고, 확인 메시지에 표시된 적용 범위를 살펴보세요.
통계 시작·종료 시점, 연결 오버헤드, 측정 단위, 과금 기준이 다르면 클라이언트와 서비스 제공업체의 수치가 서로 다를 수 있습니다. 클라이언트 통계를 초기화해도 제공업체의 사용량이 초기화되지 않으며, 새 과금 주기가 시작되어도 Data가 반드시 초기화되는 것은 아닙니다. 남은 사용량은 서비스 제공업체의 기록으로 확인하고, 전송 동작은 클라이언트 연결 기록과 함께 살펴보세요. 자세한 내용은 Data 트래픽 통계 안내를 참고하세요.
Settings: 자주 쓰는 항목과 설정 범위
모든 설정이 Settings 한 곳에서 관리되는 것은 아닙니다. DNS 등의 항목은 현재 Config의 영향을 받을 수 있으므로 변경 전에 실제로 적용 중인 설정을 확인하세요.
DNS: 이름 해석과 연결 경로 함께 확인
DNS는 도메인 이름을 연결에 사용할 주소로 변환합니다. Settings의 관련 항목과 현재 Config에서 DNS 설정을 확인하고, 구성 파일에 별도의 DNS 항목이 지정되어 있는지 먼저 살펴본 뒤 어느 부분을 바꿀지 결정하세요. 특정 도메인이 열리지 않는다고 여러 DNS 주소를 연달아 바꾸지 마세요. 먼저 서버 연결을 확인한 다음 이름 해석이 성공하는지, 결과가 예상에 맞는지 살펴보세요.
DNS를 설정할 때는 직접 확인한 도달 가능한 값 중 사용 목적에 맞는 구성을 사용하고 기존 값도 보관하세요. DNS 요청 경로와 최종 연결 정책은 서로 다른 개념입니다. 도메인이 정상적으로 해석되어도 대상에 연결할 수 있다는 뜻은 아닙니다. 변경 후에는 새 요청으로 확인하고, 필요하다면 연결을 다시 설정해 캐시나 기존 연결이 결과에 영향을 주지 않도록 하세요. 매개변수에 관한 자세한 내용은 구성 항목을 참고하세요.
Test Method: 테스트 조건 통일
Test Method는 서버 테스트 방식을 선택하는 기능입니다. Settings에서 해당 항목으로 이동해 현재 화면에 제공되는 옵션을 선택하세요. 여러 서버를 비교할 때는 동일한 방식과 테스트 대상을 사용해야 합니다. 테스트 방식을 바꾸면 이전 결과를 직접 비교하기 어렵습니다. 테스트 결과는 특정 조건에서의 성능을 나타내며, 수치 하나만으로 연결 품질을 종합적으로 판단하면 안 됩니다.
테스트 결과와 실제 접속 결과가 다르면 테스트 방식, 대상, 현재 Global Routing을 기록한 뒤 실제 요청을 다시 확인하세요. 더 낮은 테스트 수치를 얻으려고 조건을 반복해서 바꾸면 문제를 추적할 근거가 사라집니다. 테스트는 진단의 한 단계일 뿐이므로 인증 정보, 규칙, DNS도 각각 확인해야 합니다.
Today Widget: 빠른 실행
Today Widget은 빠른 작업이나 상태 확인을 제공합니다. Settings에서 관련 옵션을 확인하고 시스템에서 제공하는 편집 메뉴를 통해 사용할 수 있는 위젯을 추가하세요. 표시 방식과 사용 가능 여부는 현재 시스템 및 앱 안내를 기준으로 확인하세요. 추가 후에는 위젯이 현재 사용하는 구성이나 서버에 연결되어 있는지 확인하고, 위젯에 표시된 내용만으로 대상에 연결되었다고 판단하지 마세요.
위젯에서 연결을 시작한 뒤 상태가 바로 갱신되지 않으면 앱으로 돌아가 실제 상태를 확인하세요. On Demand가 조건에 따라 연결을 다시 설정할 수 있으므로, 위젯에서 한 번 연결을 끊는 것이 자동 연결을 계속 비활성화한다는 뜻은 아닙니다. 네트워크 동작은 앱 상태와 실제 요청 결과를 기준으로 판단하세요.
iCloud: 동기화와 별도 백업
iCloud 동기화는 해당 계정과 시스템 조건에서 앱이 지원하는 데이터를 동기화합니다. Settings에서 iCloud 관련 스위치와 앱 안내를 확인하고, 시스템 설정에서 iCloud를 사용할 수 있는지 살펴보세요. 활성화하기 전에 현재 구성을 정리하고, 활성화 후에는 다른 기기에서 실제로 어떤 항목이 나타나는지 확인하세요. 모든 서버, 구독, 규칙, 로컬 통계가 동일한 방식으로 동기화된다고 가정하지 마세요.
동기화는 이전 버전을 보존하는 기능이 아닙니다. 삭제하거나 잘못 수정한 내용이 다른 기기에도 반영될 수 있으므로 중요한 Config는 별도로 내보내 안전하게 보관하세요. 구성에 구독 주소나 인증 정보가 포함되어 있다면 백업 파일도 보호해야 합니다. 기기를 바꿀 때는 앱 받기, 동기화, 구성 복원이 각각 완료되었는지 확인한 후 연결하세요. 내용을 확인하지 않은 채 기존 구성을 덮어쓰지 마세요.
Diagnostics: 가설 하나씩 확인
Diagnostics는 연결 문제와 관련된 정보를 수집하거나 확인하는 기능입니다. Settings에서 해당 메뉴로 이동해 현재 사용할 수 있는 도구로 네트워크, 이름 해석, 연결 상태를 점검하세요. 먼저 “같은 서버, Config 모드에서 특정 도메인 접속 실패”처럼 재현 조건을 명확히 기록한 다음 관련 테스트를 실행하세요. 서버, DNS, 규칙을 한꺼번에 바꾸면 결과를 비교하기 어렵습니다.
진단 결과를 저장해야 한다면 문제와 관련된 부분만 남기고 구독 자격 증명, 인증 정보, 접속 기록, 개인 주소가 포함되어 있는지 확인하세요. 다른 사람에게 문제를 설명할 때는 도메인과 항목 이름으로 현상을 전달하고 민감한 내용을 통째로 공개하지 마세요. 진단이 끝나면 임시 변경 사항을 원래대로 되돌리고 평소 사용하는 방식으로 다시 확인하세요.
변경 후 점검 순서
고정된 순서로 다시 확인하면 여러 옵션을 동시에 바꾸는 것보다 원인을 파악하기 쉽습니다. 기본 연결이 가능한지 먼저 확인한 다음 규칙과 자동 연결 동작을 점검하세요.
- 입력한 정보 확인.기존 구독이 정상적으로 업데이트되었는지, 또는 서버를 직접 추가할 때 프로토콜, 주소, 포트, 인증 항목이 정확한지 확인하세요. 메모 이름만 보고 매개변수를 확인한 것으로 간주하지 마세요.
- 모드와 파일 확인.Home에서 Global Routing을 살펴보고 Config에서 활성화된 파일을 확인하세요. 구성 파일을 수정했더라도 현재 적용 중인 파일이 그 파일이라는 뜻은 아닙니다.
- 새 테스트 요청 실행.Connectivity Test로 상태를 확인한 뒤 실제 대상에도 요청을 보내세요. 테스트 방식과 결과를 기록해 기존 연결의 영향을 구분하세요.
- 매칭된 정책 확인.요청에 해당하는 규칙과 최종 정책을 살펴보고 DIRECT, PROXY, REJECT를 구분하세요. 도메인 하나에서만 문제가 발생하면 정확한 도메인 규칙과 DNS 결과부터 확인하세요.
- 자동 연결과 통계 항목은 마지막에 확인.기본 접속이 정상이라면 On Demand 트리거 조건, Data 집계 범위, iCloud 동기화 결과를 확인하세요.
원래대로 되돌려야 한다면 출처를 알 수 없는 구성을 여러 개 다시 가져오기보다 이번에 변경한 값을 복원하세요. 정상 작동을 확인한 Config 한 부와 간단한 변경 기록을 보관하면 같은 문제를 반복해서 점검하는 일을 줄일 수 있습니다. 화면 메뉴, 최초 권한 설정, 구매 복원에 관한 내용은 아래 공식 매뉴얼에서 이어서 확인하세요.