제품 설명

Shadowrocket은 iOS / iPadOS의 규칙 기반 프록시 클라이언트입니다.

앱은 시스템 VPN 인터페이스로 송신을 받고 규칙에 따라 각 연결을 직통(DIRECT), 프록시(PROXY), 거부(REJECT)로 판정합니다. 노드, 구독, 규칙은 직접 가져옵니다. 앱은 서버를 제공하지 않고 계정 시스템도 없습니다.

아래 그림은 분기 결과입니다. 가운데 스위치는 앱 안 연결 조작에 대응하며 탭으로 전환합니다. 오브젝트와 읽기는 매뉴얼에서 각 장으로 들어갑니다.

DIRECT · 직통

프록시 노드를 거치지 않음

DIRECT에 맞은 요청은 시스템 원래 경로로 나갑니다. 예를 들어 직통으로 적은 호스트나 Apple 시스템 서비스입니다. 지연과 가용성은 로컬 망에 따르며 노드 트래픽을 쓰지 않습니다.

PROXY · 프록시

설정한 노드로 전달

PROXY에 맞은 요청은 이 앱이 지금 고른 서버로 보냅니다. 프로토콜, 암호, 전송은 그 노드 구성이 정하며 클라이언트가 혼자 한 벌의 전역 프로토콜을 지정하지 않습니다.

개요

동작 방식

Shadowrocket은 iPhone과 iPad에서 동작하며 시스템 요구는 iOS 13.0 이상입니다. 연결을 처음 열 때 시스템이 VPN 구성 추가를 요청합니다. iOS가 Network Extension에 하는 표준 인가이지 제3자 로그인이 아닙니다.

연결을 열면 대부분의 앱 송신 TCP / UDP가 터널에 들어갑니다. 클라이언트는 먼저 현재 구성 파일의 규칙으로 맞춥니다. DIRECT면 시스템 원래 경로로 되돌리고, PROXY면 현재 노드로 보내며, REJECT면 막습니다. 어떤 조건에도 안 맞으면 규칙 끝 FINAL이 기본 정책을 정합니다.

도메인 맞춤은 보통 DNS 결과, HTTP 호스트명, 또는 TLS Server Name Indication을 따릅니다. IP와 GeoIP 맞춤은 목적지를 따릅니다. 규칙은 파일 순서로 위에서 실행되고 먼저 맞은 항목이 먹히며 뒤는 계산하지 않습니다.

구성, 노드, 규칙은 기기에 저장됩니다. iCloud를 허용하면 같은 Apple ID 기기 사이에서 동기화할 수 있습니다. 개발자 서버는 이 내용을 보관하지 않습니다.

App Store 가격은 2.99달러, 일회 구매입니다. 프록시 서버는 직접 준비합니다. 일부 지역 스토어에는 없습니다.

레코드
목록에서 고를 수 있는 출구 하나. 주소, 프로토콜, 인증을 포함합니다.
컨테이너
구독: URL만 저장하고 자식 레코드는 새로고침으로 씁니다.
규칙
「조건 → 정책」의 순서 목록. 조건은 도메인, IP 구간, GeoIP, 프로세스 등이고 정책은 DIRECT, PROXY, REJECT입니다.
Config
지금 유효한 규칙 집합과 관련 옵션. 구성은 여러 개를 둘 수 있고 연결 때 쓰는 것은 고른 하나뿐입니다.

문서

화면으로 읽습니다.

홈은 제품이 무엇인지에만 말합니다. 화면 오브젝트는 장마다 나눠 씁니다. 각 장 입구는 상단 바, 읽는 순서는 매뉴얼입니다.

  1. 01매뉴얼 · 읽는 순서와 오브젝트 역할
  2. 02터널 · 스위치와 Config / Proxy / Direct
  3. 03오브젝트 · 레코드와 컨테이너
  4. 04규칙 · 목록, 순서, FINAL
  5. 05Data · 네 신호
  6. 06시스템 · iOS VPN 경계
  7. 07Config · 여러 파일과 iCloud
  8. 08리라이트 · 분기와는 다른 일
  9. 09DNS · 두 DNS와 IPv6
  10. 10스토어 · App Store
  11. 11블로그 · 화면 위 현상을 펼쳐 씀

규칙 맞춤

도메인을 위에서 아래로 맞춤

도메인을 넣으면 첫 규칙에 맞습니다. 견본 규칙 집합이며 기기 위 실제 구성과 무관합니다. /로 입력란에 포커스합니다.

  1. DOMAIN-SUFFIXapple.comDIRECT
  2. DOMAIN-SUFFIXicloud.comDIRECT
  3. DOMAIN-SUFFIXnaver.comDIRECT
  4. DOMAIN-SUFFIXdaum.netDIRECT
  5. DOMAIN-KEYWORDkakaoDIRECT
  6. DOMAIN-SUFFIXnetflix.comPROXY
  7. DOMAIN-SUFFIXgithub.comPROXY
  8. DOMAIN-SUFFIXyoutube.comPROXY
  9. DOMAIN-SUFFIXwikipedia.orgPROXY
  10. GEOIPCNDIRECT
  11. FINALPROXY

GEOIP는 기기 위 IP 데이터베이스에 의존하며 이 페이지는 흉내 내지 못합니다. FINAL은 어떤 조건에도 안 맞을 때의 기본 정책입니다.

맞춤 결과

PROXY

DOMAIN-SUFFIX, github.com

정책: 프록시 노드를 거쳐 전달합니다.

규칙

자주 쓰는 조건 유형

완전한 문법은 앱 안 문서와 규칙 파일을 따릅니다. 아래는 실제 구성에서 가장 자주 나오는 종류입니다. 정책 열은 DIRECT, PROXY 외에 REJECT도 쓸 수 있습니다.

DOMAIN
호스트명이 완전 일치할 때 맞습니다. 예: DOMAIN,example.com,PROXY는 example.com만 맞고 www.example.com은 안 맞습니다.
DOMAIN-SUFFIX
호스트명이 그 접미사와 같거나 「.접미사」로 끝날 때 맞습니다. 예: apple.com은 apple.com과 www.apple.com에 맞습니다.
DOMAIN-KEYWORD
호스트명에 그 문자열이 들어가면 맞습니다. 범위는 접미사보다 넓고 오탐도 많습니다. 접미사로 묶을 수 없는 도메인 묶음에 씁니다.
IP-CIDR
목적지 IPv4 구간으로 맞춥니다. 예: IP-CIDR,172.16.0.0/12,DIRECT. IPv6는 IP-CIDR6를 씁니다.
GEOIP
목적지 IP의 지리 라이브러리 분류로 맞춥니다. 두 번째 칸은 ISO 국가 코드이며, 예를 들어 GEOIP,CN,DIRECT 또는 GEOIP,KR,DIRECT입니다. 정확도는 기기 위 데이터베이스 버전에 따릅니다.
FINAL
파일에서는 끝에 두어야 합니다. 앞 조건이 모두 빗나갔을 때 여기 정책을 씁니다. FINAL이 없으면 미맞춤 트래픽 동작은 현재 구성을 따르며 암시 기본값에 기대지 마세요.

규칙은 손글씨로도, 다른 사람이 유지하는 목록 구독으로도 가져올 수 있습니다. 제3자 규칙을 가져오기 전에 라이선스와 업데이트 방식을 읽고 FINAL과 GEOIP 두 줄이 자신의 기대와 맞는지 확인하세요. 예를 들어 어떤 국가 코드를 DIRECT, 나머지를 PROXY로 두는 것은 흔한 조합이지 유일한 정답이 아닙니다.

설정의 「열 때 업데이트」「백그라운드 업데이트」는 구독형 노드나 규칙에만 적용됩니다. 백그라운드 업데이트는 시스템 「설정 → 일반 → 백그라운드 App 새로고침」에서 Shadowrocket을 허용해야 합니다. 업데이트가 실패하면 목록은 직전에 성공한 결과에 머물고 자동으로 비워지지 않습니다.

프로토콜

지원 프로토콜

어떤 프로토콜을 쓸지는 노드 제공자가 정합니다. 클라이언트는 같은 앱 안에 여러 프로토콜 노드를 둘 수 있고 연결 때 쓰는 것은 지금 고른 하나뿐입니다. 전송(WebSocket, gRPC, QUIC 등)은 노드 구성의 일부이며 서버와 같아야 합니다.

기능

포함

  • 규칙 기반 분기(직통 / 프록시 / 거부)
  • 구독 URL, QR 코드, 손으로 한 줄씩 추가
  • 여러 프로토콜 노드 공존. 연결 때 현재 항목을 씀
  • 지연 테스트, 트래픽 통계(Data)
  • URL 리라이트. 선택적 HTTPS 복호화(프로파일 설치 필요)
  • 구성은 기기에 저장. 선택적으로 iCloud를 자기 기기로 동기화

범위

포함하지 않음

  • ×프록시 노드를 제공·판매하지 않음
  • ×앱 안 계정 없음. 구성은 개발자 서버로 올라가지 않음
  • ×앱 안 구독 없음. 노드 서비스 요금은 따로 냄
  • ×노드의 선정, 구축, 유지를 맡지 않음
  • ×시스템 방화벽이 아니며 다른 App 바이너리도 고칠 수 없음
  • ×Android / Windows / macOS 공식 클라이언트 없음

제한

시스템과 사용의 경계

Shadowrocket은 iOS VPN 틀 위에 서므로 그 틀의 제한을 이어받습니다. 일부 시스템 프로세스, 일부 App은 「VPN 연결됨」을 감지하거나 독자 경로를 씁니다. 클라이언트는 모든 소프트웨어를 터널에 넣게 할 수 없습니다.

저전력 모드, 시스템의 백그라운드 회수, 「백그라운드 App 새로고침」 끄기, VPN 온디맨드 관련을 끄면 터널이 끊길 수 있습니다. 비행기 모드, Wi-Fi / 셀룰러 전환, 포털 인증(Captive Portal)도 짧은 중단을 일으키며 다시 연결하거나 자동 복구를 기다립니다.

HTTPS 복호화(MITM)는 사용자가 신뢰하는 프로파일을 넣어 HTTPS 내용을 보거나 바꿉니다. 그 기기의 인증서 보안 모델을 낮춥니다. 분명히 필요할 때만 켜고 다 쓰면 프로파일을 빼세요. 보통의 분기, 웹 보기, API 사용은 이 항목에 의존하지 않습니다.

IPv6, fake-ip, 실제 IP의 분기 결과는 다를 수 있습니다. IPv4 CIDR만 설정하고 대상이 IPv6면 규칙이 FINAL로 떨어질 수 있습니다. 두 주소족을 함께 다루려면 규칙에 IP-CIDR6를 더하거나 설정에서 필요 없는 IP 버전을 끄세요.

앱은 통신사나 대상 사이트의 접근 정책을 뚫지 못하고 만료된 노드를 쓸 수 있게 만들지도 못합니다. 연결 품질은 로컬 망, 노드 회선, 대향 서비스가 함께 정합니다. 이 페이지는 노드를 제공하지 않고 제3자 구독 서비스도 평가하지 않습니다.

사양

제품 사양

SHADOWROCKET PROXY UTILITY
다른 이름
小火箭
플랫폼
iOS 13.0 이상 · iPadOS
가격
USD 2.99 · App Store 일회 구매 · IAP 없음
출시
App Store · 일부 지역 미등록(중국 본토 포함)
인터페이스
iOS Network Extension(시스템 VPN)
Config
기기에 저장. 선택적으로 iCloud를 자기 기기 사이에서 동기화
개발자
Shadow Launch Technology Limited
$2.99 일회 구매 App Store

앱 받기는 스토어를 보세요. 가족 공유가 되는지는 그때 App Store 제품 페이지 표기를 따릅니다.