Shadowrocket 사용법: Global Routing의 Config·Proxy·Direct 차이

Shadowrocket의 Global Routing 모드인 Config, Proxy, Direct의 차이와 선택 기준을 알아봅니다. 평소에는 Config를 권장하며, Proxy와 Direct는 문제를 임시로 확인할 때 활용할 수 있습니다.

핵심 내용

사용 가능한 연결 정보와 규칙 설정이 있다면 평소에는 Shadowrocket의 Config를 선택하세요. 규칙이 트래픽을 잘못 분류한다고 의심되면 Proxy와 비교하고, 현재 네트워크에서 직접 접속할 수 있는지 확인하려면 Direct와 비교하면 됩니다. 이 글에서는 사용자가 이미 보유한 서비스와 구독을 전제로 모드 선택, 규칙 순서, 한 번에 한 변수씩 확인하는 방법을 설명합니다. 라우팅 모드, 연결 스위치, On Demand의 차이도 살펴봅니다.

1. Config, Proxy, Direct는 무엇을 바꿀까

Global Routing은 Shadowrocket이 처리하는 트래픽의 라우팅 방식을 결정합니다. 연결 서비스를 제공하거나 프로토콜을 선택하는 기능은 아닙니다. 평소 Config를 사용하려면 현재 설정이 활성화되어 있고, 규칙이 실제 필요에 맞게 작성되어 있으며, 규칙에서 참조하는 정책 또는 정책 그룹을 사용할 수 있어야 합니다. 이 조건이 갖춰지지 않은 상태에서 Config만 선택해도 적절한 트래픽 분류가 자동으로 이루어지지는 않습니다.

Config

권장

현재 설정의 규칙에 따라 트래픽을 매칭합니다. 결과는 PROXY, DIRECT, REJECT 또는 설정에 정의된 정책 그룹이 될 수 있습니다. 구체적인 규칙에 매칭되지 않은 트래픽은 FINAL 등의 기본 처리 설정을 따르며, 자동으로 직접 연결된다고 보장할 수 없습니다.

적합한 경우: 올바른 규칙이 있고, 대상별로 트래픽을 다르게 처리하는 일상적인 사용.

Proxy

처리 대상 범위의 일반 트래픽을 모두 프록시 경로로 보냅니다. Config의 분류 규칙을 하나씩 적용해 출구를 결정하지 않습니다. 선택한 연결을 사용할 수 있는지에 따라 접속 결과는 달라집니다.

적합한 경우: 프록시 경로를 일시적으로 확인하거나 Config와 비교해 라우팅 문제를 찾을 때.

Direct

처리 대상 범위의 일반 트래픽을 프록시 서버를 거치지 않고 직접 연결합니다. 대상에 접속할 수 있는지는 현재 네트워크에서 실제로 연결 가능한지에 따라 달라집니다.

적합한 경우: 직접 연결이 정상인지 확인하거나 로컬 네트워크 접속을 임시로 테스트할 때.

여기서 ‘전체’는 라우팅 모드를 설명하는 표현이지, 기기의 모든 네트워크 패킷이 반드시 같은 경로를 지난다는 뜻은 아닙니다. 시스템 트래픽, 설정의 우회 옵션, DNS 처리 방식은 각각 다를 수 있습니다. 특정 요청이 실제로 어떤 경로를 사용했는지는 연결 기록을 함께 확인해야 하며, VPN 상태 표시만으로 판단해서는 안 됩니다.

2. Home에서 모드를 선택하고 테스트 기준 설정하기

iPhone과 iPad에서는 Home → Global Routing에서 Config, Proxy 또는 Direct를 선택할 수 있습니다. 목록에 Scene이 표시되더라도 이는 상황별로 사용하는 별도의 모드이며 Config의 다른 이름이 아닙니다. 이 글에서는 비교에 다른 조건이 개입하지 않도록 위 세 가지 모드만 선택합니다. 화면 구성은 설치된 앱 버전에 따라 다를 수 있습니다.

  1. Home을 열고 SERVER 목록에 사용자가 보유한 연결 정보가 있는지 확인합니다. 프록시를 테스트하려면 사용할 연결이 선택되어 있는지도 먼저 확인하세요.
  2. Config로 이동해 현재 사용 중인 설정을 확인합니다. 파일이 보인다고 해서 해당 파일이 현재 설정으로 적용된 것은 아니므로 선택 상태를 확인해야 합니다.
  3. Home → Global Routing으로 돌아가 Config를 선택한 다음, Home으로 돌아와 선택 결과를 확인합니다.
  4. 연결 스위치를 켭니다. 처음 사용하는 경우 시스템 안내에 따라 VPN 구성을 허용한 뒤, 권한 승인 여부만 확인하지 말고 실제 연결 상태도 확인하세요.
  5. 완전한 테스트 주소 하나를 정하고 현재 네트워크, 선택한 연결, 라우팅 모드를 기록합니다. 이후 비교에서는 이 조건을 그대로 유지하고 한 번에 설정 하나만 변경하세요.
3가지
비교 대상: Config / Proxy / Direct
2단계
선택 경로: Home → Global Routing
1개
테스트할 때마다 변수 하나만 변경

Home의 Connectivity Test는 연결의 기본 도달 가능성을 확인하는 데 도움이 됩니다. 하지만 테스트가 성공했다고 해서 대상 사이트의 DNS, TLS, 서비스 요청까지 모두 정상이라는 뜻은 아닙니다. 실제 대상 주소도 열어 확인하고, 테스트 지연 시간을 웹페이지 로딩 속도로 해석하지 않도록 주의하세요.

3. Config에서 규칙 순서와 FINAL을 함께 확인해야 하는 이유

Config의 핵심은 ‘사이트 유형을 자동으로 판단’하는 것이 아니라 현재 설정을 실행하는 것입니다. 일반 규칙은 위에서 아래 순서로 매칭되며, 처음 일치하는 규칙의 정책이 적용됩니다. 따라서 범위가 넓은 규칙보다 구체적인 예외 규칙을 앞에 두고 FINAL은 마지막에 배치해야 합니다. 아래는 설명을 위한 예시이며, 도메인은 예시 값입니다. 실제 연결 서비스를 나타내지 않으며 완전한 설정 파일을 대체하는 용도로 바로 사용해서는 안 됩니다.

[Rule]
DOMAIN,account.example.com,DIRECT
DOMAIN-SUFFIX,example.com,PROXY
FINAL,DIRECT

DOMAIN과 DOMAIN-SUFFIX는 도메인 범위를 처리하고, IP-CIDR은 지정한 IP 대역을 처리하며, GEOIP는 IP 지리 위치 데이터를 기준으로 매칭합니다. 도메인 규칙과 IP 규칙을 함께 사용할 때는 실제 요청에 도메인 정보가 포함되는지, DNS 조회가 언제 완료되는지, 규칙 옵션이 어떻게 설정되었는지도 고려해야 합니다. 트래픽이 잘못 분류되면 중복 규칙을 무작정 추가하기보다 먼저 어떤 규칙이 매칭됐는지 확인하세요.

4. Proxy와 Direct로 두 가지 비교 테스트하기

문제를 확인할 때는 먼저 ‘특정 대상만 열리지 않는지’ 아니면 ‘모든 대상에 문제가 있는지’를 구분하세요. Proxy와 Direct는 규칙에 따른 라우팅이라는 변수를 줄여 확인하는 방법이지, 올바른 설정을 계속 대신하는 모드가 아닙니다. 두 테스트 모두 같은 네트워크와 같은 대상 주소를 사용해야 합니다. Proxy와 비교할 때는 선택한 연결도 그대로 유지하세요.

비교 방법: 네트워크와 대상을 고정하고 라우팅 모드만 바꾸기

Config와 Proxy 비교
  • 먼저 Config에서 문제를 재현하고 대상 도메인을 기록합니다.
  • Proxy로 전환한 뒤 동일한 요청을 다시 보냅니다.
  • Proxy에서는 정상이고 Config에서는 실패한다면 규칙 매칭, 정책 그룹 선택, FINAL을 중점적으로 확인합니다.
  • 두 모드에서 모두 실패한다면 연결 매개변수, DNS, 대상의 상태, 현재 네트워크를 추가로 확인합니다.
Config와 Direct 비교
  • 직접 연결이 가능할 것으로 예상되는 대상을 선택하고 Config에서의 결과를 먼저 기록합니다.
  • Direct로 전환한 뒤 동일한 요청을 다시 보냅니다.
  • Direct에서는 정상이고 Config에서는 실패한다면 대상이 실수로 프록시나 REJECT로 전달되는지 확인합니다.
  • Direct에서도 실패한다면 현재 네트워크에서 해당 대상에 직접 접속할 수 있는지 먼저 확인합니다.

비교 결과는 문제 범위를 좁히는 데 도움이 될 뿐, 원인을 단독으로 증명하지는 않습니다. 테스트가 끝나면 Config로 되돌리고 대상 요청이 예상한 규칙에 따라 처리되는지 확인하세요.

예를 들어 Config에서는 실패하지만 Proxy에서는 성공하는 경우, 도메인 규칙이 없거나 Config에서 지정한 정책 그룹이 다른 연결을 선택했을 수 있습니다. 두 문제를 구분하려면 매칭된 규칙과 실제 사용된 출구를 함께 확인해야 합니다. 같은 테스트에서 네트워크와 연결을 바꾸고 DNS까지 수정하지 마세요. 어떤 변경이 효과를 냈는지 판단할 수 없게 됩니다.

5. 연결 스위치, On Demand, 구독 업데이트를 혼동하지 않기

Global Routing은 ‘연결이 설정된 뒤 트래픽을 어떻게 처리할지’를 정하고, Home의 스위치는 ‘현재 연결을 사용할지’를 결정합니다. Direct도 라우팅 모드 중 하나이며 VPN 연결을 끄는 기능이 아닙니다. Proxy를 선택했다고 연결 스위치가 켜지는 것도 아닙니다. 두 상태를 각각 확인하세요.

구독을 업데이트한 뒤 문제가 생기면 현재 선택한 연결이 계속 표시되는지, 연결 정보가 갱신되었는지 먼저 확인한 다음 규칙에서 참조하는 정책 그룹을 살펴보세요. 설정 참조 문제를 가리기 위해 Global Routing을 계속 Proxy로 두지 마세요. 원래 직접 연결해야 할 요청까지 프록시 경로로 바뀔 수 있습니다.

6. 자주 묻는 질문: 모드를 제대로 선택했는데도 접속되지 않는다면

Config를 선택했는데 모든 웹사이트가 프록시를 사용하는 것처럼 보이는 이유는 무엇인가요?

Config로 이동해 현재 파일을 확인하고, 먼저 마지막 규칙이 FINAL,PROXY인지 살펴보세요. 이어서 앞부분에 범위가 넓은 규칙이 있는지, 관련 정책 그룹에서 어떤 항목을 선택했는지도 확인합니다. Config는 설정을 적용하는 모드일 뿐, 프록시를 사용하는 비율을 일정하게 보장하지 않습니다.

Proxy에서는 접속되지만 Config에서는 안 됩니다. 연결에는 문제가 없는 건가요?

해당 요청이 Proxy에서 사용한 경로를 통해 처리될 수 있다는 뜻이지만, 다른 연결에 문제가 없는지까지 확인된 것은 아닙니다. Config로 돌아가 대상에 매칭된 정책을 확인하세요. 해당 정책 그룹이 실제로 다른 연결을 사용한다면 먼저 출구를 동일하게 맞춘 뒤 비교해야 합니다. 그래야 정책 그룹 차이를 규칙 문법 오류로 오해하지 않습니다.

Direct로 바꾼 뒤에도 VPN 표시가 남아 있습니다. 어떻게 연결을 끄나요?

Direct는 트래픽 처리 방식만 바꿉니다. 연결을 중지하려면 Home으로 돌아가 연결 스위치를 끄고 Settings → On Demand에서 조건에 따라 다시 연결되지 않는지도 확인하세요. VPN 표시는 연결 상태를 확인하는 데 참고할 수 있지만, 특정 요청이 프록시 서버를 거쳤는지는 알려주지 않습니다.

모드를 바꿨는데 웹페이지 결과가 그대로입니다. 계속 연결을 다시 설정해야 하나요?

먼저 요청을 다시 보내고, 필요하면 테스트 앱을 종료한 뒤 다시 열어 기존 연결이나 캐시된 페이지가 재사용되지 않도록 하세요. 그래도 결과가 같다면 Home → Global Routing에서 선택한 모드가 유지되었는지 확인하고 실제 요청 기록을 살펴보세요. 매번 결과를 기록하면 스위치를 여러 개 연달아 바꾸는 것보다 문제를 찾기 쉽습니다.

7. 평소 사용을 위한 복구 확인

문제 확인이 끝나면 임시 모드를 평소 사용할 Config로 되돌리고 규칙과 정책 그룹 상태를 확인하세요. 그런 다음 직접 연결할 대상 하나와 프록시로 연결할 대상 하나를 각각 테스트합니다. 웹페이지가 열린다는 것만으로는 충분하지 않으며, 트래픽이 규칙 의도에 맞는 출구를 사용했는지도 확인해야 합니다. 문제가 계속되면 문제 해결 안내를 참고해 연결, DNS, 규칙 문제를 구분하세요.

  1. Home → Global Routing: 이전에 선택한 Proxy 또는 Direct가 아니라 Config인지 확인합니다.
  2. Config: 현재 설정과 FINAL의 기본 처리 방향을 확인하고, 임시로 추가한 규칙을 유지할지 검토합니다.
  3. Home: 선택한 연결과 정책 그룹이 예상한 설정인지 확인한 뒤 연결 상태를 확인합니다.
  4. Settings → On Demand: 자동 연결 조건이 평소 네트워크 환경에 맞는지 확인하고 실제 요청을 다시 테스트합니다.

Shadowrocket은 Apple 플랫폼용 유료 상용 앱이며 주로 iPhone과 iPad에서 사용합니다. App Store에서만 받을 수 있습니다. 개발자는 Shadow Launch Technology Limited이며 앱 ID는 932747118입니다. 시스템 요구 사항, 호환성, 일반 구매 범위는 App Store 페이지의 안내를 확인하세요. 앱은 일회성 구매이며 연결 정보와 규칙 설정은 각각의 용도에 따라 별도로 관리해야 합니다.

App Store 정식 앱구매 전에 개발자와 앱 ID 확인