공식 매뉴얼 · 첫 설정

Shadowrocket 사용법 구독 가져오기 및 연결 확인

기존 정보를 먼저 가져오고 Global Routing을 선택한 다음 실제 접속으로 결과를 확인합니다. 이 페이지에서는 iPhone 및 iPad의 첫 설정 절차를 다루며, 규칙 문법은 규칙 매뉴얼에서 확인할 수 있습니다.

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

먼저 보유한 정보의 유형을 확인하세요. 여러 서버 정보를 일괄로 불러오는 구독 링크인지, 프로토콜·주소·포트·인증 매개변수가 포함된 서버 정보인지에 따라 앱에서 입력하는 방법이 다릅니다. 모두 문자열로 보인다고 해서 구독 주소를 서버 주소 입력란에 넣지 마세요. 주소의 시작 부분만 보고 프로토콜을 판단하지 말고, 보유한 정보의 설명을 기준으로 확인하세요.

Subscribe로 기존 구독 가져오기

Shadowrocket을 열고 Home으로 이동한 뒤 오른쪽 위의 추가 버튼을 눌러 Add Server를 엽니다. Type에서 Subscribe를 선택하고 본인의 전체 구독 링크를 URL에 입력합니다. 이 항목을 알아보기 쉬운 이름으로 지정한 다음 저장합니다. 붙여넣은 뒤 주소의 처음과 끝, 매개변수가 모두 포함되었는지 확인하세요. 특히 채팅 메시지에 붙은 공백, 줄바꿈 또는 문장 부호에 유의하세요. 이런 문자가 유효한 주소를 다른 요청으로 바꿀 수 있습니다.

저장한 다음 Home으로 돌아가 구독 정보를 가져올 때까지 기다린 뒤 원하는 서버 항목이 나타나는지 확인합니다. 구독 이름이 표시되더라도 서버 정보가 정상적으로 읽혔다고 단정할 수는 없습니다. 해당 그룹을 펼쳐 실제로 선택할 수 있는 항목이 있는지 확인하세요. 목록이 비어 있다면 구독 링크가 유효한지, 현재 네트워크에서 해당 주소에 접속할 수 있는지, 서비스 제공자가 안내한 링크가 계정 관리 페이지가 아닌 클라이언트용 구독 링크인지 먼저 점검하세요.

구독 내용은 서비스 제공자의 변경에 따라 달라질 수 있습니다. 서버 정보를 새로 가져오려면 해당 구독을 업데이트한 뒤 현재 선택이 원하는 서버를 가리키는지 확인하세요. 같은 구독을 반복해서 추가해 업데이트를 대신하지 마세요. 이름이 비슷한 중복 그룹이 생길 수 있습니다. 업데이트하면 구독에서 제공하는 내용이 새로 반영되므로 구독 항목을 임시로 수정한 내용이 계속 보존될 것이라고 기대해서는 안 됩니다.

Add Server에서 직접 입력하기

별도의 서버 정보를 보유한 경우에도 Add Server로 이동하되, 이때는 Subscribe가 아니라 정보에 해당하는 프로토콜을 Type에서 선택합니다. 그런 다음 해당 프로토콜에 표시되는 항목에 서버 주소, 포트 및 인증 정보를 입력합니다. Shadowsocks, VMess, VLESS, Trojan 등은 필요한 매개변수가 서로 다르므로 주소와 포트만 입력해서는 대개 충분하지 않습니다. 암호화 방식, 인증 식별자, 전송 방식 및 TLS 관련 설정을 하나씩 확인하세요.

여러 항목의 값을 한곳에 합쳐 입력하지 마세요. 일반적으로 서버 주소에는 웹 경로를 포함하지 않으며 포트는 별도로 입력해야 합니다. TLS 서버 이름이 연결 주소와 다를 수 있으므로 자료에 지정된 값을 그대로 사용하세요. 저장한 뒤 Home으로 돌아가 항목의 이름과 프로토콜이 올바른지 확인하고 원하는 항목을 눌러 선택합니다. 서버가 여러 개라면 처음 확인할 때 하나만 고정해 사용하세요. 문제를 점검하는 도중 연결 대상을 동시에 바꾸지 않도록 합니다.

02 Global Routing 모드 선택

Home으로 돌아가 Global Routing을 엽니다. 여기서 Config, Proxy, Direct를 선택해 연결 전반의 처리 방식을 정합니다. 이는 서버 프로토콜이나 속도 등급을 뜻하지 않습니다. 먼저 이번에 확인하려는 목적을 정한 뒤 적절한 모드를 선택하세요. 웹사이트별로 트래픽을 분류하려면 Config에서 실제로 활성화된 구성에 해당 규칙이 포함되어 있는지도 확인해야 합니다.

Config: 현재 구성의 규칙 적용

일상적으로 구성에 따라 트래픽을 분류하려면 Config를 선택합니다. 앱은 현재 구성의 규칙에 따라 요청에 적용할 정책을 결정합니다. Config로 이동해 사용하려는 구성이 현재 적용되어 있는지 확인하세요. 이름이 비슷한 구성이 여러 개라면 목록에 해당 파일이 있다는 이유만으로 적용 중이라고 단정하지 마세요. 규칙을 추가로 살펴보고 대상 도메인에 적용될 정책과 기본 규칙이 요구 사항에 맞는지 확인합니다.

예를 들어 다음 조각은 example.com 및 하위 도메인에 PROXY를 사용하고, 일치하는 규칙이 없는 나머지 요청에는 DIRECT를 사용한다는 뜻입니다. 규칙 문법을 보여 주는 예시일 뿐 서버 정보는 포함하지 않으며, 이 안내를 따라 하기 위해 기존 구성을 덮어쓸 필요도 없습니다. 사용하기 전에 어떤 요청의 경로가 바뀌는지 이해해야 합니다.

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

규칙은 일반적으로 순서대로 적용되므로 구체적인 조건을 기본 규칙보다 앞에 둡니다. 규칙의 PROXY는 프록시를 통한 처리를, DIRECT는 직접 연결을, REJECT는 요청 거부를 뜻합니다. 이는 Global Routing 메뉴의 모드와는 서로 다른 단계의 설정입니다. 구성 구조, 정책 참조 및 일치 순서를 자세히 알아보려면 구성 파일 참고를 확인하세요. 이 페이지에서는 복잡한 규칙 편집을 다루지 않습니다.

Proxy와 Direct: 이번 확인 목적에 맞게 선택

Proxy를 선택하면 요청 전체를 프록시 모드로 처리하며 일반적인 규칙 기반 분류에 따라 요청별 경로를 정하지 않습니다. 현재 프록시 연결이 작동하는지 임시로 확인할 때 적합합니다. 하지만 Proxy로 바꾼 뒤 접속된다는 이유만으로 기존 구성에 문제가 없다고 판단하지 마세요. 두 모드는 처리 경로가 다르므로 결과가 다르다면 규칙을 점검해야 한다는 신호일 수 있습니다.

Direct를 선택하면 현재 선택한 프록시 서버를 사용하지 않고 대상에 직접 연결합니다. 목록에서 서버를 선택했더라도 웹사이트 접속에 해당 서버가 사용된다고 볼 수 없습니다. 임시 비교를 마친 뒤에는 일상적인 사용 목적에 맞는 모드로 돌아가세요. 트래픽 분류가 필요하다면 Config로 복원하고 현재 구성을 다시 확인해야 합니다. 테스트용으로 선택한 모드를 계속 사용하지 마세요.

03 연결 스위치를 켜고 권한 승인하기

연결하기 전에 Home으로 돌아가 간단히 확인하세요. 선택한 서버가 올바른지, Global Routing이 의도한 모드인지, Config를 사용할 때 현재 구성을 확인했는지 살펴봅니다. 이 세 가지를 고정한 다음 페이지 상단의 연결 스위치를 켜세요. 이후 문제가 생겼을 때 가져오기, 선택 또는 연결 과정 중 어느 단계에서 발생했는지 구분하기 쉽습니다.

처음 연결할 때 시스템에서 VPN 구성 추가 권한을 요청할 수 있습니다. 이는 앱이 시스템 네트워크 구성을 설정하도록 허용하는 절차이며 앱을 다시 구매하라는 뜻이 아닙니다. 방금 실행한 Shadowrocket에서 시작된 요청인지 확인한 뒤 시스템 안내에 따라 권한을 승인하세요. 기기 인증이 필요하면 시스템 화면에서 진행하면 됩니다. 기기 인증 정보를 서버 항목에 입력하지 마세요.

권한 승인 후 Shadowrocket으로 돌아와 스위치와 연결 상태를 확인합니다. 방금 권한 요청을 거부했거나 시스템 화면에서 도중에 취소했다면 연결이 진행되지 않을 수 있습니다. 앱으로 돌아가 연결을 다시 시작하고 시스템 안내에 따라 완료하세요. 이미 다른 VPN 연결이 설정되어 있다면 현재 실제로 활성화된 네트워크 구성이 무엇인지 먼저 확인해 다른 연결의 상태를 Shadowrocket의 상태로 오인하지 않도록 합니다.

연결 스위치가 켜졌다는 것은 해당 시스템 연결이 시작되었거나 설정되었다는 뜻일 뿐, 선택한 서버로 모든 대상에 접속할 수 있음을 증명하지는 않습니다. 시스템의 VPN 상태 표시도 웹사이트 접속 테스트를 대신할 수 없습니다. 서버와 모드를 그대로 유지한 채 Connectivity Test와 실제 접속을 각각 확인하세요. 두 종류의 결과를 함께 살펴봐야 합니다.

처음 설정할 때는 On Demand 같은 자동 연결 설정을 동시에 조정할 필요가 없습니다. 먼저 수동 스위치로 반복해서 확인할 수 있는 절차를 만들고 연결, 규칙 및 대상 접속이 예상대로 작동하는지 확인한 뒤 자동 연결 필요성을 검토하세요. 스위치를 껐는데 연결이 다시 시작된다면 서버 항목을 반복해서 삭제하기보다 자동 연결 설정이 적용되어 있는지 확인하세요. 관련 설정은 On Demand 기능 안내에서 확인할 수 있습니다.

04 서버 및 실제 접속 결과 확인

두 단계로 확인합니다. 먼저 선택한 서버가 테스트에 응답하는지 살펴보고, 다음으로 대상 요청이 예상대로 처리되는지 확인합니다. 테스트 수치 하나만 보거나 웹페이지 하나가 열리는지만 확인해서는 전체 구성이 올바른지 알 수 없습니다. 서버 테스트 통과가 모든 대상의 접속을 보장하지 않으며, 웹페이지도 원래 직접 접속할 수 있었을 수 있습니다.

먼저 Connectivity Test 실행

Home에서 Connectivity Test를 실행하고 선택한 서버의 결과를 확인합니다. 테스트 결과는 서버에 연결할 수 있는지 판단하는 데 도움이 됩니다. 다만 테스트 방식마다 측정 대상이 다르므로 수치가 한 번 낮게 나왔다고 모든 웹사이트가 더 빠르다고 해석해서는 안 됩니다. 시간 초과가 표시되면 현재 서버와 테스트 방식을 기록한 뒤 다음 절의 문제 해결을 진행하세요. 프로토콜, 규칙, DNS를 한꺼번에 바꾸지 마세요.

구독에 항목이 여러 개 있다면 현재 항목으로 테스트와 실제 접속을 먼저 완료한 뒤 교체 여부를 결정하세요. 서버를 바꾸면 연결 상태를 다시 살펴보고 확인 절차를 반복해야 합니다. 이전 항목에서 얻은 결과를 그대로 적용하지 마세요. 테스트 중에는 네트워크 환경을 안정적으로 유지하세요. 무선 네트워크와 서버를 동시에 바꾸면 실패 증상을 비교하기 어렵습니다.

대상에 접속한 뒤 규칙과 정책 확인

Shadowrocket 연결을 유지한 채 브라우저를 열고 본인이 이용하려는 웹사이트에 접속합니다. 먼저 페이지가 로드되는지 확인한 다음 사이트의 다른 페이지를 여는 등 실제 작업을 한 번 더 수행하세요. 기존 페이지 하나만 표시되는 것은 캐시 때문일 수 있어 새 요청의 연결 결과를 정확히 보여 주지 못합니다. 안내에 나온 예시 도메인을 테스트 사이트로 사용할 필요는 없습니다. 예시는 규칙 문법 설명용입니다.

앱으로 돌아가 확인할 수 있는 접속 기록이나 연결 정보에서 대상 요청을 찾아 도메인, 일치한 규칙, 최종 정책을 확인합니다. Config를 사용한다면 기록된 결과를 현재 규칙과 비교하세요. 프록시로 처리되어야 할 요청은 PROXY를, 직접 연결되어야 할 요청은 DIRECT를 사용하는지 확인합니다. REJECT가 표시되면 서버에 문제가 있다고 단정하기 전에 어떤 규칙이 거부를 발생시켰는지 확인하세요.

조건을 통제해 비교할 수도 있습니다. 대상 웹사이트와 서버는 그대로 두고 Global Routing만 Config에서 Proxy로 임시 변경한 뒤 다시 접속하고, 완료 후 원래 모드로 복원합니다. 두 결과가 다르면 현재 구성과 규칙 일치 경로를 우선 확인하세요. 두 경우 모두 실패하면 서버 매개변수, 기본 네트워크 및 대상 서비스 상태를 점검합니다. 한 번에 조건 하나만 바꿔야 결과를 분석할 수 있습니다.

05 실패 증상에 따라 단계별로 문제 해결

문제를 점검할 때는 현재 설정을 유지하고 어느 단계에서 실패했는지 기록하세요. 구독을 읽지 못하는 문제, 서버 테스트 시간 초과, 연결 권한 실패, 특정 웹사이트 접속 불가는 서로 다른 유형의 문제입니다. 모두 같은 ‘다시 가져오기’ 작업으로 해결하려 하지 말고 여러 매개변수를 한꺼번에 바꾸지 마세요. 한 가지 점검을 마칠 때마다 기존 확인 절차를 다시 실행해 증상이 달라졌는지 살펴봅니다.

구독을 읽지 못하거나 목록이 비어 있는 경우

먼저 기기의 기본 네트워크를 확인하고, 필요한 경우 현재 연결을 잠시 끈 뒤 일반 네트워크 접속이 정상인지 살펴봅니다. 그런 다음 구독 URL이 완전한지, 공백이 들어갔는지, 보유한 링크가 아직 유효한지 확인하세요. 서버 정보가 일부 표시되어 있다면 먼저 그룹 전체를 삭제하지 마세요. 이번 요청이 완료되지 않아 업데이트에 실패했는지부터 확인해야 합니다. 정보가 변경된 경우에만 서비스 제공자가 최근 안내한 내용으로 주소를 수정하세요.

구독 링크에는 개인 접속 정보가 포함될 수 있습니다. 다른 사람에게 문제를 설명할 때는 오류 메시지와 진행 절차를 우선 공유하고 전체 링크나 링크가 포함된 화면을 보내지 마세요. 서비스 제공자의 구독 상태 확인이 필요하면 기존 서비스 채널을 이용하세요. 이 안내는 대체 구독을 제공하지 않으며 문제 해결을 위해 다른 출처로 바꾸도록 권하지 않습니다.

Connectivity Test 시간 초과 또는 서버 연결 실패

현재 네트워크는 그대로 유지하고 서버 주소와 포트를 확인한 다음 프로토콜, 인증 항목, 전송 설정 및 TLS 매개변수를 점검하세요. 항목이 비슷해 보여도 서로 바꿔 쓸 수 있는 것은 아닙니다. 특히 테스트를 통과시키려고 인증 관련 설정을 임의로 끄지 마세요. 특정 네트워크 환경에서만 실패한다면 본인이 사용할 수 있는 다른 네트워크에서도 같은 테스트를 반복해 환경 문제인지 정보 오류인지 구분할 수 있습니다.

iPhone 또는 iPad의 날짜와 시간이 정확한지도 확인하세요. 시스템 시간이 크게 어긋나면 인증서 확인이나 시간에 의존하는 인증 과정에 영향을 줄 수 있습니다. 구독을 업데이트한 뒤 서버 정보가 바뀌었다면 현재 항목을 다시 확인하고 테스트를 실행하세요. 테스트 버튼을 연속으로 누른다고 잘못된 매개변수가 해결되지는 않습니다. 정보를 확인할 수 없다면 오류 내용을 보관하고 본인의 서비스 제공자에게 문의하세요.

연결은 되었지만 대상에 접속할 수 없는 경우

Global Routing으로 돌아가 Direct를 잘못 선택하지 않았는지 확인하세요. Proxy에서는 접속되지만 Config에서는 안 된다면 Config에서 실제 활성화된 구성, 대상 도메인 규칙 및 규칙 순서를 살펴봅니다. 요청이 예상보다 앞에 있는 규칙과 일치했거나 FINAL에 도달했을 수 있습니다. 규칙 파일에 특정 행이 있다는 사실만으로 그 규칙이 적용되었다고 볼 수는 없습니다.

일부 웹사이트만 접속되지 않는다면 접속 기록과 함께 대상 도메인, DNS 결과 및 대상 서비스 자체가 정상인지 확인하세요. 한 웹사이트의 실패만으로 모든 연결이 실패한다고 판단하지 마세요. 구성을 변경한 적이 있다면 최근에 정상 작동을 확인한 상태로 먼저 복원한 다음 변경 사항을 하나씩 다시 적용합니다. 연결 및 도메인 해석 문제에 대한 자세한 내용은 Shadowrocket 연결 문제 해결 안내를 확인하세요.

다시 확인하고 반복 가능한 절차 저장

수정한 뒤 ‘서버 선택 → Global Routing 확인 → 연결 켜기 → Connectivity Test → 실제 접속’ 순서로 다시 진행합니다. 성공하면 사용한 구독 그룹, 서버 이름 및 구성 이름만 기억해 두면 됩니다. 민감한 링크를 기록할 필요는 없습니다. 이후 구독을 업데이트하거나 규칙을 수정할 때도 같은 순서로 확인하면 변화가 어느 단계에서 발생했는지 파악하기 쉽습니다.

이제 첫 설정의 핵심인 연결 정보, 처리 모드 및 접속 결과가 서로 일치하는지 확인했습니다. DOMAIN, DOMAIN-SUFFIX, GEOIP 또는 FINAL을 편집하려면 규칙 매뉴얼을 참고하세요. 아직 해결되지 않은 오류는 증상에 맞는 자주 묻는 질문에서 확인하면 됩니다. 시작 단계에서 모든 고급 설정을 한꺼번에 조정할 필요는 없습니다.

관련 내용 더 보기

Shadowrocket 정식 앱 다운로드