공식 가이드 · 첫 설정

Shadowrocket 사용법

기존 정보를 가져오고 연결 모드를 선택한 다음 실제 요청으로 확인하세요.

이 가이드는 iPhone 및 iPad에서 처음 사용할 때 필요한 5단계를 설명합니다. 먼저 기존 서버 연결을 정상 작동시킨 뒤 규칙과 자동 연결을 조정하면 문제가 생겼을 때 원인을 찾기 쉽습니다.

STEP 01 / IMPORT

서버 추가 및 구독 가져오기

완료 기준: Home의 SERVER 그룹에 선택할 수 있는 서버 항목이 표시됩니다.

Shadowrocket을 연 뒤 Home으로 이동합니다. 보유한 정보가 서버 목록을 정기적으로 갱신하는 링크라면 구독으로 처리하고, 프로토콜·주소·포트·인증 정보로 구성되어 있다면 직접 추가합니다. 두 방식 모두 앱에 연결 대상과 사용할 프로토콜, 인증 방법을 알려주는 것이 목적이므로 같은 정보를 중복으로 가져올 필요는 없습니다.

구독 링크: Subscribe 유형 사용

Home에서 Add Server를 눌러 추가 화면으로 이동한 다음 Type에서 Subscribe를 선택하고 전체 구독 링크를 해당 URL 항목에 입력합니다. 알아보기 쉬운 메모를 적고 저장한 뒤 Home으로 돌아가 구독 내용을 불러올 때까지 기다립니다. 구독 링크는 민감한 정보입니다. 복사할 때 시작 부분과 끝부분, 쿼리 매개변수가 빠짐없이 포함됐는지 확인하고, 메신저에 함께 표시된 안내 문구나 줄바꿈은 입력하지 마세요.

가져오기가 끝나면 SERVER 그룹에 서버 항목이 표시되는지 확인하고 사용할 항목을 선택합니다. 구독 이름은 목록을 정리하기 위한 이름일 뿐, 그 안의 서버가 선택됐다는 뜻은 아닙니다. 서비스 제공업체가 내용을 갱신한 경우에는 같은 링크를 계속 추가하지 말고 기존 구독을 업데이트하세요. 업데이트에 실패해도 기존에 사용할 수 있는 항목은 유지하고 원인을 확인한 뒤 조치하세요.

직접 입력: Type에 맞는 항목 확인

서버 한 대의 정보가 있다면 Add Server에서 올바른 Type을 먼저 선택한 다음 Host, Port와 해당 프로토콜에 필요한 인증 정보를 입력합니다. Shadowsocks의 Password와 Method는 서버 측 설정과 일치해야 합니다. 다른 프로토콜은 표시되는 항목이 다를 수 있으므로 보유한 원본 정보와 하나씩 대조하세요. Host에는 보통 도메인이나 IP 주소를 입력하며, 웹페이지 링크 전체를 서버 주소로 입력하지 마세요.

저장하기 전에 포트가 빠짐없이 입력됐는지, 비밀번호 앞뒤에 공백이 없는지, 프로토콜을 올바르게 선택했는지 다시 확인하세요. 선택 항목이 표시된다고 해서 모든 서버에 반드시 입력해야 하는 것은 아닙니다. TLS나 전송 방식 등의 매개변수도 이름만 보고 추측하지 마세요. 정보가 부족하면 서비스 제공업체에 확인하고, 항목을 번갈아 선택해 보는 것으로 확인을 대신하지 마세요.

QR 코드와 구성 파일 구분하기

QR 코드가 있다면 Scan QR Code로 연결 정보를 읽은 다음, 해석된 Type과 Host를 확인할 수 있습니다. Import from Cloud JSON은 해당 형식의 정보를 위한 기능이며, 임의의 웹페이지나 구독을 모두 가져올 수 있는 범용 메뉴가 아닙니다. 가져오기 전에 정보 유형을 확인하고, 완료 후 생성된 항목도 점검하세요.

서버 구독과 Config의 구성 파일은 용도가 다릅니다. 전자는 연결 항목을 관리하고, 후자는 규칙 등의 설정을 관리합니다. Config 또는 Subscribe라는 문구가 보이면 처리 중인 정보의 종류에 맞춰 판단하세요. 버튼 이름만 보고 메뉴를 바꾸어 사용하면 안 됩니다. 먼저 서버 정보를 가져온 뒤 다음 단계에서 Global Routing을 선택하세요. 용어는 용어집에서 확인할 수 있습니다.

Shadowrocket의 Add Server 화면. Type, Host, Port, Password, Method 및 QR 코드 스캔 메뉴가 표시됩니다
App Store 공식 스크린샷: Add Server. Type에 따라 항목이 달라지므로 본인의 서버 정보를 입력하세요.
STEP 02 / ROUTING

Global Routing 모드 선택

완료 기준: 현재 요청이 규칙에 따라 처리되는지, Proxy를 거치는지, 직접 연결되는지 설명할 수 있습니다.

서버 항목을 저장한 뒤 Home으로 돌아가 Global Routing을 눌러 현재 모드를 확인합니다. 이 메뉴는 요청 처리 방식을 제어하며 서버 프로토콜을 바꾸는 기능은 아닙니다. 세 가지 모드는 Config, Proxy, Direct입니다. 문제를 확인할 때 전후 결과의 차이를 파악할 수 있도록 현재 선택을 기억해 두세요.

Config: 구성 파일에 따라 트래픽 분기

Config를 선택하면 현재 적용 중인 구성 파일에 따라 요청이 처리됩니다. Config를 열어 사용 중인 파일과 Rule 및 정책이 예상대로 설정되어 있는지 확인하세요. 목록에 파일이 보인다고 해서 적용 중인 것은 아닙니다. 선택 또는 사용 상태를 확인해야 합니다. 처음에는 이미 보유하고 용도를 이해하는 구성을 사용하고, 편집하기 전에 사본을 보관하세요.

규칙을 사용하면 특정 도메인은 PROXY로, 로컬 네트워크 대역은 DIRECT로 보내고, 끝에 FINAL을 지정해 나머지 요청의 처리 방식을 정할 수 있습니다. 아래 Rule 조각은 매칭 순서를 설명하기 위한 예시로, 서버 정보가 아니며 구성 파일 전체를 대체하는 용도로도 사용할 수 없습니다. 해당 요청이 앱을 거쳐 처리될 때만 규칙 매칭이 적용됩니다.

[Rule]
DOMAIN-SUFFIX,example.com,PROXY
IP-CIDR,192.168.0.0/16,DIRECT
FINAL,PROXY

이 조각은 example.com과 하위 도메인을 PROXY로, 지정된 사설 네트워크 대역을 DIRECT로 보내고 나머지 요청은 FINAL로 처리합니다. 규칙은 일반적으로 위에서부터 순서대로 확인되므로 범위가 넓은 조건보다 구체적인 조건을 먼저 배치해야 합니다. 먼저 기존 규칙을 유지한 채 연결을 확인하세요. 처음부터 General, Hosts 또는 URL Rewrite까지 함께 수정할 필요는 없습니다.

Proxy와 Direct: 처리 방식 비교

Proxy는 앱이 처리하는 요청을 프록시 모드로 보냅니다. 서버 정보가 올바른 상태에서 구성 규칙이 결과에 영향을 주는지 확인할 때 유용하지만, 모든 서비스가 해당 출구를 허용한다는 보장은 없습니다. Direct는 요청을 직접 연결하므로 프록시 서버의 사용 가능 여부를 확인하는 용도로는 적합하지 않습니다. 상단 연결 스위치가 켜져 있어도 Direct를 선택하면 Proxy 모드와 다른 출구 결과가 나올 수 있습니다.

평소 규칙에 따라 트래픽을 분기하려면 기본 연결 확인을 마친 뒤 Config로 돌아가 현재 파일을 다시 확인하세요. 세 모드는 연결 강도를 나타내는 단계가 아니며 서비스 제공업체 계정의 권한을 바꾸지도 않습니다. 규칙 유형, FINAL 순서, 구성 항목에 대한 자세한 설명은 구성 항목 참고에서 확인할 수 있습니다. 이 페이지에서는 처음 사용할 때 필요한 모드 선택만 다룹니다.

Shadowrocket의 Config 구성 파일 편집 화면. General, Rule, Hosts, URL Rewrite 및 Add Rule이 표시됩니다
App Store 공식 스크린샷: Config. 구성 파일 내용을 보여주는 화면이며 Global Routing 모드 선택 메뉴는 아닙니다.
STEP 03 / CONNECT

연결 스위치 켜기 및 VPN 권한 허용

완료 기준: 시스템 권한 설정을 마치고 앱의 연결 상태가 켜진 채 유지됩니다.

Home으로 돌아가 SERVER에서 사용할 서버를 선택했는지 확인한 다음 Global Routing이 앞 단계에서 선택한 모드와 같은지 확인합니다. 모드를 바꾸면서 스위치를 빠르게 켜고 끄지 마세요. 서버와 모드를 먼저 고정해야 이후 연결 결과를 어떤 설정에 해당하는지 판단할 수 있습니다.

Home 상단의 연결 스위치를 누릅니다. 연결 전에는 Not Connected가 표시될 수 있습니다. 처음 연결하면 시스템에서 Shadowrocket이 VPN 구성을 추가하도록 허용할지 묻습니다. 알림에 표시된 앱 이름과 설명을 확인하고 직접 시작한 작업이 맞다면 허용한 뒤 기기 안내에 따라 암호 또는 생체 인증을 완료하세요.

여기서 VPN 구성을 허용하는 것은 앱이 관련 네트워크 트래픽을 처리하도록 시스템 권한을 부여하는 절차입니다. 회선을 구매하는 것도, 서버 인증이 완료됐다는 뜻도 아닙니다. 허용한 뒤 Shadowrocket으로 돌아와 상단 상태가 바뀌고 스위치가 켜진 상태로 유지되는지 확인하세요. 앞서 알림을 취소했다면 연결을 다시 시작해 시스템 안내에 따라 권한을 설정할 수 있습니다.

스위치를 켠 직후 다시 꺼진다면 먼저 권한 설정이 완료됐는지, 시스템에서 연결을 관리하는 다른 VPN 구성이 실행 중인지 확인하세요. 충돌하는 연결을 일시 중지한 뒤 다시 시도하고 시스템 설정 전체를 바로 지우지는 마세요. 직장이나 학교에서 관리하는 기기는 관리 정책에 따라 제한될 수 있으므로 기기에서 허용하는 방식으로 처리하세요.

스위치가 켜진 상태로 유지된다는 것은 기기에서 연결 절차가 설정됐다는 뜻일 뿐, 모든 원격 사이트에 정상적으로 접속할 수 있다는 뜻은 아닙니다. 다음 단계에서 연결을 확인하고, 아직 On Demand는 켜지 마세요. 수동 연결, 연결 해제, 재연결이 모두 예상대로 작동하는지 확인한 다음 필요에 따라 자동 연결을 설정하세요.

Shadowrocket의 Home 화면. 상단에 Not Connected, Global Routing, Connectivity Test가 있고 아래에 SERVER와 Add Server가 표시됩니다
App Store 공식 스크린샷: Home. 연결 스위치, Global Routing, Connectivity Test가 이 단계와 다음 단계의 주요 메뉴입니다.
STEP 04 / VALIDATE

연결 및 규칙 적용 여부 확인

완료 기준: 테스트 결과와 실제 접속, 요청 처리 방향을 서로 연관 지어 설명할 수 있습니다.

연결이 켜지면 Home에서 Connectivity Test를 실행하고 테스트가 끝날 때까지 기다린 뒤 선택한 항목의 결과를 확인합니다. 테스트 성공은 해당 테스트 조건에서 연결할 수 있음을 나타내지만, 계정 권한이나 모든 대상 사이트, 모든 규칙이 정상이라는 것을 단독으로 증명하지는 않습니다. 시간 초과가 발생해도 테스트 방식과 네트워크 환경을 함께 살펴보세요. 한 번의 결과만으로 구성을 삭제하지 마세요.

그다음 확인하려는 앱을 열고 정상 작동을 확인할 수 있는 웹페이지를 새로고침하는 등 실제 요청을 보냅니다. 전후를 비교할 때는 같은 대상과 같은 네트워크를 사용해 웹페이지 캐시를 연결 성공으로 오인하지 않도록 하세요. 대상 앱에 기존 장시간 연결이 남아 있다면 모드를 바꾼 뒤 앱을 다시 열어 테스트하세요. 새 요청이 현재 설정에 따라 처리됩니다.

규칙을 확인하려면 Data에서 이용 가능한 연결 기록을 살펴보고 도메인, 대상 주소, 정책 정보를 바탕으로 요청이 처리된 방식을 판단하세요. 트래픽 총량이 늘었는지만 보지 말고 요청이 앱을 통과했는지, 최종적으로 PROXY, DIRECT, REJECT 중 무엇을 사용했는지 확인하세요. 기록에서 볼 수 있는 항목은 현재 화면을 기준으로 합니다. 특정 요청이 보이지 않는다면 캐시, 기존 연결, 기록 설정도 고려하세요.

Proxy에서는 접속되지만 Config에서는 안 된다면 현재 구성 파일, 규칙 매칭 순서, 적용된 정책을 중점적으로 확인하세요. 두 모드에서 모두 실패하면 서버 정보와 서비스 상태를 점검하세요. 특정 대상 하나만 실패한다면 접속 가능한 다른 대상으로 비교해 보세요. 단일 사이트의 응답만으로 전체 연결이 작동하지 않는다고 판단하지 마세요.

확인이 끝나면 실제 사용할 Config 또는 다른 확인된 모드로 복원하고 대상에 다시 요청을 보내세요. 마지막으로 수동 연결 해제와 재연결을 진행해 같은 결과가 재현되는지 확인합니다. 여기까지 마치면 정보 추가, 모드 선택, 연결 확인의 기본 흐름이 완성됩니다. 개별 문제는 다음 절에서 증상별로 살펴보세요.

STEP 05 / CHECK

Settings 및 흔한 문제 해결

모든 절차를 처음부터 반복하지 말고 증상에 맞는 단계를 확인하세요.

가져온 뒤 항목이 없음: 정보 읽기부터 확인

구독 항목으로 돌아가 링크가 완전한지 확인하고, 서비스 제공업체의 계정 웹페이지가 아니라 구독 정보가 제공되는 링크를 복사했는지 살펴보세요. 이용 중인 서비스가 정상 상태인지, 현재 네트워크에서 링크를 불러올 수 있는지도 확인합니다. 링크는 서비스 제공업체에서 받아야 합니다. 서버 측 처리나 계정 권한에 관한 문제라면 원본 정보를 확인하고 인증 정보가 포함된 링크를 공개 게시판에 올리지 마세요.

직접 추가한 항목이 SERVER에 표시되지 않으면 Add Server로 돌아가 저장했는지, 필수 항목이 검사를 통과했는지 확인하세요. 구독을 읽지 못하는 문제와 서버 연결 문제는 서로 다른 단계입니다. 전자는 서버 항목을 가져오지 못한 상태이고, 후자는 이미 있는 항목으로 테스트나 실제 요청을 완료하지 못한 상태이므로 해결 순서가 다릅니다.

테스트 시간 초과: 테스트 방식과 실제 접속 구분

Settings에서 Test Method를 확인해 현재 테스트 방식을 알아보세요. 방식마다 측정하는 단계가 다르므로 결과를 그대로 비교하기는 어렵습니다. 먼저 한 가지 방법을 유지한 채 같은 항목을 다시 테스트하세요. 실제 접속은 정상이지만 특정 테스트가 계속 실패한다면 테스트 대상과 해당 방식에 맞는 네트워크 조건을 추가로 확인할 수 있습니다.

실제 요청도 실패하면 Type, Host, Port, Password 또는 해당 프로토콜의 인증 항목, 서비스 제공업체가 요구하는 TLS 및 전송 매개변수를 확인하세요. Wi-Fi와 셀룰러 네트워크를 바꾸어 비교하면 현재 네트워크의 영향을 판단하는 데 도움이 됩니다. 전환 전후에 서버와 Global Routing은 그대로 유지하세요.

일부 앱만 실패: 모드와 적용 규칙 확인

먼저 Direct를 잘못 선택하지 않았는지 확인한 다음 Config에서 현재 사용 중인 파일을 점검하세요. 특정 도메인이 REJECT로 처리되거나, 범위가 넓은 규칙이 먼저 적용되거나, FINAL이 예상과 다른 정책을 가리키면 일부 요청만 실패할 수 있습니다. 접속이 되지 않는다고 DNS와 프로토콜 매개변수를 모두 바꾸지 마세요. 연결 기록으로 실패한 요청이 실제로 어디로 향했는지 먼저 확인하세요.

구성을 수정해야 한다면 먼저 사본을 저장한 다음 문제와 관련된 규칙 하나만 변경하고 요청을 다시 보내 확인하세요. 도메인 이름 확인, IP 규칙, 프로토콜 세부 정보는 구성 항목 참고에서 확인하세요. 구체적인 오류 증상에 따른 해결 방법은 자주 묻는 질문을 참고하세요.

자동 연결 문제: 마지막으로 On Demand 확인

Settings의 On Demand는 조건에 따라 연결을 시작하는 기능이지, 서버 문제를 해결하는 스위치가 아닙니다. 기본 연결을 확인하기 전에는 수동 스위치로 먼저 테스트하세요. 연결을 해제한 뒤 시스템이 다시 자동 연결한다면 기존 On Demand 설정과 기기의 VPN 관리 상태를 확인한 다음 조정 여부를 결정하세요. 변경 후에는 앱 실행, 네트워크 전환, 수동 연결 해제를 각각 테스트하세요.

추가 점검은 Diagnostics에서 할 수 있습니다. 진단 정보를 공유하기 전에 서버 주소, 인증 정보, 구독 링크, 접속 기록이 포함되어 있는지 확인하고 민감한 부분을 삭제하세요. 문제가 발생했을 때의 모드, 네트워크 유형, 오류 증상을 함께 기록하면 단순히 연결이 안 된다는 설명만 남기는 것보다 원인을 좁히는 데 도움이 됩니다.

Shadowrocket의 Settings 화면. Test Method, On Demand, Diagnostics, Proxy, TCP 및 UDP 설정 메뉴가 표시됩니다
App Store 공식 스크린샷: Settings. 문제를 해결할 때는 먼저 Test Method와 Diagnostics를 확인하고 기본 연결이 정상인 뒤 On Demand를 조정하세요.

첫 사용 완료 확인

  • SERVER에 항목이 있고 현재 선택된 서버가 보유한 정보와 일치합니다.
  • Config, Proxy, Direct의 차이를 알고 현재 선택된 모드를 확인했습니다.
  • 시스템 VPN 권한 설정을 마쳤고 연결 스위치가 켜진 상태로 유지됩니다.
  • Connectivity Test를 실행하고 실제 요청으로 연결과 정책을 확인했습니다.
  • 수정 전에 구성 사본을 보관했고 구독 링크와 인증 정보는 본인만 사용합니다.

이후에는 확인을 마친 설정을 유지하면서 규칙이나 자동 연결 조건을 하나씩 추가하세요. 화면 용어가 헷갈리면 용어집을 확인하세요. 옵션 하나를 이해하기 위해 전체 구성을 새로 만들 필요는 없습니다.