Shadowrocket 빠른 시작
추가, 연결 및 확인
기존 서버 정보나 구독 링크로 시작해 가져오기, Global Routing 모드 선택 및 연결 확인을 차례로 진행합니다. 처음이라면 순서대로 읽고, 이미 가져오기를 마쳤다면 연결 단계로 바로 이동하세요.
시작하기 전에: Shadowrocket을 설치했고 본인의 구독 링크나 서버 정보를 보유하고 있어야 합니다. iPhone / iPad 앱은 App Store에서 $2.99에 1회 결제로 제공됩니다. Mac(Apple 칩 및 Intel) / Windows / Android / Linux 버전은 무료이며 사이트의 다운로드 페이지에서 설치할 수 있습니다. 이 안내서는 iPhone / iPad 화면을 기준으로 하며, 시스템 요구 사항은 App Store 페이지의 표기를 따릅니다.
앱의 1회 구매와 서버 회선 요금제는 별개입니다. 이 사이트는 서버나 구독을 제공·판매·추천하지 않습니다. 아래에서는 사용자가 이미 보유한 설정을 가져와 사용하는 방법만 설명합니다. 아직 설치하지 않았다면 먼저 다운로드 안내를 확인하세요.
01 · Add Server: 기존 서버 추가
Shadowrocket을 열고 Home으로 이동해 SERVER 영역의 Add Server를 선택하거나 페이지의 추가 버튼으로 편집 화면을 엽니다. 먼저 보유한 정보의 종류를 확인하세요. 서버 주소, 포트, 비밀번호 및 프로토콜 매개변수가 있다면 이 단계에 따라 입력합니다. 서버 목록을 업데이트하는 구독 링크가 있다면 다음 단계인 Subscribe를 읽으세요. 두 방법은 가져오기 경로의 선택지이므로 같은 정보를 중복으로 추가할 필요는 없습니다.
Add Server에서 Type을 누르고 보유한 정보에 명시된 프로토콜을 선택합니다. 예를 들어 Shadowsocks, VMess, VLESS 또는 Trojan이 있습니다. Type에 따라 아래에 표시되는 항목이 달라지므로 비밀번호를 먼저 입력한 뒤 프로토콜을 임의로 바꾸지 마세요. Shadowsocks를 예로 들면 Host에는 서버 도메인 또는 IP 주소, Port에는 포트 번호를 입력하고 Password와 Method에는 각각 비밀번호와 암호화 방식을 입력합니다. Type마다 인증 항목이 다르므로 보유한 정보를 기준으로 입력해야 하며, 한 프로토콜의 항목을 다른 프로토콜에 그대로 적용하면 안 됩니다.
Host에는 보통 example.com 같은 호스트 이름만 입력합니다. 경로가 포함된 전체 웹 주소를 넣지 마세요. Port는 별도의 숫자 항목입니다. 긴 비밀번호를 복사할 때 앞뒤 공백이나 줄바꿈이 포함되지 않았는지 확인하고, Method는 서버 측 설정과 정확히 일치시킵니다. 정보에 TLS, SNI 또는 전송 관련 매개변수가 포함되어 있다면 항목별로 맞춰 입력하세요. 필수 옵션을 끄는 방식으로 입력 항목을 줄이지 마세요. 매개변수의 의미가 확실하지 않다면 값을 계속 바꿔 시도하기보다 원래 정보를 제공한 곳에 확인하세요.
서버 QR 코드가 있다면 Scan QR Code로 읽은 다음 인식된 Type, Host 및 Port를 확인할 수 있습니다. Import from Cloud JSON은 별도의 설정 가져오기 경로이며 임의의 구독 링크를 입력하는 곳이 아닙니다. 해당 형식의 정보를 보유한 경우에만 사용하세요. 항목을 확인한 뒤 페이지의 저장 버튼을 눌러 Home으로 돌아가 SERVER에 새 항목이 표시되는지 확인합니다. 항목이 보인다는 것은 저장이 완료되었다는 뜻일 뿐, 연결 성공을 의미하지는 않습니다. 다음 단계에서 모드를 선택하고 연결을 켠 뒤 결과를 확인해야 합니다.
02 · Subscribe: 기존 구독 가져오기
본인의 구독 링크가 있다면 Home에서 Add Server를 열고 Type에서 Subscribe를 선택한 뒤 전체 링크를 URL 항목에 붙여 넣습니다. 구독 링크에는 서버 정보와 개인 액세스 정보가 포함될 수 있으므로 댓글, 스크린샷 또는 채팅방에 공개하지 마세요. 본인이 구분하기 쉬운 메모를 입력하면 됩니다. 링크의 쿼리 매개변수는 수정할 필요가 없으며, 서비스 제공자의 로그인 웹 주소를 구독 주소 대신 입력해서도 안 됩니다.
저장한 뒤 구독 요청이 완료될 때까지 기다리고 Home으로 돌아가 해당 그룹을 확인합니다. 정상적으로 가져오면 그룹 아래에 선택 가능한 서버 항목이 표시됩니다. 그룹 이름만 있고 항목이 없다면 바로 연결 스위치를 켜기보다 업데이트가 완료되었는지 먼저 확인하세요. 구독에서 오류나 지원되지 않는 콘텐츠가 반환될 수 있습니다. 이 경우 전체 구독 링크를 복사했는지, 링크가 아직 유효한지 확인합니다. 구독 가져오기는 규칙 파일 가져오기와 다르므로 다음 단계에서 Config도 별도로 확인해야 합니다.
나중에 목록을 새로 고칠 때는 해당 구독 그룹의 업데이트 기능을 사용하고 요청이 끝난 뒤 항목의 변화를 확인합니다. 서버 목록은 구독에서 반환된 내용에 따라 달라지며, 직접 수정한 내용은 다음 업데이트에서 덮어써질 수 있습니다. 개인 수정 사항을 계속 유지해야 한다면 해당 항목이 구독 항목인지, 개별 서버인지, 규칙 설정인지 먼저 구분하세요. 구독을 사용하지 않고 서버 하나를 이미 추가했다면 이 단계는 건너뛰어도 됩니다.
업데이트 실패가 표시되면 먼저 기기의 현재 네트워크에서 구독 주소에 접근할 수 있는지 확인하고, 링크 일부가 누락되거나 공백이 들어가지 않았는지 살펴보세요. 같은 구독을 반복해서 삭제하고 다시 만들면 이전 상태와 비교하기 어려워질 수 있습니다. 구독 업데이트가 성공해도 모든 서버에 연결할 수 있다는 뜻은 아닙니다. 서버를 선택한 뒤 다음 단계의 연결 확인을 진행하세요. 자세한 오류 유형은 자주 묻는 질문의 연결 문제 해결을 참고하세요.
03 · Global Routing: 모드와 규칙 선택
서버를 저장한 뒤 Home으로 돌아가 Global Routing을 눌러 라우팅 모드를 확인합니다. 세 가지 모드는 Config, Proxy, Direct입니다. 여기서는 요청을 처리하는 방식을 정하며 서버 프로토콜을 선택하는 것은 아닙니다. 모드를 바꿔도 서버 정보가 자동으로 보완되거나 만료된 구독이 복구되지는 않습니다. 처음 사용할 때는 현재 모드를 이해한 뒤 연결하세요. 스위치가 켜져 있어도 요청 경로를 잘못 판단할 수 있습니다.
| 모드 | 역할 및 사용 전 조건 |
|---|---|
| Config | 현재 선택된 설정 파일의 규칙에 따라 PROXY, DIRECT 등의 정책을 적용합니다. 적합한 설정이 이미 있어야 합니다. |
| Proxy | 클라이언트가 처리하는 요청을 프록시 방식으로 전달합니다. 서버 연결을 임시로 비교할 때 적합하며, 규칙 파일이 트래픽을 분기한다는 뜻은 아닙니다. |
| Direct | 요청을 직접 연결 방식으로 처리합니다. 로컬 네트워크를 비교하는 데 사용할 수 있지만 서버 프록시 연결이 정상이라는 증거는 아닙니다. |
일상적으로 규칙에 따른 트래픽 분기를 사용하려면 먼저 Config 페이지에서 설정 파일이 있고 선택되어 있는지 확인한 다음 Home으로 돌아가 Config를 선택합니다. 설정 파일을 열면 General, Rule, Hosts 등의 섹션을 볼 수 있습니다. 처음에는 Rule의 정책이 사용 목적에 맞는지 확인하면 됩니다. URL Rewrite나 HTTPS Decryption까지 동시에 수정할 필요는 없습니다. 이 기능들은 최초 연결에 필수적인 단계가 아니므로 연결을 시험하려고 추가로 켜지 마세요.
Rule은 보통 위에서 아래 순서로 일치하는 항목을 찾고, 일치하면 해당 정책을 적용합니다. PROXY는 프록시 정책, DIRECT는 직접 연결, REJECT는 요청 거부를 뜻합니다. FINAL은 앞선 규칙에 일치하지 않을 때 적용하는 기본 처리입니다. FINAL만 보고 모든 요청이 같은 경로를 사용한다고 판단하지 마세요. 앞에서 일치하는 규칙이 있는지에 따라 결과가 달라집니다. 기존 설정이 정상 작동한다면 연결 확인이 끝날 때까지 그대로 두세요. 규칙 작성법과 우선순위는 Config › Rule 매뉴얼에서 확인할 수 있습니다.
아직 규칙 설정이 없다면 Proxy를 사용해 연결 가능한 서버를 비교한 뒤 트래픽 분기 설정을 진행할 수 있습니다. 모드를 선택한 다음 Home으로 돌아와 Global Routing 행에 방금 선택한 모드가 표시되는지 확인하고 다음 단계로 이동합니다. 문제를 확인할 때는 한 번에 조건 하나만 바꿔야 서버 문제인지 규칙 문제인지 구분할 수 있습니다.
04 · Home: 연결 스위치 켜기 및 VPN 구성 허용
Home으로 돌아가 SERVER에서 사용할 서버를 선택하고 선택 표시를 확인한 다음 Global Routing을 확인합니다. “항목이 추가됨”과 “항목이 선택됨”을 혼동하지 마세요. 목록에 여러 그룹이 있다면 현재 선택한 서버가 어느 그룹에 속하는지도 확인해야 합니다. 연결 전에 사용할 서버와 모드를 기록해 두면 이후 테스트에서 비교 조건을 명확히 할 수 있습니다.
페이지 상단에서 Not Connected가 표시된 행의 연결 스위치를 켭니다. 처음 사용할 때 시스템에서 Shadowrocket의 VPN 구성 추가를 허용할지 물을 수 있습니다. 안내에 따라 허용을 선택하고 기기 암호 또는 시스템에서 요구하는 인증을 완료합니다. 이 권한은 시스템이 앱에서 관리하는 네트워크 연결을 설정하도록 허용하는 것이며 앱을 다시 구매하는 절차가 아닙니다. 권한 요청을 취소했다면 앱으로 돌아와 연결을 다시 켜고 시스템 안내에 따라 진행하세요.
권한을 허용한 뒤 Shadowrocket으로 돌아와 상단 상태가 바뀌었는지 확인합니다. 스위치가 즉시 꺼지거나 연결 상태로 바뀌지 않으면 계속 누르지 말고 실패 원인 확인으로 이동하세요. 시스템에서 다른 VPN 연결이 작동 중이라면 충돌이 발생하는지도 확인합니다. 문제를 확인하는 동안 여러 앱이 번갈아 연결을 제어하게 두지 마세요. 기기 관리 정책으로 제한된 경우에는 해당 기기에서 이런 구성을 만들거나 사용할 수 있는지 먼저 확인해야 합니다.
연결 상태가 설정되어도 실제 접속 여부를 계속 확인해야 합니다. 시스템의 VPN 표시는 관련 네트워크 연결이 활성 상태임을 뜻할 뿐, 모든 대상에 접속할 수 있거나 DNS 및 규칙이 정상임을 보장하지는 않습니다. 연결을 직접 끄려면 상단의 스위치를 끕니다. 스위치를 끈 뒤 다시 자동 연결된다면 모든 서버 정보를 삭제하기보다 다음 단계에서 On Demand를 확인하세요.
05 · Connectivity Test: 연결 작동 여부 확인
Home에서 Connectivity Test를 누르고 테스트가 완료될 때까지 기다립니다. 먼저 선택한 서버에 테스트 결과가 있는지 확인하고, 브라우저에서 평소 이용하는 웹페이지를 열어 실제로 로딩이 완료되는지 살펴봅니다. Connectivity Test 결과는 테스트 방식과 대상에 따라 달라집니다. 전체 접속 경로를 완벽히 증명하는 것은 아니므로 테스트에 성공해도 도메인 확인, 웹사이트 인증서, 로그인 상태 및 모든 앱 요청이 정상이라고 볼 수는 없습니다.
같은 로컬 네트워크와 동일한 페이지를 사용해 전후 결과를 비교하는 것이 좋습니다. 연결을 켠 상태의 결과를 먼저 기록하고 필요하면 연결을 끈 뒤 다시 테스트합니다. 무선 네트워크, 서버, 모드, DNS를 동시에 바꾸면 문제가 해결되어도 무엇이 영향을 주었는지 판단하기 어렵습니다. Config를 사용할 때 도메인마다 PROXY 또는 DIRECT로 다르게 처리될 수 있으므로, 직접 연결되는 페이지가 열린다고 해서 프록시 정책에 지정된 서버가 작동한다는 뜻은 아닙니다.
테스트는 실패했지만 웹페이지를 정상적으로 사용할 수 있다면 Settings의 Test Method를 먼저 확인하고 테스트 방식이 서버에서 지원되는지 살펴보세요. 결과가 있는데 웹페이지가 열리지 않는다면 도메인 확인과 규칙을 점검합니다. 필요하면 Proxy와 Config를 임시로 비교한 뒤 원래 사용할 모드로 되돌립니다. 비교 중에는 서버를 동일하게 유지해 서버 차이를 규칙 차이로 오해하지 않도록 합니다.
확인에 성공하면 재현 가능한 설정을 유지하고, 개인 규칙이나 On Demand 조건을 한 번에 하나씩 추가합니다. 정상적으로 사용할 때 테스트 방식을 자주 바꿀 필요는 없으며, 한 번의 테스트 수치를 장기적인 성능으로 간주해서도 안 됩니다. 테스트 결과와 웹페이지 접속이 다를 수 있는 이유는 연결 관련 자주 묻는 질문에서 확인하세요.
06 · Settings: 증상에 따라 실패 원인 확인
먼저 연결을 끄고 기기 자체에서 인터넷에 정상적으로 접속할 수 있는지 확인합니다. 현재 네트워크에서 로그인이 필요하다면 로그인도 완료하세요. 그런 다음 “정보가 올바른지, 연결이 설정되는지, 요청이 어떻게 라우팅되는지, 도메인을 확인할 수 있는지” 순서로 살펴봅니다. 한 번에 한 항목만 변경하고 다시 테스트한 뒤 결과를 기록하세요. 처음부터 앱을 재설치하거나 모든 설정을 지우면 문제를 찾는 데 필요한 상황 정보가 사라질 수 있습니다.
구독 가져오기 실패 또는 서버 테스트 불가
전체 구독 링크와 유효 상태, 현재 네트워크를 먼저 확인한 다음 개별 서버의 Type, Host, Port 및 인증 항목을 확인합니다. 직접 추가할 때 흔히 발생하는 오류는 프로토콜을 잘못 선택하거나 비밀번호에 공백이 들어가거나 전송 매개변수를 누락하는 것입니다. 구독은 업데이트되지만 개별 서버에 연결할 수 없다면 업데이트 주소와 서버 연결을 별도로 확인하세요. 업데이트 성공이 서버 연결을 보장하지는 않습니다.
스위치가 바로 꺼지거나 연결을 끈 뒤 자동으로 다시 연결됨
스위치가 바로 꺼지면 시스템의 VPN 구성 권한이 완료되었는지, 다른 VPN이 연결을 사용 중인지 확인합니다. 연결을 끈 뒤 다시 자동으로 연결되면 Settings에서 On Demand를 확인하고 문제를 살펴보는 동안 잠시 끈 다음 수동 연결을 다시 테스트합니다. On Demand는 조건에 따라 연결을 설정할 뿐 비밀번호, 서버 주소 또는 규칙 내용을 수정하지는 않습니다. 일반 연결이 정상인지 확인한 뒤 실제 네트워크 조건에 맞게 설정하세요.
연결되지만 웹페이지가 열리지 않음
Global Routing에서 Direct를 잘못 선택했는지, Config의 규칙이 대상 요청을 예상과 다른 정책으로 처리하는지 확인합니다. Proxy에서는 접속되지만 Config에서는 되지 않는다면 규칙이 일치하는 항목과 설정 선택을 먼저 점검합니다. 두 모드 모두 실패하면 DNS와 서버 매개변수를 함께 확인하세요. 모든 접속 실패를 DNS 문제로 단정하거나 출처를 모르는 여러 DNS 주소를 한꺼번에 붙여 넣지 마세요.
DNS의 위치와 옵션은 설정 및 플랫폼 화면에 따라 다를 수 있습니다. 변경하기 전에 기존 값을 기록하고, 적용 범위가 확실하지 않다면 현재 설정을 유지한 채 Settings › DNS 매뉴얼을 참고해 항목별로 확인하세요. Settings에는 Test Method, On Demand, Diagnostics, Proxy, TCP, UDP 등의 항목도 있습니다. 용도가 서로 다르므로 모든 항목을 켜지 마세요. 처음 사용할 때는 현재 증상과 직접 관련된 항목만 다룹니다.
문제 확인 정보를 전달하기 전에 재현 조건 정리
Diagnostics를 확인하거나 로그를 공유해야 한다면 먼저 문제를 한 번 재현하고 로컬 네트워크 종류, 현재 모드, 실패 단계 및 모든 대상에서 문제가 발생하는지 기록하세요. 공유하기 전에 구독 링크, 비밀번호, 개인 서버 정보 및 개인을 식별할 수 있는 접속 기록을 가립니다. “가져오기는 되지만 연결되지 않음” 또는 “연결 및 테스트 결과는 있지만 특정 웹페이지가 열리지 않음”처럼 설명하면 스위치 스크린샷 한 장만 제공하는 것보다 문제를 구분하는 데 도움이 됩니다. 그 밖의 상황은 연결 문제 해결 FAQ에서, 설정 항목의 의미는 옵션 매뉴얼에서 확인하세요.