먼저 중단된 것은 클라이언트이지 설정 형식이 아니라는 점을 확인하세요
기존 Clash 코어와 Clash for Windows는 이미 유지보수가 중단되었습니다. Clash for Windows의 마지막 버전으로 알려진 버전은 v0.20.39이며, 기존 설치 파일은 여전히 실행될 수 있지만 계속 사용하면 세 가지 문제가 생깁니다. 새 운영체제와의 호환성 문제는 더 이상 수정되지 않고, 최신 규칙 기능을 추가할 수 없으며, 구독 서비스가 mihomo로 전환되면서 일부 필드를 인식하지 못할 수 있습니다. 마이그레이션의 핵심은 화면이 완전히 같은 복제판을 찾는 것이 아니라, 구독·오버라이드 규칙·프록시 모드·시스템 연동 방식을 계속 유지보수되는 클라이언트로 안정적으로 옮기는 데 있습니다.
현재 널리 사용하는 대안은 대부분 mihomo 코어를 채택하고 있습니다. mihomo는 Clash 설정 체계를 이어가면서 규칙 세트, 프로세스 매칭, TUN, 트래픽 스니핑과 더 세밀한 DNS 설정을 제공합니다. 표준 YAML 설정은 대부분 계속 사용할 수 있지만 클라이언트 자체의 화면 설정은 서로 자동으로 호환되지 않습니다. 예를 들어 Clash for Windows의 창 상태, 시작 항목, Mixin 스크립트는 구독 주소만으로 새 클라이언트에 이전되지 않습니다.
마이그레이션 전에 네 가지 데이터를 구분하세요
- 구독 주소: 서비스 서버에서 제공하는 URL로, 기존 클라이언트의 Profiles 또는 설정 화면에서 확인할 수 있습니다.
- 설정 파일:
proxies,proxy-groups,rules,dns등의 필드를 포함하는 YAML 파일입니다. - 클라이언트 설정: 시작 시 자동 실행, 시스템 프록시, TUN, LAN 접근, 테마 등 로컬 기기에서만 적용되는 옵션입니다.
- 오버라이드 내용: 기존 Mixin, Parsers, 스크립트 또는 수동으로 추가한 규칙으로, 별도로 다시 구성해야 합니다.
평소 구독 링크를 붙여 넣고 노드만 선택했다면 마이그레이션은 보통 10분 정도면 끝납니다. DNS, 규칙 순서 또는 포트를 수정했다면 먼저 현재 적용 중인 설정을 내보낸 뒤 항목별로 복원하세요. 구독을 업데이트할 때마다 로컬 파일이 덮어써질 수 있으므로 사용자 지정 내용은 구독에서 생성된 YAML을 직접 수정하기보다 새 클라이언트의 오버라이드 기능에 넣는 편이 좋습니다.
FlClash와 Clash Verge Rev, 무엇을 선택할까요?
두 클라이언트 모두 mihomo 설정을 실행할 수 있지만 제품의 초점은 다릅니다. FlClash는 Windows, macOS, Linux와 Android를 지원하며 데스크톱과 모바일에서 화면 구성과 조작 흐름이 비교적 일관됩니다. Clash Verge Rev는 주로 Windows, macOS와 Linux 데스크톱 환경을 대상으로 하며 설정 관리, 트레이 조작, 시스템 서비스와 데스크톱 TUN 작업 흐름이 한곳에 집중되어 있습니다.
| 비교 항목 | FlClash | Clash Verge Rev |
|---|---|---|
| 주요 플랫폼 | Windows、macOS、Linux、Android | Windows、macOS、Linux |
| 적합한 사용 환경 | 데스크톱과 Android에서 비슷한 조작 방식으로 사용하려는 경우 | 컴퓨터 중심으로 사용하며 트레이와 데스크톱 시스템 통합을 중시하는 경우 |
| 구독 이전 | URL을 다시 추가하거나 로컬 설정을 가져올 수 있음 | URL을 다시 추가하고 오버라이드로 설정을 확장할 수 있음 |
| TUN 사용 | 지원. 처음 활성화할 때 시스템 권한 승인이 필요함 | 지원. 데스크톱에서는 보통 서비스 모드와 함께 사용함 |
| 규칙 관리 | 매칭 결과를 확인하고 프록시 그룹을 전환하는 데 적합함 | 여러 설정, 전체 오버라이드와 규칙 세트를 관리하는 데 적합함 |
| 모바일 지원 | Android용 지원 제공 | Android 클라이언트로 사용하지 않음 |
FlClash를 우선 선택하면 좋은 경우
- 컴퓨터와 Android 스마트폰에서 모두 Clash 설정을 사용하고 메뉴 구성이 비슷하길 원하는 경우
- 주요 작업이 구독 추가, 노드 전환, 연결 확인과 시스템 프록시 켜기·끄기인 경우
- 터치 기기에서 프록시 그룹을 관리해야 하며 완전히 다른 조작 방식 두 가지를 익히고 싶지 않은 경우
- 로컬 YAML 파일을 사용하며 가져온 뒤 오류 메시지와 규칙 매칭 결과를 바로 확인하고 싶은 경우
Clash Verge Rev를 우선 선택하면 좋은 경우
- 주요 기기가 Windows, macOS 또는 Linux 데스크톱 컴퓨터인 경우
- 여러 구독을 자주 전환하고 DNS, 규칙 또는 프록시 그룹 오버라이드를 한곳에서 관리해야 하는 경우
- 트레이에서 시스템 프록시, TUN 모드와 프록시 모드를 빠르게 전환하고 싶은 경우
- 시스템 프록시를 읽지 않는 프로그램도 TUN으로 연결하고 시스템 서비스를 사용해 권한 작업을 줄이고 싶은 경우
선택할 때 화면 캡처만 보고 판단할 필요는 없습니다. 기기 플랫폼, TUN 의존 여부, 사용자 지정 규칙 관리 여부와 구독 수를 기준으로 판단하는 편이 정확합니다. Windows 컴퓨터 한 대에서 구독 하나를 사용한다면 두 클라이언트 모두 충분합니다. Android가 포함되면 FlClash를, 여러 데스크톱 설정과 복잡한 오버라이드를 관리해야 하면 Clash Verge Rev를 우선 고려하세요.
Clash for Windows에서 구독과 설정 이전하기
첫 단계: 구독 주소와 로컬 YAML 저장하기
Clash for Windows를 열고 Profiles 페이지로 이동하세요. 현재 사용하는 구독의 이름, 업데이트 시간과 URL을 기록합니다. 화면에 전체 주소가 바로 표시되지 않으면 설정 파일의 출처를 확인하거나 구독 서비스 관리 페이지에 로그인해 다시 복사하세요. 그런 다음 설정 파일이 있는 디렉터리를 열고 현재 사용 중인 YAML 파일을 별도 폴더에 복사합니다.
config.yaml만 저장해서는 충분하지 않습니다. Clash for Windows는 구독 파일을 profiles 디렉터리에 저장하고 인덱스로 현재 선택 항목을 기록할 수 있습니다. Mixin이나 Parser를 사용했다면 관련 내용도 일반 텍스트 파일로 따로 복사하세요. 이전할 때는 내용을 이해한 뒤 새로 구성해야 하며, 기존 데이터 디렉터리 전체를 새 클라이언트 디렉터리에 덮어쓰는 방법은 권장하지 않습니다.
- 백업하는 동안 구독 파일이 갱신되지 않도록 자동 설정 업데이트를 중지하세요.
- 구독 URL을 복사하고 각 주소에 '일상', '테스트', '백업'처럼 용도를 표시하세요.
- 현재 적용 중인 YAML을 내보내거나 복사하세요.
- General 페이지에 표시된 포트와 스위치 상태를 기록하세요.
- 사용자 지정 Mixin, Parser와 직접 작성한 규칙을 저장하세요.
두 번째 단계: 새 클라이언트에 구독 추가하기
새 클라이언트를 설치한 뒤 먼저 주요 구독 하나만 추가하세요. FlClash에서는 '설정' → '추가'로 이동해 URL 유형을 선택하고 구독 주소를 붙여 넣은 다음 업데이트를 실행합니다. Clash Verge Rev에서는 '구독' → '새로 만들기'로 이동해 이름과 구독 URL을 입력하고 저장한 뒤 업데이트를 클릭합니다. 버전에 따라 메뉴 이름은 조금 다를 수 있지만 URL을 로컬 YAML 내용으로 붙여 넣지 말고 원격 구독으로 추가해야 합니다.
업데이트가 완료되면 먼저 프록시 그룹이 모두 표시되는지 확인한 뒤 노드 하나를 선택해 지연 시간을 테스트하세요. 지연 시간은 탐색 대상의 응답 시간만 보여 줄 뿐 모든 웹사이트에 접속할 수 있다는 뜻은 아닙니다. 직접 연결할 사이트와 프록시가 필요한 대상을 각각 열고 '연결' 페이지에서 적용된 규칙, 프록시 그룹과 실제 출구 노드를 확인하는 것이 좋습니다.
세 번째 단계: 포트를 확인해 중복 리스닝 방지하기
기존 Clash 설정은 HTTP 포트 7890, SOCKS5 포트 7891과 외부 제어 포트 9090을 자주 사용합니다. mihomo 설정에서도 HTTP와 SOCKS가 하나의 진입점을 공유하도록 mixed-port: 7890을 사용하는 경우가 많습니다. 두 클라이언트를 동시에 실행하면서 모두 7890을 리스닝하면 'address already in use', '포트가 사용 중' 오류가 발생하거나 시스템 프록시를 켠 뒤 연결되지 않을 수 있습니다.
mixed-port: 7890
allow-lan: false
mode: rule
log-level: info
external-controller: 127.0.0.1:9090
마이그레이션 테스트 중에는 기존 클라이언트를 완전히 종료하고 시스템 트레이에서도 실행 중이 아닌지 확인한 다음 새 클라이언트를 시작하세요. 병행 비교가 꼭 필요하다면 한쪽을 임시로 7892로 변경할 수 있지만 시스템 프록시는 현재 테스트할 포트만 가리켜야 합니다. 테스트가 끝나면 포트를 하나로 통일해 브라우저, 터미널과 개발 도구에 서로 다른 프록시 주소가 남지 않도록 하세요.
사용자 지정 규칙, 프록시 그룹과 DNS 이전하기
규칙 이전의 핵심은 순서를 유지하는 것입니다. Clash와 mihomo는 위에서 아래로 규칙을 매칭하고 일치하면 다음 규칙을 계속 찾지 않습니다. 특정 도메인 규칙을 포괄적인 GEOIP나 MATCH 뒤에 배치하면 문법이 올바르더라도 적용되지 않습니다. 이전할 때는 먼저 정확한 규칙을 옮기고, 다음으로 규칙 세트 참조를 옮긴 뒤 마지막으로 기본 처리 규칙을 확인하세요.
rules:
- DOMAIN-SUFFIX,example.com,DIRECT
- DOMAIN,api.example.net,Proxy
- IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
- GEOIP,CN,DIRECT
- MATCH,Proxy
프록시 그룹 이름은 반드시 일치해야 합니다
마지막 규칙 항목은 정책 이름을 참조합니다. 위 예시의 Proxy는 proxy-groups에 반드시 존재해야 합니다. 구독에서 실제로 '노드 선택'이나 '프록시'를 사용한다면 규칙만 그대로 복사할 경우 프록시 그룹을 찾을 수 없다는 오류가 발생하거나 로딩 단계에서 실패합니다. 한글·영문 그룹 이름과 대소문자까지 모두 정확히 일치해야 합니다.
구독을 업데이트하면 노드 이름이 바뀔 수 있으므로 직접 만든 프록시 그룹에서는 다른 안정적인 프록시 그룹을 우선 참조하거나 클라이언트가 지원하는 오버라이드 방식을 사용하세요. 수십 개의 노드 이름을 장기 규칙 파일에 직접 입력하지 마세요. 서버에서 이름을 변경할 때마다 하나씩 수정해야 합니다.
기존 Mixin을 통째로 복사하지 마세요
Clash for Windows의 Mixin은 JavaScript로 설정을 수정할 수 있고, Parser는 구독이 코어에 전달되기 전에 변환을 수행할 수 있습니다. 새 클라이언트가 동일한 스크립트 인터페이스를 지원한다는 보장은 없습니다. 이전할 때는 먼저 기존 로직이 실제로 무엇을 했는지 확인하세요. 규칙 추가, DNS 수정, 포트 변경 또는 프록시 그룹 삽입 중 무엇인지 파악한 뒤 표준 YAML로 표현할 수 있는 내용은 클라이언트의 전역 확장, 병합 오버라이드 또는 스크립트 오버라이드로 다시 작성하세요.
예를 들어 기존 Mixin이 로그 수준을 info로 바꾸고 LAN 접근만 활성화한다면 스크립트를 계속 유지할 필요가 없습니다. 새 클라이언트의 '설정' → '매개변수 설정'에서 해당 옵션을 직접 조정하는 편이 명확합니다. LAN 접근을 허용할 때는 리스닝 주소를 제한하고 시스템 방화벽도 확인해 제어 포트가 신뢰할 수 없는 네트워크에 노출되지 않도록 하세요.
DNS는 먼저 구독 기본값을 사용하세요
DNS는 마이그레이션 중 '노드는 연결되는데 웹페이지가 열리지 않는' 문제가 가장 자주 발생하는 부분입니다. 기존 설정에서 fake-ip를 사용했을 수 있고, 새 클라이언트에서도 트래픽 스니핑이 기본으로 활성화되어 있을 수 있습니다. 이 설정들은 시스템 보안 소프트웨어, LAN 도메인과 가상 머신 네트워크에 따라 다르게 작동할 수 있습니다. 처음 실행할 때는 구독에서 제공하는 DNS 섹션을 사용해 프록시가 정상 작동하는지 확인한 후 사용자 지정 nameserver, fallback 또는 fake-ip-filter를 복원하세요.
dns:
enable: true
ipv6: false
enhanced-mode: fake-ip
fake-ip-range: 198.18.0.1/16
nameserver:
- 223.5.5.5
- 1.1.1.1
198.18.0.0/15는 벤치마크 테스트용 주소 범위로, Fake-IP 모드에서 로컬 매핑에 자주 사용됩니다. 연결 기록이 이 주소 범위를 가리킨다고 해서 원격 웹사이트가 실제로 해당 IP를 사용한다는 의미는 아닙니다. LAN 기기, 프린터 또는 특정 애플리케이션의 도메인 해석에 문제가 생기면 DNS 모듈 전체를 즉시 끄기보다 해당 도메인을 Fake-IP 제외 목록에 추가해야 하는지 먼저 확인하세요.
시스템 프록시와 TUN을 켜는 순서
시스템 프록시는 브라우저, 메신저와 운영체제 프록시 설정을 읽는 프로그램에 적합합니다. TUN 모드는 네트워크 계층에서 더 많은 트래픽을 가로채므로 게임 런처, 명령줄 프로그램, 일부 스토어 앱과 시스템 프록시를 읽지 않는 프로그램에 적합합니다. 둘은 속도 단계가 아니며 반드시 동시에 켜야 하는 옵션도 아닙니다.
먼저 시스템 프록시로 기본 동작을 확인하세요
- 기존 Clash 클라이언트를 종료하고 남아 있는 시스템 프록시를 끄세요.
- 새 클라이언트를 실행하고 사용할 수 있는 노드를 선택하세요.
- 프록시 모드를 '규칙'으로 설정하세요.
- '시스템 프록시'를 켜고 TUN은 꺼 둡니다.
- 직접 연결 대상과 프록시 대상을 방문하고 연결 목록에서 적용된 규칙을 확인하세요.
이 단계가 성공하면 구독, 포트와 기본 규칙이 정상이라는 뜻입니다. 처음부터 TUN을 켜면 가상 네트워크 어댑터, 라우팅, DNS와 권한까지 문제 범위가 넓어져 원인을 찾기 어렵습니다. Windows에서는 '설정' → '네트워크 및 인터넷' → '프록시'로 이동해 수동 프록시 주소가 127.0.0.1과 현재 리스닝 포트를 가리키는지도 확인하세요.
전체 트래픽을 가로채야 할 때 TUN을 켜세요
Clash Verge Rev 데스크톱 버전은 보통 서비스 구성 요소를 설치하거나 활성화해야 하며, FlClash도 처음 TUN을 켤 때 시스템 권한 승인이 필요합니다. Windows에서는 네트워크 구성 요소 설치를 허용해야 합니다. macOS에서는 '시스템 설정' → '네트워크' 또는 개인정보 보호 및 보안 관련 알림에서 승인해야 합니다. Linux에서는 권한과 라우팅 기능을 별도로 설정해야 할 수 있습니다. 권한 승인을 마친 뒤 클라이언트를 다시 시작하고 TUN을 켜세요.
지연 시간 숫자만 보지 말고 실제 연결이 수립되는 시간을 확인하세요. 같은 네트워크와 같은 노드를 기준으로 시스템 프록시에서 웹페이지의 첫 연결이 약 180밀리초, TUN에서 약 190~230밀리초라면 일반적인 변동 범위입니다. TUN을 켠 뒤 계속 2초를 넘기거나 DNS 조회가 반복적으로 시간 초과되면 모든 규칙을 바꾸기보다 DNS 가로채기, IPv6, MTU와 다른 가상 네트워크 어댑터를 확인하세요.
마이그레이션에 실패했다면 증상별로 확인하세요
구독 업데이트 실패 또는 빈 설정 반환
- 구독 서비스 관리 화면에서 URL을 다시 복사하고 주소 끝에 공백이 섞이지 않았는지 확인하세요.
- 구독이 만료되지 않았는지 확인하고 서비스 서버에서 업데이트 시간이나 요청 빈도를 제한하는지도 점검하세요.
- 기존 클라이언트에서는 업데이트되지만 새 클라이언트에서 안 될 때는 User-Agent 요구 사항과 네트워크 경로를 비교하세요.
- 먼저 오버라이드를 끄고 원본 구독이 로드된 뒤 추가 설정을 항목별로 복원하세요.
설정에서 YAML 파싱 오류가 표시됨
YAML은 공백으로 계층을 표시하므로 Tab, 전각 콜론과 잘못된 들여쓰기로 파싱이 실패할 수 있습니다. 오류가 48번째 줄을 가리켜도 47번째 줄의 따옴표가 닫히지 않은 것이 원인일 수 있습니다. 사용자 지정 내용을 최소 단위로 줄인 다음 블록별로 추가하는 편이 업데이트를 반복해서 클릭하는 것보다 효과적입니다. 노드 이름에 콜론, 해시 또는 특수 문자가 포함되면 따옴표로 감싸세요.
시스템 프록시는 켜졌지만 브라우저가 계속 직접 연결됨
- 브라우저에 별도의 프록시 확장 프로그램이 설치되어 있는지 확인하세요. 확장 프로그램이 시스템 설정을 덮어쓸 수 있습니다.
- 리스닝 주소가
127.0.0.1인지, 포트가 시스템 프록시 설정과 일치하는지 확인하세요. - 연결 목록을 확인하세요. 새 연결이 없다면 트래픽이 클라이언트로 들어오지 않는 경우가 많습니다.
DIRECT에 매칭되면 규칙 순서를, 프록시에 매칭되지만 실패하면 노드를 확인하세요.
TUN을 켠 뒤 도메인을 해석할 수 없음
먼저 TUN을 끄고 시스템 프록시 모드가 정상으로 돌아오는지 확인하세요. 그런 다음 DNS가 활성화되어 있는지, nameserver에 연결할 수 있는지, Fake-IP 제외 항목이 LAN 도메인을 포함하는지 점검합니다. Windows에서는 터미널에서 ipconfig /flushdns를 실행해 시스템 캐시를 지울 수 있습니다. macOS에서는 먼저 네트워크 연결을 한 번 전환한 뒤 다시 테스트하세요. 같은 점검 과정에서 DNS, MTU, IPv6와 규칙을 동시에 변경하지 마세요. 어떤 조정이 효과가 있었는지 판단할 수 없게 됩니다.
마이그레이션 완료 후 점검 목록
노드가 녹색으로 표시된다고 마이그레이션이 끝난 것은 아닙니다. 설정 업데이트, 규칙 매칭, 시스템 연동과 재시작 후 복구라는 네 가지 측면에서 확인해야 합니다. 아래 항목을 모두 통과한 뒤 기존 클라이언트를 삭제하고 더 이상 사용하지 않는 설정 사본을 제거하세요.
- 구독을 수동으로 업데이트할 수 있고 업데이트 후 프록시 그룹과 노드가 정상적으로 표시됩니다.
- 규칙 모드에서 직접 연결 대상은
DIRECT에 매칭되고 프록시 대상은 예상한 프록시 그룹에 매칭됩니다. - 시스템 프록시를 끄면 트래픽이 직접 연결로 돌아가고, 켜면 새 클라이언트로 전달됩니다.
- TUN이 필요한 애플리케이션이 연결되고 LAN과 프린터 장치에도 계속 접근할 수 있습니다.
- 시스템을 다시 시작한 뒤 시작 시 자동 실행과 자동 연결 동작이 예상대로 작동합니다.
- 구독을 업데이트해도 로컬 오버라이드가 덮어써지지 않고 직접 작성한 규칙 순서가 유지됩니다.
- 기존 클라이언트가 더 이상 트레이에 남아 있지 않고 7890 또는 9090 포트를 계속 리스닝하지 않습니다.
대부분의 사용자에게 가장 안정적인 경로는 기존 자료를 백업하고 계속 유지보수되는 mihomo 클라이언트를 설치한 다음 주요 구독만 가져와 시스템 프록시로 확인하고, 규칙과 DNS를 복원한 뒤 필요할 때 TUN을 켜는 것입니다. 데스크톱과 Android를 함께 사용한다면 FlClash가 더 적합하고, 데스크톱 설정 관리와 시스템 통합이 중심이라면 Clash Verge Rev가 더 적합합니다. 하나를 선택한 뒤 설정 출처를 명확하게 유지하는 편이 여러 클라이언트를 장기간 동시에 실행하는 것보다 관리하기 쉽습니다.