공식 매뉴얼 · 첫 설정 과정

Shadowrocket 사용법

기존 설정 → Global Routing → 연결 및 확인

iPhone과 iPad의 실제 조작 순서에 따라 살펴보세요. 먼저 서버 하나의 연결을 확인한 뒤 규칙과 자동 연결을 설정하면 여러 항목을 동시에 변경해 문제 원인을 찾기 어려워지는 일을 줄일 수 있습니다.

STEP 01 / INPUT

Add Server: 서버 추가 또는 구독 가져오기

구독 링크와 개별 서버 설정값은 서로 다른 입력 방식입니다. 보유한 정보에 맞는 한 가지 방법을 선택하면 되며 중복으로 추가할 필요는 없습니다.

먼저 보유한 정보의 유형 확인

Shadowrocket을 열고 Home으로 이동해 SERVER 그룹과 Add Server 항목을 찾습니다. 먼저 보유한 정보를 확인하세요. 서버 목록을 갱신하는 링크라면 Subscribe로 처리하고, Host, Port, Password처럼 항목별 값이 있다면 서버 하나를 직접 입력합니다. 구독 링크 전체를 Host에 붙여 넣거나 링크 모양만 보고 프로토콜을 추측하지 마세요. 유형을 알기 어렵다면 다음 단계로 넘어가기 전에 이용 중인 서비스의 안내를 확인하세요.

구독 링크가 있는 경우: Subscribe 선택

Add Server를 열고 Type을 눌러 Subscribe를 선택한 다음, 보유한 구독 링크 전체를 해당 유형에 표시되는 주소 입력란에 붙여 넣습니다. 붙여 넣은 뒤 앞뒤에 공백, 줄바꿈, 따옴표가 추가되지 않았는지 확인하고, 특히 물음표 뒤의 매개변수를 빠뜨리지 마세요. 내용이 완전한지 확인한 뒤 저장하고 목록을 불러올 때까지 기다린 다음 Home으로 돌아가 해당 그룹과 서버 항목이 표시되는지 확인합니다. 구독 주소를 저장하는 것과 목록을 정상적으로 불러오는 것은 별개의 과정입니다. 목록이 비어 있다면 연결 스위치를 켜기 전에 가져오기 오류부터 해결하세요.

구독 업데이트는 해당 주소에서 제공하는 내용을 다시 가져오는 기능입니다. 처음 가져오기에 성공한 뒤에는 해당 구독 항목의 작업 메뉴에서 업데이트할 수 있으므로 같은 주소를 매번 새로 추가할 필요가 없습니다. 기존 구독을 계속 사용할 수 있다면 변경 전에 원래 항목을 남겨 두어 실수로 삭제한 뒤 복구하지 못하는 일을 방지하세요. 구독 링크에는 접근 정보가 포함될 수 있으므로 스크린샷을 공유하거나 다른 사람에게 문제를 설명할 때 전체 링크와 식별 매개변수를 가리세요.

서버 설정값이 있는 경우: Add Server 항목별 입력

Type에서 보유한 정보와 일치하는 프로토콜을 선택한 다음 Host, Port와 해당 프로토콜에 필요한 인증 또는 암호화 항목을 확인합니다. 공식 스크린샷에는 Password와 Method가 포함된 양식이 표시되어 있지만 모든 프로토콜에 같은 항목이 필요한 것은 아닙니다. Shadowsocks, VMess, VLESS, Trojan 등은 보유한 설정값에 따라 각각 입력하세요. TLS, 전송 방식 또는 기타 추가 항목도 표시된다면 원래 정보와 일치시켜야 하며 다른 유형의 스크린샷을 보고 임의로 채우지 마세요.

Host에는 보통 서버 도메인이나 주소를 입력하고 Port에는 해당 포트를 입력합니다. 웹 페이지 경로를 Host 뒤에 붙이지 마세요. Password와 기타 인증 정보는 대소문자를 유지해 빠짐없이 복사해야 합니다. 서버를 식별할 수 있는 QR 코드가 있다면 Scan QR Code로 가져올 수 있으며, 가져온 후에도 Type과 주요 설정값을 확인하세요. Import from Cloud JSON은 별도의 가져오기 항목으로 Subscribe와 다릅니다. 저장한 뒤 Home으로 돌아가 해당 항목을 선택할 수 있는지 확인하고 모드를 선택합니다.

Shadowrocket 서버 추가 화면: Type, Host, Port, Password, Method 및 QR 코드 가져오기 항목 표시
Add Server: 항목은 Type에 따라 달라집니다. 그림은 메뉴와 입력 항목의 위치를 확인하기 위한 참고 자료입니다.
STEP 02 / ROUTING

Global Routing: 모드 선택 및 Config 확인

서버는 연결에 사용할 대상을 정하고 Global Routing은 트래픽 처리 방식을 정합니다. 두 항목을 따로 확인해야 합니다.

추가를 마친 뒤 Home으로 돌아가 Global Routing을 엽니다. 여기서 Config, Proxy, Direct 세 가지 모드를 구분해야 합니다. 모드를 바꿔도 서버 설정값이 수정되거나 새 서버가 자동으로 추가되지는 않습니다. 처음 사용할 때는 현재 선택을 기록해 두고 테스트 중에는 한 번에 하나만 변경해야 변화의 원인이 서버인지 모드인지 규칙인지 판단할 수 있습니다.

Config: 현재 설정에 따라 요청 처리

Config를 선택하면 현재 활성화된 설정의 규칙과 정책에 따라 요청을 처리합니다. Config로 이동해 사용 중인 파일을 확인한 다음 해당 설정의 Rule을 엽니다. 스크린샷의 General, Rule, Hosts, URL Rewrite, HTTPS Decryption은 설정 편집 화면의 각 섹션이며 Add Rule은 규칙을 추가할 때 사용합니다. 첫 연결을 위해 설정을 완성해야 한다는 이유로 각 섹션을 하나씩 수정할 필요는 없으며, 현재 목적과 관련 없는 설정을 켜지 마세요.

규칙은 대체로 순서대로 적용되며 앞쪽에서 일치하는 규칙이 요청 경로를 먼저 결정할 수 있습니다. DOMAIN-SUFFIX는 도메인 접미사에, IP-CIDR은 IP 주소 대역에 적용되며 FINAL은 앞선 규칙과 일치하지 않을 때 최종 처리에 사용됩니다. PROXY, DIRECT, REJECT는 처리 정책을 나타내며 서로 다른 서버 이름이 아닙니다. 특정 페이지의 문제를 확인할 때는 규칙이 있는지만 보지 말고 해당 페이지의 도메인, 규칙 적용 순서와 최종 정책을 함께 살펴보세요.

Proxy: 서버 연결을 비교 테스트할 때 사용

Proxy는 해당 모드로 트래픽을 처리하며 설정값을 확인한 뒤 간단히 연결 상태를 비교할 때 유용합니다. 같은 서버가 Proxy에서는 작동하지만 Config로 돌아간 뒤 특정 페이지가 열리지 않는다면 설정, 규칙, 이름 확인 과정을 중점적으로 살펴보세요. 이는 확인 범위를 좁히는 방법일 뿐 Proxy가 모든 일상 사용에 적합하다는 뜻은 아닙니다. 테스트가 끝나면 필요한 모드로 되돌리세요.

Direct: 프록시 연결 확인과 혼동하지 않기

Direct는 직접 접속할 때 사용합니다. Direct 상태에서 페이지가 열린다고 해서 방금 추가한 서버가 작동한다고 판단할 수는 없습니다. 연결하기 전에 Global Routing을 다시 확인해 직접 접속 결과를 프록시 결과로 오해하지 않도록 하세요. 기존 설정 파일은 Subscribe와도 다릅니다. Subscribe는 주로 서버 목록을 가져오고 Config는 설정과 규칙을 처리하므로, 구독을 가져왔다고 해서 특정 규칙 파일로 자동 전환되는 것은 아닙니다. 규칙 적용 방식을 더 알아보려면 기능 및 설정 안내를, 구체적인 오류 증상은 문제 해결을 참고하세요.

Shadowrocket 설정 파일 편집 화면: General, Rule, Hosts, URL Rewrite, HTTPS Decryption 및 Add Rule 표시
Config: 현재 설정과 Rule 확인. Global Routing 전환은 이 편집 화면이 아닌 Home에서 할 수 있습니다.
STEP 03 / CONNECT

Home: 서버 선택 및 연결 스위치 켜기

먼저 항목을 선택한 다음 스위치를 켭니다. 첫 연결 시에는 시스템 VPN 구성 권한도 허용해야 합니다.

Home으로 돌아가 SERVER 목록에서 사용할 서버를 선택하고 원하는 항목이 선택되었는지 확인합니다. 그룹이 여러 개라면 이름과 출처를 특히 주의해 확인하여 오래된 항목을 잘못 사용하지 않도록 하세요. 그런 다음 Global Routing을 다시 확인합니다. Config를 사용할 때는 설정이 선택되어 있는지 확인하고, Proxy로 비교 테스트할 때는 이번 테스트에 사용할 서버가 선택되어 있는지 확인합니다. 두 항목을 확인한 뒤 Home 상단의 스위치를 켭니다.

처음 시스템 메시지가 표시될 때

처음 연결할 때 VPN 구성을 추가하도록 허용하는 시스템 메시지가 표시될 수 있습니다. 이는 앱이 네트워크 연결 구성을 생성할 수 있도록 권한을 요청하는 단계이며, 앱을 다시 구매하거나 서버를 자동으로 가져오는 절차가 아닙니다. 메시지를 요청한 앱이 현재 사용 중인 Shadowrocket인지 확인한 뒤 시스템 안내에 따라 허용하고 기기 인증을 완료하세요. 앞서 메시지를 취소했다면 Home으로 돌아가 스위치를 다시 켜고 권한 요청이 다시 표시되는지 확인합니다.

권한 설정을 마친 뒤 앱으로 돌아와 상단 상태가 Not Connected에서 연결 상태로 바뀌는지, 곧바로 다시 해제되지는 않는지 확인합니다. 시스템의 VPN 상태는 연결 구성이 작동 중인지 살펴볼 때 참고할 수 있지만, 서버나 DNS 또는 특정 웹 페이지가 정상 작동한다고 단정할 수는 없습니다. 연결 스위치는 클라이언트 연결 절차의 상태를 나타냅니다. 실제 요청이 예상대로 완료되는지는 다음 단계에서 확인해야 합니다.

스위치를 켠 뒤에는 설정을 더 변경하지 마세요

현재 서버, Global Routing, 설정을 그대로 유지한 채 Connectivity Test와 실제 접속을 한 번씩 확인합니다. 처음 문제를 확인할 때는 VPN 연결을 관리하는 다른 설정을 잠시 중단한 뒤 다시 연결해 보세요. 시스템 연결이 전환되어 현재 항목의 오류로 오해하는 일을 방지할 수 있습니다. 서버를 바꾸고 새 설정을 가져오면서 DNS까지 동시에 수정하지 마세요. 여러 항목을 함께 바꾸면 정상 작동으로 돌아와도 원인을 파악하기 어렵습니다.

스위치가 바로 꺼지거나 반복해서 해제되거나 시스템 안내 절차가 완료되지 않았다면 Rule을 바로 편집하지 말고 권한과 연결 상태부터 확인하세요. 연결에 중요한 설정값을 바꿔야 한다면 먼저 스위치를 끄고 변경 내용을 저장한 다음 다시 연결해 확인하는 것이 좋습니다. 이미 연결된 상태와 새로 저장한 설정값이 같은 테스트에 적용되지 않을 수 있으므로 다시 연결하면 관찰 대상을 명확히 할 수 있습니다. 확인을 마치면 실제 요청 결과를 살펴보세요.

Shadowrocket 메인 화면: 상단에 Not Connected 스위치, Global Routing, Connectivity Test가 있고 아래에 SERVER 그룹과 Add Server가 표시됨
Home: 서버 선택, Global Routing, 상단 연결 상태를 차례로 확인한 뒤 Connectivity Test를 실행하세요.
STEP 04 / VERIFY

Connectivity Test: 응답 및 실제 접속 확인

테스트 응답, 연결 성립, 대상 요청 성공은 각각 따로 확인해야 하는 결과입니다.

먼저 테스트 결과가 무엇을 보여주는지 확인

Home에서 Connectivity Test를 실행하고 테스트가 끝날 때까지 기다린 뒤 선택한 서버의 결과를 확인합니다. 이 테스트는 현재 테스트 방법에서의 도달 가능성을 보여줍니다. 모든 웹사이트의 DNS, TLS, 규칙 경로와 서버 처리 결과를 확인하는 것은 아닙니다. 지연 시간이 표시되어도 해당 테스트가 응답을 받았다는 뜻일 뿐, 모든 페이지가 정상적으로 열린다고 볼 수는 없습니다. 두 결과를 비교하려면 네트워크 환경과 Test Method를 동일하게 유지하세요.

실제 요청으로 결과를 다시 확인

브라우저를 열어 실제로 사용할 페이지를 새로고침하고 새 요청을 한 번 보내 보세요. 이미 열려 있던 페이지는 캐시에서 불러왔을 수 있으므로 화면에 내용이 보이는 것만으로는 신뢰하기 어렵습니다. 해당 사이트의 다른 페이지를 열거나 다시 접속해 보세요. 테스트 당시 선택한 서버와 Global Routing을 기록하고, 필요하다면 앱에서 확인할 수 있는 요청 기록을 살펴 대상 도메인과 적용된 정책을 확인합니다. 기록에 해당 요청이 없다면 캐시가 사용되었거나 테스트 대상이 달랐는지도 확인하세요.

Config를 사용하면 일반 페이지와 대상 페이지가 각각 DIRECT와 PROXY를 거칠 수 있으므로 한쪽은 성공하고 다른 쪽은 실패해도 모순이 아닙니다. 먼저 실패한 요청에 어떤 규칙이 적용되었는지 확인한 다음 설정을 조정할지 판단하세요. Proxy는 작동하지만 Config에서 실패한다면 서버 설정값은 그대로 두고 규칙과 DNS를 집중적으로 살펴보세요. 두 모드에서 모두 실패한다면 서버 정보와 기본 네트워크를 다시 확인합니다. 이렇게 하면 불필요한 변경을 줄이고 문제를 재현하기도 쉬워집니다.

비교 테스트가 끝나면 Global Routing을 평소 사용할 모드로 되돌린 뒤 같은 페이지를 다시 테스트합니다. 임시로 Proxy에서만 성공했다면 Config로 전환한 뒤 규칙 경로도 확인하세요. ‘항목을 가져온 상태’에서 ‘필요한 요청이 완료되는 상태’까지 확인해야 절차가 마무리됩니다. 여전히 실패한다면 다음 순서에 따라 문제를 확인하세요. 가져오기 과정을 처음부터 반복할 필요는 없습니다.

STEP 05 / DIAGNOSE

Settings: 오류가 발생한 지점부터 점검

기본 조건을 먼저 확인하고 설정값과 규칙을 점검하세요. 한 번에 조건 하나만 변경하고 같은 테스트를 반복합니다.

목록이 비어 있는 경우: 가져오기와 업데이트 확인

Subscribe를 저장했는데 서버가 표시되지 않으면 먼저 연결을 끄고 현재 네트워크에서 기본적인 접속이 가능한지 확인합니다. 그런 다음 링크가 완전한지, 구독이 아직 유효한지, 업데이트 과정에서 오류가 반환되었는지 살펴보세요. 목록이 비어 있을 때 Global Routing을 바꿔도 항목이 복구되지는 않습니다. 같은 링크를 반복해서 추가해 그룹이 중복되지 않도록 하세요. 확인할 항목 하나를 남겨 둔 뒤 기존 서비스의 지원 채널에 반환된 내용과 링크 상태를 문의하세요.

항목은 있지만 연결되지 않는 경우: 설정값과 권한 확인

항목 편집 화면을 열고 원래 정보와 비교해 Type, Host, Port, 인증 항목, Method, 필요한 TLS 및 전송 설정을 확인합니다. 특정 항목은 일부 Type에서만 표시되므로 스크린샷에 보이는 항목이 없다는 이유로 프로토콜을 임의로 바꾸지 마세요. 시스템 VPN 권한이 완료되었는지, 기기 연결이 다른 설정으로 전환되지 않았는지도 확인합니다. 서버 하나만 실패한다면 전체 Config를 바로 바꾸지 말고 해당 항목부터 확인하세요.

테스트는 정상이지만 웹 페이지가 열리지 않는 경우: 규칙과 이름 확인 점검

먼저 Direct가 아닌지 확인한 다음 같은 서버로 Proxy와 Config의 접속 결과를 비교하세요. 특정 도메인만 실패한다면 REJECT 규칙에 일치하는지, 앞선 규칙이 먼저 적용되는지, 최종 정책이 예상과 일치하는지 확인합니다. DNS 조회 실패로 지연 시간은 정상이지만 페이지가 열리지 않을 수도 있습니다. 현재 설정의 이름 확인 방식과 표시되는 오류를 확인하고, 시간 초과만 보고 DNS를 여러 개 연달아 바꾸지 마세요. 자세한 상황별 안내는 문제 해결에서 확인할 수 있습니다.

연결 상태가 자동으로 바뀌는 경우: On Demand 확인

Settings에서 On Demand가 활성화되어 있는지와 설정 조건을 확인합니다. On Demand는 요청에 따른 연결과 관련된 기능으로 연결이 시작되는 시점에 영향을 줄 수 있습니다. 처음 수동으로 연결을 확인할 때는 테스트 목적에 맞는 설정인지 살펴 자동 연결이 판단에 영향을 주지 않도록 하세요. Settings의 Test Method에 따라 테스트 결과의 의미가 달라질 수 있으므로 변경한 뒤에는 이전 결과와 새 결과를 같은 기준으로 비교하지 마세요. TCP, UDP 항목도 첫 실패 때 모두 변경할 필요는 없으며 구체적인 증상에 따라 점검 범위를 정합니다.

설정을 초기화하지 말고 진단 정보 보관

더 자세한 원인 확인이 필요하면 Settings에서 Diagnostics를 열어 확인할 수 있는 진단 정보를 살펴보고 오류 문구, 발생 단계, 당시 사용한 모드를 기록하세요. 기록을 공유하기 전에 서버 주소, 구독 링크, 인증 정보가 포함되어 있는지 확인하고 해당 내용을 가리세요. 기존 설정을 보관하고 변경 사항을 기록한 다음, 실패하면 직전 항목을 되돌린 뒤 다음 항목을 시도하세요. App Store에서 앱 받기, 구입 항목 복원, 구매 범위에 대한 내용은 App Store 안내를 참고하세요. 이 문제는 서버 연결 문제 해결과 별도의 절차입니다.

같은 서버와 같은 모드에서 실제 접속을 반복해 성공하면 이번 문제 해결을 마칠 수 있습니다. 이후 On Demand를 설정하거나 Rule을 세분화해야 한다면 현재 정상 작동 상태를 먼저 저장한 뒤 하나씩 조정하세요. 그러면 이후 문제가 발생해도 여러 설정이 불확실하게 바뀐 상태에서 시작하지 않고 확인된 기준 상태로 돌아갈 수 있습니다.

Shadowrocket 설정 화면: Language, Test Method, Today Widget, On Demand, Diagnostics, Proxy, TCP, UDP 표시
Settings: 증상에 따라 Test Method, On Demand, Diagnostics를 확인하세요. 모든 설정을 하나씩 변경할 필요는 없습니다.
CHECKPOINT

완료 후 확인할 세 가지

  1. Home에서 예상한 서버가 선택되어 있고 구독 또는 수동 설정값이 본인이 보유한 정보와 일치합니다.
  2. Global Routing이 평소 필요한 모드로 복원되어 있으며 Config에서 확인을 마친 설정을 사용합니다.
  3. 스위치가 켜져 있거나 테스트 수치가 표시되는 데 그치지 않고 실제 페이지에 새 요청을 보내 정상 완료되는지 확인했습니다.

필요한 경우 기능 및 설정 또는 문제 해결을 참고하세요. 구매, App Store에서의 표시 여부, 기기 변경 후 복원에 관한 문제는 App Store 안내를 확인하세요. 이미 정상 작동을 확인한 연결 설정값을 변경할 필요는 없습니다.