Shadowrocket · 공식 가이드
Shadowrocket
기능 및 설정
먼저 트래픽 처리 방식을 정한 다음 연결 및 진단 옵션을 설정하세요. 이 페이지에서는 화면별로 각 기능의 역할과 사용 방법, 확인할 사항을 설명합니다. iPhone과 iPad에서 일상적으로 설정할 때 참고할 수 있습니다.
- Global Routing
- Config / Settings
- Connectivity Test
처음 설정한다면 사용 가이드를 먼저 확인하세요. 각 설정 항목에 대한 자세한 설명은 Settings 설정 가이드에서 볼 수 있습니다. Shadowrocket은 Apple 플랫폼용 유료 앱이며 App Store에서만 받을 수 있습니다. 구매 전 확인 사항은 앱 받기 안내를 참고하세요.
Global Routing
Config, Proxy 및 Direct 모드
기능: Global Routing은 요청을 전반적으로 어떤 방식으로 처리할지 정합니다. Config 모드는 Config, 프록시 모드는 Proxy, 직접 연결 모드는 Direct에 해당합니다. 서버 목록이 아니며 서버 인증 정보를 자동으로 채워 주지도 않습니다. 모드를 선택한 뒤에도 연결 성공 여부는 로컬 네트워크, 대상 주소와 선택한 서버 상태에 따라 달라집니다.
위치 및 설정 방법: Home에서 Global Routing을 찾아 원하는 모드를 선택하세요. 평소 규칙에 따라 트래픽을 라우팅하려면 Config를 선택하고, Config 화면에서 현재 선택된 구성 파일을 확인합니다. 프록시 연결을 따로 확인할 때는 잠시 Proxy로, 직접 접속이 정상인지 확인할 때는 잠시 Direct로 전환할 수 있습니다. 전환 후 같은 대상에 새 요청을 보내야 합니다. 기존 연결 결과를 새 모드의 결과로 착각하지 않도록 주의하세요.
| 모드 | 처리 방식 | 사용 상황 | 확인할 항목 |
|---|---|---|---|
Config / Config | 현재 구성의 규칙과 정책에 따라 요청을 처리합니다. | 평소 도메인, 주소 또는 지역별로 트래픽을 라우팅할 때 | 구성 파일, 규칙 순서, 정책 참조 |
프록시 / Proxy | 프록시를 전반적인 라우팅 방식으로 선택합니다. | 선택한 프록시 경로를 일시적으로 확인할 때 | 기본 서버, 인증 정보 및 프로토콜 매개변수 |
직접 연결 / Direct | 직접 연결을 전반적인 라우팅 방식으로 선택합니다. | 로컬 네트워크와 대상에 직접 접속할 수 있는지 확인할 때 | 로컬 네트워크, DNS 및 대상에 대한 연결 가능 여부 |
주의사항: Direct는 연결 스위치를 끄는 것과 다르며, 시스템에 VPN 표시가 있다고 해서 특정 요청이 반드시 프록시를 거치는 것은 아닙니다. Proxy를 선택해도 시스템의 모든 트래픽이 프록시를 통과하는 것은 아닙니다. 특정 요청의 실제 경로를 확인하려면 요청 기록, 적용된 정책과 새 연결 테스트 결과를 함께 살펴보세요. 문제 해결 후에는 평소 사용하는 모드로 되돌리세요.
Config / Rule
규칙 유형 및 처리 정책
기능: 규칙은 일치 조건과 처리 정책을 연결합니다. DOMAIN은 도메인 전체와 일치하고, DOMAIN-SUFFIX는 도메인과 하위 도메인에 일치하며, DOMAIN-KEYWORD는 도메인에 포함된 키워드를 확인합니다. 주소 관련 조건에는 IP-CIDR, IP-CIDR6, GEOIP가 있으며 각각 IPv4 대역, IPv6 대역, IP의 지역을 판별합니다. GEOIP 결과는 IP 주소 데이터베이스에 따라 달라지므로 대상 주소와 데이터베이스의 갱신 상태를 확인하세요.
위치 및 설정 방법: Config에서 활성화된 구성을 확인한 뒤 해당 구성의 [Rule] 부분을 편집하세요. 일반적으로 구체적인 조건을 앞에 두고, 앞선 조건이 하나도 일치하지 않을 때 적용할 최종 정책으로 FINAL을 끝에 둡니다. 수정 전에는 복사본을 저장하고, 수정 후에는 특정 대상을 다시 테스트하세요. 다른 구성 파일을 저장하기만 하고 활성화하지 않으면 현재 연결에 사용되는 규칙은 바뀌지 않습니다.
[Rule]
DOMAIN,example.org,DIRECT
DOMAIN-SUFFIX,example.com,PROXY
DOMAIN-KEYWORD,ads,REJECT
IP-CIDR,192.168.0.0/16,DIRECT
FINAL,PROXY
위 예시는 문법 설명용이며 모든 네트워크에 적합한 완성된 구성은 아닙니다. PROXY는 프록시 정책을 사용하고, DIRECT는 직접 연결하며, REJECT는 요청을 거부합니다. 규칙에서 구성에 정의된 정책 그룹을 참조할 수도 있습니다. 참조 이름은 실제 정의와 일치해야 하며, 그렇지 않다면 먼저 참조 관계를 수정하세요.
주의사항: 규칙은 보통 순서대로 적용되므로 앞에서 일치한 조건에 따라 뒤의 규칙이 실행되지 않을 수 있습니다. 키워드가 예상보다 넓은 범위에 일치할 수 있으므로 거부 규칙은 최대한 구체적으로 작성하세요. 도메인 규칙과 IP 규칙은 서로 다른 대상을 확인하며 DNS 조회 결과도 주소 규칙에 영향을 줍니다. 규칙 문구만 보고 특정 대상이 반드시 일치한다고 단정하지 마세요. USER-AGENT는 요청에서 해당 필드를 확인할 수 있어야 적용되며, 모든 암호화 요청에 통용되는 분류 방식은 아닙니다.
문법을 하나씩 자세히 알아보려면 규칙 키워드와 일치 순서를 확인하세요. 문제를 해결할 때는 먼저 실제 대상 도메인을 확인하고, 먼저 일치한 규칙과 해당 정책을 차례로 살펴보세요. 같은 조건을 반복해서 추가하지 않는 것이 좋습니다.
Home / Add Server / Subscribe
서버 및 구독 관리
기능: 개별 서버 항목에는 프로토콜, 주소, 포트와 인증 등 연결 정보가 저장됩니다. 구독은 사용자가 보유한 링크에서 서버 항목을 가져오고 업데이트하는 기능입니다. 구독을 업데이트하면 서버 목록의 내용은 바뀌지만 규칙 구성까지 함께 업데이트되는 것은 아니며, 업데이트된 서버가 모두 연결 가능하다는 뜻도 아닙니다.
위치 및 설정 방법: Home에서 추가 메뉴를 열어 Add Server로 이동한 다음, 보유한 정보에 맞는 유형을 선택하고 항목을 입력하세요. Shadowsocks, VMess, VLESS, Trojan, HTTP, SOCKS5, WireGuard, Hysteria2 등은 프로토콜에 따라 입력 항목이 다릅니다. 이름이 비슷하다고 다른 프로토콜의 양식을 사용하지 말고 원래 연결 정보를 기준으로 입력하세요. QR 코드가 있다면 Scan QR Code로 가져올 수 있습니다. 가져온 뒤에도 프로토콜과 주소를 확인하세요.
구독을 가져오려면 Add Server에서 유형으로 Subscribe를 선택하고 자신의 구독 링크를 입력해 저장한 뒤 업데이트하세요. Home으로 돌아가 사용할 서버를 선택하고 선택 표시를 확인합니다. 기본 서버와 구성에서 선택하는 정책 그룹은 별개의 설정일 수 있습니다. 정책 그룹을 사용하는 구성이라면 그룹 안에서 현재 선택된 항목도 확인하세요.
주의사항: 구독 링크에 접근 인증 정보가 포함될 수 있습니다. 화면을 캡처하거나 로그를 복사하거나 도움을 요청하는 자료를 보낼 때는 링크 전체와 인증 정보를 가리세요. 구독으로 생성된 항목을 직접 수정하면 다음 업데이트에서 변경 내용이 덮어써질 수 있습니다. 수정 사항을 유지해야 한다면 업데이트 동작을 먼저 확인하고 필요한 내용을 별도로 기록하세요. 수동 업데이트에 실패하면 링크가 완전한지, 현재 네트워크에서 접속 가능한지, 응답 내용이 지원되는 형식인지 각각 확인하세요.
구독 삭제와 서버 항목 하나를 삭제하는 작업은 항상 같은 범위가 아닙니다. 실행 전에 확인 메시지를 읽으세요. 이름이 같아도 매개변수가 같다는 뜻은 아니므로 주소, 포트, 인증 및 TLS 관련 항목을 하나씩 확인해야 합니다. 자세한 업데이트 절차는 구독 업데이트 및 실패 문제 해결을 참고하세요.
On Demand
On Demand 및 연결 조건
기능: On Demand는 설정한 네트워크 조건에 따라 연결 동작을 시작합니다. ‘언제 연결할지’를 정하며, Global Routing은 ‘연결 후 요청을 어떻게 처리할지’를 정합니다. 두 기능의 역할은 서로 다릅니다. On Demand로 잘못된 서버 정보나 만료된 구독을 해결할 수는 없습니다.
위치 및 설정 방법: Settings에서 On Demand 관련 메뉴를 찾아 현재 화면에서 제공하는 조건에 따라 설정하세요. 설정 전에 수동으로 연결하고 Connectivity Test로 기본 경로가 정상인지 확인합니다. 이후 한 번에 한 종류의 조건만 변경하고, 사용할 예정인 Wi-Fi 또는 셀룰러 네트워크에서 각각 테스트하세요. 특정 Wi-Fi를 지정하는 조건이라면 네트워크 이름을 정확히 확인해야 합니다.
주의사항: 자동 연결을 켜면 수동으로 연결을 끊어도 계속 연결이 꺼진 상태로 유지되지 않을 수 있습니다. 조건이 일치하면 시스템에서 다시 연결할 수 있습니다. 자동 연결을 잠시 중지하려면 On Demand 상태도 확인하세요. 시스템의 네트워크 전환과 절전 동작이 연결 시점에 영향을 줄 수 있으므로, 이를 서버 상태를 계속 확인하는 기능으로 이해해서는 안 됩니다.
연결을 끊은 직후 다시 연결된다면 먼저 발생 당시의 네트워크 유형을 기록하고 연결 조건을 확인하세요. 구성을 바로 삭제하지 마세요. 반대로 네트워크를 전환한 뒤 예상대로 연결되지 않는다면 조건이 실제로 일치하는지 먼저 확인하고, 시스템 VPN 구성이 유효한지와 수동 연결이 가능한지도 살펴보세요.
Data
트래픽 통계 및 요청 기록
기능: Data에서는 앱이 기록한 트래픽과 관련 요청 정보를 확인할 수 있습니다. 연결 중 데이터 변화를 살펴보고 접속 대상을 파악하거나 기록을 통해 적용된 정책을 확인할 때 유용합니다. 앱 내 통계에는 자체적인 집계 범위와 시점이 있으므로 이동통신 요금 내역이나 원격 계정의 사용량으로 간주하지 마세요.
위치 및 확인 방법: Data를 열고 현재 보고 있는 통계 또는 기록의 종류와 화면에 표시된 집계 범위를 확인하세요. 특정 동작을 관찰하려면 먼저 현재 수치를 기록한 다음 대상 페이지 하나만 열고 돌아와 추가된 기록과 트래픽 변화를 확인합니다. 현재 화면에 필터, 삭제 또는 초기화 메뉴가 있다면 실행 전에 적용 범위를 확인하세요.
주의사항: 캐시, 백그라운드 연결, 프로토콜 캡슐화와 통계 집계 범위의 차이로 인해 수치가 예상과 다를 수 있습니다. 트래픽이 증가해도 실제 요청이 완료된 것은 아닙니다. 기록이 바로 나타나지 않는 것은 기존 연결 재사용이나 기록 설정 때문일 수 있습니다. 두 테스트를 비교할 때는 네트워크, 대상과 테스트 동작을 최대한 동일하게 유지하세요.
요청 기록의 도메인, IP와 시간은 문제를 파악하는 데 도움이 되지만 개인의 접속 습관이 드러날 수도 있습니다. 자료를 공유할 때는 문제와 관련된 항목만 남기세요. 기록을 삭제해야 한다면 문제 해결에 필요한 단서를 먼저 저장하세요. 삭제한 목록으로 이전 테스트 과정을 복원할 수는 없습니다.
Settings
DNS, 테스트 및 보조 설정
Settings에서 DNS 조회, 테스트와 보조 기능을 설정할 수 있습니다. 아래에서는 모든 기기에 적용되는 고정값 대신 각 옵션의 용도를 설명합니다. 기존 구성에 관련 매개변수가 포함되어 있을 수 있으므로 편집 전에 현재 적용 중인 설정 출처를 확인하세요. 기본값과 스위치 상태는 현재 앱 화면에 표시되는 내용을 기준으로 합니다.
DNS: 이름 조회와 연결 구분하기
기능 및 위치: DNS는 도메인 이름을 IP 주소로 변환합니다. 관련 옵션은 Settings의 DNS 설정과 현재 구성의 관련 항목에서 확인할 수 있습니다. 도메인 조회 실패, 적절하지 않은 주소로의 조회, 프록시 인증 실패는 서로 다른 단계에서 발생하는 문제입니다.
설정 방법 및 주의사항: 먼저 현재 설정을 기록하고, 구성에서 DNS 서버나 조회 방식이 지정되어 있는지 확인한 다음 필요한 옵션을 변경하세요. 문제를 확인할 때는 같은 도메인을 사용해 변경 전후의 조회 결과를 비교하고 한 번에 한 가지 요소만 바꾸세요. 사용자 지정 DNS 주소 자체에도 연결할 수 있어야 합니다. 주소를 입력했다는 사실만으로 테스트를 대신할 수는 없습니다. TLS 관련 문제라면 도메인과 인증서가 일치하는지도 확인하세요. 인증서 검증을 끄는 것은 일반적인 DNS 해결 방법이 아닙니다.
Test Method: 테스트 방식과 수치 이해하기
기능 및 위치: Test Method는 지연 시간 테스트 방식을 정합니다. Settings에서 확인하거나 변경할 수 있습니다. 방식에 따라 확인하는 연결 단계가 다르므로 서로 다른 방식으로 측정한 동일 서버의 결과를 그대로 비교하지 마세요.
설정 방법 및 주의사항: 먼저 테스트 방식을 하나 선택한 다음 비교할 항목을 테스트하세요. 현재 방식에서 테스트 주소를 사용한다면 해당 주소에 접속할 수 있는지도 확인합니다. 테스트 성공은 해당 테스트 절차가 완료되었음을 의미할 뿐, 모든 웹사이트가 이용 가능하다는 뜻은 아닙니다. 지연 시간 수치도 지속적인 다운로드 속도를 나타내지 않습니다. 실제 서비스 이용 가능 여부를 확인하려면 대상 서비스를 열고 요청 기록을 살펴보세요.
Today Widget: 위젯 추가 및 표시
기능 및 위치: Today Widget은 위젯에서 빠르게 확인하거나 조작할 수 있는 기능을 제공합니다. 먼저 Settings에서 앱이 제공하는 위젯 설정을 확인한 다음, 시스템의 위젯 편집 화면에서 사용할 수 있는 위젯을 추가하세요. 구체적인 형태는 현재 시스템과 앱의 지원 여부에 따라 다릅니다.
설정 방법 및 주의사항: 필요한 정보 표시 또는 동작을 선택하고 위젯을 추가한 뒤 앱으로 돌아와 연결 상태를 확인하세요. 위젯 표시는 일정 간격으로 갱신될 수 있으므로 요청 성공 여부를 판단하는 유일한 근거로 삼지 마세요. 위젯과 앱의 상태가 다르면 앱을 열어 새로 고친 뒤 연결에 문제가 있는지 확인하세요. 위젯의 빠른 동작도 시스템 권한과 On Demand 조건의 영향을 받습니다.
iCloud: 동기화 범위 및 복원 확인
기능 및 위치: iCloud 옵션은 앱에서 지원하는 데이터 동기화 또는 클라우드 저장 절차에 사용됩니다. Settings에서 관련 스위치를 확인하고 시스템 설정에서 해당 앱의 iCloud 접근 권한도 살펴보세요. 현재 화면에서 명확히 지원한다고 표시된 항목만 동기화 대상이라고 판단해야 합니다.
설정 방법 및 주의사항: 여러 기기에서 작업하기 전에 현재 구성을 복사해 두고 두 기기의 계정과 동기화 상태를 확인하세요. 동기화는 완전한 백업과 같지 않으며, 앱을 다시 받은 뒤 모든 데이터가 자동으로 복원된다는 뜻도 아닙니다. 복원 후에는 서버 목록, 현재 구성과 정책 선택을 하나씩 확인하세요. 파일 이름만 보고 내용이 같은지 판단하지 마세요. 민감한 구독 링크는 개인 인증 정보처럼 관리해야 합니다.
설정 항목을 더 자세히 알아보려면 Settings 설정 항목 참고서를 확인하세요. DNS, 테스트 방식, 자동 연결 조건을 한꺼번에 바꾸면 문제가 해결되더라도 어떤 변경이 효과가 있었는지 확인하기 어렵습니다.
Diagnostics / Connectivity Test
진단 순서 및 결과 확인
기능: Diagnostics, 로그와 Connectivity Test는 연결의 각 단계에서 상태를 확인하는 데 사용됩니다. 연결 상태를 살펴보는 테스트 하나로 DNS, 규칙과 실제 대상 접속 여부까지 모두 확인할 수는 없습니다. 진단의 목적은 문제를 반복해서 확인할 수 있는 단계까지 좁히는 것입니다.
위치 및 확인 방법: 먼저 Home에서 서버 선택, 연결 스위치와 Global Routing을 확인한 다음 Connectivity Test를 실행하세요. 추가로 확인하려면 Settings에서 현재 제공되는 Diagnostics 또는 Log 메뉴를 찾아 필요에 따라 한 차례 문제 상황을 기록합니다. 메뉴 위치는 현재 화면을 기준으로 확인하고, 기록을 마치면 로그 설정을 원래대로 돌려놓으세요.
- 로컬 네트워크 확인. 먼저 네트워크 자체가 정상적으로 연결되는지 확인하고, 로그인이 필요한 Wi-Fi인지도 살펴보세요. 같은 네트워크에서 테스트를 한 번 더 실행해 문제가 반복되는지 기록합니다.
- 서버 매개변수 확인. 사용자가 보유한 정보를 기준으로 프로토콜, 주소, 포트와 인증 항목을 확인하세요. 구독은 업데이트되지만 연결되지 않는 경우에도 실제 선택한 서버는 별도로 테스트해야 합니다.
- 라우팅 요인 분리. 같은 대상을
Proxy와Config에서 각각 테스트해 결과를 잠시 비교하세요. 전자는 정상이고 후자는 문제가 있다면 현재 구성, 일치한 규칙과 정책 그룹 선택을 우선 확인하세요. - DNS 조회 및 요청 확인. 대상의 조회가 성공했는지, 어떤 주소를 사용했는지, 요청에 어떤 정책이 적용됐는지 확인하세요. 일부 대상에서만 문제가 발생한다면 전체 구성을 다시 만들기보다 해당 대상부터 살펴보세요.
- 설정 복원 및 재테스트. 효과가 확인된 변경 사항은 유지하고 임시 테스트 설정은 되돌리세요. 평소의 라우팅 모드와 On Demand 조건을 복원한 뒤 실제 접속을 다시 테스트합니다.
주의사항: 로그에는 서버 주소, 인증 정보, 구독 링크와 접속 기록이 포함될 수 있습니다. 외부에 공유하기 전에 항목별로 확인하고 민감한 정보를 가리세요. 전체 인증 정보는 문제 해결 자료로 공개하지 마세요. 시스템의 VPN 표시, 서버 테스트 성공, 대상 페이지 로딩 성공은 서로 다른 단계의 증거이므로 각각 확인해야 합니다.