공식 매뉴얼 / 기능 및 설정

Shadowrocket
기능 및 주요 설정

먼저 Global Routing을 확인한 다음 Config와 서버를 살펴보세요. 연결 흐름에 따라 기능을 이해하면 모드, 규칙, 프로토콜 매개변수를 한꺼번에 잘못 변경하는 일을 줄일 수 있습니다.

Global Routing / 연결 모드 Config / 규칙 설정 Settings / 연결 동작
연결 모드

Global Routing: Config, Proxy, Direct

Global Routing은 연결에 적용할 전반적인 처리 방식을 정합니다. Home에서 Global Routing을 열고 Config, Proxy 또는 Direct를 선택할 수 있습니다. 각각 규칙에 따른 처리, 프록시 경유, 직접 연결을 뜻하며 서로 다른 서버나 세 단계의 연결 속도를 의미하지는 않습니다. 모드를 선택하기 전에 규칙에 따라 요청을 나눌지, 특정 연결 경로를 임시로 확인할지 먼저 정하세요.

Global Routing의 세 가지 모드 비교
화면 옵션주요 동작사용 상황확인할 항목
Config (구성)현재 활성화된 구성의 규칙에 따라 요청을 처리합니다.평소에 대상 주소별로 트래픽을 분리할 때활성화된 Config, 규칙 순서, 최종 정책
Proxy (프록시)프록시 경로로 트래픽을 처리합니다. 단, 시스템 및 앱이 처리할 수 있는 범위에 따라 달라집니다.선택한 서버의 연결 상태를 임시로 확인할 때Home에서 선택한 서버와 프로토콜 매개변수
Direct (직접 연결)현재 로컬 네트워크를 통해 대상에 직접 접속합니다.로컬 네트워크와 프록시 경로의 차이를 비교할 때로컬 네트워크에서 대상에 접속할 수 있는지, 다른 네트워크 설정이 영향을 주는지
  1. Home에서 현재 선택된 서버를 확인한 다음 Global Routing으로 이동하세요.
  2. 평소 규칙 라우팅에는 Config를 선택하고, Config에서 실제로 활성화된 구성 파일을 확인하세요.
  3. 연결 문제를 진단할 때는 Proxy 또는 Direct로 잠시 전환해 같은 대상에 접속한 결과를 비교하세요.
  4. 테스트가 끝나면 원래 모드로 되돌리고 다시 접속해 보세요. 기존 연결은 새 설정을 즉시 반영하지 않을 수 있습니다.

Proxy를 사용하면 문제가 규칙과 관련 있는지 확인하는 데 도움이 되지만, 잘못된 서버 주소나 인증 정보, DNS 설정을 자동으로 수정해 주지는 않습니다. Direct도 시스템의 모든 네트워크 동작을 끄는 것은 아닙니다. 연결 스위치, 현재 모드, 대상 주소를 함께 기록해 판단하고, 특정 옵션이 선택되어 있는지만으로 결론 내리지 마세요.

규칙 매칭 및 정책

Config와 규칙 라우팅

규칙은 '어떤 대상에 접속할지'와 '어떤 정책을 적용할지'를 연결합니다. Config 화면에서 구성 파일을 선택해 활성화한 뒤 Global Routing을 Config로 설정해야 해당 구성의 라우팅 결과를 확인할 수 있습니다. 파일이 Config 목록에 저장되어 있다는 것만으로 현재 적용 중인 구성이라고 볼 수는 없습니다.

규칙을 읽을 때는 먼저 규칙 유형, 다음으로 매칭 조건, 마지막으로 정책을 확인하세요. DOMAIN은 도메인을 정확히 매칭하고, DOMAIN-SUFFIX는 도메인 접미사를, DOMAIN-KEYWORD는 도메인 키워드를 매칭합니다. IP-CIDR과 IP-CIDR6은 각각 주소 대역을 지정합니다. GEOIP는 해당 주소 데이터베이스에 의존하며, USER-AGENT는 요청에서 식별 가능한 정보에 의존하므로 모든 앱이나 암호화된 요청에 적용되는 것은 아닙니다.

규칙 정책의 기본 의미
정책의미주요 확인 사항
PROXY프록시 경로를 통해 처리합니다.현재 서버 또는 구성에서 참조하는 정책을 확인하세요.
DIRECT직접 연결 경로를 사용합니다.로컬 네트워크에서 대상에 접속할 수 있는지 확인하세요.
REJECT매칭된 요청을 거부합니다.차단이 구성 의도에 맞는지 확인하세요.
사용자 지정 정책 이름구성에 정의된 정책 또는 정책 그룹을 참조합니다.이름이 존재하는지, 그룹 내 선택이 유효한지 확인하세요.

규칙은 일반적으로 순서대로 확인되며, 먼저 일치하는 규칙이 이후 처리에 영향을 줍니다. 따라서 범위가 넓은 규칙보다 구체적인 예외 규칙을 앞에 배치해야 합니다. FINAL은 앞선 규칙에 해당하지 않은 요청을 처리합니다. 수정할 때는 한 번에 조건 하나만 변경하고 원본 구성의 사본을 보관하세요. 규칙 순서, DNS, 서버 설정을 동시에 바꾸면 원인을 파악하기 어렵습니다.

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

위 내용은 구문 설명을 위한 예시이며, 그대로 사용할 수 있는 완성된 구성은 아닙니다. 예시 도메인 접미사는 PROXY로, 지정된 로컬 주소 대역은 DIRECT로 처리하고, 나머지 요청은 FINAL에 지정된 정책으로 전달합니다. 실제 사용 전에는 현재 구성의 다른 항목과 서버 설정도 확인해야 합니다. 규칙 키워드는 용어 빠른 참고에서 하나씩 살펴보세요.

기존 정보 가져오기 및 관리

구독 및 서버 관리

서버 항목에는 단일 연결에 필요한 프로토콜 및 인증 매개변수가 저장됩니다. 구독은 여러 항목을 한꺼번에 가져오고 업데이트할 때 사용합니다. Config 페이지의 Subscribe는 구성 구독을 처리하므로, 먼저 가져올 내용이 구성 파일인지 서버 목록인지 확인하세요. 링크 모양만 보고 용도를 판단하지 마세요. 두 유형 모두 네트워크 주소를 사용하더라도 같은 메뉴에서 가져올 수 있다고 단정할 수 없습니다.

  1. 서버 하나를 추가하려면 Home에서 Add Server를 열고, 사용자가 보유한 정보에 맞는 프로토콜을 선택한 뒤 주소, 포트, 인증 항목을 입력하세요.
  2. 기존 공유 링크는 앱에 표시되는 클립보드 가져오기 메뉴로 처리할 수 있습니다. 기존 QR 코드는 Scan QR Code로 스캔한 뒤 미리보기 내용을 확인하고 저장하세요.
  3. 기존 구독은 내용 유형에 맞는 가져오기 메뉴를 사용하세요. 저장한 뒤 그룹 이름, 서버 항목 또는 구성 파일이 예상한 내용인지 확인하세요.
  4. 연결하기 전에 Home에서 항목 하나를 선택했는지 확인하세요. 업데이트 후 선택 상태를 다시 확인해 이미 만료되었거나 삭제된 항목을 계속 사용하지 않도록 하세요.

구독 업데이트 성공은 관련 내용을 가져와 처리했다는 뜻일 뿐, 모든 서버에 정상적으로 연결할 수 있다는 의미는 아닙니다. Connectivity Test는 초기 확인에 활용할 수 있지만, 결과는 테스트 방식, 네트워크 상태, 대상의 연결 가능성에도 영향을 받습니다. 정렬한 뒤에는 서버 이름과 그룹을 확인하고 목록의 위치를 고정 식별자로 여기지 마세요.

삭제하기 전에 대상이 서버 항목 하나인지, 구독 그룹 전체인지, Config 하나인지 확인하세요. 구독 내용을 다시 가져오면 수동 변경 사항이 덮어써질 수 있으므로 계속 보관할 로컬 설정은 따로 기록해 두세요. 공유 링크, QR 코드, 내보낸 파일, 구독 주소에는 인증 정보가 포함될 수 있습니다. 공개 스크린샷이나 로그, 피드백 첨부 파일에 노출하지 마세요. 전체 관리 절차는 구독 및 서버 관리 매뉴얼을 확인하세요.

Add Server

다중 프로토콜 및 연결 매개변수

Shadowrocket은 Shadowsocks, VMess, VLESS, Trojan, HTTP, SOCKS5, WireGuard, Hysteria2 등 다양한 프록시 및 터널 프로토콜을 지원합니다. 프로토콜 이름은 연결 방식을 나타내며 품질 등급이 아닙니다. 사용할 프로토콜은 사용자가 보유한 서버 설정에 따라 선택해야 합니다. 작동하는 항목을 찾기 위해 프로토콜을 계속 바꾸는 방식은 권장하지 않습니다.

Add Server에서 먼저 프로토콜을 선택한 다음 해당 프로토콜에 필요한 항목을 입력하세요. 주소와 포트는 기본 정보이며, 일부 프로토콜은 비밀번호, ID, 키, TLS 또는 전송 계층 매개변수도 필요합니다. 공유 링크를 가져온 뒤에도 항목이 모두 채워졌는지 확인하세요. 특히 서버 주소와 인증서 검증에 사용하는 이름은 서로 다를 수 있습니다.

인증 또는 핸드셰이크에 실패하면 먼저 원본 서버 정보를 대조하고 포트, 인증 정보, TLS 이름, 기기 시간을 확인하세요. 인증서 검증을 끄는 방법을 일반적인 해결책으로 사용하지 마세요. 한 프로토콜이 작동한다고 해서 다른 프로토콜의 매개변수까지 올바르다는 뜻은 아닙니다. 다른 조건은 그대로 두고 항목별로 확인해야 문제의 원인을 찾을 수 있습니다.

자동 연결 조건

On Demand 요청 시 연결

On Demand는 설정된 조건에 따라 시스템이 연결 동작을 시작하도록 합니다. 서버를 제공하는 기능은 아니며 Global Routing의 라우팅 선택을 대체하지도 않습니다. Settings에서 On Demand를 찾아 설정 가능한 네트워크 조건과 동작을 확인하세요. 표시되는 옵션은 앱 화면을 기준으로 합니다.

  1. 먼저 자동 실행 조건을 끄고 서버를 직접 선택해 실제 접속을 한 번 확인하세요.
  2. Config와 Global Routing이 예상대로 설정되었는지 확인한 다음 On Demand에서 필요한 조건을 설정하세요.
  3. 저장한 뒤 해당 네트워크 환경으로 전환해 연결 상태를 확인하세요. 그런 다음 그 환경에서 벗어나 설정한 대로 동작하는지 살펴보세요.

수동으로 연결을 끊은 뒤 다시 연결된다면 시스템 VPN 설정을 바로 삭제하지 말고 먼저 On Demand를 확인하세요. 네트워크 전환, 기기 잠자기, 시스템 스케줄링에 따라 실행 시점이 달라질 수 있으므로 상태가 한 번 바뀐 것만으로 규칙이 작동하지 않는다고 판단하지 마세요. 문제를 진단하는 동안 On Demand를 잠시 끄고 수동 연결을 테스트한 뒤 다시 활성화하면 자동 동작이 판단에 미치는 영향을 줄일 수 있습니다.

사용량 확인, 요금 청구 아님

Data 트래픽 통계

Data에는 앱이 확인할 수 있는 범위의 트래픽 기록과 통계가 표시됩니다. 연결 전후에 데이터 전송이 있었는지, 일정 시간 동안 전송이 이어졌는지, 관련 요청이 어떻게 처리되었는지 비교할 때 유용합니다. Data를 열면 먼저 통계 범위와 기록 시각을 확인한 뒤 업로드, 다운로드, 연결 정보를 살펴보세요. 누적 수치 하나만 캡처해 네트워크 상태를 판단하지 마세요.

먼저 현재 수치를 기록한 뒤 특정 페이지를 열고 Data로 돌아와 변화를 비교하세요. 기존 연결이 백그라운드에서 계속 데이터를 전송하면 수치가 계속 증가할 수 있으므로 다른 앱의 활동을 가급적 줄이세요. 현재 화면에 초기화 기능이 있다면 초기화 전에 보관할 정보를 기록해 문제 진단에 필요한 자료를 잃지 않도록 하세요.

Data는 사용자가 이용 중인 서비스의 요금 청구서가 아닙니다. 통계 기준, 프로토콜 오버헤드, 집계 시간 범위, 서버 측 정산 방식은 서로 다를 수 있습니다. 로컬 기록이 기기의 모든 네트워크 활동을 포함하는 것도 아닙니다. 트래픽 증가가 보이면 해당 경로로 데이터가 전송되었다는 뜻일 뿐, 대상 콘텐츠가 완전히 로드되었다는 의미는 아니며 구독 잔여량을 계산할 수도 없습니다.

문제에 맞는 설정 항목 선택

Settings 주요 항목

Settings에는 일반 동작 및 도구 옵션이 있으며, Config에는 현재 구성에만 적용되는 설정이 포함될 수 있습니다. 관련 항목이 양쪽에 있다면 먼저 적용 범위를 구분한 다음 현재 구성이 일반 설정을 덮어쓰는지 확인하세요. 기기나 앱 화면에 따라 항목 위치가 달라질 수 있으므로 영어 이름으로 찾고 실제 표시되는 옵션을 기준으로 확인하세요.

DNS: 도메인 이름 확인

DNS는 도메인 이름을 연결에 사용할 주소로 변환합니다. DNS를 확인할 때는 Settings의 관련 항목뿐 아니라 현재 Config의 DNS 설정도 살펴보세요. 도메인은 열리지 않지만 이미 알고 있는 주소로는 접속할 수 있다면 DNS 문제일 수 있습니다. 인증서나 대상 서비스 문제일 수도 있으므로 한 가지 원인으로 단정하지 마세요.

먼저 기존 DNS 설정을 기록한 뒤 지정된 DNS 서비스에 현재 네트워크 경로로 접속할 수 있는지 확인하세요. 한 번에 항목 하나만 변경하고 요청을 다시 보내 결과를 비교하세요. DNS만 바꿔서는 서버 인증 정보가 달라지거나 잘못된 라우팅 규칙이 자동으로 수정되지 않습니다. 캐시나 기존 연결 때문에 변경 효과가 늦게 나타날 수도 있습니다.

Test Method: 테스트 방식

Test Method는 연결 테스트에 사용할 방식을 선택하는 항목입니다. Settings에서 해당 설정을 확인한 다음 Connectivity Test를 실행하세요. 테스트 방식에 따라 확인하는 연결 가능성의 단계가 다를 수 있으므로 결과를 한데 모아 순위를 비교하지 마세요. 방식을 변경했다면 같은 네트워크 환경에서 다시 테스트하세요.

테스트 응답이 빠르다고 지속적인 전송 속도도 더 빠른 것은 아니며, 테스트에 실패해도 실제 요청이 모두 실패한다고 볼 수는 없습니다. 먼저 테스트 대상과 방식이 현재 네트워크에 적합한지 확인하고 실제 접속으로 추가 검증하세요. 여러 서버를 비교할 때는 방식, 대상, 네트워크 환경을 동일하게 유지해야 합니다.

Today Widget: 빠른 확인 및 조작

Today Widget에는 시스템 위젯 관련 설정이 있습니다. 먼저 Settings에서 Today Widget의 사용 가능한 옵션을 확인한 다음 현재 기기의 시스템에서 제공하는 위젯 추가 방법을 따르세요. 추가 후 표시된 서버와 연결 상태를 확인하고, 빠른 동작을 실행한 뒤 Home으로 돌아와 결과를 확인하세요.

위젯을 사용할 수 있는 위치와 새로고침 빈도, 조작 기능은 시스템 지원 범위에 따라 달라집니다. 위젯에 표시된 오래된 상태를 현재 연결 상태로 간주하지 마세요. 표시가 제때 갱신되지 않으면 앱을 열어 확인한 뒤 위젯 설정을 살펴보세요. 서버를 반복해서 바꾸거나 구성을 다시 만들 필요는 없습니다.

iCloud: 동기화 및 백업 범위

Settings에서 iCloud 관련 항목을 확인하고 동기화할 수 있는 내용의 범위를 읽은 뒤 필요한 옵션을 활성화하세요. 기기가 해당 iCloud 기능을 사용할 수 있는 상태여야 하며 앱에 관련 권한을 허용해야 합니다. 처음 동기화하기 전에 중요한 로컬 구성을 보관하고, 동기화 방향을 확인하지 않은 상태에서 여러 기기를 동시에 변경하지 마세요.

앱 구매 기록, 구성 동기화, 서버 인증 정보는 서로 별개의 항목입니다. iCloud 동기화가 모든 구독 내용을 복원하는 것은 아니며 App Store의 구매 기록을 대신하지도 않습니다. 여러 기기에서 사용한 뒤에도 Home에서 선택한 서버, 현재 Config, Global Routing을 각각 확인하세요.

Diagnostics: 진단 정보

Diagnostics는 연결 관련 진단 정보를 확인하거나 수집하는 기능입니다. Settings에서 해당 도구를 찾아 재현해야 할 문제를 먼저 확인한 뒤 화면 안내에 따라 실행하세요. 맥락 없이 진단 자료를 반복해서 생성하기보다 문제가 발생한 네트워크, 현재 모드, 대상 주소, 조작 순서를 기록하는 편이 도움이 됩니다.

진단 자료에는 도메인, 주소, 연결 기록 등 민감한 정보가 포함될 수 있습니다. 공유하기 전에 항목별로 확인하고 구독 링크와 인증 정보를 삭제하세요. 피드백을 위해 전체 구성을 공개하지 마세요. 진단을 마친 뒤 문제 확인을 위해 임시로 활성화한 기록 옵션을 평소 설정으로 되돌리세요.

재현 가능한 결과부터 확인

기능 설정 확인 순서

설정 항목은 서로 영향을 줍니다. 먼저 사용할 수 있는 서버 정보를 확보하고, 그다음 전반적인 접속 모드를 정한 뒤 규칙과 자동 연결을 설정하세요. 문제가 생기면 아래 순서대로 단계별 확인을 진행하는 편이 모든 스위치를 한꺼번에 변경하는 것보다 원인을 파악하기 쉽습니다.

  1. 로컬 네트워크를 확인합니다. 현재 네트워크가 정상적으로 작동하는지 확인하고 Wi-Fi 또는 셀룰러 중 어떤 연결을 사용하는지 기록한 뒤, 네트워크 환경을 그대로 유지하세요.
  2. Home을 확인합니다. 선택한 서버가 원본 정보와 일치하는지, 연결 스위치와 시스템 권한 상태가 어떤지 확인하세요.
  3. Global Routing을 확인합니다. 규칙 라우팅에는 Config를 사용하고, 비교 테스트에서는 Proxy 또는 Direct로 접속한 결과를 기록하세요.
  4. Config와 DNS를 확인합니다. 예상한 파일이 활성화되어 있는지 확인하고 관련 규칙과 FINAL 정책을 살펴본 다음 DNS 설정을 확인하세요.
  5. 자동 동작과 기록을 확인합니다. On Demand의 영향을 제외하고 Data, Connectivity Test, Diagnostics를 활용해 문제 범위를 좁히세요.

설정을 바꿀 때마다 같은 대상에 다시 요청을 보내고 직전 설정과 결과를 기록하세요. 문제가 해결되면 평소 사용하던 모드와 자동 연결 조건을 복원하세요. 첫 연결의 전체 절차는 사용 안내에서 확인할 수 있습니다. 여러 구독을 관리하거나 서버를 정리하려면 서버 관리로 이동해 구성 관리와 연결 문제 해결을 구분해서 진행하세요.