앱, 설정, 구독부터 구분하기
iPhone에서 “Clash iOS”를 검색한다면 기존 구독을 사용할 수 있는 프록시 앱을 찾는 경우가 대부분입니다. Windows 설치 파일을 휴대폰에 옮기는 방식이 아닙니다. 원래 Clash 프로젝트는 이름만으로 공식 앱이라고 판단할 수 있는 iOS 앱을 출시하지 않았습니다. App Store에서 제공되는 호환 앱은 개발자와 지원하는 설정 형식, 기능 범위가 각각 다릅니다. 사이트 이름이 해당 앱의 개발자를 뜻하는 것도 아닙니다.
설치 전에 세 가지를 확인하세요. 사용할 앱은 무엇인지, 서비스 제공업체가 어떤 구독을 제공하는지, 구독에 앱이 지원하는 프로토콜이 포함되어 있는지 살펴봐야 합니다. 앱을 다운로드할 수 있다고 해서 구독을 가져올 수 있는 것은 아닙니다. 노드를 가져왔더라도 설정의 모든 규칙이 적용된다는 뜻은 아닙니다.
| 항목 | 설명 | 가져오기 전 확인 사항 |
|---|---|---|
| Stash | Clash 형식의 YAML 설정을 사용하는 iOS 앱 | 서비스 제공업체가 제공하는 Stash용 설정을 우선 사용하고, 프로토콜과 필드 지원 여부를 확인합니다 |
| Shadowrocket | 자체 노드·구독·규칙 설정 방식을 사용하는 앱 | Shadowrocket 전용으로 명시된 구독 항목을 선택합니다. 전체 Clash YAML을 범용 형식으로 간주하지 마세요 |
| 구독 주소 | 노드 목록 또는 전체 설정을 반환하는 원격 주소 | 출력 형식, 계정 상태, 업데이트 권한을 확인합니다 |
| Profile | 앱에서 불러오는 설정 파일 | 노드, 정책 그룹, 규칙, DNS가 모두 있는지 확인합니다 |
App Store에서 앱 받기
앱 이름 확인부터 설치까지
- 사이트의 다운로드 센터에서 iOS 앱 안내와 해당 다운로드 경로를 확인하세요. App Store로 이동한 뒤 앱 이름, 개발자, 상세 정보를 다시 확인합니다.
- 스토어 상세 정보에서 “호환성”을 펼쳐 현재 iOS 버전이 요구 사항을 충족하는지 확인하세요. 이름이나 아이콘이 비슷하다는 이유만으로 판단하지 마세요.
- 스토어에 표시된 가격과 구매 조건을 확인하세요. 앱 비용과 프록시 서비스 구독료는 별도로 결제되며, 앱을 구매해도 노드가 자동으로 제공되지는 않습니다.
- 다운로드가 끝나면 홈 화면에서 앱을 여세요. 먼저 설정 관리 메뉴를 찾은 다음 구독을 가져옵니다. 설정이 비어 있는 상태에서는 연결을 시작해도 트래픽을 분기할 수 없습니다.
App Store에 “현재 국가 또는 지역에서는 이 앱을 사용할 수 없습니다”라고 표시된다면 현재 스토어 지역에서 앱을 제공하지 않는다는 뜻입니다. 구독 링크가 만료된 것은 아닙니다. 앱의 판매 여부, 가격, 최소 시스템 요구 사항은 현재 스토어 페이지를 기준으로 확인하세요.
검색 결과에 앱이 없을 때 확인할 설정
“설정” → 상단의 Apple 계정 → “미디어 및 구입 항목” → “계정 보기” → “국가/지역”에서 스토어 계정의 지역을 확인할 수 있습니다. 이 설정은 시스템의 “언어 및 지역”과 별개입니다. 시스템 지역만 변경해도 App Store의 앱 목록은 바뀌지 않습니다.
- 가능하면 본인 Apple 계정을 사용하고, 계정 국가 또는 지역 변경, 잔액, 유효한 구독에 관한 Apple의 제한 사항을 확인하세요.
- Apple 계정 페이지에 구독 서비스 로그인 정보를 입력하지 마세요. 앱 설치를 대신해 주는 사람에게 Apple 계정 암호를 알려주지도 마세요.
- App Store에서 설치한 앱은 일반적으로 기업 개발자 인증서를 신뢰할 필요가 없습니다. 기업 인증서나 기기 관리 프로파일을 설치하라는 대체 절차가 나오면 먼저 출처를 확인하세요.
사용 가능한 구독 링크 준비하기
서비스 제공업체의 계정 페이지에서 사용할 앱에 맞는 구독 항목을 선택하세요. Stash는 “Stash”용이라고 명확히 표시된 설정을 우선 사용하고, Shadowrocket은 전용 구독이나 문서에서 지원하는 노드 구독을 선택하세요. URL이 https://로 시작한다는 이유만으로 두 형식을 서로 바꿔 쓸 수 있다고 판단하지 마세요.
구독 URL에는 계정 토큰이 포함되는 경우가 많습니다. 일반적인 안내 페이지 주소가 아니므로 링크를 가진 사람이 노드 정보를 보거나 관련 서비스를 사용할 수 있습니다. 복사한 링크를 공개 채팅방에 올리지 말고, 실제 구독 주소를 출처가 불분명한 온라인 변환 사이트에 붙여 넣지 마세요.
가져오기 전 확인할 네 가지
- 주소 전체 복사: 전체 URL을 복사하고
?뒤의 매개변수도 그대로 유지하세요. 메신저가 덧붙인 따옴표, 공백, 줄바꿈은 제거합니다. - 주소 유형 확인: 앱에 필요한 것은 구독 API 주소입니다. 로그인 페이지, 결제 페이지 또는 계정 홈 주소가 아닙니다.
- 계정 상태 확인: 구독 만료, 사용량 소진, 토큰 재설정 등으로 기존 링크에서 콘텐츠를 가져오지 못할 수 있습니다.
- 형식 확인: 전체 Clash 형식 설정에는 보통
proxies또는proxy-providers와proxy-groups,rules가 포함됩니다. 노드 목록에 트래픽 분기 규칙까지 들어 있는 것은 아닙니다.
일부 API는 앱의 요청 헤더에 따라 서로 다른 내용을 반환합니다. 브라우저에서 링크가 열린다는 것은 해당 요청에 응답했다는 뜻일 뿐, 앱이 내용을 파싱할 수 있다는 증거는 아닙니다. 앱에서 다운로드한 결과와 설정 검사로 최종 확인하세요.
구독을 가져와 설정 선택하기
Stash 설정 절차 예시
버전에 따라 메뉴 이름이 “설정”, “설정 파일” 또는 해당 영문으로 표시될 수 있습니다. 핵심은 원격 설정을 추가하는 것이며, 노드를 수동으로 추가하는 것이 아닙니다. 아래 설명은 메뉴의 기능을 기준으로 하며 실제 이름은 설치된 버전에 따라 다를 수 있습니다.
- 설정 관리 화면으로 이동해 추가 메뉴를 누른 다음 URL에서 다운로드하거나 원격 설정을 가져오는 항목을 선택합니다.
- 구독 주소를 붙여 넣고 “개인 구독-iPhone”처럼 알아보기 쉬운 이름을 지정하세요. 전체 토큰을 이름에 포함하지 마세요.
- 다운로드 또는 저장을 실행하고 앱이 파싱을 마칠 때까지 기다리세요. 오류가 발생하면 오류 유형을 기록하되 토큰이 포함된 전체 URL을 공개하지 마세요.
- 설정 목록에서 방금 가져온 항목을 선택해 현재 사용 중인 설정인지 확인하세요. 목록에 저장되어 있기만 하고 활성화되지 않은 상태와 구분해야 합니다.
- 정책 그룹 화면을 열어 예상한 그룹이 있는지 확인한 뒤, 수동 선택 그룹에서 노드나 하위 정책 그룹을 선택하세요.
서비스 제공업체가 “앱에서 열기”를 제공하면 URL Scheme을 통해 앱이 실행될 수 있습니다. 앱으로 이동했다고 해서 작업이 끝난 것은 아닙니다. 다운로드가 완료됐는지, 현재 설정이 전환됐는지 확인하세요. Safari에서 앱이 실행되지 않으면 앱으로 돌아가 URL을 직접 가져오면 됩니다.
노드 개수만 보지 말고 규칙 참조를 확인하세요
아래는 정책 그룹과 규칙의 관계를 파악하기 위한 설정 일부입니다. 단독으로 연결할 수 있는 전체 설정이 아닙니다. 실제 노드 정의는 유효한 구독에서 제공해야 합니다.
proxy-groups:
- name: 아웃바운드 선택
type: select
proxies:
- DIRECT
rules:
- DOMAIN-SUFFIX,example.com,아웃바운드 선택
- MATCH,DIRECT
DOMAIN-SUFFIX는 지정한 도메인과 하위 도메인에 적용되며 규칙은 위에서부터 순서대로 확인합니다. 여기서 “아웃바운드 선택”에는 DIRECT만 있으므로 프록시를 통한 아웃바운드 연결은 이루어지지 않습니다. 실제로 사용하려면 정책 그룹이 구독에서 제공한 노드나 유효한 다른 정책 그룹을 참조해야 합니다. 규칙이 존재하지 않는 이름을 참조하면 설정을 불러오는 단계에서 오류가 발생할 수 있습니다.
구독을 업데이트하면 수동 변경 사항이 덮어써질 수도 있습니다. 사용자 지정 규칙이 필요하다면 원격 설정을 수정하기 전에 앱이 로컬 오버라이드나 별도의 규칙 설정을 지원하는지 확인하세요. 원래 설정을 바로 삭제하는 것보다 복원할 수 있는 사본을 남겨 두는 편이 되돌리기 쉽습니다.
VPN 구성 허용 및 연결하기
처음 연결을 시작하면 iOS에서 앱이 VPN 구성을 추가하려 한다는 알림이 표시되는 경우가 많습니다. 안내에 표시된 앱이 방금 설치한 앱인지 확인한 뒤 허용을 선택하고, 기기 암호나 생체 인증으로 승인을 완료하세요. 이 단계는 시스템 네트워크 터널 사용을 허용하는 것으로, 서비스 구독을 구매하는 절차가 아닙니다.
- 앱으로 돌아가 현재 Profile과 정책 그룹이 올바르게 선택되어 있는지 확인합니다.
- 연결 스위치를 누르고 시스템에 표시되는 VPN 구성 승인 절차를 진행합니다.
- 앱에 연결 완료가 표시될 때까지 기다린 다음 네트워크를 확인하세요. 연결 중에 스위치를 여러 번 연속으로 전환하지 마세요.
- 필요하면 “설정” → “일반” → “VPN 및 기기 관리” → “VPN”에서 해당 구성의 연결 상태를 확인하세요.
iOS 앱은 보통 Network Extension의 터널 기능으로 트래픽을 처리하므로 데스크톱에서 “시스템 프록시 켜기”를 설정하는 방법을 그대로 적용할 수 없습니다. 컴퓨터의 127.0.0.1:7890을 그대로 사용하지 마세요. iPhone에서 127.0.0.1은 컴퓨터가 아니라 휴대폰 자체를 가리킵니다.
첫 연결 시 확인 순서
“설정 불러오기 → 터널 연결 → 요청의 규칙 일치 여부 → 실제 페이지 접속” 순서로 테스트하세요. 한 번에 설정 하나만 변경해야 문제가 생겼을 때 노드, DNS, 규칙 중 어디서 비롯됐는지 판단할 수 있습니다.
- 설정 확인: 현재 설정 이름을 확인하고 파싱 오류가 있는지 살펴보세요. 정책 그룹이 요청에 적합하지 않은
DIRECT또는REJECT에 고정되어 있지 않은지도 확인합니다. - 노드 확인: 앱에 내장된 연결 테스트를 사용하세요. 테스트 결과는 테스트 대상에 대한 연결 상태만 보여 주며, 동영상이나 다운로드 또는 다른 사이트의 접속을 보장하지 않습니다.
- 실제 요청 확인: Safari에서 접속하려는 HTTPS 페이지를 열고 앱의 연결 기록을 확인해 도메인, 적용된 규칙, 최종 아웃바운드를 점검하세요.
- 직접 연결 확인: 직접 연결되어야 하는 사이트에도 접속해 모든 요청이 같은 아웃바운드로 잘못 전달되지 않는지 확인하세요.
- 네트워크 전환 확인: Wi-Fi에서 셀룰러로 전환한 뒤 다시 테스트하세요. 한쪽 네트워크에서만 실패한다면 해당 네트워크의 접속 제한과 노드 연결 가능 여부를 각각 확인합니다.
DNS 문제는 터널 연결에 성공했지만 도메인 조회 단계에서 요청이 멈추는 경우가 많습니다. 이때는 먼저 서비스 제공업체가 권장하는 DNS 설정으로 되돌리세요. 출처가 불분명한 암호화 DNS, 다른 VPN, 사용자 지정 규칙을 한꺼번에 추가하지 마세요. fake-ip는 특정 설정 방식에 속하며, iOS에서 반드시 직접 켜야 하는 일반적인 해결 옵션이 아닙니다.
자주 발생하는 오류와 해결 방법
| 증상 | 우선 확인할 항목 | 다음 단계 |
|---|---|---|
| 다운로드 시 HTTP 401 또는 403 반환 | 토큰, 계정 권한, 서비스 제공업체의 접속 제한 | 서비스 제공업체 페이지에 다시 로그인해 구독을 가져오고, 필요하면 제공업체에 거부 사유를 문의합니다 |
| 다운로드 시 HTTP 404 반환 | 주소 경로가 완전한지, API가 변경됐는지 확인 | 현재 구독 항목에서 주소를 다시 복사하고 API 경로를 추측해 입력하지 않습니다 |
| YAML 파싱 오류 표시 | 응답이 로그인 페이지인지, 들여쓰기나 형식이 손상됐는지 확인 | 해당 앱에 맞는 형식으로 다시 받습니다. 웹페이지 내용을 설정 파일로 저장하지 마세요 |
| 지원하지 않는 프로토콜 또는 필드 표시 | 다른 코어 전용 설정을 사용하고 있는지 확인 | Stash 또는 대상 앱 전용 설정을 선택하고 기능 안내를 확인합니다 |
| 설정을 가져왔지만 예상한 규칙이 없음 | 노드 목록만 가져온 것은 아닌지 확인 | 앱이 지원하는 규칙 설정을 추가하거나 전체 Profile을 사용합니다 |
| 연결했지만 여전히 접속할 수 없음 | 현재 노드, 최종 아웃바운드, DNS, 서비스 사용량 | 실패한 요청 하나의 로그를 확인하고 설정을 한꺼번에 바꾸지 말고 항목별로 점검합니다 |
구독 업데이트 및 기기 변경
노드가 중단되거나 규칙이 변경되면 앱에서 업데이트를 실행한 뒤 현재 Profile이 원하는 설정인지 확인하세요. 자동 업데이트를 설정해도 iOS가 백그라운드에서 항상 정해진 시간에 작업을 실행하는 것은 아닙니다. 앱을 오랫동안 열지 않았다면 연결 전에 직접 업데이트하는 편이 결과를 확인하기 쉽습니다.
새 iPhone으로 바꾸면 앱은 복원될 수 있지만 VPN 승인, 현재 정책 그룹, 원격 설정은 다시 확인해야 합니다. 구독 주소가 유출됐다면 서비스 제공업체 페이지에서 토큰을 재설정한 다음 기존 주소를 사용하는 모든 기기에서 업데이트하세요. 기본 사용법은 사용 가이드에서, 규칙과 정책 그룹의 관계는 고급 설정에서 확인할 수 있습니다.