이 글 미리보기

사용 가능한 서버와 설정이 있다면 평소에는 Config를 선택하세요. 규칙 문제를 분리해 확인할 때는 Proxy로 잠시 전환하고, 현재 네트워크에서 직접 연결되는지 비교할 때는 Direct를 사용합니다. 세 모드와 연결 스위치, Config 파일, 구독, On Demand의 차이를 설명하고, 한 번에 한 가지 조건만 바꾸며 점검하는 방법을 안내합니다. 라우팅 설정 문제를 서버 장애로 오해하지 않도록 확인해 보세요.

1. Config·Proxy·Direct가 제어하는 항목

Shadowrocket의 Global Routing은 트래픽을 어떤 경로로 처리할지 선택하는 기능입니다. 서버 프로토콜이 아니며, 연결 성공을 보장하지도 않습니다. 모드를 선택한 뒤에도 Home의 연결 상태와 현재 서버, 실제 접속 결과를 확인해야 합니다. 여기서 ‘전체’란 Shadowrocket이 처리하는 트래픽을 뜻하며, 기기의 모든 시스템 통신이 반드시 같은 경로를 거친다는 의미는 아닙니다.

Config: 현재 설정에 따라 분기

권장

현재 Config의 규칙과 정책에 따라 트래픽의 경로를 결정합니다. DIRECT에 해당하는 요청은 직접 연결되고, 프록시 정책에 해당하는 요청은 지정된 정책으로 처리됩니다. 앞선 규칙에 해당하지 않는 트래픽은 FINAL 등의 기본 처리 설정에 따라 결정되며, 기본적으로 모두 직접 연결되는 것은 아닙니다.

적합한 경우: 명확한 규칙 설정을 바탕으로 대상별 라우팅을 할 때

Proxy: 모든 트래픽을 프록시 경로로 처리

Config의 대상별 규칙에 따라 직접 연결과 프록시를 나누지 않고, 현재 선택된 프록시 경로를 일괄 사용합니다. 선택한 서버를 사용할 수 없다면 Proxy로 전환해도 서버 주소, 인증 정보, 전송 매개변수 문제는 해결되지 않습니다.

적합한 경우: 잠시 모든 트래픽을 프록시로 보내거나, 장애가 분기 규칙과 관련 있는지 비교할 때

Direct: 모든 트래픽을 직접 연결

앱이 처리하는 트래픽을 프록시 서버를 거치지 않고 대상에 직접 연결합니다. 목록에 서버가 남아 있어도 Direct가 해당 서버를 사용한다는 뜻은 아닙니다.

적합한 경우: 현재 네트워크에서 대상에 접속할 수 있는지 확인하고 직접 연결 결과를 비교할 때

Global Routing에 Scene이 표시된다면 앱 내 Scene 설정을 확인해 실제 적용되는 라우팅을 파악하세요. Scene은 ‘프록시가 더 강력한’ 단계가 아닙니다. 이 글의 비교 테스트에서는 Config, Proxy 또는 Direct를 직접 선택해 Scene 조건이 결과에 변수를 더하지 않도록 하세요.

2. Home에서 모드를 전환하기 전에 세 가지 상태를 따로 확인

Home의 서버 선택, Global Routing, 연결 스위치는 서로 다른 상태입니다. 서버만 선택하고 연결하지 않았다면 요청이 서버를 거친다고 볼 수 없습니다. 연결된 상태에서 Direct를 사용 중이라면 웹페이지 접속 여부만으로 프록시 서버의 유효성을 판단할 수도 없습니다. 전환하기 전에 현재 상태를 기록하세요.

  1. Home을 열고 테스트할 서버를 확인합니다. 이 글에서는 사용자가 직접 이용 중인 서비스와 구독이 있다고 가정합니다. 서버 설정과 구독 링크는 해당 서비스 제공업체에서 확인하세요.
  2. Home에서 Global Routing을 열고 Config, Proxy, Direct 중 하나를 선택한 다음, 돌아와 선택된 모드가 표시되는지 확인합니다.
  3. Config를 선택했다면 하단의 Config로 이동해 현재 사용 중인 설정 파일을 확인합니다. 목록에 파일이 있는지만 확인해서는 안 됩니다.
  4. Home으로 돌아가 연결이 설정됐는지 확인한 뒤 같은 테스트 페이지를 새로 요청합니다. 전환 후 결과가 달라지지 않으면 기존 페이지를 닫거나 기존 연결을 종료하고 다시 시도하세요. 필요하면 연결을 다시 설정합니다.
  5. 테스트가 끝나면 원래 모드로 되돌립니다. Proxy를 임시로 선택한 동안 평소의 규칙별 라우팅이 계속 적용된다고 오해하지 마세요.
3개 항목
먼저 확인: 서버 선택, Global Routing, 연결 상태
4가지 유형
이 글의 예시: DOMAIN-SUFFIX / GEOIP / IP-CIDR / FINAL
2단계
요청 시 연결 설정 위치: Settings → On Demand

3. Config 규칙 읽는 법: 순서와 FINAL이 결과를 결정

Config는 하단의 설정 관리 메뉴 이름이자 Global Routing에서 선택하는 항목이기도 합니다. 전자는 설정 파일을 관리하고, 후자는 현재 설정에 따라 라우팅한다는 뜻입니다. 서버 구독은 ‘선택할 수 있는 서버가 무엇인지’를 관리하고, 규칙 설정은 ‘각 요청을 어떤 경로로 보낼지’를 정합니다. 두 가지를 혼동하지 마세요.

아래는 문법을 설명하기 위한 규칙 일부이며, 전체 설정 파일이 아닙니다. example.com은 예시 도메인입니다. 프록시 정책 이름은 실제 설정과 일치해야 합니다. 설정을 수정하기 전에 기존 파일을 저장해 두어 정책 그룹이나 필요한 설정을 덮어쓰지 않도록 하세요.

[Rule]
DOMAIN-SUFFIX,example.com,PROXY
IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
GEOIP,CN,DIRECT
FINAL,PROXY
규칙일치 조건이 예시의 처리 경로
DOMAIN-SUFFIXexample.com 및 하위 도메인과 일치PROXY
IP-CIDR192.168.0.0/16 주소 범위와 일치합니다. no-resolve는 이 규칙에 대해 도메인을 별도로 해석하지 않는다는 뜻입니다.DIRECT
GEOIPIP 지리 데이터베이스를 기준으로 CN과 일치합니다. 결과는 데이터베이스와 확인된 대상 IP에 따라 달라집니다.DIRECT
FINAL앞선 규칙에 해당하지 않은 요청을 처리PROXY

규칙은 순서대로 적용되며 먼저 일치하는 규칙이 처리 경로를 결정합니다. 이 예시에서는 example.com의 프록시 규칙이 GEOIP보다 앞에 있으므로, 대상 IP의 지역만으로 직접 연결될 것이라고 판단할 수 없습니다. FINAL은 맨 마지막에 두세요. 기본 처리 규칙을 앞에 놓으면 뒤의 세부 규칙이 의도대로 작동하지 않습니다.

4. 평소 사용과 문제 해결에는 다른 방식 적용

평소에는 설정이 안정적으로 작동해야 하지만, 문제를 해결할 때는 가능한 한 변수를 줄여야 합니다. 두 작업을 한꺼번에 하지 마세요. 서버를 바꾸고, 구독을 업데이트하고, DNS까지 수정하면 접속이 복구되더라도 어떤 변경이 원인이었는지 알기 어렵습니다.

권장 방법: 평소 설정을 유지하고 라우팅을 따로 비교

평소 사용
  • Global Routing은 Config로 설정하고, 현재 설정의 규칙과 FINAL 처리 경로를 확인합니다.
  • 직접 확인한 서버와 정책 그룹을 사용하고, 이름만 보고 실제 연결 경로를 추측하지 않습니다.
  • 구독을 업데이트한 뒤 서버가 여전히 목록에 있는지 확인해 더 이상 제공되지 않는 항목을 계속 사용하지 않도록 합니다.
일시적인 문제 해결
  • 같은 네트워크, 같은 서버, 같은 테스트 대상을 유지합니다.
  • Config, Proxy, Direct에서 새 요청을 보내고 결과를 차례로 기록합니다.
  • 한 번에 설정 하나만 바꾸고, 테스트가 끝나면 원래 설정과 모드로 되돌립니다.

정리: Proxy는 라우팅을 비교하는 방법이지 모든 연결 문제를 해결하는 스위치가 아닙니다. Config가 적합한지는 현재 규칙이 필요한 동작과 일치하는지에 달려 있습니다.

프로토콜도 Global Routing을 대신하는 선택 항목이 아닙니다. Shadowsocks, VMess, VLESS, Trojan, Hysteria2, WireGuard는 서버 연결 방식을 설명하고, Config, Proxy, Direct는 요청의 라우팅 처리를 결정합니다. 라우팅을 바꾸려고 Type, Port 또는 인증 항목을 임의로 수정하지 말고, 서비스 제공업체가 안내한 매개변수를 사용하세요.

5. 테스트 결과로 문제 범위 좁히기

같은 대상을 기준으로 결과를 비교하고 연결 시간 초과, 이름 해석 실패, 페이지 오류 응답처럼 구체적인 실패 유형을 기록하세요. ‘열리지 않음’만으로는 원인을 파악하기 어렵습니다. 아래 내용은 테스트 결과를 해석하는 데 도움을 주며, 특정 경로의 사용 가능성을 보장하지는 않습니다.

관찰된 결과우선 확인할 항목다음 단계
Proxy에서는 접속되지만 Config에서는 접속되지 않음규칙 적용, 정책 그룹 선택, DNS 차이Config로 돌아가 해당 요청에 실제 적용된 규칙과 정책을 확인합니다. 모든 서버를 새로 만들지는 마세요.
Direct에서는 접속되지만 Proxy에서는 접속되지 않음현재 프록시 경로와 서버 매개변수Address, Port, 인증 정보를 확인하세요. 프로토콜에서 TLS를 사용하는 경우 관련 TLS 항목도 확인합니다.
Proxy와 Direct 모두 접속되지 않음현재 네트워크, 대상 서비스 상태, 이름 해석 결과접속 여부를 알고 있는 다른 대상으로 비교한 뒤, 네트워크에서 먼저 인증해야 하는지 확인하세요.
전환 후에도 기존 페이지에 변화가 없음연결 재사용, 캐시 또는 연결 상태새 요청을 보내고, 필요하면 다시 연결한 뒤 테스트합니다.
  1. 먼저 현재 네트워크 자체가 정상적으로 작동하는지 확인하세요. 웹 인증이 필요한 네트워크라면 먼저 인증을 완료해야 합니다.
  2. 서버는 그대로 둔 채 Proxy를 임시로 선택하고, 같은 대상에 새 요청을 보내 테스트합니다.
  3. Config로 전환해 테스트합니다. 이때만 실패한다면 대상에 적용된 규칙과 정책, 관련 이름 해석 설정을 중점적으로 확인하세요.
  4. Direct를 선택해 비교하되, Direct에서 접속된다고 프록시 서버가 검증된 것으로 간주하지 마세요.
  5. 서버를 추가로 확인해야 한다면 이용 중인 서비스 제공업체에 실패 상황을 문의하세요. 모드와 오류 정보만 전달하고, 인증 정보가 포함된 구독 링크 전체를 공개하지 마세요.

6. 구독, On Demand, 모드 전환 관련 자주 묻는 질문

Proxy를 선택하면 연결도 설정하지 않아도 되나요?

아닙니다. Global Routing은 라우팅 방식만 선택합니다. Home으로 돌아가 연결 상태를 확인한 뒤 새 요청을 보내세요. Proxy만 선택했다고 프록시 경로가 설정된 것은 아닙니다.

구독을 업데이트했는데 Config가 예상대로 트래픽을 분기하지 않는 이유는 무엇인가요?

서버 목록 업데이트가 규칙을 다시 작성하는 것은 아닙니다. 먼저 Home에서 현재 서버를 확인한 다음 Config에서 현재 설정, 규칙 순서, 정책 그룹 참조를 확인하세요. 구독 링크는 서비스 제공업체에서 받아야 하며, 업데이트 후에도 참조가 유효한지 확인해야 합니다.

On Demand를 켜면 Config도 선택해야 하나요?

각각 따로 확인해야 합니다. Settings → On Demand에서는 필요할 때 연결할 조건을 관리하고, Global Routing에서는 연결 후의 라우팅 처리를 관리합니다. 먼저 On Demand 조건을 확인한 다음 Home으로 돌아가 라우팅 모드를 확인하세요. On Demand가 트래픽 분기 설정을 대신하지는 않습니다.

Direct와 연결 스위치를 끄는 것은 어떻게 다른가요?

Direct는 앱이 연결된 상태에서 선택하는 라우팅 방식이고, 연결 스위치를 끄면 현재 연결이 끊어집니다. 연결을 완전히 끊은 뒤의 네트워크 상태를 확인하려면 연결을 끄고, On Demand 조건에 따라 다시 연결되는지도 확인하세요.

Shadowrocket을 구매했는데 서버가 없는 이유는 무엇인가요?

앱 구매와 서버 서비스 구독은 별개입니다. Shadowrocket은 유료 상용 앱이며 App Store에서만 받을 수 있습니다. 구독은 이용 중인 서비스 제공업체에서 받아야 합니다. 앱을 구매해도 서버 목록이 자동으로 만들어지지는 않습니다.

마지막으로 다시 확인할 수 있도록 작업 기록을 남기세요. 원래 모드와 변경한 모드, 테스트한 대상, 결과를 기록하면 됩니다. 평소 설정으로 돌아갈 때 Home에서 서버, Global Routing, 연결 상태를 다시 확인하세요. 화면 조작 방법은 튜토리얼에서, 규칙 키워드의 의미는 용어 가이드에서 확인할 수 있습니다.