클라이언트, 코어, 설정 출처를 구분해 이해하세요. 문제가 생기면 먼저 해당 동작을 담당하는 구성 요소를 확인하고 알맞은 문서와 문제 해결 방법을 찾아보세요.
CLIENT / CORE
Clash, mihomo와 클라이언트의 관계
Clash 생태계는 하나의 앱이 일괄적으로 업데이트되는 구조가 아닙니다. 과거의 Clash 코어와 이후 파생 프로젝트, 여러 GUI 클라이언트는 각각 다른 범위에서 배포 및 유지 관리됩니다. mihomo는 이 생태계에서 계속 개발 중인 코어 프로젝트이며, 많이 쓰이는 데스크톱 클라이언트는 코어에 설정 관리, 프록시 전환, 시스템 연동 인터페이스를 제공합니다. 화면이 비슷하더라도 코어 기능과 기본 설정까지 모두 같은 것은 아닙니다. 설정을 옮길 때는 실제로 실행 중인 코어와 클라이언트 문서를 기준으로 확인하세요.
GUI 클라이언트의 스위치는 코어 설정이나 운영체제 상태에 영향을 주는 경우가 많습니다. 예를 들어 시스템 프록시 스위치는 시스템의 프록시 설정을 바꾸고, TUN 스위치는 가상 네트워크 인터페이스와 라우팅에 영향을 줍니다. 일부 클라이언트는 실행 시 최종 설정을 생성하므로 디스크의 YAML 파일을 수정해도 화면에서 즉시 사용되지 않을 수 있습니다. 설정이 적용됐는지 판단하려면 현재 선택된 설정, 오버라이드 결과, 다시 불러온 로그를 함께 확인하세요. 파일 저장만 성공했다고 결론 내리면 안 됩니다.
오픈 소스 코드를 보면 구현 방식과 설정 변경 과정을 확인할 수 있지만, 일반 사용자가 앱을 설치할 때 저장소를 직접 이용할 필요는 없습니다. 처음 사용할 때는 다운로드 페이지에서 시스템에 맞는 클라이언트를 선택하면 됩니다. 하위 단계의 동작을 확인해야 할 때 mihomo 프로젝트 문서와 릴리스 정보 또는 관련 코드를 살펴보세요. 이 사이트는 한국어로 정보를 확인하는 경로와 옵션 설명을 제공하며, 서로 다른 클라이언트의 기능을 하나의 제품처럼 취급하거나 프로젝트 관리자를 대신해 호환성을 보장하지 않습니다.
HISTORY / MIGRATION
지원 종료 후 이전 여부 판단
Clash for Windows는 지원이 종료된 뒤에도 기존 환경에서 실행될 수 있지만, 이것만으로 새 운영체제나 프로토콜, 설정 옵션을 계속 지원한다고 볼 수는 없습니다. 이전할 클라이언트를 선택할 때는 유지 관리 상태, 사용 코어, 기기 아키텍처, 기존 설정의 기능 요구 사항을 확인하세요. 이름이 비슷하다는 이유만으로 프로그램을 바로 바꾸면 시스템 서비스, 설정 디렉터리, 시작 프로그램의 차이를 놓치기 쉽고 프록시 프로세스가 중복 실행될 수도 있습니다.
이전 전에 현재 설정을 내보내거나 백업하고 로컬 수신 포트, 사용 중인 프록시 그룹, 사용자 규칙을 기록하세요. 새 클라이언트를 처음 실행한 뒤에는 설정을 가져오되 모든 트래픽 처리 기능을 바로 켤 필요는 없습니다. 문법 검사가 끝나면 테스트 대상을 하나 정해 연결이 클라이언트에 표시되는지 확인하고 적용 규칙과 실제 출구를 살펴보세요. 이 연결이 검증된 후에 오버라이드, 로컬 네트워크 연결, TUN 등의 설정을 옮기세요.
포트가 이미 사용 중이라면 먼저 이전 클라이언트나 백그라운드 서비스가 계속 포트를 점유하고 있는지 확인한 다음 프로세스를 종료할지 포트를 바꿀지 결정하세요. 충돌을 해결하려고 기존 설정 디렉터리를 바로 삭제하지 마세요. mixed-port를 변경한 뒤에는 프록시 주소를 수동으로 설정한 앱도 함께 수정해야 합니다. 그렇지 않으면 코어는 정상적으로 시작되어도 앱은 계속 기존 포트에 연결합니다. 자주 발생하는 차이는 FAQ를 먼저 확인하고, 구체적인 작업 순서는 Clash 사용 가이드를 참고하세요.
SOURCE / PRIVACY
설정 출처와 공유 범위
코드가 오픈 소스라는 것은 구현을 확인할 수 있다는 뜻이지, 아무 구독이나 변환 서비스, 네트워크 출구를 신뢰해도 된다는 의미는 아닙니다. 클라이언트, 설정 제공자, 출구 서비스는 각각 다른 역할을 하며 클라이언트를 다운로드해도 원격 서비스가 자동으로 제공되지는 않습니다. 구독을 추가하기 전에 출처와 용도를 확인하고 설정에 어떤 프록시, 규칙, 상위 DNS 서버가 포함되어 있는지 파악하세요. 출처를 알 수 없는 완전한 설정은 트래픽 경로를 바꿀 수 있으므로 가져온 뒤에도 주요 옵션과 프록시 그룹을 확인해야 합니다.
구독 링크에는 접속 정보가 포함될 수 있으며 설정 파일에도 계정, 비밀번호, 전용 서버 정보가 들어갈 수 있습니다. 도움을 요청할 때는 클라이언트 이름, 운영체제, 오류 메시지, 민감한 정보를 삭제한 최소한의 설정만 제공하세요. 전체 설정 파일을 그대로 올리지 마세요. 스크린샷도 주소 표시줄, QR 코드, 로그에 민감한 정보가 없는지 확인해야 합니다. 규칙 문제를 설명할 때는 대개 규칙 순서와 관련 프록시 그룹 이름, 대상 연결에 적용된 결과만 있으면 충분합니다.
문제를 확인할 때는 테스트 조건을 가능한 한 일정하게 유지하세요. 먼저 대상 하나, 트래픽 처리 방식 하나, 출구 하나를 정한 뒤 DNS, 규칙, 연결 결과를 관찰하세요. 구독, 노드, 모드, DNS 방식을 한꺼번에 바꾸면 접속이 복구돼도 원인을 알아내기 어렵습니다. 작동하는 기준 설정을 보존하고 항목별로 바꾸며 결과를 기록하면 출처를 알 수 없는 옵션을 잔뜩 복사하는 것보다 장기적으로 관리하기 쉽습니다. 회사 네트워크나 관리 대상 기기를 사용하는 경우 해당 환경의 네트워크 사용 규칙도 따라야 합니다.
UPDATE / VERIFICATION
프로그램 업데이트와 설정 업데이트 구분
클라이언트, 코어, 구독, 규칙 리소스 업데이트는 각각 별개의 과정입니다. 앱을 업데이트해도 원격 구독이 갱신되는 것은 아니며, 구독을 업데이트했다고 코어가 새 옵션을 지원하는 것도 아닙니다. 특정 옵션을 파싱하지 못하면 먼저 어느 코어의 어떤 범위에서 사용하는 옵션인지 확인한 뒤 클라이언트가 실제로 실행 중인 코어 정보를 살펴보세요. 설정 파싱 오류를 노드 접속 불가로 단정하지 마세요. 두 문제는 서로 다른 단계에서 발생하므로 확인해야 할 근거도 다릅니다.
GeoIP나 규칙 리소스를 사용할 때는 설정에서 참조하는 데이터 형식과 저장 위치, 업데이트 메뉴를 확인하세요. 파일 이름만 바꿔서는 코어가 해당 파일을 읽는다고 보장할 수 없으며, 파일이 있어도 현재 규칙에 사용 중이라는 뜻은 아닙니다. 변경 후 설정을 다시 불러오고 로그에 리소스 로드 오류가 있는지 확인한 다음 대상 연결에 어떤 규칙이 적용됐는지 살펴보세요. 원격 규칙 목록을 쓴다면 리소스 다운로드 실패, 형식 오류, 규칙 순서 문제를 구분해야 합니다.
결과를 확인할 때 웹페이지가 열린 것은 첫 단계일 뿐입니다. 직접 연결해야 하는 로컬 네트워크 서비스, 시스템 프록시를 따르지 않는 앱, 기기가 절전 모드에서 깨어난 뒤의 연결도 확인하세요. 노드 지연 시간 테스트는 지정한 요청의 상태를 살펴보는 기능이며 실제 업무 서비스 테스트를 대신하지 않습니다. 문제가 발생하면 조건과 오류 메시지, 최근 변경 사항을 기록한 뒤 포트, DNS 조회, 규칙, 출구 순서로 범위를 좁히세요. 옵션별 설명과 YAML 예시는 설정 참고 자료에서 확인할 수 있습니다.