규칙 구문 예시
[Rule]
DOMAIN-SUFFIX,example.com,PROXY
IP-CIDR,192.168.0.0/16,DIRECT
FINAL,PROXY
첫 번째 규칙은 example.com과 하위 도메인에 적용되고, 두 번째 규칙은 지정된 로컬 주소 범위에 적용됩니다. 마지막 규칙은 앞선 규칙에 일치하지 않은 연결을 처리합니다. 구문 이해를 위한 예시이며 그대로 실행할 수 있는 완전한 설정은 아닙니다.
먼저 Global Routing을 확인한 다음 규칙, 서버, DNS를 점검하세요. 설정은 한 번에 하나씩 변경하고, 복원할 수 있도록 설정 사본을 보관하세요.
Shadowrocket은 iPhone, iPad, Mac(Apple 칩 및 Intel), Windows, Android, Linux에서 사용할 수 있습니다. 플랫폼별 다운로드 방법은 앱 다운로드를 확인하세요. 이 페이지에서는 앱을 다시 설치하거나 기존 설정을 지울 필요가 없습니다.
연결 처리 방식을 선택하는 설정입니다. 서버 프로토콜이나 속도 단계가 아닙니다.
무엇인가요: Global Routing은 연결을 Config의 규칙에 따라 처리할지, 현재 Proxy를 일괄 적용할지, 아니면 Direct로 연결할지를 결정합니다. Config, Proxy, Direct는 각각 화면에 표시되는 모드 이름입니다. 여기서 Config는 실행 모드이며, 하단의 Config 화면은 설정 파일을 관리하는 곳입니다. 서로 관련은 있지만 같은 메뉴는 아닙니다.
위치와 설정 방법: Home에서 Global Routing을 찾아 원하는 모드를 선택하세요. 규칙 설정이 있다면 보통 Config를 사용하고, Config 화면에서 예상한 파일이 활성화되어 있는지 확인합니다. 규칙이 문제인지 확인할 때는 잠시 Proxy로 전환해 비교할 수 있습니다. 로컬 네트워크 연결 상태를 확인하려면 Direct로 전환하세요. 점검이 끝나면 임시 모드를 장기 설정으로 남겨 두지 않도록 원래 모드로 되돌립니다.
| 모드 | 처리 방식 | 사용 시점 | 주의사항 |
|---|---|---|---|
| Config · 구성 | 현재 설정의 규칙과 정책에 따라 연결을 처리합니다. | 도메인, 주소 또는 기타 조건에 따라 연결을 분기해야 할 때 사용합니다. | 활성화된 파일과 규칙 순서를 확인하세요. 가져온 것만으로 활성화되는 것은 아닙니다. |
| Proxy · 프록시 | 주로 현재 선택한 Proxy를 통해 연결을 처리합니다. | 규칙 모드와 잠시 비교해 서버 사용 가능 여부를 확인할 때 사용합니다. | 모든 시스템 트래픽이 반드시 이 모드를 거치는 것은 아닙니다. 시스템 및 관련 설정의 영향을 받습니다. |
| Direct · 직접 연결 | 주로 현재 로컬 네트워크를 통해 직접 연결합니다. | 네트워크 기본 연결 상태를 점검하거나 직접 연결이 필요한 경우 사용합니다. | 연결을 중지하는 스위치가 아닙니다. 현재 연결 상태와 라우팅 모드를 각각 확인하세요. |
규칙은 ‘어떤 연결인지’를, 정책은 ‘어떻게 처리할지’를 결정합니다. 먼저 가장 먼저 일치한 규칙을 확인한 다음 해당 규칙이 참조하는 정책을 점검하세요.
무엇인가요: 규칙은 설정된 순서대로 연결과 비교되며, 일치하면 해당 정책으로 처리됩니다. DOMAIN은 지정된 도메인과 일치하고, DOMAIN-SUFFIX는 도메인 및 하위 도메인과 일치하며, DOMAIN-KEYWORD는 도메인에 포함된 키워드와 일치합니다. IP-CIDR과 IP-CIDR6은 각각 IPv4와 IPv6 주소 범위를 나타냅니다. GEOIP는 IP 주소의 지역 정보를 사용합니다. USER-AGENT 규칙은 클라이언트가 해당 요청 정보를 가져올 수 있는지에 따라 적용 여부가 달라집니다. 모든 연결에서 이를 식별할 수 있다고 가정하지 마세요.
위치와 설정 방법: Config에서 현재 활성화된 설정 파일을 확인한 뒤 사본을 저장하고 규칙을 편집하세요. 범위가 구체적인 규칙을 포괄적인 규칙보다 앞에 두고, 마지막에 FINAL로 나머지 연결의 처리 방식을 지정합니다. DIRECT는 직접 연결, REJECT는 연결 거부를 의미합니다. 예시의 PROXY는 프록시 처리 정책을 나타냅니다. 실제 설정에서는 정책 그룹이나 서버 이름이 존재하는지도 확인하세요. 이름이 같다는 이유만으로 참조가 유효하다고 볼 수는 없습니다.
[Rule]
DOMAIN-SUFFIX,example.com,PROXY
IP-CIDR,192.168.0.0/16,DIRECT
FINAL,PROXY
첫 번째 규칙은 example.com과 하위 도메인에 적용되고, 두 번째 규칙은 지정된 로컬 주소 범위에 적용됩니다. 마지막 규칙은 앞선 규칙에 일치하지 않은 연결을 처리합니다. 구문 이해를 위한 예시이며 그대로 실행할 수 있는 완전한 설정은 아닙니다.
기존 연결은 이전 연결 상태를 유지할 수 있습니다. 변경 후 새 요청을 시작해 확인하고, 이전 페이지의 캐시 결과로 새 규칙을 판단하지 마세요.
주의사항: 설명할 수 없는 규칙을 한꺼번에 많이 추가하지 마세요. DOMAIN-KEYWORD는 예상보다 넓은 범위에 적용될 수 있고, GEOIP 결과는 데이터와 조회된 주소의 영향을 받습니다. 도메인 규칙은 IP 주소를 직접 입력한 연결에는 적용되지 않을 수 있습니다. 특정 대상을 차단하려면 실제 요청 도메인을 먼저 확인해 지나치게 넓은 조건으로 다른 연결까지 영향을 주지 않도록 하세요. 원격 규칙이 포함된 설정은 원격 콘텐츠가 정상적으로 업데이트되었는지도 확인해야 합니다.
서버 정보, 구독, 규칙 설정은 서로 용도가 다릅니다. 가져오기 전에 가지고 있는 정보가 무엇인지 확인하세요.
무엇인가요: 서버 항목에는 연결에 필요한 주소, 포트, 프로토콜, 인증 정보가 저장됩니다. Subscribe는 사용자가 이미 보유한 구독 주소에서 서버 정보를 업데이트합니다. Config에는 라우팅 규칙 등의 설정이 저장됩니다. 구독 업데이트에 성공해도 콘텐츠를 가져와 해석했다는 뜻일 뿐, 모든 서버에 연결할 수 있거나 관련 규칙이 활성화되었다는 의미는 아닙니다.
위치와 설정 방법: Home의 SERVER 영역에서 서버를 관리하고, Add Server에서 기존 정보와 일치하는 유형을 선택하세요. 직접 입력할 때는 주소, 포트, 비밀번호 및 기타 인증 항목을 하나씩 확인합니다. 기존 QR 코드는 Scan QR Code로 가져오고, 이미 보유한 구독은 Subscribe의 해당 메뉴에서 추가할 수 있습니다. 작업 후 그룹과 항목이 표시되는지 확인하고, 서버를 선택해 Connectivity Test를 실행한 다음 연결을 시작해 실제 요청으로 확인하세요.
프로토콜은 기존 서버 정보와 일치해야 합니다. 예를 들어 Shadowsocks, VMess, VLESS, Trojan, WireGuard, Hysteria2 등이 있습니다. 테스트를 통과하려고 임의로 바꾸지 마세요. 전송 방식, TLS, 서버 이름 등의 추가 항목도 원래 정보와 하나씩 맞춰야 합니다. 이 항목들은 모두 비워도 되는 공통 옵션이 아닙니다. 값이 빠져 있다면 다른 서버의 정보를 복사하지 말고 원본 정보를 확인하세요.
주의사항: 구독을 업데이트하면 항목, 이름, 그룹이 갱신될 수 있습니다. 중요한 수동 변경 사항은 별도로 기록하고 저장 방법을 확인하세요. 그룹을 삭제하기 전에는 그룹 안에 직접 추가한 서버가 있는지 확인합니다. 구독 주소와 QR 코드에는 인증 정보가 포함될 수 있으므로 화면이나 진단 정보를 공유하기 전에 전체 링크, 비밀번호, 식별 정보를 가리세요. 테스트에 실패하면 원래 항목을 보존하고 복사본을 수정해 비교 및 복원할 수 있도록 하세요.
수동 연결을 먼저 확인한 다음 자동 연결을 설정하세요. 기본 연결 문제를 자동화로 가리지 마세요.
무엇인가요: On Demand는 시스템이 지원하는 조건에 따라 연결을 시작하는 기능으로, 네트워크 환경에 맞춰 연결 동작을 설정할 수 있습니다. 규칙 기반 라우팅과 역할이 다릅니다. On Demand는 연결을 언제 시작할지 정하고, Global Routing과 Config는 연결이 시작된 후 요청을 어떻게 처리할지 정합니다. 예약 작업이 아니므로 임의의 시간이나 앱 동작을 자동으로 제어하는 기능으로 이해해서는 안 됩니다.
위치와 설정 방법: Settings에서 On Demand를 찾아 현재 화면에 표시되는 네트워크 조건에 따라 동작을 설정하세요. 먼저 기존 상태를 기록하고, 지정된 Wi-Fi 네트워크에서 연결을 시작하는 등 반복해서 확인할 수 있는 조건을 하나만 추가합니다. 저장 후 대상 네트워크로 전환해 시스템 연결 상태를 확인하고 새 요청을 열어 테스트하세요. 시스템에서 처음으로 VPN 구성을 추가하라는 메시지가 표시되면 내용을 읽고 확인하세요.
주의사항: 수동으로 연결을 끈 뒤 다시 연결되면 설정을 계속 삭제하기 전에 On Demand가 여전히 작동하는지 확인하세요. 네트워크 전환, 시스템 연결 관리, 조건 순서가 확인 결과에 영향을 줄 수 있습니다. 문제를 점검할 때는 On Demand를 잠시 끄고 수동 연결이 안정적인지 확인한 후 조건을 하나씩 다시 활성화하세요. 연결을 완전히 중지하려면 자동 연결 설정과 기본 스위치를 모두 확인해야 합니다.
통계는 클라이언트가 처리한 연결을 파악하는 데 쓰이며, 서비스 제공자의 사용량 데이터나 실제 다운로드 테스트를 대신하지 않습니다.
무엇인가요: Data에서는 트래픽 및 연결 정보를 확인할 수 있으며, 표시 항목은 현재 화면에 따라 다릅니다. ‘요청이 클라이언트에 들어왔는지’, ‘규칙을 바꾼 뒤 연결이 어디로 향했는지’를 파악하는 데 유용합니다. 업로드, 다운로드, 총량은 참고 지표이지 서버 품질 점수가 아닙니다. 트래픽이 늘어도 대상 페이지가 완전히 로드되었다는 뜻은 아닙니다.
위치와 설정 방법: Data를 열고 통계 범위를 확인한 다음, 조건을 통제한 테스트 전후의 변화를 비교하세요. 연결 세부 정보가 표시된다면 대상 주소, 연결 시간, 정책 정보를 함께 확인합니다. 기록을 지우거나 통계를 초기화하기 전에 비교에 필요한 내용을 저장하세요. 동일한 기준으로 확인한 뒤 서로 다른 시점의 결과를 비교합니다.
주의사항: 클라이언트 통계는 시스템의 모바일 데이터 통계나 서비스 제공자의 사용량과 다를 수 있습니다. 반복 연결과 백그라운드 요청도 트래픽을 발생시킵니다. 이를 근거로 기기의 모든 앱이 사용한 정확한 데이터양을 추정하지 마세요. 기록에는 방문 도메인과 주소가 포함될 수 있으므로 문제 해결 자료를 제공할 때 필요한 항목만 남기세요. 속도를 확인하려면 같은 대상을 실제로 전송 테스트하고 네트워크 환경을 함께 기록하세요.
메뉴가 있다고 해서 반드시 바꿔야 하는 것은 아닙니다. 안정적으로 작동하는 설정은 유지하고, 확인된 문제와 관련된 항목만 조정하세요.
무엇이며 어디에 있나요: DNS는 도메인 이름을 주소로 변환합니다. 관련 동작은 Settings와 현재 Config의 영향을 함께 받을 수 있습니다. 웹사이트가 열리지 않을 때 DNS도 점검할 수 있지만, 모든 연결 실패를 DNS 문제로 단정해서는 안 됩니다.
설정 방법: 먼저 현재 DNS 설정을 기록하고 설정 파일에 별도의 DNS 정의가 있는지 확인하세요. 어떤 DNS 처리 단계를 바꿀지 정한 뒤 한 번에 하나만 변경하고, 같은 도메인에 다시 요청해 결과를 살펴봅니다. DNS 서비스를 선택할 때는 접근 경로와 개인정보 처리 방식을 고려하세요. 응답 시간 하나만 보고 모든 설정을 바꾸지 마세요.
주의사항: IP 주소로는 연결되지만 도메인으로는 실패한다면 DNS 문제를 의심할 수 있지만, 이것만으로 원인이 확정되지는 않습니다. TLS 서버 이름, 캐시, IPv6 연결 가능성도 결과에 영향을 줄 수 있습니다. 변경 후에는 캐시된 결과와 새 연결을 구분하고, 조회된 주소와 이후 연결 동작이 일치하는지 확인하세요.
무엇이며 어디에 있나요: Test Method는 연결 테스트 방식을 선택하는 항목으로, 보통 Settings에서 확인할 수 있습니다. Home의 Connectivity Test는 서버에 테스트를 실행합니다. 테스트 방식마다 확인하는 단계가 다르므로 방식을 고려하지 않고 결과를 직접 비교할 수는 없습니다.
설정 방법: 현재 화면에서 제공하는 테스트 방식을 선택한 뒤, 방식과 서버, 네트워크 환경을 고정해 반복 테스트하세요. 테스트 대상이 있다면 대상도 동일하게 유지합니다. 먼저 테스트를 완료할 수 있는지 확인하고 결과의 변화를 살펴보세요. 한 번 낮게 나온 결과를 장기적인 성능으로 판단하지 마세요.
주의사항: 포트에 연결할 수 있다고 인증에 성공한 것은 아니며, 요청 한 번이 완료되었다고 모든 대상에 접근할 수 있는 것도 아닙니다. 시간 초과가 표시되면 로컬 네트워크, 서버 주소와 포트, 프로토콜 설정, 시스템 시간 순서로 확인하세요. 시간 초과 기준만 조정하고 실제 실패 원인을 건너뛰지 마세요.
무엇이며 어디에 있나요: Today Widget은 시스템 위젯을 통한 빠른 실행 기능입니다. 앱 내 관련 항목은 Settings에서 찾을 수 있습니다. 실제 위젯 추가와 배치는 시스템 위젯 화면에서 관리하며, 표시 여부와 제공되는 동작은 현재 시스템 및 앱에 따라 다릅니다.
설정 방법: 먼저 앱에서 서버 선택, Global Routing, 수동 연결이 정상인지 확인하세요. 그런 다음 시스템 위젯 편집 화면에서 사용할 수 있는 Shadowrocket 위젯을 추가합니다. 처음 사용한 뒤 앱으로 돌아가 상태를 확인하고 빠른 실행이 예상대로 작동하는지 점검하세요.
주의사항: 위젯은 실행 메뉴일 뿐 설정 관리 기능을 대신하거나 누락된 서버 정보를 채워 주지 않습니다. 위젯 표시와 앱 상태가 다르면 먼저 앱을 열어 확인한 뒤 시스템의 새로고침 상태를 점검하세요. 위젯에 표시된 문구만 보고 연결이 성공했다고 판단하지 마세요.
무엇이며 어디에 있나요: iCloud 동기화는 지원되는 데이터를 동기화하는 기능입니다. Settings와 시스템의 iCloud 설정에서 관련 항목을 확인할 수 있습니다. 동기화는 별도 백업과 다릅니다. 변경이나 삭제가 다른 기기에도 반영될 수 있으므로 과거 사본이 영구 보존되는 보관 기능으로 간주하지 마세요.
설정 방법: 기기에서 올바른 iCloud 계정을 사용 중인지, 시스템에서 Shadowrocket의 iCloud 사용을 허용했는지 확인하세요. 그런 다음 앱에서 제공하는 옵션으로 동기화를 켭니다. 처음 사용하거나 새 기기로 바꿀 때는 복원 가능한 설정 사본을 먼저 저장하고, 동기화가 끝나면 Config, 서버 항목, 관련 설정을 하나씩 확인하세요.
주의사항: 모든 임시 상태, 로그, 시스템 권한이 기기 간에 복원된다고 가정하지 마세요. 구독 주소 등에 인증 정보가 포함될 수 있으므로 내보낸 사본은 보호된 위치에 보관하세요. 두 기기에서 동시에 수정하기 전에 어느 쪽을 유지할지 정하고, 동기화 결과를 확인하기 전에 연속으로 덮어쓰지 마세요.
무엇이며 어디에 있나요: Diagnostics는 문제 해결에 필요한 단서를 수집하거나 확인하는 기능으로, Settings에서 관련 메뉴를 찾을 수 있습니다. 버전에 따라 도구와 출력 내용이 다를 수 있으므로 모든 도구를 차례로 실행하기보다 실제로 실패한 단계에 맞는 항목을 선택하세요.
설정 방법: 재현 시간, 네트워크 유형, Global Routing 모드, 선택한 서버, 증상을 먼저 기록하세요. 문제를 다시 재현한 뒤 관련 출력 내용을 확인합니다. 실패 시점과 가까운 오류 정보를 우선 확인하고 Data의 연결 기록과 함께 살펴보세요. 전체 절차가 필요하면 문제 해결에서 증상별 점검 방법을 확인하세요.
주의사항: 진단 기록에는 주소, 도메인, 인증 정보가 포함될 수 있습니다. 공유하기 전에 구독 주소, 비밀번호 및 기타 민감한 정보를 가리세요. 설정 파일 전체를 공개하지 마세요. 오류 한 줄만 보고 판단하지 말고 주변 맥락을 확인해 정상적인 재시도나 취소 기록을 모든 연결의 실패로 오해하지 않도록 하세요.
설정을 변경할 때마다 무엇을 바꿨는지, 어떻게 재현했는지, 결과가 어땠는지, 어떻게 되돌릴 수 있는지 확인하세요.
첫 연결을 아직 완료하지 않았다면 Shadowrocket 사용법을 먼저 확인하세요. 반복적으로 연결에 실패한다면 문제 해결을 참고하세요. 구매 복원, 플랫폼 선택, 다운로드 방법은 앱 다운로드에서 확인할 수 있습니다. 설정 문제를 점검하기 위해 앱을 반복해서 삭제할 필요는 없습니다.
플랫폼별 다운로드 및 요금: iPhone / iPad 버전은 App Store에서 $2.99를 한 번 결제합니다. 시스템 요구 사항은 App Store 페이지를 확인하세요. Mac(Apple 칩 및 Intel), Windows, Android, Linux 버전은 무료이며 설치 파일은 이 사이트의 /dl/에서 제공합니다. 클라이언트 비용과 사용자가 보유한 서비스 비용은 별도로 계산됩니다.