Shadowrocket 프록시 모드
Global Routing 및 주요 설정
먼저 트래픽을 어떤 방식으로 라우팅할지 확인한 다음 규칙, 서버, DNS를 설정하세요. 이 페이지에서는 자주 쓰는 기능의 의미와 위치, 설정 방법, 주의점을 설명합니다. 모드 선택, 서버 연결, 도메인 확인 문제를 구분해 점검할 수 있습니다.
Shadowrocket은 iPhone / iPad, Mac(Apple 실리콘 / Intel), Windows, Android, Linux 버전을 제공합니다. 아래 화면 경로는 iPhone / iPad를 기준으로 합니다. 다른 플랫폼의 화면 구성과 사용 가능한 옵션은 해당 클라이언트에서 확인하세요.
Global Routing: Config, Proxy, Direct
무엇인가요: Global Routing은 Shadowrocket이 처리하는 연결의 출구를 결정합니다. Config는 현재 구성의 규칙에 따라 트래픽을 분기하고, Proxy는 해당 연결을 프록시 경로로 보내며, Direct는 현재 네트워크를 통해 직접 접속합니다. 세 가지는 라우팅 방식이지 연결 프로토콜이 아니며, 서버의 정상 여부를 나타내지도 않습니다.
어디에서 설정하나요: Home으로 이동해 Global Routing을 찾으세요. 선택 전에 현재 사용할 서버와 Config에서 활성화한 구성을 확인하세요. 구성을 가져오기만 하고 선택하지 않았다면 실제 트래픽 처리에 적용되지 않습니다.
| 모드 및 화면 표시 | 라우팅 기준 | 사용 상황 | 확인할 항목 |
|---|---|---|---|
| 구성 / Config | 현재 활성화된 구성 및 규칙 | 도메인, IP 등의 조건에 따라 서로 다른 정책 적용 | 구성 선택 여부, 규칙 순서, 최종 정책 |
| 프록시 / Proxy | 현재 선택된 프록시 출구 | 프록시 경로를 임시 비교 테스트해 라우팅 문제 범위 좁히기 | 서버 매개변수, 연결 상태, 대상 접근 가능 여부 |
| 직접 연결 / Direct | 현재 네트워크를 통한 직접 접속 경로 | 로컬 네트워크 비교 테스트 또는 임시 직접 연결 | 로컬 네트워크, DNS, 대상 접속 조건 |
어떻게 설정하나요: 평소에 사용할 수 있는 라우팅 구성이 있다면 먼저 Config를 선택하세요. 특정 대상에 접속할 수 없다면 네트워크, 서버, 대상을 그대로 둔 채 Proxy로 잠시 전환해 비교합니다. 로컬 네트워크에서 직접 접속할 수 있는지 확인하려면 Direct를 테스트하세요. 전환할 때마다 새 연결을 시도하고, 필요한 경우 연결 스위치를 껐다 켜 기존 세션의 영향을 피하세요.
주의 사항: Proxy가 기기의 모든 통신을 처리하는 것은 아닙니다. 시스템 서비스, 로컬 네트워크 제외 항목, 플랫폼 작동 방식에 따라 경로가 달라질 수 있습니다. Proxy는 되지만 Config가 안 된다면 규칙과 정책 참조를 먼저 확인하세요. 둘 다 실패한다면 서버와 네트워크를 점검하세요. 비교 테스트가 끝나면 평소 사용할 모드로 되돌리고 테스트 설정을 계속 사용하지 않도록 주의하세요.
규칙 라우팅: 일치 조건과 실행 정책
무엇인가요: 규칙은 일치 조건과 정책으로 구성됩니다. DOMAIN은 지정한 도메인과 일치하고, DOMAIN-SUFFIX는 도메인 접미사와 일치하며, DOMAIN-KEYWORD는 도메인에 포함된 키워드로 일치 여부를 판단합니다. IP-CIDR과 IP-CIDR6은 각각 IPv4 및 IPv6 네트워크 대역을 지정하고, GEOIP는 IP의 지리적 위치를 기준으로 일치 항목을 찾습니다. USER-AGENT는 해당 요청 정보를 가져올 수 있는지에 따라 실제 매칭 여부가 달라지므로 일반적인 앱 식별 방식으로 간주하면 안 됩니다.
어디에서 확인하나요: Config로 이동해 현재 선택된 구성과 규칙을 확인하세요. 해당 구성의 규칙으로 트래픽을 분기하려면 Home의 Global Routing에서 Config를 선택해야 합니다. 서버 목록과 규칙 목록은 서로 다른 역할을 합니다. 서버 목록은 연결 매개변수를 저장하고, 규칙 목록은 각 연결에 적용할 정책을 결정합니다.
어떻게 설정하나요: 먼저 기존 구성을 백업한 다음, 범위가 좁은 예외 규칙을 범위가 넓은 규칙보다 앞에 배치하세요. 아래는 문법 예시일 뿐이며, example.com과 example.org는 문서용 예시 도메인이지 서버 정보가 아닙니다. 실제 사용 전 필요에 맞게 바꾸고 동작을 확인하세요.
[Rule]
DOMAIN,example.com,PROXY
DOMAIN-SUFFIX,example.org,DIRECT
DOMAIN,ads.example.com,REJECT
IP-CIDR,192.168.0.0/16,DIRECT
FINAL,PROXY
PROXY는 프록시 정책, DIRECT는 직접 연결, REJECT는 연결 거부를 뜻합니다. FINAL은 앞선 조건에 일치하지 않을 때 적용되는 최종 처리 항목으로, 규칙 끝에 배치해야 합니다. 사용자 지정 정책 이름을 사용하는 구성에서는 해당 이름이 존재하는지, 참조가 일치하는지 확인하세요. 존재하지 않는 이름은 유효한 출구로 사용할 수 없습니다.
주의 사항: 규칙은 일반적으로 순서대로 일치 여부를 확인하므로 앞쪽의 포괄적인 조건이 뒤쪽의 구체적인 조건을 가릴 수 있습니다. 도메인 규칙과 IP 규칙은 서로 다른 정보를 기준으로 판단하며, DNS와 캐시도 접속 결과에 영향을 줍니다. 수정한 뒤에는 대상 하나를 정해 규칙이 적용되는지 확인하세요. REJECT를 잘못 사용하면 페이지에 필요한 리소스가 차단될 수 있습니다. 대상 하나의 문제를 해결하기 위해 구성 전체를 한 번에 교체하지 마세요.
Subscribe 및 Add Server: 구독과 서버 관리
무엇인가요: 서버 항목에는 연결에 필요한 주소, 포트, 프로토콜, 인증 매개변수가 저장됩니다. 구독은 사용자가 보유한 주소에서 서버 정보를 가져오고 이후 업데이트하는 기능입니다. 가져오기에 성공해도 항목이 여전히 유효하거나 모든 서버가 현재 네트워크에서 연결된다는 뜻은 아닙니다.
어디에서 설정하나요: Home에서 서버를 관리하고 Add Server로 항목을 추가하세요. 기존 구독이 있다면 추가 메뉴에서 Subscribe를 선택합니다. QR 코드가 있다면 Scan QR Code를 사용할 수 있습니다. 플랫폼에 따라 메뉴 위치가 다를 수 있으므로 화면에서 같은 영어 이름을 찾으세요.
어떻게 설정하나요: 먼저 구독 주소나 서버 정보를 이미 보유하고 있는지 확인하세요. 구독 주소는 공백이나 줄바꿈을 추가하지 말고 그대로 붙여넣습니다. 서버를 직접 추가한다면 프로토콜, 주소, 포트, 인증 항목을 하나씩 확인하세요. Shadowsocks, VMess, VLESS, Trojan, HTTP, SOCKS5, WireGuard, Hysteria2는 필요한 항목이 서로 다르므로 선택한 프로토콜의 입력 양식과 보유한 매개변수를 기준으로 설정하세요. 프로토콜 이름만 바꾸고 다른 프로토콜의 매개변수를 그대로 사용하지 마세요.
가져온 뒤 알아보기 쉬운 이름을 지정하고 Connectivity Test로 확인한 다음, Home에서 사용할 서버를 선택하세요. 구독을 업데이트한 뒤에는 현재 선택한 항목이 남아 있는지 확인하세요. 로컬 수정 내용을 보존해야 한다면 먼저 백업해 원격 업데이트로 덮어쓰지 않도록 하세요. 구독과 전체 Config는 서로 다른 기능입니다. 서버 목록을 업데이트할 수 있어도 모든 라우팅 규칙까지 동기화되는 것은 아닙니다.
주의 사항: 구독 주소에는 접근 자격 정보가 포함될 수 있으므로 공개 스크린샷, 로그, 채팅에 올리지 마세요. 업데이트에 실패하면 주소가 완전한지, 현재 네트워크에서 읽을 수 있는지, 자격 정보가 유효한지 먼저 확인한 뒤 다시 시도하세요. 기존 항목이 남아 있다면 데이터를 모두 삭제할 필요는 없습니다. 이 사이트는 서버나 구독을 제공, 판매, 추천하지 않으며 사용자가 보유한 정보를 활용하는 방법만 안내합니다.
On Demand: 조건에 따라 연결하기
무엇인가요: On Demand는 조건이 충족되면 시스템이 연결을 시도하도록 하는 기능입니다. 언제 연결할지를 정하는 기능이며, 연결 후 트래픽을 어떻게 분기할지는 Global Routing에서 정합니다. On Demand를 켜도 서버 매개변수 문제가 해결되지는 않으며, 네트워크 전환 중 모든 기존 세션이 계속 유지된다고 보장하지도 않습니다.
어디에서 설정하나요: Settings에서 On Demand를 찾아 현재 플랫폼에서 제공하는 조건과 예외 항목을 확인하세요. 현재 클라이언트에 같은 이름의 항목이 보이지 않으면 해당 플랫폼의 설정 화면을 기준으로 확인하세요. 다른 플랫폼의 시스템 설정을 대신 참고하지 마세요.
어떻게 설정하나요: 먼저 수동으로 연결해 서버, DNS, 규칙이 모두 작동하는지 확인한 다음 On Demand를 켜세요. 화면에서 네트워크 조건을 설정할 수 있다면 지정한 네트워크에서 연결하는 등 명확한 시나리오 하나만 먼저 설정합니다. 저장한 뒤 네트워크를 바꾸고 시스템 연결 상태를 확인한 다음 대상에 실제로 접속해 검증하세요. 예외를 추가할 때마다 조건이 충족되는 경우와 해제되는 경우를 모두 테스트해야 합니다.
주의 사항: 수동으로 연결을 끈 뒤 다시 연결된다면 On Demand 조건이 다시 작동한 것일 수 있으며, 스위치가 고장 난 것은 아닐 수 있습니다. 테스트를 완전히 중단하려면 먼저 On Demand를 끄고 주 연결도 해제하세요. 로그인이 필요한 공용 네트워크에서는 먼저 네트워크 로그인을 마친 뒤 연결을 확인하세요. 네트워크가 아직 작동하지 않을 때 프로토콜 매개변수를 반복해서 바꾸지 마세요.
Data: 트래픽 확인과 연결 테스트는 별도로
무엇인가요: Data는 클라이언트가 처리한 트래픽 통계를 제공해 업로드, 다운로드, 사용량 변화를 확인할 수 있게 합니다. 표시되는 정보는 현재 클라이언트가 확인할 수 있는 범위에 한정되며, 통신사 요금 청구 내역이나 서버의 과금 기록과는 다릅니다. 통계 기간, 초기화 방식, 표시 기준은 현재 화면의 안내를 따르세요.
어디에서 확인하나요: Data를 열고 먼저 확인 중인 통계 범위를 살펴본 뒤 수치를 비교하세요. 현재 플랫폼에서 연결별 또는 시간별 통계를 제공한다면 이번 테스트와 일치하는 범위를 선택하세요. 서로 다른 기간의 누적값을 단순히 빼서 한 번의 접속에 사용된 양으로 판단하지 마세요.
어떻게 설정하나요: 일반적으로 통계는 확인만 하면 되며 사용을 시작하기 위해 조정할 필요는 없습니다. 비교가 필요하다면 테스트 전 시간과 수치를 기록하고, 다른 진행 중인 다운로드를 멈춘 뒤 정해진 작업을 한 번 수행하고 변화를 확인하세요. 통계를 초기화하려면 먼저 보관할 기록을 저장하고 초기화 범위를 확인하세요.
주의 사항: 백그라운드 동기화, 이미지 로드, 연결 재시도도 트래픽을 발생시킬 수 있습니다. 수치가 늘었다고 페이지가 정상적으로 로드됐다는 뜻은 아니며, 수치가 늘지 않았다고 서버가 작동하지 않는다고 단정할 수도 없습니다. 라우팅 모드와 연결 상태, 실제 요청을 함께 확인하세요. 트래픽 통계로 변화를 파악할 수 있지만 연결 성공 여부는 테스트와 로그를 함께 살펴봐야 합니다.
Settings: DNS, 테스트 방식, 자주 쓰는 메뉴
DNS: 도메인 확인과 라우팅을 함께 점검하세요
무엇이며 어디에서 확인하나요: DNS는 도메인을 IP 주소로 변환합니다. Settings에서 DNS 관련 설정을 확인하고, 현재 Config에도 DNS 항목이 지정되어 있는지 살펴보세요. 구성 수준의 설정이 실제 동작에 영향을 줄 수 있으므로 설정 화면의 값 하나만 확인해서는 안 됩니다.
어떻게 설정하나요: 변경 전에 기존 값을 기록하고 문제가 도메인 접속에서만 발생하는지 확인하세요. 네트워크는 정상인데 특정 도메인에 접속할 수 없다면 DNS 주소 형식, 현재 네트워크에서의 연결 가능 여부, 구성에 별도 지정이 있는지 점검하세요. 현재 환경에 적합한 것으로 확인된 DNS 방식을 사용하고 한 번에 하나씩만 바꾸세요. 다시 연결한 뒤 새 요청을 보내 결과를 비교하세요.
주의 사항: 도메인 확인에 성공해도 대상 서버에 연결된다는 뜻은 아닙니다. IP 주소로 접속할 수 있어도 모든 도메인 요청을 IP로 바꿀 수 있는 것은 아닙니다. 인증서와 서비스 선택에 도메인 이름이 필요할 수 있습니다. DNS를 모든 연결 문제의 해결책으로 보지 말고, 특히 DNS, 서버, 라우팅 모드를 동시에 바꾼 뒤 원인을 판단하지 마세요.
Test Method: Connectivity Test 비교 조건 통일하기
무엇이며 어디에서 설정하나요: Test Method는 연결 테스트 방식을 선택하는 항목입니다. Settings에서 찾아 설정한 뒤 Home으로 돌아가 Connectivity Test를 실행하세요. 선택 가능한 방식은 현재 클라이언트에 표시된 항목을 기준으로 합니다.
어떻게 설정하나요: 여러 서버를 비교할 때는 테스트 방식, 네트워크, 테스트 대상을 동일하게 유지하세요. 테스트 대상을 설정할 수 있다면 해당 대상이 정상적으로 응답하는지 먼저 확인합니다. 한 번의 결과가 이상하면 잠시 뒤 다시 테스트하고 실제 접속 결과와 함께 판단하세요. 한 번 표시된 수치만으로 서버를 선택하지 마세요.
주의 사항: 테스트 방식마다 측정하는 단계가 다르므로 결과를 직접 비교하기 어려울 수 있습니다. 표시된 응답 시간은 다운로드 속도를 뜻하지 않으며 모든 앱의 사용 환경을 반영하지도 않습니다. 테스트 방식을 바꿔도 서버 프로토콜이나 인증 매개변수는 변경되지 않습니다.
Today Widget: 빠른 조작 후 상태 확인하기
무엇이며 어디에서 설정하나요: Today Widget은 시스템에서 지원하는 경우 사용할 수 있는 빠른 실행 메뉴입니다. Settings에서 관련 설정을 찾아 시스템에서 제공하는 방법으로 해당 영역에 추가하세요. 이 메뉴의 제공 여부와 실행 가능한 작업은 플랫폼과 시스템에 따라 다릅니다.
어떻게 설정하나요: 먼저 기본 앱에서 서버, 구성, 모드를 선택하고 정상적으로 연결되는지 확인한 뒤 빠른 실행 메뉴를 추가하세요. 처음으로 해당 메뉴에서 상태를 전환한 다음 Home으로 돌아가 선택 항목과 실제 연결 상태가 예상대로인지 확인하세요.
주의 사항: 빠른 실행 메뉴는 별도의 구성이 아닙니다. 화면이 바로 갱신되지 않으면 기본 앱을 열어 확인하고, 여러 번 눌러 상태를 연속으로 바꾸지 마세요. 수동 조작 후에도 자동 연결 조건이 작동할 수 있으므로 On Demand와 함께 살펴보세요.
iCloud: 동기화 전에 데이터 범위 확인하기
무엇이며 어디에서 설정하나요: 지원되는 Apple 기기에서는 iCloud 관련 옵션을 사용해 동일한 계정 환경에서 클라이언트가 지원하는 데이터를 저장하거나 동기화할 수 있습니다. Settings에서 iCloud 항목을 찾고 시스템에서 Shadowrocket의 iCloud 사용을 허용했는지도 확인하세요.
어떻게 설정하나요: 먼저 원본 기기에서 로컬 백업을 저장하고 동기화를 켜세요. 완료될 때까지 기다린 다음 다른 기기에서 구성 이름, 규칙, 서버 항목을 확인합니다. 화면에 표시된 항목을 기준으로 동기화 범위를 확인하세요. 기기별 연결 권한, 현재 네트워크, 실제 연결 결과는 각각 따로 검증해야 합니다.
주의 사항: iCloud를 즉시 동기화되는 완전한 백업이나 충돌이 전혀 없는 백업으로 간주하지 마세요. 두 기기에서 같은 내용을 동시에 수정하기 전에 동기화 상태를 확인해야 합니다. iCloud는 모든 플랫폼 간에 사용할 수 있는 설정 이전 방법도 아닙니다. 플랫폼을 바꿔 이전할 때는 대상 클라이언트가 지원하는 가져오기 형식을 확인하고 포함된 자격 정보를 안전하게 보호하세요.
Diagnostics: 로그로 연결 실패 단계 찾기
무엇인가요: Diagnostics는 연결 관련 정보를 확인하고 수집해 구성 읽기, 도메인 확인, 서버 연결, 대상 응답 단계에서 발생한 문제를 구분하는 데 도움이 됩니다. 로그는 문제 해결을 위한 자료이지 자동 복구 기능이 아닙니다. 오류 메시지는 발생 시각과 당시 수행한 작업을 함께 고려해야 합니다.
어디에서 확인하나요: Settings로 이동해 Diagnostics와 현재 클라이언트에서 제공하는 로그 메뉴를 찾으세요. 기록을 시작하기 전에 현재 서버, Global Routing, 구성 이름을 확인해 로그와 문제 설명이 서로 다른 테스트 상태를 가리키지 않도록 하세요.
어떻게 설정하나요: 특정 도메인을 열 수 없는 경우처럼 재현 가능한 문제 하나로 범위를 좁히세요. 테스트 시각을 기록하고 필요한 진단 항목을 켠 뒤 문제를 한 번만 재현합니다. 같은 시간대의 도메인 확인 결과, 연결 오류, 적용된 정책을 살펴보세요. Config 모드에서만 실패한다면 서버를 모두 바꾸기 전에 규칙을 집중적으로 확인하세요.
주의 사항: 로그에는 대상 도메인, IP 주소, 구독 자격 정보, 서버 정보가 포함될 수 있습니다. 내보내기 전에 내용을 확인하고 외부에 문제를 설명할 때는 필요한 부분만 남긴 뒤 민감한 항목을 제거하세요. 문제 해결이 끝나면 임시로 켠 상세 기록을 끄세요. 장시간 기록을 계속하면 저장 공간과 처리 부담이 늘어날 수 있습니다. 전체 문제 해결 절차는 문제 해결 매뉴얼을 참고하세요.
설정 완료 후 확인 순서
기능은 서로 의존합니다. 먼저 네트워크가 정상이고 서버 매개변수가 완전해야 하며, 그다음 모드와 규칙을 설정하고 마지막으로 자동 연결과 빠른 실행 메뉴를 설정해야 합니다. 아래 순서대로 확인하면 원인과 결과를 구분하기 쉽고 설정 변경에 실패했을 때 복구하기도 편합니다.
- 기본 네트워크 확인. 기기에서 네트워크 로그인을 완료하고 현재 네트워크를 정상적으로 사용할 수 있는지 확인하세요. 네트워크가 작동하지 않으면 클라이언트 설정 변경을 중단하세요.
- 서버 확인. 보유한 정보를 점검하고
Connectivity Test를 실행하세요. 서버 항목을 선택해 실제로 접속해 테스트 결과와 실제 요청 결과를 구분하세요. - Global Routing 확인. 고정된 대상을 사용해
Config,Proxy,Direct를 비교하고 어떤 모드에서 실패하는지 기록한 뒤 평소 사용할 모드로 되돌리세요. - 규칙 및 DNS 확인. 현재 구성, 규칙 순서, 최종 정책을 확인하세요. 한 번에 한 항목만 변경하고 새 요청을 보낸 뒤 결과를 판단하세요.
- 자동화 기능 확인. 수동 연결이 안정적으로 작동한 뒤
On Demand를 켜고Today Widget같은 빠른 실행 메뉴를 확인하세요. 동기화한 뒤에는 각 기기의 상태를 따로 점검하세요. - 복구 방법 마련. 작동하는 구성과 변경 기록을 저장하세요. 문제가 발생하면 가장 최근 변경을 먼저 되돌리고
Diagnostics에서 해당 시간대의 정보를 수집하세요.
처음부터 연결을 설정하려면 사용 가이드를 읽어 보세요. 프로토콜이나 규칙 키워드의 의미는 용어집에서 확인할 수 있습니다. 이 페이지에서는 기능과 설정을 안내하며, 앱 다운로드 및 플랫폼 요구 사항은 다운로드 페이지에서 확인하세요.