이 글에서는 iPhone / iPad에서 Shadowrocket을 처음 연결하는 방법을 안내합니다. 사용할 서버 정보나 구독이 이미 있다는 전제하에 자료 가져오기, 기본 서버 선택, 연결 승인, 테스트 결과 확인 순으로 진행합니다. 시스템 VPN 연결 상태, 서버 연결 가능 여부, 대상 웹사이트 이용 가능 여부는 서로 다른 결과이므로 구분해서 확인하세요.
1. 설치 경로와 보유 자료 확인
아직 설치하지 않았다면 먼저 다운로드 안내에서 기기에 맞는 버전을 확인하세요. 이용 방식은 2가지입니다. iPhone / iPad 버전은 App Store에서 $2.99 일회성 결제로 구매하며, Mac(Apple 실리콘 / Intel), Windows, Android, Linux 버전은 무료입니다. iPhone / iPad 버전의 개발자는 Shadow Launch Technology Limited이며, 시스템 요구 사항은 App Store 페이지를 기준으로 확인하세요. 플랫폼에 따라 시스템 권한 창이 다를 수 있으며, 아래 VPN 승인 절차는 iPhone / iPad 기준입니다.
앱을 설치했다고 해서 사용할 수 있는 서버가 제공되는 것은 아닙니다. 처음 연결하려면 보유한 서버 주소, 포트, 프로토콜 인증 정보 또는 본인의 구독 링크가 필요합니다. 이 사이트는 서버나 구독을 제공·판매·추천하지 않습니다. 구독 링크, 비밀번호, 전체 구성을 공개 게시판에 올리지 마세요. 여기에 포함된 token으로 개인 구독 정보에 접근할 수 있는 경우가 많습니다.
- 구독을 보유한 경우: Home 오른쪽 위의 “+”를 누르고 Type을 Subscribe로 설정하세요. 본인의 구독 주소를 입력해 저장한 다음 구독 내용을 업데이트합니다. 목록에 실제 서버 항목이 표시된 뒤 다음 단계로 넘어가세요.
- 서버 정보를 보유한 경우: Home 오른쪽 위의 “+”를 누르고 자료에 맞는 Type을 선택한 뒤 주소, 포트, 인증 정보를 하나씩 확인해 입력하세요. Shadowsocks, VMess, VLESS, Trojan 등은 프로토콜마다 입력 항목이 다르므로 주소가 같다는 이유만으로 Type을 바꾸면 안 됩니다.
- Config를 보유한 경우: 구성 파일과 서버 구독은 서로 다릅니다. Config에는 라우팅 규칙과 정책 참조가 포함될 수 있지만, Config를 가져와도 사용 가능한 서버 항목이 반드시 생기는 것은 아닙니다.
2. Home에서 기본 서버를 선택하고 연결 켜기
Home에 서버 이름이 보인다는 것은 해당 항목이 등록되어 있다는 뜻일 뿐입니다. 처음 연결할 때는 실제로 사용할 서버를 선택한 다음 연결 스위치를 켜야 합니다. 서버 왼쪽의 원을 누르는 것과 항목 편집은 서로 다른 동작입니다. 주소를 편집한 뒤 목록으로 돌아왔다면 기본 서버가 선택되어 있는지 다시 확인하세요.
-
목록 확인
Home으로 이동해 본인 구독에 포함된 서버 목록을 펼치고, 실제 서버 항목이 하나 이상 있는지 확인하세요. 목록이 비어 있으면 연결 스위치를 반복해서 켜기 전에 구독 주소와 업데이트 결과부터 확인합니다.
-
기본 서버 선택
사용할 서버 왼쪽의 원을 누르고 선택 표시가 해당 항목에 나타나는지 확인하세요. 처음 문제를 확인할 때는 같은 서버를 유지하고, 매번 테스트할 때 서버와 라우팅 모드를 동시에 바꾸지 마세요.
-
라우팅 확인
Home → Global Routing을 열어 현재 모드가 Config, Proxy, Direct 중 무엇인지 확인하세요. 프록시 경로를 확인하려면 Direct로 설정되어 있지 않아야 합니다. Config 모드에서는 현재 구성의 규칙과 정책 참조가 유효한지도 확인하세요.
-
연결 켜기
Home으로 돌아가 상단 연결 스위치를 켜세요. 처음 시스템에서 VPN 구성 추가를 요청하면 요청한 앱이 Shadowrocket인지 확인한 뒤 허용하고, 시스템 안내에 따라 기기 인증을 완료합니다.
-
상태 확인
연결 상태가 안정될 때까지 기다린 다음 Connectivity Test를 실행하세요. 스위치가 곧바로 꺼지면 대상 웹사이트 문제로 단정하지 말고 권한이나 시스템 연결 문제부터 확인합니다.
시스템 VPN 상태는 기기에서 트래픽을 전달하는 통로가 만들어졌음을 뜻합니다. 원격 서버 인증이 성공했거나 모든 요청이 프록시를 통과한다는 의미는 아닙니다. 정책 그룹을 사용하는 Config에서는 그룹 내 다른 서버를 참조할 수도 있으므로 Home에서 선택한 기본 서버가 구성의 모든 정책에 적용되는 것은 아닙니다.
3. Connectivity Test로 단계별 확인
연결을 켠 뒤 Home에서 Connectivity Test를 실행하고 완료될 때까지 기다린 다음 결과를 확인하세요. 이 테스트는 현재 설정에서 선택한 테스트 대상에 연결할 수 있는지 확인합니다. 모든 웹사이트, 프로토콜 또는 앱의 이용 가능성을 보장하지는 않습니다. 결과를 비교할 수 있도록 테스트 당시의 서버 이름, Global Routing 모드, 네트워크를 기록해 두세요.
- 응답 시간 표시: 해당 테스트에서 응답 시간을 측정했다는 뜻입니다. 이 값은 다운로드 속도가 아니며, 동영상 전송 속도나 장시간 연결의 안정성을 판단하는 기준으로 사용할 수 없습니다.
- 시간 초과 또는 실패: 먼저 전체 안내 문구를 기록한 다음 테스트 대상, 서버 정보, 현재 네트워크를 확인하세요. 한 번의 시간 초과만으로 전체 연결 경로가 작동하지 않는다고 단정할 수는 없습니다.
- 테스트는 통과했지만 웹사이트가 열리지 않음: 해당 웹사이트에 실제로 적용되는 규칙, DNS 조회 결과, 대상 사이트 상태를 추가로 확인하세요. 테스트 하나의 성공을 모든 요청이 정상이라는 근거로 삼지 마세요.
- 웹사이트가 열려도 프록시가 적용되지 않았을 수 있음: Direct 모드나 Config의 DIRECT 규칙은 요청을 직접 연결할 수 있습니다. 웹페이지가 열린다는 사실만으로 프록시 경로가 사용됐다고 볼 수 없습니다.
테스트 후 실제로 이용할 웹사이트를 열고 평소 사용하는 앱도 확인하세요. 특정 앱만 문제가 있다면 서버와 네트워크를 그대로 둔 채 앱이 별도 연결을 사용하는지, 규칙의 영향을 받는지 확인합니다. Connectivity Test 지연 시간, 구독 목록의 지연 시간 테스트, 실제 다운로드 속도는 서로 다른 지표입니다.
4. Global Routing이 첫 테스트에 미치는 영향
처음 연결할 때 흔히 하는 오해는 Direct에서 웹사이트가 열린다는 이유로 프록시가 정상이라고 판단하거나, Config에서 특정 도메인에 연결되지 않는다는 이유로 서버를 사용할 수 없다고 판단하는 것입니다. 먼저 현재 라우팅 모드를 확인한 다음 테스트 결과를 해석하세요. 아래 내용은 Shadowrocket 자체의 라우팅 설정에 관한 설명입니다.
Config
권장현재 구성의 규칙과 정책에 따라 요청을 처리합니다. DIRECT 규칙에 해당하는 요청은 직접 연결되고, 프록시 정책에 해당하는 요청은 그 정책을 따릅니다. 규칙에 일치하지 않는 요청은 이후 규칙이나 FINAL에서 처리되므로 모두 직접 연결되는 것은 아닙니다.
사용하기 좋은 경우: 사용 가능한 구성이 있고, 일상적인 분기 처리나 최종 재테스트를 할 때.
Proxy
클라이언트가 처리하는 요청을 프록시 경로로 보내므로 문제를 확인하는 동안 분기 규칙의 영향을 줄일 수 있습니다. 서버 인증 오류를 우회하거나 잘못된 주소, 포트, TLS 설정을 수정해 주지는 않습니다.
사용하기 좋은 경우: Config의 규칙이나 정책이 문제의 원인인지 임시로 확인할 때.
Direct
직접 연결 경로를 사용하고 프록시 경로는 이용하지 않습니다. 현재 네트워크에서 같은 테스트 대상에 직접 연결할 수 있는지 비교할 때 사용할 수 있지만, 원격 프록시 서버의 정상 여부를 확인하는 데는 적합하지 않습니다.
사용하기 좋은 경우: 로컬 네트워크에서 같은 테스트 대상에 직접 연결할 수 있는지 확인할 때.
화면에서 Scene을 사용하는 경우 먼저 현재 Scene에 해당하는 설정을 확인하세요. Scene을 Proxy와 같은 전역 프록시 스위치로 간주하면 안 됩니다. 처음 문제를 확인할 때는 위의 단일 모드 중 하나를 명시적으로 선택해 비교하고, 확인이 끝나면 기존 설정으로 되돌리세요. 모드를 바꾸면 라우팅 방식만 달라질 뿐 구독 정보가 추가되거나 서버 인증 항목이 자동으로 수정되지는 않습니다.
5. 연결 실패 증상별 점검
문제를 확인할 때는 한 번에 변수 하나만 바꾸고, 변경 후 같은 테스트를 반복하세요. 서버, Global Routing, Wi-Fi, 셀룰러 네트워크를 동시에 바꾸면 성공이나 실패의 원인을 파악하기 어렵습니다. 먼저 연결 스위치가 켜진 상태를 유지하지 못하는 문제인지, 연결은 됐지만 요청이 실패하는 문제인지 구분한 뒤 해당 항목을 확인하세요.
두 가지 문제 유형별 점검
스위치가 바로 꺼짐
- 처음 표시된 시스템 VPN 구성 승인 절차를 완료했는지, 시스템 인증을 취소하지 않았는지 확인하세요.
- 시스템 설정에서 VPN 구성이 있는지 확인하고, 기기 관리 정책이 연결을 제한하는지도 살펴보세요.
- 사용 중인 다른 VPN 연결을 잠시 중지한 뒤 Home으로 돌아가 다시 시도하세요.
- Settings → On Demand를 확인하세요. 문제를 확인하는 동안 자동 연결을 잠시 끄고 수동 스위치로 상태를 확인합니다.
연결됐지만 요청 실패
- Home 왼쪽의 원에서 원하는 서버가 선택되어 있는지 확인하고 Global Routing도 점검하세요.
- 서버 주소, 포트, 프로토콜, 비밀번호 또는 UUID, 자료에 지정된 TLS 매개변수를 하나씩 확인하세요.
- 본인의 구독을 업데이트하고 업데이트 실패 메시지나 서버 항목 변경이 있는지 확인하세요.
- 같은 서버를 유지한 채 Wi-Fi와 셀룰러 네트워크에서 각각 테스트하고, 한 네트워크에서만 실패하는지 기록하세요.
시스템 연결이 유지되는지 먼저 확인한 다음 원격 서버에 연결할 수 있는지 점검하세요. 연결 스위치를 반복해서 누르는 것으로 단계별 확인을 대신하지 마세요.
Wi-Fi에서는 실패하고 셀룰러 네트워크에서는 성공한다면 Wi-Fi의 웹 인증 필요 여부, 관련 포트 제한 여부, DNS 설정을 먼저 확인하세요. 이는 점검 방향일 뿐 네트워크 차단을 자동으로 의미하지 않습니다. 두 네트워크 모두 실패하면 기존 서비스가 유효한지, 서버가 구독에 계속 포함되어 있는지, 프로토콜 항목이 원래 자료와 일치하는지 확인하세요.
Hysteria2, WireGuard 등은 UDP를 사용하므로 다른 TCP 요청이 성공했다고 해서 해당 프로토콜의 전송 경로도 정상이라고 단정할 수 없습니다. 반대로 테스트를 위해 Type을 다른 프로토콜로 임의 변경하지 마세요. 원격 서버와 로컬 설정의 프로토콜은 일치해야 합니다. 이름을 바꿔도 서버가 실제로 제공하는 서비스는 달라지지 않습니다.
6. 연결 성공 후 재확인 및 기록
Connectivity Test를 마친 뒤에는 장기간 사용할 라우팅 모드로 되돌리고 실제 웹사이트를 다시 확인하세요. 문제를 확인하는 동안 Proxy를 사용했다면 Config로 돌아간 후에도 재테스트해야 합니다. 같은 도메인도 두 모드에서 서로 다른 경로를 사용할 수 있습니다. On Demand는 수동 연결이 안정된 뒤 설정해야 처음 문제를 확인할 때 자동 연결이 관찰을 방해하지 않습니다.
- 구성 복원: Home → Global Routing에서 평소 사용할 모드를 선택하고, Config에서 활성화된 구성과 정책 선택을 확인하세요.
- 다시 테스트: Connectivity Test를 한 번 더 실행하고 실제로 사용할 웹사이트도 열어 임시 모드에서만 작동하는 것은 아닌지 확인하세요.
- 자동 연결 확인: 자동 연결이 필요할 때 Settings → On Demand로 이동해 실제 네트워크 환경에 맞게 설정하세요. 테스트 중 꺼 둔 옵션은 기존 사용 방식에 맞게 복원합니다.
- 점검 내용 기록: 네트워크 유형, 서버 이름, 라우팅 모드, 실패 메시지, 발생 시간을 기록하세요. 로그를 다른 사람에게 전달하기 전에 구독 token, 비밀번호, UUID 등 민감한 정보를 가리세요.
첫 연결을 제대로 확인하려면 시스템 연결이 유지되고, 테스트 대상이 응답하며, 실제 이용하려는 서비스가 예상대로 작동하는지 모두 확인해야 합니다. 이후 문제가 생겨도 같은 순서로 단계별 점검을 하면 모든 구성을 바로 삭제하는 것보다 원인을 찾기 쉽고, 기존에 정상 작동하던 설정을 비교 기준으로 남겨 둘 수 있습니다.