공식 매뉴얼 · 첫 연결
Shadowrocket 사용법
가져오기부터 연결 확인까지
기존 정보를 가져온 뒤 트래픽 분기 방식을 확인하고 실제 접속으로 검증합니다. 처음 설정한다면 아래 다섯 단계를 순서대로 진행하세요. 이미 설정을 마친 경우 문제가 발생한 단계로 바로 이동할 수 있습니다.
- iPhone / iPad 대상
- 영문 인터페이스 용어 유지
- 실패 지점별 문제 해결
STEP 01 · 서버 정보 가져오기
Add Server: 서버 추가 또는 구독 가져오기
먼저 보유한 정보가 서버 목록 업데이트용 구독 링크인지, 단일 서버의 주소·포트·인증 정보인지 확인하세요. 두 종류의 정보를 앱에 추가하는 방법은 서로 다르며 둘 다 진행할 필요는 없습니다. Shadowrocket을 열고 Home으로 이동한 뒤 오른쪽 위의 추가 버튼을 눌러 Add Server로 들어갑니다. 저장한 후에는 편집 화면에서 바로 연결을 시도하지 말고 Home으로 돌아가 결과를 확인하세요.
기존 구독 링크가 있는 경우: Subscribe 사용
Add Server에서 Type을 열고 Subscribe를 선택한 다음 기존 구독 링크 전체를 URL에 입력합니다. 메모에는 ‘개인 구독’처럼 알아보기 쉬운 이름을 사용할 수 있습니다. 비밀번호나 링크에 포함된 인증 정보는 메모에 적지 마세요. 확인 후 저장하고 구독을 읽어올 때까지 기다립니다. 성공하면 Home 목록에 해당 구독의 서버 항목이 표시됩니다. 구독 이름만 있고 선택할 서버가 없다면 먼저 업데이트 결과를 확인하세요.
링크를 복사할 때는 특히 앞뒤와 중간의 매개변수를 확인하세요. 채팅 메시지의 설명, 줄바꿈, 공백, 문장 끝의 문장 부호는 링크에 포함되지 않으므로 함께 입력하면 안 됩니다. 아래 내용은 입력란 형식을 설명하기 위한 예시일 뿐 실제 구독으로 사용할 수 없으며 열 필요도 없습니다.
https://example.com/sub?token=xxxx
가져오기에 성공했다면 목록이 바로 새로 고침되지 않더라도 같은 구독을 여러 개 만들지 말고 기존 항목을 유지하세요. 서버 목록을 다시 불러오려면 기존 구독을 업데이트하면 됩니다. 구독 주소에는 접근 자격 증명이 포함될 수 있으므로 비밀번호처럼 보관하세요. 문제 화면을 다른 사람에게 보낼 때는 전체 URL과 매개변수를 가리세요. 업데이트와 여러 구독 관리 방법은 구독 매뉴얼의 업데이트 전략을 참고하세요.
단일 서버 정보가 있는 경우: 프로토콜에 맞춰 입력
서버 정보를 받았다면 Add Server의 Type에서 정보에 명시된 프로토콜을 선택합니다. 예를 들어 Shadowsocks, VMess, VLESS 또는 Trojan을 선택한 뒤 주소, 포트 및 해당 프로토콜에 필요한 인증 정보를 입력합니다. 프로토콜마다 입력 항목이 다르므로 한 프로토콜의 비밀번호, UUID 또는 전송 매개변수를 다른 프로토콜에 임의로 적용하면 안 됩니다. 입력 순서는 제공받은 정보와 현재 양식에 따르세요.
저장하기 전에 주소에 불필요한 공백이 들어갔는지, 포트가 빠짐없이 입력되었는지, 인증 정보의 문자가 누락되지 않았는지 항목별로 확인하세요. 자료에 TLS, 전송 방식 또는 서버 이름이 명시되어 있다면 해당 값도 그대로 입력해야 합니다. 양식을 단순하게 보이게 하려고 매개변수를 삭제하지 마세요. 항목이 확실하지 않다면 여러 조합을 시도하는 대신 서비스 제공업체에 문의하세요. 양식이 저장된다는 것은 입력을 받아들였다는 뜻일 뿐, 원격 서버에 연결할 수 있음을 보장하지 않습니다.
QR 코드와 클립보드 정보: 내용 유형 확인
가져오기용 QR 코드가 있다면 Scan QR Code를 사용하고 시스템 안내에 따라 필요한 카메라 권한을 허용하세요. QR 코드에는 단일 서버 공유 링크나 구독 주소가 포함될 수 있습니다. 인식 후 유형, 메모, 주소가 보유한 정보와 일치하는지 확인하고 저장하세요. 클립보드에서 가져올 때도 복사한 내용이 전체 공유 정보인지 확인하세요. 웹 페이지 제목이나 일반 설명을 복사한 것이어서는 안 됩니다. 정리 방법은 QR 코드 스캔 및 가져오기 안내를 참고하세요.
한 가지 방법으로 추가를 마쳤다면 Home으로 돌아가 방금 추가한 서버를 찾아 선택하세요. 이때 다른 설정을 연이어 변경하지 마세요. 다음 단계에서는 요청을 어떤 방식으로 처리할지 정합니다. 구독은 서버 목록을 제공하고 규칙 구성은 트래픽 경로를 결정합니다. 구독을 성공적으로 가져왔다고 해서 적합한 규칙 구성까지 가져오거나 활성화한 것은 아닙니다.
STEP 02 · 요청 처리 방식 확인
Global Routing: Config, Proxy 또는 Direct 선택
Home에서 Global Routing을 찾아 선택 화면을 엽니다. 여기서는 요청 처리 방식을 정하며, 앞 단계에서 선택한 서버와는 별개의 설정입니다. 세 가지 모드는 Config(구성)/Proxy(프록시)/Direct(직접 연결)입니다. 연결을 켜기 전에 현재 선택의 의미를 이해하면 서버는 정상인데 접속 결과가 예상과 다른 상황을 오해할 가능성이 줄어듭니다.
| 모드 | 처리 방식 | 사용 시점 |
|---|---|---|
| Config(구성) | 현재 활성화된 구성의 규칙에 따라 요청을 처리합니다. | 신뢰할 수 있는 구성이 있고 요청별로 규칙을 적용하려는 경우 |
| Proxy(프록시) | 모든 요청을 프록시 경로로 처리합니다. | 선택한 서버의 실제 접속 가능 여부를 잠시 확인할 때 |
| Direct(직접 연결) | 요청을 직접 연결 방식으로 처리합니다. | 기본 네트워크 상태를 비교하거나 직접 연결 결과를 확인할 때 |
Config 사용 전 활성 파일 확인
규칙에 따라 트래픽을 분기하려면 Config로 이동해 현재 활성화된 구성 파일을 확인하고 사용할 파일이 맞는지 확인하세요. 목록에 파일이 있다고 해서 활성화된 것은 아닙니다. 이름만 보고 내용을 판단하지 마세요. 규칙은 실제 구성에 지정된 순서대로 확인되며 일반적으로 처음 일치하는 규칙의 정책이 적용됩니다. FINAL은 마지막 대체 처리에 사용됩니다. 요청이 DIRECT 또는 REJECT로 처리되는 것은 구성 규칙에 따른 결과일 수 있으며, 서버 장애를 뜻하지는 않습니다.
처음 사용하거나 규칙 내용을 아직 확인하지 않았다면 많은 규칙을 바로 편집할 필요는 없습니다. 먼저 Proxy를 임시로 선택해 일반 웹 페이지에 접속하고 서버 경로가 작동하는지 확인한 다음 Config로 돌아와 결과를 비교할 수 있습니다. Proxy에서는 접속되지만 Config에서는 되지 않는다면 구독을 즉시 삭제하고 다시 가져오기보다 구성과 규칙 매칭을 확인하세요. 규칙 문법과 설정 설명은 기능 및 설정에서 확인할 수 있습니다.
모드를 선택한 뒤 Home으로 돌아와 테스트할 서버가 그대로 선택되어 있는지 다시 확인하세요. Global Routing을 임시로 변경했다면 테스트 후 평소 설정으로 되돌립니다. 문제를 확인하려고 서버 변경, DNS 수정, 모드 전환, 구성 편집을 한꺼번에 하지 마세요. 변경 사항이 겹치면 접속이 복구되더라도 원인을 파악하기 어렵습니다.
STEP 03 · 시스템 연결 설정
Home: 연결 스위치 켜기 및 VPN 구성 승인
Home으로 돌아와 서버가 선택되어 있고 Global Routing이 이번 확인 목적에 맞는지 살펴본 다음 연결 스위치를 켭니다. 처음 연결할 때 시스템에서 VPN 구성 추가를 요청할 수 있습니다. 이는 앱이 시스템 네트워크 기능을 통해 트래픽을 처리하도록 허용하는 절차이며, 서버를 다시 가져오는 것이 아닙니다. 안내가 현재 작업으로 인해 표시된 것인지 확인한 뒤 시스템 화면에서 허용을 선택하고 기기의 암호 또는 생체 인증을 완료하세요.
승인이 완료되면 Shadowrocket으로 돌아가 연결 스위치가 켜진 상태로 유지되는지 확인하세요. 시스템 확인을 마치지 않았다면 앱이 여전히 연결되지 않았을 수 있습니다. 권한 안내를 먼저 처리한 뒤 한 번 더 시도하세요. 스위치가 곧바로 꺼진다면 빠르게 여러 번 누르거나 정보를 반복해서 추가하지 마세요. 처리되지 않은 시스템 창이 있는지, 기기에서 현재 VPN 연결을 허용하는지 확인하세요.
VPN 구성과 규칙 구성 구분하기
시스템의 VPN 구성 기록은 앱과 시스템 네트워크 기능을 연결하는 데 사용되고, 앱의 Config 파일은 규칙, DNS 등의 처리 설정에 사용됩니다. 둘 다 ‘구성’이라고 불릴 수 있지만 용도는 다릅니다. 시스템 VPN 구성을 삭제해도 잘못 작성된 규칙은 수정되지 않으며, Config 파일을 바꿔도 시스템 승인을 대신할 수 없습니다. 문제의 유형을 정확히 파악한 뒤 해당 조치를 고려하세요.
이전에 승인을 거부했다면 연결을 다시 시도하고 시스템 안내를 확인하세요. 기기가 관리 정책의 제한을 받거나 시스템에서 VPN 구성을 추가할 수 없다고 표시되면 먼저 기기 관리 요구 사항을 확인하세요. 이를 구독 문제로 오해하지 마세요. 시스템 기록을 확인하려면 시스템 설정에서 VPN을 검색하고 Shadowrocket에 해당하는 항목을 찾으세요. 변경하기 전에 대상을 확인해 사용 중인 다른 네트워크 설정에 영향을 주지 않도록 주의하세요.
승인을 마치고 스위치가 켜진 상태로 유지되더라도 연결 절차가 시작되었거나 시스템 연결 상태가 설정되었다는 의미일 뿐, 모든 웹 사이트에 접속할 수 있다는 뜻은 아닙니다. 시스템 상태 표시만으로 앱 수준의 연결을 확인할 수도 없습니다. 다음 단계에서는 서버와 모드를 그대로 유지하고 실제 웹 요청을 확인하세요. 그래야 결과를 비교하기 쉽습니다.
STEP 04 · 요청 결과로 작동 확인
Connectivity Test: 테스트 후 실제 접속 확인
먼저 Connectivity Test로 현재 서버를 간단히 확인하세요. 테스트 결과는 특정 조건에서 응답을 받았는지 파악하는 데 도움이 됩니다. 하지만 모든 도메인, 프로토콜, 서비스 요청의 성공이나 현재 웹 페이지가 해당 서버를 이용했다는 사실을 보장하지는 않습니다. 응답 시간 하나만 보고 설정이 완료되었다고 판단하지 말고 실제 접속과 트래픽 분기 결과도 확인하세요.
Shadowrocket 연결을 켜 둔 상태에서 브라우저로 전환해 평소 접속할 수 있는 일반 페이지를 열고 새로 고침하세요. 그런 다음 실제로 사용하려는 서비스를 확인합니다. 민감한 작업이 필요하지 않은 페이지를 먼저 선택하고, 처음 확인할 때는 결제, 양식 제출, 대용량 파일 전송을 사용하지 마세요. 페이지가 캐시되어 있다면 이전 내용만으로 새 요청의 성공 여부를 판단할 수 없습니다. 사이트 내 다른 페이지를 열어 추가로 확인하세요.
결과를 세 가지 항목으로 기록
- 서버 테스트: Connectivity Test에 응답이 있는지, 모든 항목이 실패했는지 확인합니다.
- 실제 접속: 일반 웹 페이지가 열리는지, 특정 서비스에서만 문제가 발생하는지 확인합니다.
- 규칙 경로: 현재 Config를 사용 중인지, 대상 요청이 예상대로 PROXY, DIRECT 또는 REJECT로 처리되는지 확인합니다.
규칙을 확인하려면 앱에서 현재 확인할 수 있는 연결 기록이나 로그에서 방금 접속한 도메인과 처리 정책을 찾으세요. 화면마다 제공하는 정보가 다를 수 있으므로 실제 표시된 항목만 근거로 판단하고, 표시되지 않은 항목이 통과했다고 추정하지 마세요. Config를 사용할 때 한 페이지가 여러 도메인에 요청을 보낼 수 있습니다. 기본 페이지는 열리지만 특정 리소스가 실패한다면 주소 표시줄의 도메인만 확인하지 말고 해당 요청을 각각 살펴보세요.
테스트와 웹 접속이 모두 정상이라면 앱으로 돌아가 평소 사용하는 Global Routing이 복원되었는지 확인하고 작동하는 서버와 구성 이름을 기록하세요. 처음 확인하는 동안에는 On Demand를 변경하지 않아도 됩니다. 수동 연결이 정상적으로 작동하는 것을 확인한 뒤 네트워크 환경에 맞춰 On Demand를 별도로 설정하세요. On Demand는 조건에 따라 연결을 시작하는 기능이며 잘못된 서버 정보를 채우거나 작동하지 않는 구독을 수정하지는 않습니다.
일부 단계만 통과했더라도 구성을 서둘러 지우지 마세요. 현재 결과를 보존하고 다음 절에서 증상별로 원인을 확인하세요. 가져오기, 원격 서버 응답, 시스템 연결, DNS, 규칙은 서로 다른 단계이므로 전체 과정을 한 번에 다시 진행하기보다 각각 확인하는 편이 효과적입니다.
STEP 05 · 실패 지점 하나씩 해결
Shadowrocket 연결 안 됨: 증상별 문제 해결
저장 실패, 업데이트 실패, 서버 테스트 실패, 연결 스위치가 꺼짐, 연결 후 웹 페이지가 열리지 않음 중 어느 단계에서 문제가 발생했는지 먼저 기록하세요. 기존에 작동하던 구성은 유지하고 한 번에 변수 하나만 변경한 뒤 같은 페이지에서 다시 확인합니다. 처음부터 모든 서버를 삭제하거나 Config를 비우거나 네트워크 설정을 초기화하지 마세요. 문제를 파악하는 데 필요한 정보까지 함께 사라질 수 있습니다.
구독 업데이트 실패 또는 서버 목록이 비어 있음
먼저 기기의 기본 네트워크로 일반 웹 페이지에 접속할 수 있는지 확인한 다음 Subscribe의 URL이 완전한지 살펴보세요. 링크 매개변수가 누락되었거나 복사할 때 줄바꿈과 문장 부호가 섞였다면 서비스 제공업체에서 전체 링크를 다시 받아 교체하세요. 정보가 변경되었다면 복사본을 여러 개 추가하지 말고 기존 구독을 업데이트하세요. 그래도 실패하면 앱에 실제로 표시된 오류 내용을 기록하고 서비스 제공업체에 링크의 유효성과 가져오기에 적합한 응답인지 확인하세요.
구독 업데이트 실패와 기존 서버의 연결 가능 여부는 따로 확인해야 합니다. 목록은 남아 있어도 구독을 일시적으로 읽어오지 못할 수 있고, 업데이트가 성공해도 특정 서버는 사용할 수 없을 수 있습니다. 먼저 현재 목록과 선택된 항목을 확인하세요. 업데이트가 된다는 사실만으로 모든 서버를 사용할 수 있다고 판단하지 마세요. 업데이트 후 항목 변경과 여러 구독 관리 방법은 구독 업데이트 안내를 참고하세요.
Connectivity Test 실패
서버를 직접 추가했다면 Add Server 편집 화면으로 돌아가 보유한 정보와 프로토콜, 주소, 포트, 인증 항목을 대조한 뒤 TLS와 전송 매개변수를 확인하세요. 구독에서 가져온 항목이라면 한 번 업데이트하고 테스트 대상 서버가 여전히 목록에 있는지 확인합니다. 한 항목만 실패한다면 이미 보유한 다른 항목과 비교해 볼 수 있습니다. 모두 실패한다면 먼저 현재 네트워크 상태와 공통으로 사용하는 구성 조건을 확인하세요. 추측한 비밀번호나 포트를 반복해서 시도하지 마세요.
연결 스위치가 켜진 상태로 유지되지 않음
VPN 구성을 추가하도록 시스템에서 승인했는지, 처리하지 않은 안내가 남아 있는지 확인하세요. 시스템에 명확한 오류가 표시되면 서버를 테스트하기 전에 해당 오류부터 해결해야 합니다. 기기의 네트워크를 전환한 뒤 문제가 생겼다면 연결을 끄고 기본 네트워크가 복구될 때까지 기다린 다음 다시 켜 보세요. 매 단계마다 결과를 확인한 뒤 다음 조치를 진행합니다. 관리 기기의 제한은 기기 관리 요구 사항에 따라 처리해야 하며 서버 정보를 바꾸는 것으로 시스템 권한 문제를 해결할 수는 없습니다.
테스트는 응답하지만 웹 페이지가 열리지 않음
먼저 모든 페이지에서 문제가 발생하는지, 특정 도메인이나 앱에서만 발생하는지 확인하세요. 서버는 그대로 둔 채 Config에서 Proxy로 잠시 전환해 비교합니다. Proxy에서는 정상이고 Config에서 문제가 생기면 현재 구성의 규칙과 DNS를 우선 확인하세요. 두 모드 모두 문제가 있다면 서버 매개변수, 원격 서버 상태, 현재 네트워크를 다시 살펴보세요. 비교가 끝나면 원래 필요한 모드로 되돌리고 임시 테스트 상태를 최종 설정으로 사용하지 마세요.
DNS는 도메인 이름을 주소로 변환합니다. 서버 테스트에서 응답을 받았다고 해서 페이지에 필요한 모든 도메인이 올바르게 해석되는 것은 아닙니다. 먼저 현재 Config의 DNS 설정이 직접 확인한 구성에서 가져온 것인지 살펴보고 여러 해석 옵션을 동시에 변경하지 마세요. 단계별 확인 방법은 웹 페이지는 열리지 않지만 지연 시간은 정상일 때 DNS 문제 해결 안내를 참고하세요.
문제를 문의하기 전에 필요한 정보만 정리
기기 종류, 현재 네트워크, Global Routing 선택, 실패 단계와 오류 문구를 기록하고 특정 대상에서만 문제가 발생하는지도 적어 두세요. 전체 구독 링크, 비밀번호, UUID 또는 기타 인증 정보를 보내지 마세요. 로그와 스크린샷도 민감한 항목을 확인해 가린 뒤 공유하세요. “Proxy에서는 접속되지만 Config로 돌아오면 특정 도메인에 접속할 수 없음”처럼 설명하면 단순히 “연결 안 됨”이라고 하는 것보다 원인을 파악하기 쉽습니다.
앞 단계의 조작을 다시 확인하려면 추가 및 가져오기, Global Routing 선택 또는 연결 승인으로 돌아가 통과하지 못한 첫 단계부터 다시 진행하세요.