iOS용 Clash 클라이언트 설치: App Store 검색과 설정 파일 가져오기

iPhone에서 mihomo 규칙을 지원하는 클라이언트를 찾고, App Store 설치와 VPN 승인부터 구독 링크·파일 가져오기까지 안내합니다.

iOS 클라이언트와 mihomo 설정 호환성

iPhone에서 ‘Clash’를 검색할 때는 클라이언트 이름, 프록시 코어, 설정 형식을 구분해야 합니다. Clash Meta는 mihomo의 이전 이름입니다. App Store에서 이름에 Clash가 들어간 앱이라도 mihomo 코어를 사용하거나 mihomo 설정을 완벽하게 읽는다고 단정할 수 없습니다. 반대로 이름이 다른 클라이언트도 일부 Clash 형식을 지원할 수 있습니다.

설치 전에 개발자가 제공하는 호환성 안내를 확인하세요. 지원하는 노드 프로토콜, 규칙 유형, 정책 그룹, DNS 옵션을 살펴보는 것이 앱 이름만 확인하는 것보다 중요합니다. YAML 파일을 인식한다고 해서 텍스트 형식을 읽을 수 있다는 뜻일 뿐, 모든 설정 항목이 실제로 적용되는 것은 아닙니다.

선택 전 확인할 네 가지 기능

  • 구독 형식: 전체 Clash 설정을 지원하는지, 노드 목록이나 해당 클라이언트 전용 구독만 받는지 확인하세요.
  • 노드 프로토콜: 실제로 사용하는 프로토콜과 전송 옵션을 확인하세요. 예를 들면 Shadowsocks, Trojan, VMess, VLESS, Hysteria2 등이 있습니다. 지원 범위는 현재 클라이언트 버전을 기준으로 확인해야 합니다.
  • 규칙 및 정책 그룹: 설정에서 사용하는 rules, proxy-groups, rule-providers 등의 구조를 지원하는지 확인하세요.
  • 설정 업데이트: 원격 설정을 수동으로 새로 고칠 수 있는지, 자동 업데이트를 지원하는지, 업데이트할 때 로컬 수정 사항이 덮어써지는지 확인하세요.

App Store 검색 및 설치 확인

먼저 다운로드 페이지의 iOS 링크에서 제품을 확인한 다음 App Store로 이동하세요. 직접 검색할 때는 ‘Clash’나 ‘mihomo’를 검색어로 쓸 수 있지만, 검색 결과 순위가 호환성을 보장하지는 않습니다. 앱의 출시 여부와 다운로드 가능 여부, 가격은 Apple 계정의 국가 또는 지역과 개발자 정책에 따라 달라질 수 있습니다.

  1. App Store를 열고 ‘검색’ 탭에서 클라이언트의 전체 이름을 입력합니다.
  2. 앱 상세 페이지에서 개발자 이름, 제품 설명, 버전 기록을 확인하세요. 아이콘이 비슷하다는 이유만으로 판단하지 마세요.
  3. 상세 페이지의 ‘호환성’에서 필요한 최소 iOS 버전을 확인하세요. iPhone의 ‘설정’ → ‘일반’ → ‘정보’에서 현재 iOS 버전을 확인할 수 있습니다.
  4. ‘받기’ 또는 가격 버튼을 누르고 Apple 계정 인증을 완료합니다. 설치가 끝나면 먼저 클라이언트를 열어 설정을 추가하는 위치를 확인한 뒤 구독을 가져오세요.

현재 지역에서 사용할 수 없다고 표시되면 같은 검색을 반복해도 결과가 달라지는 경우는 드뭅니다. 먼저 개발자가 안내한 링크가 맞는지 확인하고 계정 지역과 배포 안내를 살펴보세요. 출처를 알 수 없는 기업용 서명 앱을 설치하거나, 용도를 설명할 수 없는 기기 관리 설정을 적용하지 마세요.

App Store에서 설치하는 것은 클라이언트 앱이지 프록시 서비스가 아닙니다. 설치 후에도 일반적으로 유효한 구독 링크나 설정 파일을 직접 준비해야 합니다. 앱이 실행된다고 해서 사용할 수 있는 노드까지 준비된 것은 아닙니다.

가져오기 전 구독 링크와 설정 파일 구분하기

설정 추가 메뉴는 보통 Profile, 구성 또는 설정 파일로 표시됩니다. 노드, 정책 그룹, 규칙과 관련 실행 옵션이 여기에 저장됩니다. 구독 링크는 원격 콘텐츠를 가져오는 주소이고, 로컬 YAML은 특정 시점에 저장된 파일입니다. 두 가지에 같은 내용이 들어갈 수 있지만 업데이트 방식은 다릅니다.

설정 출처형식업데이트 방식
전체 설정 구독노드, 정책 그룹, 규칙 등이 포함된 YAML을 가져옵니다원격 설정을 다시 가져오며 로컬 편집 내용이 덮어써질 수 있습니다
노드 구독노드 정보만 제공하며 전용 인코딩이나 형식을 사용할 수 있습니다클라이언트 템플릿 또는 노드 제공자 설정이 필요합니다
로컬 YAML 파일‘파일’ 앱에 저장된 .yaml 또는 .yml 파일대개 다시 가져오거나 직접 수정해야 합니다

서비스 제공자의 로그인 페이지 주소를 구독 링크로 착각하지 마세요. 로그인 페이지는 클라이언트가 해석할 설정이 아니라 HTML을 반환하는 경우가 많습니다. 서비스 제공자 계정 페이지에서 Clash 또는 mihomo용으로 명시된 구독 형식을 선택하세요. 클라이언트가 전용 형식만 지원한다면 안내에 따라 해당 메뉴를 선택하면 됩니다.

링크로 원격 구독 가져오기

클라이언트마다 메뉴 이름은 다를 수 있습니다. 여기서는 일반적인 ‘설정’, ‘추가’, ‘URL에서 가져오기’ 기능을 기준으로 설명합니다. 버튼 이름이 다르면 같은 기능의 메뉴를 찾으세요. iOS 설정에 구독 주소를 붙여 넣는 방식은 아닙니다.

  1. 전체 주소를 복사합니다. 신뢰할 수 있는 서비스 제공자 계정 페이지에서 구독 링크를 복사하고, 앞뒤에 공백이나 줄바꿈, 메신저가 덧붙인 문장 부호가 없는지 확인하세요.
  2. 추가 메뉴를 엽니다. 클라이언트의 설정 목록에서 ‘추가’ 또는 ‘+’를 누르고 URL에서 다운로드하거나 가져오는 항목을 선택합니다.
  3. 알아보기 쉬운 이름을 지정합니다. 예를 들어 ‘일상용’ 또는 ‘예비 회선’으로 지정할 수 있습니다. 이름은 로컬에서 설정을 관리할 때만 사용되며 노드 옵션은 바꾸지 않습니다.
  4. 붙여 넣고 다운로드합니다. iOS에서 다른 앱의 붙여넣기를 허용할지 묻는다면 출처를 확인한 뒤 허용하세요. 클라이언트가 다운로드와 파싱을 마칠 때까지 기다립니다.
  5. 사용할 설정을 선택합니다. 가져온 뒤 설정 목록으로 돌아가 방금 추가한 항목을 직접 선택하고 정책 그룹과 노드 목록을 확인하세요.

‘다운로드 성공’과 ‘설정을 실행할 수 있음’은 별개의 단계입니다. 원격 주소에서 파일을 받았더라도 클라이언트가 인식하지 못하는 프로토콜, 잘못된 들여쓰기, 외부 규칙 참조가 포함될 수 있습니다. 오류가 발생하면 proxy-groups나 rule-providers처럼 오류가 표시된 항목을 기록하고 호환성 문제를 확인하세요.

설정 다운로드 시간 초과 시 점검 순서

  • 먼저 Wi-Fi나 셀룰러 네트워크에서 일반 웹페이지에 접속할 수 있는지 확인하세요. 로그인 인증을 완료하지 않은 공용 Wi-Fi도 점검 대상입니다.
  • 기존 터널이 요청 경로에 영향을 주지 않도록 다른 VPN이나 네트워크 필터링 앱을 잠시 끈 뒤 설정을 다시 다운로드하세요.
  • 링크가 만료되지 않았는지 확인하세요. HTTP 401 또는 403 응답이 오면 토큰, 계정 상태, 서버 접근 제한부터 확인하세요.
  • 구독을 기존 프록시로만 가져올 수 있다면 유효한 예비 설정으로 다운로드하거나 서비스 제공자에게 직접 접속할 수 있는 구독 주소를 문의하세요.

다운로드 오류를 피하려고 인증서 검증을 끄지 마세요. HTTPS 인증서 오류는 시스템 시간, 네트워크 환경, 서버 인증서를 확인해 해결해야 합니다. 설정 주소를 안전하지 않은 전송 방식으로 바꾸는 것은 해결책이 아닙니다.

‘파일’ 앱에서 로컬 YAML 가져오기

로컬 파일은 복구 가능한 사본을 보관하거나 구독 주소에 일시적으로 접근할 수 없을 때 설정을 옮기는 데 유용합니다. AirDrop, iCloud Drive 또는 신뢰할 수 있는 파일 전송 방법으로 .yaml 또는 .yml 파일을 iPhone의 ‘파일’ 앱에 저장할 수 있습니다.

  1. ‘파일’ 앱에서 대상 파일을 찾고, 웹페이지를 저장한 HTML 파일이나 아직 압축을 풀지 않은 파일이 아닌지 확인하세요.
  2. 클라이언트에서 설정 추가 메뉴를 열고 ‘파일에서 가져오기’를 선택한 다음 시스템 파일 선택기에서 파일을 찾습니다.
  3. 클라이언트가 공유를 통한 가져오기를 지원한다면 ‘파일’ 앱에서 파일을 길게 누르고 ‘공유’를 선택한 뒤 대상 클라이언트를 지정할 수도 있습니다.
  4. 가져온 뒤 해당 설정을 선택하고 노드와 정책 그룹이 있는지 확인하세요. 클라이언트가 파일 사본을 만들었다면 이후 원본 파일을 수정해도 클라이언트에 자동으로 반영되지 않는 경우가 많습니다.

YAML 계층 구조와 정책 참조

아래는 규칙 구조를 설명하기 위한 예시이며, 그대로 연결할 수 있는 완전한 구독 설정은 아닙니다. 도메인 규칙을 먼저 적용하고, 로컬 네트워크 주소는 직접 연결하며, 나머지 트래픽은 정책 그룹으로 보내는 구조입니다. ‘일상용 출구’라는 이름의 정책 그룹은 전체 설정에 있어야 합니다.

rules:
  - DOMAIN-SUFFIX,example.com,일상용 출구
  - IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
  - MATCH,일상용 출구

규칙은 위에서 아래로 확인하며, 처음 일치하는 항목이 출구를 결정합니다. 이후 규칙도 확인해야 하는 경우에는 MATCH를 앞에 두지 마세요. YAML 들여쓰기에는 공백을 사용하고 정책 그룹 이름과 참조 이름을 정확히 일치시켜야 합니다. 전각 콜론, 탭 문자 혼용, 이름 변경은 파싱이나 로드를 실패하게 할 수 있습니다.

설정에서 원격 규칙 세트도 참조한다면 로컬 YAML 가져오기가 끝난 뒤에도 해당 리소스를 다운로드하기 위해 네트워크 연결이 필요할 수 있습니다. ‘규칙 제공자 업데이트 실패’가 표시되면 같은 파일을 반복해서 가져오기보다 해당 URL과 클라이언트의 규칙 세트 형식 지원 여부를 확인하세요.

첫 연결 및 VPN 설정 승인

사용할 설정을 선택하고 정책 그룹에서 실제 노드를 지정한 뒤 클라이언트의 연결 스위치를 누르세요. 터널을 처음 시작하면 iOS에서 VPN 설정 추가를 확인하는 시스템 알림이 표시되는 경우가 많습니다. 안내에 표시된 앱 이름을 확인하고 ‘허용’을 누른 다음, 시스템 안내에 따라 암호나 생체 인증을 완료하세요.

이 권한은 클라이언트가 네트워크 터널을 만들도록 허용하는 것이며 루트 인증서를 자동으로 설치하지 않습니다. 일반적인 프록시 연결에는 HTTPS 복호화용 루트 인증서를 설치할 필요가 없습니다. 별도로 인증서 신뢰나 기기 관리 설정을 요구한다면 먼저 용도를 확인하세요.

  • 시스템 설정 확인: ‘설정’ → ‘일반’ → ‘VPN 및 기기 관리’ → ‘VPN’에서 추가된 VPN 설정을 확인할 수 있습니다. iOS 버전에 따라 메뉴 이름은 조금 다를 수 있습니다.
  • 터널 충돌 방지: 다른 VPN이나 VPN 기능을 사용하는 필터링 도구가 현재 연결을 대체하거나 충돌시킬 수 있습니다. 문제를 확인할 때는 활성 터널을 하나만 남기세요.
  • 권한 복구: 실수로 ‘허용 안 함’을 눌렀다면 클라이언트로 돌아가 연결을 다시 누르면 되는 경우가 많습니다. 설정이 손상됐다면 먼저 연결을 끊고 해당 VPN 설정을 삭제한 다음 클라이언트에서 다시 만들 수 있습니다.

데스크톱 클라이언트의 ‘시스템 프록시 켜기’ 단계를 그대로 따라 하지 마세요. iPhone의 Wi-Fi 수동 HTTP 프록시는 별도의 설정 방식이며, 특정 네트워크와 이를 지원하는 트래픽에만 적용됩니다. 클라이언트의 시스템 터널을 사용한다면 일반적으로 데스크톱 설정에 있는 7890 같은 로컬 포트를 Wi-Fi 설정에 추가할 필요가 없습니다.

프록시 연결 확인 및 자주 발생하는 문제

처음 연결을 확인할 때는 설정, 노드, 규칙, 출구를 각각 점검하세요. 지연 시간 테스트는 테스트 대상에 당시 접속할 수 있었는지만 보여 줍니다. 웹페이지, UDP 또는 모든 앱이 정상 작동한다는 것을 단독으로 증명하지는 않습니다. 지연 시간이 수십 밀리초인 노드도 실제 접속에서는 인증서, 프로토콜, 대상 사이트의 제한에 걸릴 수 있습니다.

  1. 활성 설정 확인: 현재 선택된 항목이 방금 가져온 파일인지 확인해 이전 설정을 테스트하는 일이 없도록 하세요.
  2. 정책 그룹 선택 확인: 대상 정책 그룹이 DIRECT, 사용할 수 없는 노드 또는 예상하지 못한 중첩 정책 그룹을 선택하고 있지 않은지 확인하세요.
  3. 새 연결 시작: 대상 웹페이지를 다시 열고 클라이언트의 연결 기록이나 로그에서 대상 도메인, 일치한 규칙, 출구 정책을 확인하세요.
  4. 출구 확인: 신뢰할 수 있는 IP 확인 페이지에서 연결 전후의 공인 IP 주소를 비교하세요. 출구만 확인하면 분기 라우팅 차이를 놓칠 수 있으므로 대상 요청의 규칙 기록도 함께 살펴봐야 합니다.
증상먼저 확인할 항목다음 단계
가져올 때 형식 오류가 표시됨링크가 로그인 페이지를 반환하는지, 설정 형식이 지원되는지 확인클라이언트에 맞는 구독을 다시 가져오고 오류가 표시된 항목을 기준으로 YAML 확인
노드 또는 정책 그룹이 없음노드 제공자 파일을 잘못 가져오지 않았는지, 해당 설정을 선택했는지 확인전체 설정을 가져오거나 클라이언트 요구 사항에 맞게 정책 그룹 구성
VPN은 연결됐지만 웹페이지 시간 초과현재 노드, DNS, 원격 규칙 다운로드 상태 확인정상 작동이 확인된 다른 노드로 바꾸고 구체적인 연결 오류 확인
일부 앱만 연결되지 않음대상 도메인 규칙, UDP 지원, 앱의 기존 연결 확인대상 앱을 다시 시작하고 로그를 대조해 항목별로 확인
네트워크를 전환한 뒤 연결이 끊김Wi-Fi 및 셀룰러 네트워크 권한, 새 네트워크에서 노드에 접속할 수 있는지 확인네트워크가 안정된 뒤 다시 연결하고 테스트 요청을 새로 보내기

DNS 문제를 확인할 때 모든 리졸버와 모드를 한꺼번에 바꾸지 마세요. 먼저 기존 설정을 기록하고 옵션을 하나씩 변경한 뒤 같은 대상에 다시 접속해 보세요. 데스크톱에서 작동하는 Fake-IP 옵션이 다른 iOS 클라이언트에서도 똑같이 구현된다고 보장할 수 없습니다. 앱이 실제 IP 주소에 의존한다면 해당 클라이언트의 필터링 방식과 공식 안내를 확인하세요.

구독 업데이트 및 이후 설정 관리

원격 설정은 업데이트할 수 있지만 로컬 파일은 대개 서비스 제공자의 변경 사항을 자동으로 반영하지 않습니다. 처음 가져온 뒤 수동으로 한 번 업데이트해 다운로드와 파싱이 모두 성공하는지 확인하고, 클라이언트가 지원하는 업데이트 간격을 설정하세요. 예를 들어 24시간마다 확인하도록 설정할 수 있지만, iOS의 백그라운드 작업은 시스템 제한을 받으므로 매일 특정 시각에 업데이트가 완료된다고 보장할 수는 없습니다.

  • 업데이트 전에 사본 보관: 규칙, DNS 또는 정책 그룹을 직접 추가한 경우에는 특히 중요합니다. 원격 새로 고침으로 직접 수정한 항목이 덮어써질 수 있습니다.
  • 용도에 따라 설정 구분: 일상용과 예비용 설정에 각각 이름을 지정하고 전환한 뒤 활성 설정과 노드 선택을 다시 확인하세요.
  • 업데이트 결과 확인: 마지막 업데이트 시각, 파싱 안내, 규칙 제공자 상태를 확인하세요. 다운로드 버튼의 로딩이 끝났는지만 보지 마세요.
  • 내보낸 파일 보호: YAML에는 서버 주소, 비밀번호, 토큰이 포함될 수 있습니다. 접근이 제한된 위치에 백업하고 문제 해결 정보를 공유하기 전에 민감한 내용을 가리세요.

설치, 가져오기, 권한 승인, 연결 확인을 마친 뒤 규칙과 DNS를 차근차근 조정하세요. 한 번에 한 종류의 설정만 변경하고 복구할 수 있는 사본을 보관하세요. 그러면 클라이언트 업데이트, 구독 변경, 네트워크 전환 후 문제가 어느 단계에서 발생했는지 더 빠르게 파악할 수 있습니다.

Clash 다운로드