왜 Android에서도 Clash 계열 클라이언트를 쓰는가

스마트폰이 사실상 주 인터넷 기기가 된 지금, 데스크톱에서만 프록시를 쓰는 건 절반짜리 솔루션입니다. 회사 Wi-Fi에서 막힌 서비스에 접근하거나, 해외 출장 중에 평소와 같은 앱 환경을 유지하거나, 스트리밍 서비스의 지역 제한을 우회하려면 스마트폰에도 동일한 수준의 설정이 필요합니다.

Clash 계열 클라이언트의 강점은 YAML 기반 설정 파일을 그대로 쓸 수 있다는 점입니다. 데스크톱에서 쓰던 구독 주소를 Android 앱에 그대로 입력하면 같은 노드 목록과 분류 규칙이 바로 동작합니다. 이미 구독 링크를 갖고 있다면 가져오기 절차도 2분이면 끝납니다. 구독 링크의 개념이 아직 낯설다면 구독 가져오기 튜토리얼을 먼저 읽고 돌아오면 전체 흐름이 훨씬 빠르게 이해됩니다.

물론 Android는 데스크톱과 환경이 다릅니다. 앱 권한, 배터리 최적화, VPN 인터페이스 제한 등 모바일 특유의 고려 사항이 있습니다. 이 글에서는 그런 차이점도 함께 짚어 드립니다.

ClashMeta for Android란 무엇인가

ClashMeta for Android(CMFA)는 Mihomo(구 Clash Meta) 코어를 기반으로 하는 오픈소스 Android 클라이언트입니다. 원래 Clash for Android(CFA)의 포크로 출발했지만 현재는 독립적으로 활발하게 개발되고 있습니다. Shadowsocks, Trojan, Hysteria2, VLESS, VMess 등 최신 프록시 프로토콜을 폭넓게 지원하며, 공급자(Provider) 기반 규칙 자동 갱신과 fake-ip DNS도 기본 지원합니다.

Android용 Clash 클라이언트는 여럿이지만, 2026년 현재 Mihomo 코어를 적극적으로 통합하면서 활발히 유지되는 클라이언트를 선택하는 것이 중요합니다. CMFA는 데스크톱 Clash 생태계와 동일한 YAML 구조를 사용하므로, 플랫폼을 옮겨도 설정을 거의 그대로 재활용할 수 있습니다. 프로토콜별 특성을 비교해 보고 싶다면 프록시 프로토콜 심층 비교 글도 함께 참고하세요.

APK 다운로드와 설치

CMFA는 Google Play에 등록되어 있지 않으므로 공식 GitHub Releases에서 APK를 직접 받아야 합니다.

  1. 브라우저에서 ClashMetaForAndroid GitHub Releases 페이지에 접속합니다.
  2. 최신 릴리스의 Assets 목록에서 기기에 맞는 APK를 선택합니다.
    • arm64-v8a: 2018년 이후 출시된 대부분의 스마트폰
    • armeabi-v7a: 구형 32비트 기기
    • x86_64: Android 에뮬레이터 또는 일부 인텔 태블릿
    기기 아키텍처를 모른다면 arm64-v8a가 거의 모든 최신 기기에 맞습니다.
  3. APK를 내려받기 전에 Android 설정 → 보안(또는 앱 설치) → 알 수 없는 출처의 앱 설치를 허용합니다. 설정 위치는 제조사와 Android 버전에 따라 다를 수 있습니다.
  4. 다운로드한 APK 파일을 열어 설치를 진행합니다.
  5. 첫 실행 시 VPN 연결 허용 팝업이 나타납니다. 허용해야 프록시가 정상 동작합니다.

설치 완료 후 앱을 열면 하단에 Profiles, Proxies, Logs, Settings 탭이 있는 메인 화면이 표시됩니다. 아직 구독 프로필이 없어서 연결 버튼을 눌러도 작동하지 않는 것이 정상입니다. 다음 단계에서 구독을 가져옵니다.

구독 링크 가져오기

구독 링크만 있으면 노드 목록과 분류 규칙이 담긴 설정 파일을 자동으로 내려받을 수 있습니다. 가져오기 절차는 다음과 같습니다.

  1. 하단 탭에서 Profiles를 누릅니다.
  2. 화면 오른쪽 위의 + 버튼을 누른 뒤 New Profile을 선택합니다.
  3. URL 탭으로 이동해 공급자에게서 받은 구독 주소를 붙여넣고, 프로필 이름을 원하는 대로 입력합니다.
  4. Save를 누르면 앱이 설정 파일을 자동으로 내려받습니다. 인터넷 연결 상태에 따라 몇 초 걸릴 수 있습니다.
  5. 프로필 목록에 방금 추가한 항목이 나타나면 탭 해서 활성화합니다. 체크 표시가 붙으면 현재 사용 중인 프로필입니다.

프로필을 길게 누르면 Update 옵션이 나타납니다. 공급자가 노드를 추가하거나 변경했을 때 이 버튼으로 최신 정보를 갱신할 수 있습니다. 자동 갱신 주기를 설정하고 싶다면 프로필 편집 화면에서 Auto Update Interval을 지정하면 됩니다.

파일 형태의 YAML을 가져오려면 New Profile → File 경로를 이용합니다. 데스크톱 Clash에서 내보낸 config.yaml을 그대로 Android에서 쓸 수 있어 환경 이전이 편합니다.

프록시 그룹과 노드 선택

구독이 활성화되면 하단 탭에서 Proxies를 눌러 프록시 그룹 목록을 확인할 수 있습니다. 공급자마다 그룹 구조가 다르지만 주로 세 가지 유형이 쓰입니다.

  • Selector(선택): 노드를 직접 고릅니다. 특정 지역 노드를 고정할 때 씁니다.
  • URLTest(자동 선택): 주기적으로 지연을 측정해 가장 빠른 노드를 자동으로 사용합니다.
  • Fallback(자동 전환): 앞 노드가 응답하지 않으면 다음 노드로 넘어갑니다. 안정성이 중요한 상황에 유리합니다.

그룹 이름 옆의 속도 아이콘을 누르면 노드별 지연 측정을 즉시 실행할 수 있습니다. 측정 결과를 보고 안정성과 속도를 함께 고려해 노드를 고르는 습관을 들이면 체감 품질이 올라갑니다.

Logs 탭을 열어두면 각 연결이 어느 그룹·노드로 나가는지 실시간으로 확인할 수 있습니다. 규칙이 예상대로 동작하는지 점검할 때 가장 빠른 방법입니다.

분류 규칙의 동작 원리

CMFA는 구독 파일의 rules 블록을 그대로 처리합니다. 별도 편집 없이도 공급자가 제공하는 규칙셋이 자동으로 적용됩니다. 규칙은 위에서 아래로 순서대로 평가되며 처음 매칭된 규칙이 적용됩니다.

규칙 유형예시동작
DOMAIN-SUFFIXgoogle.com,PROXY해당 도메인 및 하위 도메인을 프록시로
DOMAIN-SUFFIXnaver.com,DIRECT네이버는 직접 연결
GEOIPKR,DIRECT한국 IP 대역은 직접 연결
DOMAIN-KEYWORDyoutube,PROXY도메인에 youtube가 포함되면 프록시
MATCHPROXY위 규칙에 해당하지 않으면 프록시

Logs 탭 또는 Connections 탭에서 특정 도메인이 어떤 규칙에 매칭되어 어느 경로로 나가는지 실시간으로 확인할 수 있습니다. 특정 서비스가 예상과 다른 경로로 나간다면 프로필 YAML을 직접 편집해 해당 도메인에 맞는 규칙을 추가하세요. 예를 들어 ChatGPT 트래픽이 불안정하다면 DOMAIN-SUFFIX,openai.com,PROXY를 기존 규칙보다 앞에 배치하면 됩니다.

공급자가 제공하는 규칙셋은 대부분 rule-providers 방식으로 원격에서 불러옵니다. 정기적으로 갱신되므로 새로운 도메인도 자동으로 반영됩니다. 단, 너무 자주 갱신하면 배터리와 데이터를 더 소모하므로 하루 1회 정도가 적당합니다.

Enhanced Mode로 모든 앱 트래픽 처리하기

기본 시스템 프록시 설정은 HTTP/HTTPS 트래픽 위주로 처리합니다. 게임, UDP 기반 통신, 일부 앱처럼 시스템 프록시를 따르지 않는 경우 트래픽이 그냥 새어 나갑니다. Enhanced Mode를 활성화하면 VPN 인터페이스를 통해 기기의 모든 트래픽을 가로채 Clash 규칙에 따라 처리합니다.

  1. CMFA 하단 탭에서 Settings를 누릅니다.
  2. Override 또는 Behavior 섹션에서 Enhanced Mode를 찾아 활성화합니다.
  3. 또는 프로필 YAML에 직접 TUN 설정을 추가할 수도 있습니다.
  4. 홈 화면으로 돌아와 연결 버튼을 누르면 Android가 VPN 연결 허용 여부를 묻는 팝업을 표시합니다. 허용을 누릅니다.
  5. 상태 표시줄에 열쇠 아이콘(VPN 표시)이 나타나면 Enhanced Mode가 정상적으로 작동하는 것입니다.

Enhanced Mode를 켜면 기기 내 다른 VPN 앱과 동시에 실행할 수 없습니다. 다른 VPN을 쓰고 있다면 먼저 종료하세요. TUN 모드의 자세한 원리와 설정 예시는 TUN 모드 가이드에서 확인할 수 있습니다.

배터리 최적화에 의해 앱이 백그라운드에서 종료되는 것을 막으려면 Android 설정 → 앱 → CMFA → 배터리에서 제한 없음(Unrestricted)으로 설정하는 것을 권장합니다. 그렇지 않으면 화면을 끄고 일정 시간이 지나면 연결이 끊길 수 있습니다.

연결 테스트와 동작 확인

프로필을 활성화하고 연결 버튼을 누른 뒤 다음 방법으로 동작을 확인합니다.

  • 브라우저에서 평소에 접속이 안 되던 사이트에 들어가 정상 접속되는지 확인합니다.
  • Logs 탭을 열고 연결 시도가 어떤 규칙에 매칭되어 어느 노드로 나가는지 실시간으로 봅니다. DIRECT로 표시되어야 할 국내 트래픽이 PROXY로 나가거나, 반대로 해외 서비스가 DIRECT로 새어 나가면 규칙을 점검합니다.
  • 앱 내 외부 컨트롤러(External Controller)를 열면 연결된 프록시와 트래픽 통계를 보다 상세히 확인할 수 있습니다.

연결은 되지만 속도가 느리다면 Proxies 탭에서 URLTest 그룹의 노드를 지연이 낮은 것으로 수동 변경해 보세요. 일반적으로 ping이 100ms 이하이고 손실이 없는 노드가 안정적인 편입니다. 연결 오류가 계속된다면 문제 해결 가이드에서 구독 무효, 포트 충돌 등 일반적인 원인을 확인해 보세요.

배터리와 데이터 사용량 최적화

프록시 앱은 상시 백그라운드 실행이 필요하기 때문에 배터리와 데이터 사용에 주의해야 합니다. 몇 가지 설정으로 영향을 줄일 수 있습니다.

  • URLTest 간격 늘리기: 구독 YAML의 interval 값이 짧으면(예: 30초) 주기적으로 모든 노드에 핑을 보냅니다. 300~600초로 늘리면 배터리 소모를 상당히 줄일 수 있습니다.
  • rule-provider 갱신 주기 조정: 규칙셋을 너무 자주 내려받으면 데이터를 소모합니다. 하루 1회(86400초)가 일반적으로 적당합니다.
  • Wi-Fi 전용 갱신: 이동 데이터 환경에서는 수동으로 갱신하고, Wi-Fi 연결 시에만 자동 갱신되도록 설정하면 데이터 요금을 아낄 수 있습니다.
  • 앱별 프록시 우회(App Bypass): 금융 앱이나 국내 스트리밍 앱처럼 프록시가 필요 없는 앱은 CMFA 설정에서 제외하면 불필요한 터널링을 피할 수 있습니다.

자주 묻는 질문

구독을 가져왔는데 노드 목록이 비어 있습니다

구독 주소가 만료되었거나 형식이 달라진 경우가 대부분입니다. 공급자 홈페이지에서 최신 구독 주소를 다시 복사해 프로필을 새로 추가해 보세요. 주소는 맞는데 내려받기 자체가 실패한다면 앱이 인터넷에 접근할 수 있는 상태인지, 구독 주소에 특수문자가 올바르게 인코딩되어 있는지 확인하세요.

연결 버튼을 눌러도 VPN이 켜지지 않습니다

Android 설정에서 다른 VPN 앱이 항상 켜짐 상태로 등록되어 있으면 CMFA가 VPN 인터페이스를 가져오지 못합니다. Android 설정 → 네트워크 → VPN 목록에서 다른 앱의 항상 켜짐 설정을 해제하세요. 일부 기기는 관리자 앱이 VPN을 차단하기도 합니다.

배터리 소모가 너무 심합니다

URLTest 간격이 지나치게 짧게 설정되어 있거나, 로그 레벨이 DEBUG로 되어 있는 경우에 배터리를 과도하게 씁니다. 앞서 설명한 최적화 방법을 적용하고, 로그 레벨은 평소에 WARNING 이상으로 유지하세요.

CMFA를 찾을 수 없습니다. 대안이 있나요?

Mihomo 코어를 쓰는 다른 Android 클라이언트도 같은 YAML 구독을 그대로 사용할 수 있습니다. 검색 시 "Mihomo Android" 또는 "Clash Meta Android"로 찾으면 활발한 대안을 발견할 수 있습니다. 중요한 것은 Mihomo 코어 버전이 최신인지 확인하는 것입니다. 코어 버전 확인과 업데이트 방법은 코어 업그레이드 가이드를 참고하세요.

데스크톱에서 쓰던 구독을 그대로 쓸 수 있나요?

네, 완전히 동일한 구독 주소를 CMFA에 입력하면 됩니다. 같은 Mihomo 코어 기반이므로 노드와 분류 규칙이 그대로 동작합니다. 다만 일부 설정(예: 시스템 프록시 자동 설정, GUI 관련 설정)은 모바일에서 무시되거나 자동 조정됩니다.

마무리: Android에서 Clash의 진가

설정이 끝나고 나면 Android에서의 Clash 경험은 데스크톱과 거의 동일합니다. 데스크톱에서 잘 쓰던 구독과 규칙을 그대로 들고 다니면서, 앱별로 직접 연결과 프록시를 자유롭게 나눌 수 있습니다. URLTest 그룹이 자동으로 최적 노드를 골라주기 때문에 매번 수동으로 바꾸는 번거로움도 없습니다.

Android에 익숙해졌다면 Windows와 macOS는 Clash Verge Rev가 같은 수준의 경험을 제공합니다. 멀티플랫폼을 아우르는 통합 설정 환경을 원한다면, Mihomo 코어를 내장한 공식 클라이언트가 업데이트 관리부터 로그 확인까지 훨씬 수월합니다. → Clash를 무료로 다운로드하고 모바일과 데스크톱을 동시에 경험해 보세요