[설정]

Shadowrocket 사용법

기존 구독 또는 서버 정보를 바탕으로 추가, 모드 선택, 연결 및 확인을 차례로 진행합니다. 이 공식 매뉴얼은 iPhone / iPad 화면을 예로 들어 확인 가능한 연결을 먼저 설정한 다음 규칙 세부 사항을 다룹니다.

[준비]

자료 유형과 현재 네트워크 확인

이 안내는 처음 설정하는 순서에 따라 진행합니다. 먼저 서버 목록에 선택할 항목을 표시하고, 어떤 요청을 프록시로 보낼지 정한 다음 연결을 설정하고 결과를 확인합니다. 이미 서버를 가져왔다면 Global Routing 단계로 바로 이동할 수 있습니다. 여러 설정을 변경한 적이 있다면 문제를 점검하기 전에 현재 선택 항목을 기록해 두어 어떤 매개변수가 바뀌었는지 알 수 있도록 하세요.

먼저 보유한 자료의 유형을 구분합니다. 구독 링크는 일반적으로 서버 정보 목록을 가져오고 갱신하는 데 사용됩니다. 단일 공유 링크는 보통 서버 하나의 정보만 담고 있으며, 수동 설정은 프로토콜, 주소, 포트 및 인증 정보를 각각 입력해야 합니다. 구독 페이지의 로그인 주소를 구독 링크로 사용하거나, 단일 공유 링크를 계속 갱신되는 구독으로 오인하지 마세요. 자료의 용도가 확실하지 않으면 먼저 서비스 제공자에게 확인하세요.

아직 연결하지 않았다면 기기가 현재 Wi-Fi 또는 셀룰러 네트워크를 정상적으로 사용할 수 있는지 확인하세요. 로그인이 필요한 Wi-Fi는 먼저 네트워크 인증을 완료해야 합니다. 안내에 나오는 도메인과 규칙은 문법 설명을 위한 예시이며 실제로 사용할 수 있는 회선이 아닙니다. 본인의 실제 자료를 사용하되 인증 정보가 포함된 링크를 공개 페이지나 스크린샷에 올리지 마세요.

아래 네 장의 이미지는 공식 App Store 스크린샷으로, Add Server, Config, Home 및 Settings의 위치를 확인하는 데 사용됩니다. 시스템이나 디스플레이 설정에 따라 텍스트 위치가 약간 다를 수 있으므로 화면의 용어와 항목의 기능을 기준으로 확인하세요. 스크린샷의 서버 항목을 따라 입력하지 마세요. 전체 규칙 문법은 규칙 참고에서 확인할 수 있으며, 이 안내에서는 첫 연결에 필요한 판단만 다룹니다.

[Add Server]

01 서버 추가 또는 구독 가져오기

구독 가져오기와 수동 입력은 서로 다른 두 가지 방법입니다. 보유한 자료에 맞춰 하나를 선택하면 되며 중복으로 추가할 필요는 없습니다.

구독 링크 사용: Subscribe 선택

Home으로 이동해 추가 항목을 눌러 Add Server를 연 다음 Type에서 Subscribe를 선택합니다. 서비스 제공자에게 받은 구독 링크를 URL 항목에 빠짐없이 붙여 넣고 알아보기 쉬운 메모를 입력한 뒤 저장합니다. 붙여 넣기 전후에 공백, 줄바꿈 또는 채팅 앱에서 덧붙인 설명이 있는지 확인하세요. 링크의 쿼리 매개변수도 주소의 일부이므로 임의로 삭제하지 마세요.

저장한 다음 구독이 로드될 때까지 기다리고 Home으로 돌아가 SERVER 영역에 서버 항목이 표시되는지 확인합니다. 이름이 표시되면 자료를 읽어온 것이며, 모든 서버에 연결할 수 있다는 뜻은 아닙니다. 사용할 항목을 눌러 현재 선택으로 지정하세요. 구독을 목록에 추가했더라도 서버를 선택하지 않았다면 이후 연결 단계가 완료된 것이 아닙니다. 가져온 뒤 목록이 비어 있다면 먼저 구독에서 유효한 내용이 반환되는지 확인하고 Config 규칙부터 변경하지 마세요.

나중에 구독을 새로고침하려면 해당 구독 항목의 작업 메뉴에서 업데이트를 실행하고 결과가 돌아올 때까지 기다립니다. 업데이트하면 원격에서 제공하는 서버 정보를 다시 읽기 때문에 항목 이름이나 매개변수가 달라질 수 있습니다. 업데이트 후 현재 선택 항목을 다시 확인하세요. 구독 링크에는 접근 자격 증명이 포함되는 경우가 많으므로 문제 해결 스크린샷을 공유할 때는 메모뿐 아니라 전체 링크와 인증 매개변수도 가려야 합니다.

단일 서버 정보 사용: Type 및 인증 항목 확인

서버 하나의 매개변수를 보유한 경우 Add Server의 Type에서 해당 프로토콜을 선택한 다음 Host와 Port를 입력합니다. Host는 서버 주소입니다. 포트, 웹 경로 또는 전체 구독 링크를 함께 입력하면 안 됩니다. Port에는 서비스 제공자가 안내한 숫자를 입력합니다. Password, Method 및 프로토콜에 해당하는 기타 항목은 서버 측 설정과 일치해야 합니다. 스크린샷은 특정 프로토콜의 항목을 보여줍니다. Type을 바꾸면 표시 항목도 달라지므로 스크린샷의 모든 항목을 억지로 입력할 필요는 없습니다.

Trojan처럼 TLS를 사용하는 프로토콜은 서비스 제공자가 안내한 SNI 및 TLS 관련 설정도 확인해야 합니다. 오류를 피하려고 인증서 확인 요구 사항을 임의로 낮추지 마세요. QR 코드가 있다면 Scan QR Code로 가져올 수 있고, 단일 공유 링크가 있다면 해당 가져오기 항목을 사용하세요. Import from Cloud JSON은 해당 형식의 자료에만 사용하며 모든 링크를 넣을 수 있는 범용 메뉴가 아닙니다. 저장 후 Home으로 돌아가 추가한 항목을 선택한 다음 다음 단계로 진행하세요.

수동 입력에서 가장 흔히 발생하는 오류는 Type을 잘못 선택하거나 Port의 숫자 하나를 빠뜨리거나 불필요한 문자를 복사하는 것입니다. 여러 프로토콜을 연달아 시도하지 말고 원본 자료와 항목별로 대조하세요. 공유 링크, Subscribe 및 Config의 차이는 용어 안내를 참조하세요.

Shadowrocket Add Server 화면. Type, Host, Port, Password, Method 및 하단 가져오기 항목 표시
Add Server: Type을 먼저 선택한 다음 보유한 서버 정보에 맞춰 해당 항목을 입력합니다.

[Global Routing]

02 Global Routing 모드 선택

서버는 프록시 연결에 사용할 원격 서버를 정하고, Global Routing은 요청을 어떻게 분배할지 정합니다. 서로 다른 설정입니다.

서버를 추가하고 선택한 뒤 Home으로 돌아가 Global Routing을 누릅니다. 기본 모드는 구성(Config), 프록시(Proxy), 직접 연결(Direct) 세 가지입니다. 이름에 Config가 포함되어 있다고 해서 Home의 모드 선택과 하단의 Config 구성 파일 관리 화면을 같은 페이지로 혼동하지 마세요. 전자는 규칙에 따라 처리할지 정하고, 후자는 구체적인 구성을 선택하고 편집하는 데 사용됩니다.

구성(Config): 현재 구성에 따라 트래픽 분기

일상적으로 규칙에 따라 트래픽을 분기하려면 구성(Config)을 선택합니다. 그런 다음 Config로 이동해 사용할 구성 파일이 선택되어 있는지 확인하고 Rule 부분을 살펴봅니다. 규칙은 위에서부터 순서대로 일치 항목을 찾고 해당 정책을 적용합니다. PROXY는 프록시 정책에 따라 처리하고, DIRECT는 직접 연결하며, REJECT는 요청을 거부합니다. 구성에서 정책 그룹을 참조한다면 그룹 안에서 실제로 선택된 항목도 확인해야 합니다. 서버 목록에 항목이 있다고 해서 규칙이 반드시 해당 서버를 사용한다고 볼 수는 없습니다.

아래는 “지정한 도메인과 하위 도메인은 프록시를 사용하고 나머지는 직접 연결”하는 최소 문법 예시입니다. 규칙 관계를 설명하는 예시이므로 처음부터 기존 구성을 덮어쓸 필요는 없습니다. example.com은 설명용 도메인입니다. 실제 사용 시에는 처리할 대상을 명확히 지정해 바꾸세요. 편집 전에 기존 구성의 사본을 보관하면 구독을 정상적으로 가져온 뒤 규칙을 덮어써서 새로운 문제가 생기는 일을 방지할 수 있습니다.

[Rule]
DOMAIN-SUFFIX,example.com,PROXY
FINAL,DIRECT

첫 번째 규칙은 example.com과 하위 도메인에 일치하며, FINAL은 앞선 규칙에 일치하지 않은 요청을 처리합니다. FINAL을 구체적인 도메인 규칙보다 앞에 두면 이후 규칙이 의도대로 적용되지 않습니다. 스크린샷의 General, Rule, Hosts, URL Rewrite 등은 각각 용도가 다릅니다. 첫 연결 확인을 위해 이 항목들을 한꺼번에 수정할 필요는 없습니다. 규칙을 직접 작성해야 한다면 Rule 규칙 참고를 확인하세요.

프록시(Proxy)와 직접 연결(Direct): 문제 구분에 사용

프록시(Proxy)는 문제를 점검할 때 선택한 서버의 프록시 경로를 임시로 확인하는 데 적합하며, 규칙 분기로 인한 변수를 줄일 수 있습니다. 다만 어떤 네트워크 환경에서든 모든 시스템 트래픽이 반드시 같은 경로를 통과한다는 뜻은 아닙니다. 직접 연결(Direct)은 프록시 서버를 거치지 않고 요청을 보내므로 현재 네트워크에서 대상에 직접 접속할 수 있는지 확인할 때 사용할 수 있습니다. 서버 연결이 성공했다는 증거는 아닙니다.

첫 테스트는 먼저 프록시(Proxy)로 프록시 접속을 확인한 뒤 구성(Config)으로 전환해 규칙을 확인할 수 있습니다. 전환 후에는 요청을 새로 보내고, 필요하면 테스트 페이지를 닫았다가 다시 열어 이전 연결을 재사용하지 않도록 하세요. 모드와 Config를 정한 다음 Home 상단 스위치를 켭니다.

PROXY DIRECT REJECT
Shadowrocket Config 구성 편집 화면. General, Rule, Hosts, URL Rewrite, HTTPS Decryption 및 Add Rule 표시
Config: 구성 내용을 관리합니다. Global Routing에서 Config를 선택해야 선택한 구성의 규칙에 따라 트래픽이 분기됩니다.

[Home]

03 스위치를 켜고 시스템 권한 허용

현재 서버와 Global Routing을 확인한 다음 시스템 연결을 설정하면, 스위치를 켠 뒤 어떤 구성이 사용되는지 추측할 필요가 없습니다.

Home으로 돌아가 SERVER 영역에서 방금 가져오거나 입력한 서버가 선택되어 있는지 확인하고 Global Routing 값도 확인합니다. 상단에 Not Connected가 표시되면 현재 연결이 설정되지 않은 상태입니다. 상단 스위치를 켭니다. 처음 사용할 때는 보통 시스템의 VPN 구성 추가 안내가 표시됩니다. 안내에 따라 허용하고 기기에서 암호 또는 생체 인증을 완료하세요. 기기 잠금 암호를 Add Server의 Password 항목에 입력하지 마세요. 서로 다른 용도로 사용됩니다.

권한을 허용한 뒤 Shadowrocket으로 돌아와 Home 상태가 바뀔 때까지 기다립니다. 시스템 VPN 구성은 기기의 관련 네트워크 요청을 클라이언트가 처리하도록 전달하기 위한 것입니다. 원격 서버에 접속할 수 있다는 뜻은 아닙니다. 스위치가 켜져 있어도 다음 단계에서 접속을 확인해야 합니다. 반대로 시스템 권한이 취소되면 클라이언트가 연결을 유지하지 못할 수 있으므로 구독을 반복해서 새로고침하기보다 먼저 권한 문제를 해결하세요.

스위치를 켜자마자 다시 꺼진다면 시스템에서 사용 중인 다른 VPN 연결이 있는지, 기기 관리 정책의 제한이 있는지, Shadowrocket의 VPN 구성이 비활성화되어 있는지 확인하세요. 문제를 점검할 때는 먼저 충돌하는 연결을 중지한 뒤 다시 시도합니다. 조직에서 관리하는 기기라면 관리 요구 사항을 따르고 제한을 우회하려고 하지 마세요. 구체적인 오류가 표시되면 오류 문구와 발생 단계를 기록한 다음 해당 단계에 맞춰 처리하세요.

정상적으로 연결을 끊을 때도 Home에서 상단 스위치를 끕니다. 나중에 자동으로 다시 연결된다면 서버를 삭제하는 대신 Settings의 On Demand와 트리거 조건을 확인하세요. 우선 수동 연결을 유지하고 아래 단계를 완료한 뒤 자동 연결을 사용할지 결정합니다.

Shadowrocket Home 화면. Not Connected 스위치, Global Routing, Connectivity Test, SERVER 및 Add Server 표시
Home: 서버와 Global Routing을 확인하고 상단 스위치를 켠 다음 실제 접속을 점검합니다.

[Connectivity Test]

04 세 단계로 적용 여부 확인

시스템 연결, 대상 접속 가능 여부, 규칙 적용 여부를 각각 확인합니다. 한 번의 테스트 수치만으로 전체를 판단할 수는 없습니다.

첫 번째: 연결이 유지되는지 확인

Home으로 돌아가 연결 스위치가 켜져 있고 현재 서버가 올바르게 선택되어 있으며 화면에 오류가 계속 표시되지 않는지 확인합니다. 권한 설정을 마친 직후라면 연결이 설정될 때까지 기다린 다음 Connectivity Test를 실행하세요. 테스트 결과는 선택한 테스트 방법에 따른 상태를 보여줍니다. 특정 탐지 방식에 응답하지 않는 서버도 있을 수 있으므로 한 번의 결과만 보고 계정이나 구독을 사용할 수 없다고 판단하지 마세요.

두 번째: 예상한 대상에 접속할 수 있는지 확인

브라우저를 열어 프록시를 거칠 것으로 예상되는 대상에 접속한 뒤 실제 페이지를 새로고침합니다. 브라우저에 캐시된 내용만 확인하거나 기기에 VPN 표시가 나타났다는 이유만으로 결론을 내리지 마세요. 웹페이지는 열리지 않지만 Connectivity Test에서 결과가 나온다면 도메인 이름 확인, TLS, 대상 사이트 및 개별 연결 문제를 구분해야 합니다. 모든 대상에 접속할 수 없다면 규칙을 더 추가하기 전에 서버 매개변수와 현재 네트워크를 우선 확인하세요.

Wi-Fi와 셀룰러 네트워크를 바꾼 뒤 다시 연결해 특정 네트워크에서만 실패하는지도 비교할 수 있습니다. 테스트할 때는 네트워크 유형, Global Routing, 선택한 서버 및 대상 도메인만 기록하면 됩니다. 인증 정보를 기록하거나 공개할 필요는 없습니다. 네트워크를 바꾼 뒤 이전 연결이 해제되지 않았다면 스위치를 껐다가 다시 켠 다음 재접속하세요.

세 번째: Config가 예상대로 트래픽을 분기하는지 확인

구성(Config)을 사용한다면 DIRECT가 예상되는 대상 하나를 비교 대상으로 선택합니다. 현재 버전에서 요청 기록을 제공한다면 대상 도메인에 일치한 규칙과 최종 정책을 확인해 프록시가 필요한 요청이 실제로 PROXY로 처리되는지 살펴보세요. 페이지가 열린 것만 보고 성공이라고 판단하지 마세요. 어떤 대상은 직접 연결 상태에서도 열릴 수 있으므로 접속에 성공했다는 사실만으로 프록시를 사용했다고 증명할 수는 없습니다.

프록시(Proxy)는 작동하지만 구성(Config)에서 실패한다면 선택된 구성, 도메인 규칙의 순서 및 FINAL 정책을 먼저 확인하세요. 두 모드 모두 실패한다면 서버 정보와 네트워크를 점검하는 편이 좋습니다. 확인이 끝나면 Global Routing을 실제로 필요한 모드로 설정하고 검증한 작업을 기록해 두세요. 나중에 구독을 갱신하거나 규칙을 수정할 때 비교 기준으로 삼을 수 있습니다.

[Settings]

05 실패 지점에 따라 문제 해결

먼저 절차가 어느 단계에서 멈췄는지 확인한 뒤 Settings를 살펴봅니다. 첫 연결을 위해 모든 고급 옵션을 수정할 필요는 없습니다.

가져오기 실패: 링크와 자료 형식 확인

구독이 업데이트되지 않거나 목록이 비어 있다면 먼저 서비스 제공자의 관리 페이지가 아닌 구독 주소를 사용했는지 확인합니다. 복사한 내용이 온전한지, 구독이 아직 유효한지, 현재 네트워크에서 구독 내용을 가져올 수 있는지 살펴보세요. 일부 업데이트 요청은 특정 네트워크 조건에 따라 달라질 수 있으므로 서비스 제공자에게 문의하세요. 구독 업데이트 실패와 서버 연결 실패를 혼동하지 마세요. 서버가 표시되지만 사용할 수 없다면 매개변수와 연결 상태를 점검합니다.

연결 실패: 서버와 테스트 방법 확인

원본 자료를 확인해 Type, Host, Port, Password 및 프로토콜에 필요한 항목을 대조합니다. TLS 관련 오류라면 기기 시간과 서버에서 요구하는 이름이 일치하는지 확인합니다. 인증 옵션을 바로 느슨한 설정으로 바꾸지 마세요. Settings에서 Test Method를 확인해 현재 Connectivity Test가 어떤 방식을 사용하는지 파악합니다. 서로 다른 방법의 결과를 같은 지표처럼 비교할 수 없으며, 한 번의 응답 시간을 안정성 보장으로 해석해서도 안 됩니다.

특정 서버만 실패하고 같은 구독의 다른 서버는 사용할 수 있다면 실패한 항목의 이름과 오류를 기록한 뒤 서비스 제공자에게 해당 서버 상태를 문의하세요. 모든 서버가 같은 네트워크에서만 실패한다면 해당 네트워크의 인증, 연결 조건 및 이름 확인을 우선 점검합니다. 한 번의 테스트 실패만으로 모든 항목을 삭제하지 마세요. 삭제하면 비교에 필요한 현재 상태가 사라집니다.

연결은 되지만 트래픽 분기가 잘못됨: Global Routing 확인

직접 연결(Direct) 모드로 남아 있지는 않은지, 다른 Config를 사용하고 있지는 않은지, 앞쪽 규칙이 대상과 먼저 일치하지는 않는지 확인합니다. 규칙을 점검할 때는 명확한 테스트 대상 하나만 남기고 구체적인 도메인 규칙부터 FINAL까지 차례로 살펴봅니다. DNS, URL Rewrite, HTTPS Decryption 등은 각각 적용 조건이 있으므로 첫 연결 실패 시 한꺼번에 켜지 마세요. 자세한 문법과 우선순위는 규칙 참고를 확인하세요.

자동 연결 및 진단: 마지막에 조정

On Demand는 조건에 따라 연결을 시작하는 기능이며 잘못된 서버 매개변수를 보완하지 않습니다. 먼저 수동 연결이 정상인지 확인한 다음 Settings에서 On Demand 조건과 예상 동작을 살펴보세요. 수동으로 연결을 끊은 뒤 다시 자동 연결된다면 이 설정부터 확인합니다. Settings의 Proxy, TCP, UDP 등은 세부 네트워크 옵션입니다. 문제 원인을 명확히 파악하기 전에는 기존 설정을 유지해 추가 변수를 만들지 마세요.

문제를 더 구체적으로 파악해야 한다면 Diagnostics에서 관련 도구를 사용하고 오류 발생 당시의 네트워크 유형, 대상 및 조작 순서를 기록하세요. 진단 기록에는 도메인, 서버 주소 또는 인증 관련 정보가 포함될 수 있으므로 공유하기 전에 민감한 내용을 확인하고 가리세요. 문제 해결 후 임시로 변경한 모드와 테스트 설정을 복원한 다음 “연결—접속—규칙 확인”을 다시 진행해 점검을 마무리합니다. 그 밖의 일반적인 상황은 자주 묻는 질문에서 확인하고, 익숙하지 않은 항목은 용어 안내를 참조하세요.

Shadowrocket Settings 화면. Language, Test Method, Today Widget, On Demand, Diagnostics, Proxy, TCP 및 UDP 표시
Settings: 문제를 점검할 때 필요한 경우 Test Method, On Demand 및 Diagnostics를 확인합니다. 항목을 모두 수정할 필요는 없습니다.

[다운로드]

다른 기기의 다운로드 및 설치 안내

위의 절차는 iPhone / iPad를 예로 들었습니다. iPhone / iPad 버전은 App Store에서 $2.99 일회성 결제로 이용할 수 있고, Mac(Apple 칩 및 Intel), Windows, Android, Linux 버전은 무료입니다. 다른 기기는 다운로드 안내에서 해당 설치 패키지를 선택하세요. 설치 패키지는 이 사이트의 /dl/에서 제공하며, 화면 위치와 시스템 권한 절차는 기기에 표시되는 안내를 따릅니다.

현재 버전 불러오는 중 · iPhone / iPad $2.99 일회성 결제; Mac, Windows, Android, Linux 버전 무료.

처음 설치할 때 시스템 안내가 표시되면 파일이 이 사이트에서 제공된 것인지 먼저 확인하세요. Mac은 “개인정보 보호 및 보안”에서 “그래도 열기”를 확인할 수 있습니다. Windows SmartScreen은 “추가 정보”에 이어 표시되는 실행 옵션을 확인하세요. Android에서는 실제로 다운로드한 브라우저에 “알 수 없는 앱 설치 허용” 권한을 부여해야 하며, 설치 후 권한을 회수할 수 있습니다. Linux는 패키지 형식에 따라 실행 권한 또는 종속성을 처리하세요. 구체적인 절차와 기타 안내는 설치 허용 안내에서 확인할 수 있습니다. 출처가 불분명한 파일은 허용하지 마세요.