Clash 자주 묻는 질문과 문제 해결
구독 가져오기와 모드 선택부터 TUN, DNS, 노드 연결까지 문제 발생 지점에 따라 단계별로 점검하세요. 이 페이지는 4개 범주, 16개의 자주 묻는 문제를 정리했으며 각 답변에서 실행 가능한 판단 순서를 우선 안내합니다.
기초 개념
먼저 커널, 클라이언트, 프록시 모드, 트래픽 가로채기 방식을 구분하세요. 이 경계를 이해하면 문제가 발생했을 때 화면 설정, 설정 파일, 운영체제 네트워크 중 어디를 확인해야 할지 쉽게 판단할 수 있습니다.
Clash, mihomo 커널과 그래픽 클라이언트는 어떤 관계인가요?
mihomo는 설정을 읽고 규칙을 매칭하며 프록시 연결을 수립하는 커널입니다. ClashX, Clash Verge Rev 같은 그래픽 클라이언트는 커널 위에서 구독 관리, 정책 전환, 시스템 프록시 설정 기능을 제공합니다. 문제를 점검할 때는 화면 설정과 커널 실행 상태를 구분해야 합니다. 화면이 열린다고 커널이 실행 중이라는 뜻은 아니며, 커널이 실행 중이어도 시스템 트래픽이 커널로 전달된다는 보장은 없습니다.
규칙, 전역, 직접 연결 모드는 어떻게 다른가요?
규칙 모드는 설정의 rules를 위에서 아래로 적용해 도메인, IP 또는 규칙 집합을 매칭하며 일상적인 사용에 적합합니다. 전역 모드는 가로챌 수 있는 연결을 하나의 정책 그룹으로 전달해 노드를 임시로 확인할 때 유용합니다. 직접 연결 모드는 트래픽이 프록시를 우회하게 합니다. 연결 문제를 점검할 때는 잠시 전역 모드로 테스트해 보세요. 전역 모드는 작동하지만 규칙 모드가 작동하지 않는다면 규칙 순서, 정책 그룹 선택, 규칙 집합 로드 상태를 중점적으로 확인해야 합니다.
구독 링크와 로컬 설정 파일은 어떻게 다른가요?
구독 링크는 서버가 설정을 반환하며 클라이언트가 지정된 주기에 따라 다시 가져올 수 있습니다. 로컬 설정 파일은 기기에 저장되므로 수정해도 원격에서 자동으로 덮어쓰지 않습니다. 구독은 노드 목록 관리에 적합하고, 로컬 오버라이드는 DNS, TUN 또는 사용자 지정 규칙을 추가할 때 유용합니다. 구독으로 생성된 임시 파일을 직접 편집하면 다음 업데이트에서 교체될 수 있으므로, 장기적인 수정은 클라이언트가 지원하는 오버라이드 또는 병합 기능에 적용하세요.
시스템 프록시와 TUN 모드 중 무엇을 선택해야 하나요?
시스템 프록시는 애플리케이션이 운영체제의 프록시 설정을 읽어야 작동합니다. 브라우저와 대부분의 데스크톱 프로그램은 사용할 수 있지만 일부 게임, 명령줄 프로그램, 직접 연결이 고정된 앱은 우회할 수 있습니다. TUN 모드는 가상 네트워크 어댑터를 통해 네트워크 계층에서 더 넓은 범위의 트래픽을 가로채며, 관리자 권한과 올바른 DNS 설정이 필요합니다. 일반적인 웹 사용에는 먼저 시스템 프록시를 사용하고, 더 많은 프로그램의 트래픽을 처리해야 할 때 TUN을 활성화하세요.
설치 및 설정
이 범주에서는 최초 가져오기, 구독 업데이트, 시스템 권한 승인, Windows 앱 루프백을 다룹니다. 한 번에 하나의 설정만 변경하고 각 단계 후 커널 상태와 로그 변화를 확인하는 것이 좋습니다.
구독을 가져온 뒤 노드가 보이지 않는 이유는 무엇인가요?
먼저 구독 업데이트 결과와 커널 로그를 확인해 서버가 로그인 페이지, 안내 문구 또는 빈 응답이 아닌 Clash가 인식할 수 있는 YAML 설정을 반환하는지 확인하세요. 그런 다음 설정에 proxies, proxy-providers, proxy-groups가 존재하는지 점검합니다. 노드가 provider 안에 있다면 provider가 정상적으로 다운로드되었는지도 확인해야 합니다. 문제가 있는 설정을 삭제하기 전에는 이전에 작동하던 설정으로 전환해 현재 연결이 동시에 끊기지 않도록 하세요.
Clash 구독 업데이트 실패는 어떻게 해결하나요?
먼저 브라우저에서 구독 주소에 접속할 수 있는지 확인한 뒤, 링크가 잘렸거나 만료되었거나 불필요한 공백이 들어갔는지 점검하세요. 현재 네트워크에서 구독 서버에 직접 연결할 수 없다면 작동하는 설정으로 먼저 연결한 다음 업데이트를 실행하세요. 클라이언트에 구독 업데이트용 프록시가 설정되어 있는지도 확인할 수 있습니다. 오류 로그에 시간 초과가 나타나면 네트워크 경로를, 상태 코드 오류가 나타나면 구독 권한과 서버 상태를 확인해야 합니다.
TUN을 켤 때 권한 부족 메시지가 표시되면 어떻게 해야 하나요?
Windows에서는 관리자 권한으로 관련 서비스를 시작하고 가상 네트워크 어댑터 드라이버가 정상적으로 설치되었는지 확인해야 합니다. macOS에서는 네트워크 확장 또는 보조 서비스 설치를 요청하는 경우가 많으므로 시스템 설정에서 권한을 승인하세요. Linux에서 TUN 장치를 만들려면 일반적으로 root 권한 또는 CAP_NET_ADMIN 권한이 필요합니다. 권한을 승인한 뒤에도 실패한다면 다른 가상 네트워크 어댑터 프로그램을 종료하고 클라이언트를 다시 시작한 다음, 로그에서 드라이버·라우팅·DNS 초기화 중 어느 단계에서 실패했는지 확인하세요.
Windows 스토어 앱에서 프록시를 사용할 수 없을 때 UWP 루프백은 어떻게 설정하나요?
일부 UWP 앱은 로컬 루프백 격리 제한으로 인해 127.0.0.1에서 수신 대기 중인 Clash 프록시 포트에 직접 연결하지 못합니다. 클라이언트에서 제공하는 UWP 루프백 도구를 사용해 대상 앱의 루프백 예외를 선택하고 저장한 뒤 앱을 다시 시작하세요. 실제로 프록시가 필요한 앱만 처리하면 됩니다. TUN을 활성화해 트래픽이 정상적으로 가로채지고 있다면 일반적으로 루프백 예외를 다시 설정할 필요가 없습니다.
활용 팁
정책 그룹, 지연 시간 테스트, Fake-IP, 여러 구독 병합은 모두 설정 로직과 관련됩니다. 변경하기 전에 작동하는 설정을 보존하고 로그와 실제 연결 결과로 검증하세요. 화면에 표시되는 단일 상태만 보고 판단하지 마세요.
정책 그룹의 select, url-test, fallback은 어떻게 선택하나요?
select는 사용자가 노드를 직접 지정하므로 결과가 안정적이고 제어하기 쉽습니다. url-test는 설정된 간격마다 후보 노드를 테스트해 응답이 가장 빠른 항목을 선택하므로 일상적인 자동 선택에 적합합니다. fallback은 순서대로 사용 가능한 첫 번째 노드를 선택하고 현재 노드가 실패하면 다음 노드로 전환하므로 연속성이 중요한 상황에 유용합니다. 자동 그룹의 결과는 테스트 주소, interval, tolerance에 따라 달라지며 모든 웹사이트의 실제 속도와 같지는 않습니다.
클라이언트에 표시되는 노드 지연 시간이 실제 속도와 다른 이유는 무엇인가요?
지연 시간 테스트는 보통 지정된 URL까지의 연결 또는 응답 시간만 측정합니다. 이는 특정 시점의 소량 트래픽 왕복 시간을 보여줄 뿐 대역폭, 패킷 손실률, 장시간 연결의 안정성을 나타내지는 않습니다. 클라이언트마다 테스트 주소, 시간 초과 기준, 연결 재사용 방식도 다를 수 있습니다. 노드를 선택할 때는 여러 차례의 연속 테스트와 실제 웹페이지 로딩 및 다운로드 성능을 함께 판단하고, 한 번 측정된 최저 지연 시간만 기준으로 삼지 마세요.
Fake-IP 모드에서 도메인 이름 해석 오류가 발생하면 어떻게 해야 하나요?
먼저 DNS 요청이 실제로 Clash에서 처리되는지 확인하고 enhanced-mode, nameserver, fallback 등의 필드가 모두 올바르게 설정되어 있는지 점검하세요. 로컬 네트워크 장치, 게임 플랫폼 또는 실제 IP에 의존하는 프로그램은 Fake-IP와 맞지 않을 수 있으므로 해당 도메인을 fake-ip-filter에 추가할 수 있습니다. 로그에 해석 실패가 계속 나타난다면 업스트림 DNS의 연결 가능성을 각각 테스트하고, 다른 암호화 DNS나 브라우저 보안 DNS, 로컬 방화벽이 현재 설정을 우회하고 있지 않은지도 확인하세요.
여러 구독을 사용자 지정 규칙을 덮어쓰지 않고 병합하려면 어떻게 해야 하나요?
먼저 클라이언트가 제공하는 설정 병합, 오버라이드 또는 스크립트 기능을 사용하세요. 원격 구독은 노드 소스로, 로컬 파일은 규칙·DNS·정책 그룹을 보완하는 계층으로 구성하면 됩니다. 병합할 때 정책 그룹이 참조하는 노드 이름이나 provider 이름이 실제로 존재하는지 확인하고, 같은 이름의 필드가 어떤 순서로 덮어써지는지도 살펴보세요. 변경할 때마다 먼저 설정을 검증한 뒤 새 설정으로 전환해 YAML 들여쓰기 오류나 중복 키로 커널 로드가 거부되는 일을 방지하세요.
문제 해결
먼저 문제의 범위를 판단하세요. 단일 노드인지, 특정 앱인지, 현재 설정인지, 아니면 모든 네트워크 연결인지 확인합니다. 범위를 좁힌 뒤 로그에 나타난 시간 초과, 해석 오류, 권한 오류, 형식 오류를 순서대로 처리하세요.
노드가 사용 가능으로 표시되는데 연결 시간이 초과되면 어떻게 해야 하나요?
먼저 같은 정책 그룹의 다른 노드로 전환해 문제가 단일 노드인지 그룹 전체의 연결 실패인지 확인하세요. 그런 다음 기기 시간이 정확한지, 네트워크가 해당 프로토콜을 제한하지 않는지, 노드 주소와 포트에 연결할 수 있는지 점검합니다. 로그의 dial tcp timeout은 대개 대상 주소에 도달할 수 없거나 경로가 차단된 경우를 의미하며, TLS 오류가 발생하면 시스템 시간·도메인·전송 매개변수를 확인해야 합니다. 테스트할 때는 중복 실행 중인 프록시 클라이언트를 종료해 포트와 라우팅이 서로 간섭하지 않도록 하세요.
브라우저에서는 프록시가 되지만 터미널에서 시스템 프록시를 사용하지 않을 때는 어떻게 해야 하나요?
많은 명령줄 프로그램은 데스크톱 시스템 프록시를 자동으로 읽지 않습니다. 도구에 맞게 HTTP_PROXY, HTTPS_PROXY 또는 ALL_PROXY 환경 변수를 설정하고 포트를 Clash가 실제로 수신 대기 중인 mixed-port, port 또는 socks-port로 변경하세요. 설정 후 현재 터미널에서 환경 변수를 확인하고 curl로 테스트 주소에 접속해 보세요. 한 명령에서만 프록시를 사용하려면 해당 명령에 환경 변수를 임시로 지정해 패키지 관리자나 로컬 네트워크 연결에 영향을 주지 않도록 할 수 있습니다.
구독이 갑자기 만료되었거나 잘못된 설정을 반환하면 어떻게 해야 하나요?
먼저 이전에 작동하던 설정을 보존하고 반복해서 덮어쓰지 마세요. 브라우저로 구독 주소에 접속해 권한 안내, 만료 정보, 웹페이지 내용 또는 형식이 완전하지 않은 YAML이 반환되는지 확인하고, 기기 시간과 구독 계정 상태도 점검하세요. 클라이언트에서 파싱 오류가 표시되면 로그에서 구체적인 줄 번호를 확인하고 들여쓰기, 중복 키, 현재 커널에서 지원하지 않는 필드를 중점적으로 살펴보세요. 서버가 복구될 때까지는 캐시된 설정을 계속 사용할 수 있습니다.
Clash GeoIP 또는 규칙 집합 업데이트 실패는 어떻게 해결하나요?
먼저 로그에서 실패한 항목이 GeoIP 데이터베이스인지, GeoSite 데이터베이스인지, 원격 rule-provider인지 확인하세요. 각각 다운로드 주소와 업데이트 절차가 다릅니다. 저장 디렉터리에 쓰기 권한이 있는지, 디스크 공간이 충분한지, 현재 네트워크에서 데이터 소스에 접근할 수 있는지 점검하세요. 업데이트 중에는 기존 파일을 바로 삭제하지 마세요. 새 파일이 완전히 다운로드되지 않았다면 클라이언트를 종료한 뒤 해당 임시 파일을 정리하고 다시 시작해 업데이트를 재실행하세요.