Shadowrocket은 iPhone, iPad, Mac(Apple Silicon 및 Intel), Windows, Android, Linux를 지원합니다. 아래 경로는 주로 iPhone/iPad 기준입니다. 다른 플랫폼은 메뉴 위치나 시스템 권한이 다를 수 있으므로 실제 화면에서 같은 이름의 기능을 찾아보세요.

Global Routing: Config, Proxy, Direct 설정

Config, Proxy, Direct는 전체 트래픽의 처리 방식을 결정하며, 서로 다른 서버 세 개를 뜻하지 않습니다.

기능: Global Routing은 전체 트래픽의 처리 모드입니다. Config는 현재 선택된 구성의 규칙에 따라 요청을 처리하고, Proxy는 클라이언트가 처리하는 요청에 프록시 정책을 일괄 적용합니다. Direct는 직접 연결을 비교할 때 사용합니다. 도메인이나 IP별 분기가 필요하다면 Proxy를 ‘규칙이 더 완전한’ 모드로 간주하지 말고 Config부터 사용하세요.

위치 및 설정 방법: Home에서 Global Routing을 찾아 원하는 모드를 선택합니다. Config를 사용하기 전에 Config에서 현재 선택된 구성을 확인하세요. Proxy를 사용하기 전에는 Home에서 선택된 서버에 연결할 수 있는지 확인합니다. 한 번에 모드를 하나씩만 바꾸고 같은 대상에 접속해야 변경 결과를 비교하기 쉽습니다.

세 가지 모드의 용도와 주요 점검 항목
화면 옵션 처리 방식 사용 상황 우선 확인할 항목
Config(구성) 현재 구성에 지정된 규칙과 정책에 따라 요청을 처리합니다. 일상적인 트래픽 분기 및 특정 도메인이나 IP의 처리 결과 확인 선택된 구성, 규칙 순서, 최종 적용 정책
Proxy(프록시) 클라이언트가 처리하는 요청에 프록시 정책을 일괄 적용합니다. 규칙 간 차이를 임시로 점검하거나 서버의 기본 연결 상태를 확인할 때 현재 서버, 인증 정보, 대상 서비스에 접속할 수 있는지 여부
Direct(직접 연결) 클라이언트가 처리하는 요청을 대상에 직접 연결합니다. 로컬 네트워크 상태와 비교해 문제가 프록시 경로와 관련 있는지 확인할 때 로컬 네트워크, DNS, 대상 서비스의 상태

주의 사항: 이 모드들은 시스템 VPN 권한을 대체하지 않으며, 모든 시스템 트래픽을 처리한다고 보장하지도 않습니다. Proxy에서는 접속되지만 Config에서는 실패한다면 먼저 규칙과 정책을 확인하세요. Direct에서도 실패한다면 로컬 네트워크나 대상 서비스 상태를 점검해야 합니다. 문제를 확인한 뒤에는 평소 사용하는 모드로 되돌려 임시 설정이 트래픽 경로에 계속 영향을 주지 않도록 하세요.

각 모드를 자세히 비교하려면 Global Routing 세 가지 모드 안내를 확인하세요.

Rule 분기: 매칭 조건과 적용 정책

규칙은 ‘무엇을 매칭할지’, 정책은 ‘매칭 후 어떻게 처리할지’를 정합니다.

기능: 분기 규칙은 요청의 도메인, IP 또는 기타 이용 가능한 정보를 구성에 지정된 조건과 차례로 비교합니다. 조건에 맞으면 해당 행의 정책을 적용합니다. DIRECT는 직접 연결, PROXY는 프록시 정책, REJECT는 거부를 뜻합니다. 사용자 지정 정책 그룹을 사용하는 구성이라면 해당 그룹에서 선택된 서버나 정책도 확인해야 합니다.

위치 및 설정 방법: Config에서 현재 구성을 열어 규칙 내용과 순서를 확인합니다. 일반적으로 범위가 좁고 용도가 명확한 규칙을 앞에, 범위가 넓은 규칙과 FINAL을 뒤에 둡니다. 수정 전에는 기존 구성을 복사해 두세요. 규칙을 몇 개만 추가해 먼저 확인한 다음 확장해야 변경이 많아 원인을 찾기 어려워지는 상황을 피할 수 있습니다.

키워드매칭 대상사용 시 참고 사항
DOMAIN전체 도메인특정 호스트 이름을 정확히 지정할 때 적합합니다.
DOMAIN-SUFFIX도메인 접미사 및 하위 도메인원치 않는 하위 도메인까지 영향을 받는 범위인지 확인하세요.
DOMAIN-KEYWORD도메인에 포함된 키워드매칭 범위가 넓으므로 사용 전에 의도치 않은 매칭 가능성을 확인하세요.
IP-CIDR / IP-CIDR6IPv4 / IPv6 주소 대역실제 대상 IP에 따라 달라지며 도메인 해석 결과도 바뀔 수 있습니다.
GEOIPIP 지리 데이터베이스 분류데이터베이스 분류가 해당 서비스의 실제 운영 지역과 일치하는 것은 아닙니다.
USER-AGENT확인 가능한 User-Agent 정보트래픽 가시성에 제한이 있으므로 일반적인 앱 식별 방식으로 사용하기 어렵습니다.
FINAL앞선 규칙에 매칭되지 않은 요청기본 처리용으로 사용하고 구체적인 규칙보다 앞에 두지 마세요.

최소 규칙 예시

아래 내용은 규칙 행의 구문만 보여주는 예시이며 기존 구성을 대체할 수 있는 완성 파일이 아닙니다. example.com은 예시 도메인입니다. 실제 정책은 사용 중인 구성에 따라 설정하세요.

DOMAIN-SUFFIX,example.com,PROXY
GEOIP,CN,DIRECT
FINAL,PROXY

주의 사항: 규칙은 일반적으로 순서대로 적용되므로 앞에 있는 범위가 넓은 규칙이 뒤의 구체적인 규칙보다 먼저 매칭될 수 있습니다. 도메인 규칙과 IP 규칙이 참조하는 정보도 다릅니다. 도메인 규칙만 작성했다고 해서 앱이 IP에 직접 요청할 때도 같은 결과가 나온다는 뜻은 아닙니다. 분기 결과가 예상과 다르면 먼저 Global Routing이 Config인지 확인하고, 연결 기록에서 대상, 매칭된 규칙, 최종 정책을 살펴보세요. 페이지가 열리는지만으로 판단하지 마세요.

다양한 프로토콜: 서버 정보에 맞게 입력

프로토콜은 클라이언트와 서버의 통신 방식을 결정하며, 특정 대상에 어떤 규칙을 적용할지는 직접 결정하지 않습니다.

Shadowsocks VMess VLESS Trojan HTTP SOCKS5 WireGuard Hysteria2

기능: Shadowrocket에서는 여러 프로토콜의 서버 항목을 관리할 수 있습니다. 프로토콜 유형은 인증, 전송 방식, TLS 등의 설정과 함께 연결 조건을 구성합니다. 주소와 포트가 같다고 해서 동일한 연결로 간주할 수는 없습니다. 실제 선택 항목은 플랫폼과 앱에서 제공하는 기능에 따라 달라집니다.

위치 및 설정 방법: Home에서 Add Server를 열고 Type을 선택한 다음 보유한 서버 정보에 맞춰 각 항목을 입력합니다. 공유 링크나 QR 코드가 있다면 해당 가져오기 방법을 사용하세요. 서버 주소, 포트, 비밀번호 또는 UUID, 전송 관련 항목은 이용 중인 서비스 제공업체에서 확인해야 합니다. 다른 항목의 형식을 보고 값을 추측해 입력하지 마세요.

예를 들어 VLESS와 VMess의 인증 항목은 서로 바꿔 쓸 수 없습니다. Trojan의 비밀번호와 TLS 관련 항목은 서버 설정과 일치해야 하며, WireGuard의 키, 주소, 허용 네트워크는 각각 용도가 다릅니다. 가져온 뒤에도 Type과 주요 항목을 확인하세요. 특히 복사할 때 공백이 추가되거나 값이 빠지지 않았는지, 서비스 제공업체의 변경으로 정보가 오래되지 않았는지 살펴보세요.

주의 사항: 연결 오류를 피하려고 인증서 확인을 임의로 끄지 마세요. 먼저 기기 시간, 서버 이름, TLS 설정을 확인한 다음 서버가 정상인지 점검하세요. 프로토콜 이름만으로 속도를 순위화할 수 없습니다. 지연 시간, 처리량, 안정성은 로컬 네트워크와 서버 부하, 대상 서비스의 영향을 받습니다.

Subscribe 및 서버 관리

구독은 서버 목록을 관리하고, Config는 트래픽 처리 방식을 지정합니다.

기능: Subscribe는 구독 주소에서 서버 정보를 가져와 클라이언트에 추가하고 업데이트합니다. 개별 서버 항목은 소수의 기존 연결을 직접 관리할 때 적합합니다. 구독, 서버 공유 링크, 전체 구성 파일은 서로 다른 종류의 데이터입니다. 모두 링크 형태라고 해서 같은 입력란에 넣을 수 있는 것은 아닙니다.

위치 및 설정 방법: Home에서 Add Server를 열고 Subscribe를 선택한 다음 서비스 제공업체에서 받은 구독 링크를 URL에 입력하고 알아보기 쉬운 메모를 작성합니다. 저장 후 업데이트를 실행하고 서버 항목이 표시되는지 확인한 뒤 하나를 선택해 테스트하세요. QR 코드를 사용할 때는 Scan QR Code 조작 안내에 따라 가져올 콘텐츠를 확인하고, 저장 후에도 각 항목을 점검하세요.

가져온 후 확인할 세 가지 항목

  1. 콘텐츠 유형 확인. 업데이트 후 예상한 서버 목록이 표시되어야 합니다. 링크가 로그인 페이지나 오류 페이지를 반환한다면 구독을 다시 만들기 전에 링크가 유효한지 확인하세요.
  2. 업데이트 결과 확인. 구독 업데이트가 성공해도 모든 서버에 연결할 수 있다는 뜻은 아닙니다. 실제로 사용할 항목을 선택해 연결을 테스트해야 합니다.
  3. 이후 관리 방식 확인. 구독 항목은 다음 업데이트 때 다시 생성될 수 있습니다. 직접 수정하기 전에 별도의 서버 항목으로 저장해야 하는지 확인하세요.

주의 사항: 구독 링크에는 계정 리소스에 접근하는 자격 정보가 포함될 수 있으므로 공개 스크린샷, 채팅 기록, 진단 자료에 노출하지 마세요. 유출이 의심되면 서비스 제공업체에서 새 링크를 받아 클라이언트를 업데이트하세요. 중복 구독을 삭제하기 전에 현재 선택한 서버가 어느 그룹에 속하는지 확인해야 기존 선택 항목을 잃지 않습니다.

On Demand: 조건에 따라 연결 시작

연결을 시작할 조건을 설정하며 Global Routing이나 Rule을 대체하지 않습니다.

기능: On Demand는 시스템에서 제공하는 주문형 연결 기능을 사용해 설정한 조건이 충족되면 연결을 시작합니다. 분기와는 별개의 기능입니다. On Demand는 연결을 언제 시작할지 결정하고, Global Routing과 구성 규칙은 연결 후 요청을 어떻게 처리할지 결정합니다.

위치 및 설정 방법: Settings에서 On Demand를 찾아 실제 화면에 따라 네트워크 조건을 설정합니다. 먼저 수동 연결로 정상적으로 접속되는지 확인한 뒤 조건을 활성화하세요. Wi-Fi, 셀룰러 네트워크 또는 지정 네트워크 조건을 설정할 수 있다면 하나씩 구성하고 해당 네트워크에서 테스트하세요. 조건을 한꺼번에 많이 추가하지 마세요.

재현 가능한 테스트 순서는 다음과 같습니다. 현재 네트워크와 스위치 상태를 기록하고, 연결을 시작하려는 네트워크에 접속한 뒤 시스템이 처리할 때까지 기다립니다. 그런 다음 클라이언트 연결 상태와 실제 접속 결과를 확인하세요. 이후 다른 네트워크로 전환해 예상한 결과가 나오는지 점검합니다. 테스트 중에는 같은 서버와 구성을 유지해 변수를 줄이세요.

주의 사항: 주 연결 스위치만 꺼도 On Demand가 비활성화되는 것은 아닐 수 있습니다. 연결을 끊은 뒤 다시 연결된다면 On Demand 조건을 확인하세요. 시스템 VPN 권한, 다른 VPN 구성, 네트워크 전환 시점이 결과에 영향을 줄 수 있습니다. 시스템에 VPN 표시가 나타나더라도 특정 대상에 접속할 수 있다는 뜻은 아닙니다. 연결이 자주 바뀐다면 먼저 On Demand를 끄고 수동 연결과 비교한 다음 조건을 하나씩 다시 적용하세요.

Data: 트래픽 통계 및 분기 확인

통계는 이미 발생한 트래픽을 확인하는 용도이며 실시간 속도 보장이나 서비스 제공업체의 청구 내역이 아닙니다.

기능: Data는 클라이언트에서 기록할 수 있는 트래픽 정보를 보여줍니다. 제공되는 화면과 통계 항목은 플랫폼별 실제 화면을 기준으로 확인하세요. 서버, 앱, 연결별로 확인할 때는 각각 집계 범위가 다를 수 있습니다. 업로드·다운로드 방향, 통계 기간, 초기화 여부를 함께 살펴봐야 하며 누적 수치 하나만 비교해서는 안 됩니다.

위치 및 설정 방법: Data를 열고 현재 통계 기준을 확인한 뒤 기존 수치를 기록합니다. 그런 다음 같은 웹페이지를 열거나 파일 크기를 알고 있는 파일을 전송하는 등 범위가 명확한 작업을 소규모로 한 번 수행하세요. 완료 후 수치 변화를 확인하고 연결 기록의 대상, 규칙, 정책을 함께 살펴 트래픽이 예상대로 처리되었는지 판단합니다.

서버 두 개를 비교하려면 같은 로컬 네트워크와 대상, 비슷한 테스트 조건을 유지하고 한 번에 서버 하나만 전환하세요. 앱별 식별 결과는 플랫폼과 트래픽 가시성에 따라 달라집니다. 앱 이름이 표시되지 않는다고 해서 트래픽이 발생하지 않은 것은 아닙니다. 백그라운드 동기화도 통계에 영향을 줄 수 있으므로 테스트 전에 다른 작업이 진행 중인지 확인하세요.

주의 사항: 클라이언트 통계는 집계 범위, 연결 오버헤드, 시간 기준의 차이로 시스템 통계나 서비스 제공업체 통계와 다를 수 있습니다. 초기화가 필요하다면 기존 수치를 먼저 기록하고 화면의 초기화 작업이 어느 데이터에 영향을 주는지 확인하세요. 연결을 끊을 때마다 자동으로 초기화된다고 가정하지 마세요. 예상하지 못한 트래픽이 있다면 지속 연결과 백그라운드 활동부터 확인한 뒤 규칙을 조정할지 판단하세요.

자세한 확인 방법은 Data 페이지 트래픽 통계 안내를 참고하세요.

Settings: 주요 항목 및 진단 순서

정상 작동하는 기준 설정을 유지하고 한 번에 하나씩만 변경하세요.

Settings에는 연결, 테스트, 화면 표시, 동기화, 진단 관련 옵션이 모여 있습니다. 아래에서는 설정 이름별 용도를 설명합니다. 정확한 위치와 사용 가능한 항목은 현재 앱 화면을 확인하세요. 수정 전에는 기존 값을 기록해 두세요. 문제 해결이 목적이라면 특정 대상 하나만 실패하는지 모든 대상이 실패하는지 먼저 확인한 뒤 관련 항목을 선택합니다.

DNS: 이름 해석 오류와 연결 오류 구분

기능 및 위치: DNS는 도메인 이름을 IP 주소로 변환합니다. Settings에서 DNS 관련 설정을 찾고, 현재 Config에 DNS 설정이 포함되어 있는지도 확인하세요. 두 설정이 함께 적용되는 방식은 선택된 구성과 앱 안내를 기준으로 판단해야 합니다.

설정 방법 및 주의 사항: 기존 DNS 설정을 유지하고 접속에 실패한 도메인을 기록한 뒤, 도메인 접속만 문제가 있는지 확인하세요. 설정을 바꿔야 한다면 이름 해석 관련 옵션을 한 번에 하나씩만 변경하고 결과와 연결 기록을 비교하세요. 캐시 삭제를 장기적인 해결책으로 여기지 말고 DNS, 규칙, 서버를 한꺼번에 변경하지 마세요. 접속이 복구되더라도 실제 원인을 파악하기 어렵습니다. IPv6를 사용하는 경우 로컬 네트워크와 서버 경로가 해당 주소를 지원하는지도 확인하세요.

Test Method: Connectivity Test의 측정 범위 이해

기능 및 위치: Test Method는 Connectivity Test의 테스트 방법을 선택하는 항목입니다. Settings에서 해당 옵션을 찾으세요. 테스트 결과는 특정 탐지 조건에서 측정한 값이며 모든 웹사이트의 실제 로딩 시간을 나타내지는 않습니다.

설정 방법 및 주의 사항: 서버를 비교할 때는 Test Method를 동일하게 유지하세요. 테스트 주소를 지정하는 방식이라면 대상도 같아야 합니다. 먼저 Home에서 기존 서버에 Connectivity Test를 실행한 다음 실제로 필요한 서비스에 접속해 보세요. 낮은 수치가 더 빠른 다운로드를 의미하지는 않으며, 테스트 시간 초과는 탐지 대상의 영향일 수 있습니다. 테스트 결과와 실제 사용 경험이 다르면 수치만 보고 서버를 삭제하지 말고 실제 연결이 성립했는지 확인하세요.

Today Widget: 시스템 바로가기 및 상태 확인

기능 및 위치: Today Widget은 이 기능을 지원하는 시스템과 앱 환경에서 제공되는 바로가기입니다. Settings에서 관련 옵션을 찾고 시스템의 위젯 관리 화면에서 설정할 수 있습니다.

설정 방법 및 주의 사항: 먼저 앱에서 서버와 구성을 선택하고 VPN 권한을 승인한 다음 사용할 수 있는 위젯을 추가하세요. 위젯을 조작한 후에는 필요에 따라 Home에서 상태를 확인합니다. 시스템의 새로고침 방식에 따라 위젯 표시가 달라질 수 있으므로 표시된 문구만 보고 대상에 연결할 수 있는지 판단하지 마세요. 현재 시스템에서 해당 위젯을 지원하지 않는다면 앱 안의 바로가기를 사용하면 됩니다.

iCloud: 동기화 전에 로컬 사본 보관

기능 및 위치: iCloud는 지원되는 범위에서 데이터 동기화나 가져오기를 지원합니다. Settings에서 동기화 관련 항목을 찾고, 시스템에 필요한 계정으로 로그인되어 있으며 앱의 iCloud 사용이 허용되었는지 확인하세요. Import from Cloud JSON은 특정 콘텐츠를 가져오는 기능이며 Subscribe 업데이트와는 다릅니다.

설정 방법 및 주의 사항: 동기화 전에 화면에 표시된 데이터 범위를 확인하고 중요한 구성의 사본을 보관하세요. 여러 기기에서 동시에 편집하면 내용이 덮어쓰이거나 충돌할 수 있습니다. 차이가 발견되면 추가 편집을 멈추고 어떤 내용을 보존할지 확인하세요. 동기화에 시스템 VPN 권한, 현재 연결 상태, 모든 로컬 설정이 포함된다고 가정하지 마세요. 기기를 바꾼 뒤에도 항목별로 확인해야 합니다.

Diagnostics: 기록을 활용해 문제 범위 좁히기

기능 및 위치: Diagnostics는 문제 해결에 필요한 정보를 수집하거나 확인하는 기능입니다. Settings에서 해당 메뉴를 찾으세요. 이름 해석, 연결, 인증, 이후 요청 중 어느 단계에서 오류가 발생했는지 확인하는 데 유용하지만 잘못된 설정을 자동으로 수정하지는 않습니다.

설정 방법 및 주의 사항: 현재 Global Routing, 구성, 서버를 기록한 다음 문제를 한 번만 재현하고 해당 시각의 기록을 확인하세요. 진단 자료를 제출해야 한다면 구독 URL, 비밀번호, UUID, 키, 개인을 식별할 수 있는 정보를 먼저 가리세요. 문제를 확인한 뒤에는 진단을 위해 임시로 켠 상세 기록을 꺼서 불필요한 데이터가 계속 쌓이지 않도록 하세요.

계속하기 전 확인 사항

먼저 다운로드 경로를 확인한 뒤 안내에 따라 연결을 설정하세요.

iPhone/iPad 버전은 App Store에서 다운로드할 수 있으며, 가격은 $2.99 일회성 결제입니다. 시스템 요구 사항은 App Store 페이지에 표시된 내용을 확인하세요. Mac(Apple Silicon 및 Intel), Windows, Android, Linux 버전은 무료입니다. 컴퓨터 및 Android 설치 파일은 이 사이트의 /dl/에서 제공됩니다. 플랫폼 선택과 처음 실행할 때 필요한 시스템 허용 절차는 앱 다운로드 페이지를 참고하세요.

설치와 가져오기를 마친 뒤 재현이 쉬운 대상 하나로 설정을 확인하세요. 먼저 수동 연결이 정상인지 확인한 다음 규칙, 주문형 연결 조건, 동기화를 차례로 추가하면 여러 설정을 한꺼번에 바꾸는 것보다 관리하기 쉽습니다.