Shadowrocket의 Global Routing은 연결을 규칙에 따라 분기할지, 모두 프록시로 보낼지, 모두 직접 연결할지 결정합니다. 이미 사용할 구독이나 구성이 있지만 어떤 모드를 선택해야 할지 모르겠다면 이 글을 참고하세요. Config / Proxy / Direct의 역할을 확인하고, 같은 대상으로 비교 테스트한 다음 평소 설정으로 되돌리는 순서로 진행합니다. 모드를 바꿔도 프로토콜이 변경되는 것은 아니며, 유효한 서버 구성을 대신할 수도 없습니다.
Global Routing이 제어하는 것과 제어하지 않는 것
Home → Global Routing에서 선택한 모드에 따라 Shadowrocket이 처리하는 연결의 출구가 결정됩니다. Config는 현재 구성의 규칙에 따라 처리하고, Proxy는 해당 연결을 현재 프록시 선택 항목으로 보내며, Direct는 직접 연결을 사용합니다. 여기서 ‘전체’는 라우팅 결정을 뜻하며, 기기의 모든 시스템 통신이 반드시 같은 경로를 지난다는 의미는 아닙니다.
라우팅 모드와 서버 프로토콜은 별개의 항목입니다. 이미 사용 중인 서버가 Shadowsocks, VMess, VLESS, Trojan, Hysteria2 또는 WireGuard 중 무엇을 사용하든 Config / Proxy / Direct의 기본 의미는 달라지지 않습니다. Proxy로 바꿔도 서버 주소, 포트, 인증 정보가 자동으로 수정되지 않으며, Config로 되돌려도 사용자에게 맞는 규칙이 자동으로 만들어지지는 않습니다.
Config / Proxy / Direct 선택 기준
평소 Config를 사용하려면 먼저 규칙과 설정의 역할을 이해하고 있어야 합니다. 규칙 기반 라우팅을 사용하면 모든 대상을 하나의 출구로 보내지 않고 대상별로 다른 처리 방식을 지정할 수 있습니다. 규칙은 DIRECT, 프록시 정책 또는 다른 처리 방식을 지정할 수 있습니다. 앞선 규칙에 일치하는 항목이 없으면 FINAL이 경로를 결정하므로, 나머지가 모두 직접 연결된다고 단정할 수 없습니다.
Config
권장현재 구성의 규칙과 정책에 따라 출구를 선택합니다. 규칙 순서, 정책 대상, FINAL을 함께 확인하세요. Config에서만 문제가 발생한다면 규칙이나 구성 연결 설정이 원인일 수 있습니다.
적합한 경우: 규칙 구성을 이해하고 있으며, 일상적으로 트래픽을 분기하려는 경우
Proxy
처리 대상인 연결을 현재 선택한 프록시로 보냅니다. 일반적인 분기 규칙에 따라 출구를 하나씩 정하지 않습니다. 현재 서버나 정책을 사용할 수 없다면 Proxy로 바꿔도 문제가 계속될 수 있습니다.
적합한 경우: 프록시 출구를 잠시 확인하거나 Config의 규칙 적용 결과와 비교하려는 경우
Direct
처리 대상인 연결에 직접 연결 경로를 사용합니다. 라우팅 방식을 바꾸는 것이지 연결 기능을 끄거나 시스템 VPN 구성을 삭제하는 것은 아닙니다. 현재 네트워크의 접근 제한을 우회할 수도 없습니다.
적합한 경우: 현재 네트워크에서 직접 연결이 가능한지 비교하거나 로컬 대상을 잠시 확인하려는 경우
Proxy가 Config보다 항상 빠른 것은 아니며, Direct가 지연 시간을 낮춰 준다고 보장할 수도 없습니다. 속도는 현재 네트워크, 대상 서비스, 선택한 출구, DNS 응답, 연결 재사용 등 여러 요소에 따라 달라집니다. 특정 문제가 없다면 ‘전체’라는 이름만 보고 모드를 바꿀 필요는 없습니다. 먼저 라우팅 방식이 사용 목적에 맞는지 확인하세요.
정해진 순서에 따라 모드 전환하기
시작하기 전에 현재 모드, 선택한 서버 또는 정책, Config에서 사용 중인 구성을 기록합니다. 사용자에게는 이미 사용할 서비스와 구독이 있어야 합니다. Home에 사용할 수 있는 서버가 없다면 먼저 사용 안내에 따라 보유한 자료를 가져온 뒤 비교 테스트를 진행하세요. 한 번에 Global Routing만 변경해 구독 업데이트, 서버 변경, 규칙 수정을 한 테스트에 섞지 않도록 합니다.
-
기존 설정 기록
Home에서 현재 서버 또는 정책을 기록한 다음 Config로 이동해 사용 중인 구성을 확인합니다. 기존 Global Routing 모드도 적어 두었다가 테스트 후 복원하세요.
-
모드 설정 열기
Home → Global Routing으로 이동합니다. 먼저 Config를 선택하고 연결한 뒤, 접근 권한이 있는 고정된 대상을 열어 로드 여부와 연결 기록의 처리 결과를 확인합니다.
-
Proxy와 비교
Home → Global Routing에서 Proxy를 선택하되 서버와 네트워크는 그대로 유지합니다. 같은 대상으로 연결을 다시 시도해 프록시 출구를 사용하는지, 문제가 계속되는지 확인합니다.
-
Direct와 비교
Home → Global Routing에서 Direct를 선택한 다음 같은 대상을 테스트합니다. 현재 네트워크에서 직접 연결한 결과만 기록하세요. 한 번의 성공이나 실패를 모든 대상에 일반화해서는 안 됩니다.
-
기존 설정 복원
Home → Global Routing으로 돌아가 기존 모드(대개 Config)를 복원합니다. 연결을 다시 시도해 설정이 적용됐는지 확인하세요. 구성에 문제가 있다면 별도로 수정하고 테스트하되, 문제 확인용 임시 설정을 계속 사용하지 마세요.
Config에서 잘못된 출구를 사용하는 경우: 규칙 순서 확인
Config의 핵심은 규칙 매칭입니다. 일반적으로 구성에 표시된 순서대로 규칙을 확인하고 일치하는 규칙의 정책을 적용합니다. 따라서 더 구체적인 예외 규칙은 이를 덮어쓸 수 있는 포괄적인 규칙보다 앞에 두어야 합니다. 아래는 규칙 문법을 읽기 위한 예시일 뿐, 완성된 구성이나 현재 파일을 그대로 덮어쓸 것을 권장하는 설정이 아닙니다.
[Rule]
DOMAIN-SUFFIX,example.com,PROXY
IP-CIDR,192.0.2.0/24,DIRECT,no-resolve
GEOIP,CN,DIRECT
FINAL,PROXY
DOMAIN-SUFFIX,example.com,PROXY는example.com과 그 하위 도메인에 적용됩니다. 여기서PROXY는 현재 구성에서 사용할 수 있는 프록시 처리 방식을 가리켜야 합니다.IP-CIDR,192.0.2.0/24,DIRECT,no-resolve는 IP 대역 규칙의 예입니다.192.0.2.0/24는 문서에서 사용하는 예시 대역입니다.no-resolve는 이 IP 규칙과 일치하는지 확인하기 위해 도메인 조회를 먼저 수행하지 않는다는 뜻이지, 연결 전체에서 DNS가 필요 없다는 뜻은 아닙니다.GEOIP,CN,DIRECT는 IP 지리 정보 데이터베이스의 판정에 따라 매칭합니다. 웹페이지 언어, 도메인 접미사 또는 사용자의 현재 위치를 기준으로 하지 않으며, 결과는 확인된 IP 주소와 데이터베이스 내용에 따라 달라질 수 있습니다.FINAL,PROXY는 앞선 규칙에 일치하지 않은 연결을 처리합니다.FINAL,DIRECT로 바꾸면 일치하지 않은 연결의 기본 출구가 달라집니다. FINAL은 규칙 목록의 마지막에 두어야 합니다.
Proxy에서는 접속되는데 Config에서 실패한다면 새 연결에 어떤 규칙이 적용됐는지 확인한 다음 해당 규칙의 정책을 점검하세요. 웹페이지는 여러 도메인에 동시에 요청할 수 있으므로, 홈페이지 도메인이 프록시를 사용한다고 해서 이미지, 로그인 API, 기타 리소스도 같은 출구를 사용한다고 볼 수는 없습니다. 실제 연결 기록에서 관련 도메인을 확인하세요. 웹페이지 주소 규칙 하나만 추가하고 분기가 완전히 설정됐다고 판단해서는 안 됩니다.
구독 업데이트와 구성 업데이트도 서로 다릅니다. 기존 구독을 업데이트하면 주로 서버 목록과 매개변수가 바뀌며, 이로써 Config의 규칙까지 함께 바뀌었다고 볼 수는 없습니다. Config에서 현재 구성이 실제로 선택되어 있는지, 규칙이 참조하는 정책에 사용할 수 있는 서버가 있는지 확인하세요. 규칙에 관한 자세한 설명은 Rules 기능 안내를 참고하세요.
비교 결과로 문제를 좁히고 성급히 결론 내리지 않기
아래는 테스트 결과를 해석하는 방법이며, 특정 네트워크에서 측정한 결과가 아닙니다. 비교할 때는 같은 대상, 같은 네트워크, 같은 프록시 선택 항목을 사용하고 새 연결을 확인해야 합니다. 테스트 중 Wi-Fi에서 셀룰러 네트워크로 바꾸거나 서버를 변경하면 모드만 비교한 결과가 아닙니다.
| 관찰 결과 | 우선 확인할 항목 | 다음 단계 |
|---|---|---|
| Proxy 성공, Config 실패 | 규칙 적용, 정책 대상, 현재 구성 및 구성에 연결된 DNS 설정 | 실패한 연결의 실제 처리 결과를 확인하고, 해당 구성을 수정한 뒤 다시 테스트합니다. |
| Direct 성공, Proxy 실패 | 프록시 출구 연결 상태, 서버 항목, 인증 및 현재 정책 선택 | 보유한 서비스 정보를 확인하고 네트워크를 그대로 둔 채 해당 서버를 테스트합니다. |
| Proxy 성공, Direct 실패 | 현재 네트워크에서 대상으로 연결하는 직접 경로 및 DNS 응답 | 특정 대상에만 문제가 있는지 확인하고, 모든 트래픽에 Proxy가 필요하다고 해석하지 않습니다. |
| 세 가지 모드 모두 실패 | 기본 네트워크, 대상 서비스 상태, DNS, 연결 권한 및 테스트 방법 | 먼저 다른 대상은 정상적으로 작동하는지 확인한 다음 항목별로 점검하고, 모드를 반복해서 바꾸지 마세요. |
서버 테스트에 표시되는 지연 시간은 실제 요청을 대신하지 않습니다. 지연 시간 값은 해당 테스트 방식으로 응답을 받았다는 뜻일 뿐, 대상 웹페이지의 DNS, 인증, 데이터 전송 또는 모든 리소스가 정상이라는 의미는 아닙니다. 반대로 테스트 한 번이 시간 초과됐다고 해서 모든 앱 트래픽이 연결되지 않는 것도 아닙니다. 실제 연결 기록과 함께 확인하세요.
On Demand와 라우팅 모드를 각각 확인하기
Settings → On Demand에서는 조건에 따라 연결을 시작하는 동작을 관리하고, Global Routing에서는 연결이 설정된 뒤 출구를 선택하는 방식을 관리합니다. 두 기능은 서로 대신할 수 없습니다. On Demand를 켜도 모든 대상이 자동으로 프록시를 사용하지 않으며, Direct를 선택해도 조건부 연결이 취소되는 것은 아닙니다. 연결이 다시 시작되는 이유를 확인하려면 라우팅 모드만 반복해서 바꾸지 말고 트리거 조건을 점검하세요.
연결 시작 조건과 출구 선택 구분하기
연결 시작 여부
- 설정 경로: Settings → On Demand.
- 활성화된 트리거 조건과 현재 네트워크가 해당 조건을 충족하는지 확인합니다.
- 직접 비교 테스트를 하는 동안 자동 재연결이 판단에 영향을 주지 않도록 On Demand의 기존 설정을 기록해 둡니다.
연결이 사용하는 경로
- 설정 경로: Home → Global Routing.
- Config / Proxy / Direct로 출구 동작을 비교합니다.
- Config를 사용할 때는 규칙과 정책도 확인하고, Scene을 사용한다면 장면 조건을 별도로 점검합니다.
먼저 연결이 왜 시작됐는지 확인한 다음 새 연결이 어떤 출구를 사용하는지 확인하세요. 테스트가 끝나면 라우팅 모드와 On Demand 설정을 복원합니다.
Shadowrocket을 거치지 않는 네트워크 상태를 확인하려면 연결을 끄고 시스템의 연결 상태를 확인해야 합니다. On Demand가 켜져 있다면 연결이 다시 시작되지 않았는지도 확인하세요. 이는 Direct 선택과 목적이 다릅니다. 전자는 연결이 끊긴 상태의 환경을 확인하고, 후자는 Shadowrocket에 연결된 상태에서 직접 연결로 처리되는지 확인합니다.
평소 사용 설정과 복원 상태 확인
문제 확인을 마치면 동작을 이해할 수 있는 구성으로 유지하세요. 규칙에 따라 트래픽을 분기해야 하는 일반적인 상황에서는 Config를 사용하고 규칙을 관리하는 편이 비교 테스트용 Proxy 또는 Direct를 계속 사용하는 것보다 문제를 파악하기 쉽습니다. 사용 목적이 모든 연결을 프록시로 보내거나 직접 연결하는 것이라면 해당 모드를 선택해도 됩니다. 중요한 점은 출구가 어떻게 바뀌고 어떤 영향을 주는지 이해하는 것입니다.
- Home → Global Routing에서 임시 테스트 모드가 아니라 원래 사용하려던 모드로 복원됐는지 확인합니다.
- Config에서 의도한 구성이 활성화되어 있는지, FINAL과 정책 참조가 사용 목적에 맞는지 확인합니다.
- 현재 서버 또는 정책이 유효한지 확인합니다. 기존 구독을 업데이트했다면 정책에서 선택한 서버도 다시 점검하세요.
- Settings → On Demand를 기존 설정으로 복원한 다음 자주 사용하는 대상을 다시 확인합니다.
- 테스트 조건과 적용된 규칙을 기록하되, 기록에 구독 링크, 인증 정보 또는 기타 자격 증명을 공개하지 마세요.
Shadowrocket은 App Store에서 제공되는 유료 상용 앱이며, 주로 iPhone과 iPad에서 사용합니다. 정품을 확인하려면 개발자 Shadow Launch Technology Limited와 앱 ID 932747118을 확인하세요. 앱을 한 번 구매하는 것과 회선 요금제는 별개이며, 연결에 필요한 구독이나 구성은 사용자가 직접 준비해야 합니다. 시스템 요구 사항과 구매 가능 여부는 App Store 페이지에 표시된 내용을 기준으로 확인하세요.