공식 자주 묻는 질문 답변

문제가 생겼나요?
여기에 답이 있습니다.

Clash / Mihomo 공식 FAQ로 설치 실패, 연결 시간 초과, 구독 가져오기 오류, TUN 모드 미작동, 규칙 불일치 등 고빈도 문제에 대한 공식 솔루션을 제공합니다.

설치 및 실행

클라이언트 다운로드, 실행 환경 및 최초 실행 관련 질문

Windows 설치 시 백신 프로그램이 바이러스라고 하는데 진짜인가요?

이는 오진이며 바이러스가 아닙니다. Clash Verge Rev, FlClash 등 오픈 소스 클라이언트는 비싼 코드 서명 인증서를 구매하지 않아 일부 백신이 이를 "알 수 없는 출처"로 표시합니다.

해결 방법: 설치 디렉토리를 백신 화이트리스트에 추가하거나 Windows 보안 센터 → 바이러스 및 위협 방지 → 제외 사항 → 폴더 추가를 진행하세요.

출처 불분명한 재패키징 버전을 피하기 위해 본 사이트의 다운로드 페이지에서만 설치 패키지를 받는 것이 좋습니다.
설치 패키지를 더블 클릭해도 아무 반응이 없고 프로그램이 안 열려요.

일반적인 원인 및 해결법:

  • WebView2 런타임 누락(Windows 10 사용자): Microsoft 공식 웹사이트에서 Microsoft Edge WebView2 런타임을 다운로드하여 설치하세요.
  • 백신 프로그램에 의한 차단: 백신의 검역소를 확인하고 파일을 복원한 후 화이트리스트에 추가하세요.
  • 경로에 한글 또는 특수 문자가 포함됨: 설치 패키지를 영문으로만 구성된 경로(예: C:\Apps)로 이동한 후 실행하세요.
  • 기존 버전의 잔류 프로세스 존재: 작업 관리자를 열어 모든 Clash 관련 프로세스를 종료한 후 다시 시도하세요.
macOS에서 "확인되지 않은 개발자가 배포했기 때문에 열 수 없습니다"라고 표시되나요?

이는 macOS Gatekeeper의 보안 경고입니다. 임시 해제 방법:

  • Finder에서 앱을 찾은 다음 우클릭 → 열기(더블 클릭하지 마세요)를 선택하고 팝업창에서 「열기」를 클릭합니다.
  • 또는 시스템 설정 → 개인정보 보호 및 보안에서 차단된 앱을 찾아 「확인 없이 열기」를 클릭합니다.
Apple Silicon(M 시리즈 칩) 사용자는 ARM64 버전을, Intel 사용자는 x64 버전을 다운로드하세요. 혼용 시 성능 저하나 실행 불가 문제가 발생할 수 있습니다.
Android 설치 시 "출처를 알 수 없는 앱" 또는 설치 차단 메시지가 표시되나요?

Android는 기본적으로 앱 마켓 이외의 APK 설치를 허용하지 않습니다. 휴대폰 설정 → 보안 → 출처를 알 수 없는 앱(또는 「알 수 없는 앱 설치」)에서 해당 브라우저 / 파일 관리자의 설치 권한을 허용해야 합니다. 설치 완료 후 이 옵션을 끌 수 있습니다.

일부 국산 ROM(MIUI / ColorOS 등)은 별도의 보안 센터에서 차단할 수 있습니다. 해당 설정에서 "순수 모드" 또는 "바이러스 검사"를 찾아 임시로 비활성화하세요.

iOS 설치 방법은? App Store에서 Clash가 검색되지 않나요?

Clash 관련 앱은 정책상의 이유로 중국 App Store에서 내려갔습니다. 한국, 미국 등 해외 Apple ID로 전환하여 Shadowrocket 또는 Stash를 다운로드해야 합니다.

  • 「설정 → 사용자 이름 → 미디어 및 구입 항목」에서 현재 Apple ID를 로그아웃합니다.
  • App Store를 열고 우측 상단 프로필 아이콘을 클릭하여 해외 Apple ID로 로그인합니다.
  • Shadowrocket($2.99) 또는 Stash(구독형)를 검색하여 구매합니다.
  • 다운로드 완료 후 다시 한국 계정으로 전환할 수 있으며, 이미 구매한 앱 사용에는 영향이 없습니다.

연결 및 프록시

노드 연결 실패, 속도 저하, 브라우저 프록시 관련 문제

클라이언트는 연결됨으로 표시되는데 브라우저에서 해외 사이트 접속이 안 되나요?

가장 일반적인 원인은 프록시 모드가 시스템 프록시로 올바르게 설정되지 않았기 때문입니다. 확인 단계:

  • 클라이언트의 「시스템 프록시」 스위치가 켜져 있는지 확인하세요. 커널만 실행 중이어서는 안 됩니다.
  • 프록시 모드가 「규칙(Rule)」 또는 「전역(Global)」인지 확인하세요. Direct(직접 연결) 모드는 프록시를 거치지 않습니다.
  • 클라이언트의 「프록시」 또는 「노드」 패널에서 사용 가능한 노드가 선택되었는지, 지연 시간이 timeout이 아닌 숫자로 표시되는지 확인하세요.
  • 클라이언트 내장 「연결 테스트」 기능(통상 google.com 핑 테스트)을 통해 노드 도달 가능 여부를 확인하세요.
모든 노드 지연 시간이 timeout으로 표시되고 연결이 안 되나요?

노드 전체 타임아웃은 대개 다음 중 하나의 원인입니다:

  • 구독 만료 또는 노드 무효화: 서비스 제공업체에 문의하여 구독을 갱신하세요.
  • 로컬 방화벽 차단: Windows Defender 방화벽 또는 제3자 보안 소프트웨어가 아웃바운드 연결을 차단하고 있습니다. Clash 프로세스를 허용 목록에 추가하세요.
  • 통신사 포트 차단: 노드 프로토콜이나 포트(예: 443, 8443)를 변경해 보세요.
  • 시스템 시간 오차: 일부 프로토콜(예: VMess)은 시스템 시간 오차가 90초 이내여야 합니다. 시스템 시간을 동기화한 후 다시 시도하세요.
노드를 전환했는데도 속도 변화가 없고 이전 노드를 계속 사용하나요?

이미 연결된 TCP 세션은 노드 전환 시 즉시 끊기지 않으며 이전 연결이 자연스럽게 닫힐 때까지(수초 내) 대기해야 합니다. 즉시 적용하려면:

클라이언트의 「연결(Connections)」 페이지에서 「모든 연결 닫기」를 클릭하면 새 요청이 새 노드를 사용합니다.

클라이언트를 종료한 후에도 브라우저에서 국내 사이트 접속이 안 되나요?

클라이언트가 비정상 종료되면서 시스템 프록시 설정을 정리하지 못해 프록시가 여전히 닫힌 포트를 가리키고 있을 수 있습니다.

  • Clash 클라이언트를 다시 열고 「시스템 프록시」 스위치를 끈 다음 정상적으로 종료하세요.
  • 또는 수동 정리: Windows → 설정 → 네트워크 및 인터넷 → 프록시 → 「프록시 서버 사용」 끄기. macOS → 시스템 설정 → 네트워크 → 고급 → 프록시에서 모든 체크 해제.
프록시를 켰는데 왜 게임이나 명령줄 도구에는 적용되지 않나요?

시스템 프록시(HTTP/HTTPS/SOCKS5)는 브라우저와 같이 시스템 프록시 설정을 읽을 수 있는 프로그램에만 영향을 줍니다. 대부분의 게임, 명령줄 도구(git, curl, pip) 및 UDP 트래픽은 시스템 프록시를 거치지 않습니다.

해결 방법: TUN 모드를 활성화하여 네트워크 계층에서 모든 트래픽(TCP/UDP 포함)을 제어하세요. 게임과 명령줄 도구 모두 프록시가 적용됩니다. 자세한 내용은 TUN 모드 튜토리얼을 참조하세요.

구독 관리

구독 링크 가져오기, 업데이트 실패, 형식 호환성 관련 문제

구독 링크를 가져온 후 "해석 실패" 또는 노드 목록이 비어 있나요?

일반적인 원인:

  • 구독 형식 불일치: 일부 업체는 V2Ray / Surge 형식을 제공하며, Clash는 YAML 형식이 필요합니다. 구독 변환 도구(Sub-Converter)를 통해 Clash 형식으로 변환하세요.
  • 링크 만료: 구독 URL에는 유효 기간이 있습니다. 업체 제어판에서 구독 링크를 다시 생성하세요.
  • 구독 주소 접속 불가: 구독 서버가 해외에 있는 경우 업데이트 시 임시로 직접 연결이나 다른 프록시를 사용하거나 「프록시 업데이트」 기능을 사용하세요.
구독 수동 업데이트는 되는데 자동 업데이트가 안 되나요?

자동 업데이트를 위해서는 클라이언트가 백그라운드에서 지속적으로 실행 중이어야 합니다. 다음 설정을 확인하세요:

  • 클라이언트에 「윈도우 시작 시 실행」이 설정되어 있고 시스템에 의해 백그라운드 프로세스가 종료되지 않았는지 확인하세요.
  • Android는 시스템의 「배터리 최적화」를 꺼야 합니다(배터리 → Clash 앱 → 제한 없음).
  • iOS 시스템은 백그라운드 업데이트를 제한하므로 사용 전 매번 수동으로 최신 구독을 가져오는 것이 좋습니다.
여러 업체 구독을 하나의 설정 파일로 합치려면 어떻게 하나요?

Clash는 구독 병합(Profile Merge) 기능을 통해 여러 구독을 통합할 수 있습니다:

  • 구독 변환 도구(예: sub-web)를 사용하여 여러 구독 URL을 동시에 입력하고 병합된 Clash YAML을 출력합니다.
  • 또는 클라이언트의 「재작성(Override)」 기능에서 여러 원격 설정 조각을 참조(YAML Merge)합니다.
병합된 노드 수가 너무 많으면(>300) 지연 시간 테스트가 느려질 수 있으므로 자주 사용하는 노드 위주로 유지하는 것이 좋습니다.

TUN 모드

전역 트래픽 제어, 가상 네트워크 카드, 권한 및 충돌 문제

TUN 모드를 켜려면 어떤 권한이 필요한가요?

TUN 모드는 가상 네트워크 카드를 생성하기 위해 관리자 / root 권한이 필요합니다:

  • Windows: Clash Verge Rev 아이콘 우클릭 → 관리자 권한으로 실행하거나 설정에서 「관리자 모드」를 활성화하여 자동 권한 상승을 설정하세요.
  • macOS: 처음 활성화 시 시스템 권한 요청 팝업이 뜨면 허용을 클릭하고 로그인 암호를 입력하세요.
  • Android / iOS: 앱이 VPN 권한을 요청하며, 허용하면 시스템이 자동 처리합니다(root 불필요).
  • Linux: sudo로 커널을 실행하거나 setcap cap_net_admin+ep 설정을 구성하세요.
TUN 활성화 후 네트워크가 완전히 끊기고 인터넷이 안 되나요?

TUN은 모든 네트워크 트래픽을 가로채므로 설정이 잘못되면 루프 또는 DNS 무한 루프가 발생할 수 있습니다.

  • 설정 파일에서 dns.enable: true이고 dns.enhanced-modefake-ip 또는 redir-host로 설정되어 있는지 확인하세요.
  • tun.dns-hijackany:53이 포함되어 있는지 확인하여 DNS가 가로채지지 않아 발생하는 해석 실패를 방지하세요.
  • 임시로 TUN 모드 끄기: 클라이언트에서 스위치를 끄면 네트워크가 즉시 복구되어야 합니다. 그래도 안 되면 네트워크 어댑터를 재시작하거나 기기를 재부팅하세요.
기본 설정에 문제가 없는지 먼저 「규칙 모드」에서 안정적으로 실행되는지 확인한 후 TUN을 켜는 것이 좋습니다.
TUN 모드가 다른 VPN 소프트웨어와 충돌하면 어떻게 하나요?

TUN과 VPN은 모두 가상 네트워크 카드를 통해 시스템 트래픽을 가로채므로 동시 활성화 시 반드시 충돌이 발생합니다. 둘 중 하나만 선택해야 합니다.

기업용 VPN(예: Cisco AnyConnect)을 동시에 사용해야 하는 경우: 기업용 VPN 주소 대역을 Clash의 직접 연결 규칙(RULE-SET 또는 IP-CIDRDIRECT)에 추가하고, TUN을 끈 다음 시스템 프록시 모드로 대체하여 사용하세요.

성능 및 속도

높은 지연 시간, 속도 저하, CPU 점유율 과다 관련 문제

노드 지연 시간은 매우 낮은데 실제 인터넷 속도가 매우 느린가요?

지연 시간(Latency) ≠ 속도(Throughput)입니다. 낮은 지연 시간은 응답이 빠름을 의미할 뿐이며, 실제 대역폭은 다음 요인의 영향을 받습니다:

  • 제공업체 속도 제한: 트래픽이 패키지 할당량을 초과하여 속도가 제한된 경우 업체에 문의하세요.
  • 노드 과부하: 피크 시간대에 노드 접속 인원이 너무 많은 경우 같은 지역의 부하가 낮은 노드로 변경해 보세요.
  • 로컬 네트워크 병목: Wi-Fi 신호가 약하거나 인터넷 회선 자체의 대역폭이 부족한 경우 유선 네트워크로 테스트해 보세요.
  • 프로토콜 오버헤드: 일부 프로토콜(예: trojan-go)이 VMess보다 효율적일 수 있으므로 전환을 시도해 보세요.
Clash 프로세스의 CPU 점유율이 높고 기기 발열이 심한가요?

높은 CPU 점유율은 대개 다음 원인으로 발생합니다:

  • 규칙 세트 과다: 구독에 수만 개의 규칙이 포함된 경우 매칭 효율이 떨어집니다. 규칙 세트를 간소화하거나 rule-providers 지연 로딩을 사용하세요.
  • DNS 요청 폭주: 여러 DNS 서버가 설정되어 있고 타임아웃이 긴 경우 nameserver 수를 줄이거나 dns.cache를 활성화하세요.
  • TUN 모드 + 대량의 UDP: 화상 회의나 게임에서 대량의 UDP가 발생하는 것은 정상적인 현상이나, TUN MTU를 적절히 낮추어 완화할 수 있습니다.
  • 로그 레벨 과다: 로그 레벨을 debug에서 info 또는 warning으로 변경하세요.
가장 빠른 노드를 선택하는 방법은? 자동 속도 측정 기능이 있나요?

Clash에는 여러 가지 자동 선택 전략이 내장되어 있습니다:

  • url-test: 정기적으로 모든 노드의 속도를 측정하여 지연 시간이 가장 낮은 노드를 자동으로 선택합니다. 전략 그룹에서 type: url-test로 설정하세요.
  • fallback: 기본 노드를 사용할 수 없을 때 자동으로 예비 노드로 전환합니다.
  • load-balance: 여러 노드 간에 부하를 분산하여 큰 대역폭이 필요한 환경에 적합합니다.

「프록시」 패널에서 수동으로 「속도 측정」을 실행하여 노드 가용성을 확인한 후 url-test 자동 선택을 구성하는 것이 좋습니다.

고급 설정

YAML 설정, 규칙, DNS, 재작성 등 고급 설정 문제

설정 파일에 YAML 해석 오류가 발생하면 어떻게 확인하나요?

YAML은 들여쓰기에 매우 민감합니다. 일반적인 오류:

  • 공백 대신 탭(Tab)을 사용한 경우 — YAML은 공백만 허용합니다.
  • 영문 콜론 : 대신 한글 콜론 을 사용하거나 전각 따옴표를 사용한 경우.
  • 문자열 값에 특수 문자(: # @)가 포함되어 있는데 따옴표로 감싸지 않은 경우.
  • 목록 항목의 -와 상위 필드의 들여쓰기가 일치하지 않는 경우.

VS Code + YAML 플러그인 또는 온라인 YAML 검증 도구(yaml.lint)를 사용하여 설정을 확인하는 것을 추천합니다.

특정 앱이나 도메인을 프록시 없이 직접 연결(Direct)하려면 어떻게 하나요?

설정 파일의 rules 섹션에 직접 연결 규칙을 추가하세요. 규칙 우선순위는 위에서 아래로 적용되므로 일반 규칙보다 먼저 작성해야 합니다.

도메인별 직접 연결: DOMAIN-SUFFIX,example.com,DIRECT
IP 대역별 직접 연결: IP-CIDR,192.168.0.0/16,DIRECT
프로세스 이름별 직접 연결(데스크톱 전용): PROCESS-NAME,WeChat,DIRECT

클라이언트의 「재작성(Override)」 기능을 사용하여 YAML을 직접 편집하지 않고도 그래픽 인터페이스에서 규칙을 추가할 수 있습니다.

fake-ip 모드와 redir-host 모드의 차이점은 무엇인가요?

fake-ip: DNS가 가상 IP(198.18.x.x)를 반환하고, 도메인 정보가 연결과 함께 원격 서버로 전달되어 해석됩니다. 지연 시간이 짧고 DNS 누출이 적어 권장되는 모드입니다.

redir-host: 로컬에서 실제 DNS 해석을 먼저 수행한 후 IP 매칭 규칙에 따라 전달합니다. 호환성은 좋지만 DNS 누출 위험이 있어 정확한 IP 규칙 매칭이 필요한 경우에 적합합니다.

fake-ip 모드에서는 실제 로컬 DNS에 의존하는 일부 앱(예: 일부 기업 SSO)이 정상적으로 작동하지 않을 수 있습니다. 이 경우 해당 도메인을 fake-ip-filter 목록에 추가해야 합니다.
Yacd / MetaCubeX와 같은 외부 대시보드를 통해 Clash를 관리하려면 어떻게 하나요?

Clash 커널은 RESTful API를 제공합니다. 설정 파일에서 이를 활성화하면 호환되는 모든 패널에서 제어할 수 있습니다.

config.yaml에 다음 내용을 추가하세요:

external-controller: 127.0.0.1:9090
secret: your_password(선택 사항)
external-ui: /path/to/dashboard(로컬 UI 디렉토리, 선택 사항)

설정 후 http://127.0.0.1:9090/ui에 접속하여 대시보드를 열거나, 온라인 버전 Yacd(http://yacd.haishan.me)를 사용하여 API 주소를 입력하고 연결하세요.

질문을 찾을 수 없나요?

전체 설정 문서를 확인하거나 커뮤니티에 도움을 요청하세요.