Clash 설정 파일 구조 단계별 분석: port, dns부터 rules까지 각 블록이 하는 일
설정 파일을 위에서 아래 순서로 짚어가며 공통 필드, proxies, proxy-groups, rules의 역할 범위를 설명하고, 각 블록이 어떻게 함께 작동하는지 최소한의 예시로 보여줍니다.
전체 읽기 →오픈소스 생태계 · 5개 플랫폼 설치 파일과 한국어 문서 지속 업데이트
Windows / macOS / Android / iOS / Linux 각 플랫폼용 Clash 클라이언트 설치 파일을 모았으며, 한국어 가이드, YAML 설정 매뉴얼, 문제 해결 색인을 함께 제공합니다. 설치, 구독 가져오기부터 규칙 분기 최적화까지 다운로드와 문서 확인을 이 사이트 안에서 모두 끝낼 수 있습니다.
왼쪽에서 기능을 선택하면 오른쪽에 설명과 관련 설정 스니펫이 표시됩니다. 각 항목의 전체 필드 참조는 YAML 매뉴얼에서 확인할 수 있습니다.
규칙 분기는 Clash를 일반적인 전역 프록시와 구분 짓는 핵심 메커니즘입니다. 모든 네트워크 요청은 rules 목록을 위에서부터 아래로 순서대로 매칭하며, 일치하는 규칙을 만나면 지정된 출구—직접 연결, 프록시 경유, 또는 차단—로 전달됩니다. 매칭 기준은 도메인 접미사, 도메인 키워드, IP 소속 지역, 프로세스 이름, 포트까지 다양해서 브라우저, 게임, 다운로드 도구를 각각 다른 경로로 보낼 수 있을 만큼 세밀합니다. 브라우저 확장 프로그램에서 사이트별로 수동 전환하는 방식과 달리, 설정 파일에 작성한 규칙은 시스템 전체에 적용되며 기기를 바꿔도 같은 YAML 파일만 옮기면 됩니다. 규칙 문법의 전체 목록은 사이트 내 YAML 매뉴얼에서 확인할 수 있습니다.
rules:
- DOMAIN-SUFFIX,github.com,PROXY
- GEOIP,CN,DIRECT
- MATCH,PROXY
정책 그룹은 여러 노드를 하나의 전환 가능한 출구로 묶어두는 기능으로, rules에서는 그룹 이름만 참조하면 되므로 그룹 안에 어떤 서버가 있는지는 신경 쓰지 않아도 됩니다. url-test 그룹은 설정된 간격마다 테스트 주소로 요청을 보내 지연 시간이 가장 낮은 노드를 자동으로 선택합니다. fallback 그룹은 나열된 순서대로 첫 번째로 사용 가능한 노드를 선택해 주/보조 회선 구성에 적합하며, select 그룹은 수동 선택을 유지하고, relay 그룹은 체인 방식의 전달을 지원합니다. 이 유형들은 서로 중첩할 수 있어서, 먼저 지역별로 그룹을 나누고 그룹 안에서 다시 자동 속도 측정을 적용하는 방식이 구독 노드가 많을 때 가장 흔히 쓰이는 구성입니다.
proxy-groups:
- name: AUTO
type: url-test
url: https://www.gstatic.com/generate_204
interval: 300
proxies: [HK-01, JP-01, SG-01]
시스템 프록시는 프록시 설정을 직접 읽어오는 프로그램에만 적용되며, 명령줄 도구, 게임 클라이언트, 상당수의 데스크톱 소프트웨어는 이를 그대로 우회합니다. TUN 모드는 시스템에 가상 네트워크 어댑터를 생성해 네트워크 계층에서 모든 트래픽을 가로챈 뒤 코어가 규칙에 따라 처리하도록 하므로, 애플리케이션이 협조하는지에 더 이상 의존하지 않습니다. 활성화 시 보통 fake-ip DNS 모드를 함께 사용해 해석 대기 시간을 줄이며, 처음 켤 때는 관리자 또는 root 권한이 필요하고 Windows에서는 가상 네트워크 어댑터 드라이버 구성 요소도 설치해야 합니다. 단계별 진행 방법은 가이드 페이지의 해당 항목을 참고하세요.
tun:
enable: true
stack: system
auto-route: true
dns-hijack:
- any:53
구독은 서비스 제공업체가 노드 목록을 하나의 URL로 묶어 제공하는 방식으로, 클라이언트가 주기적으로 가져오기만 하면 최신 노드로 동기화되므로 서버 파라미터를 직접 입력할 필요가 없습니다. 설정 파일에서는 proxy-providers가 구독을 외부 리소스로 선언하며, 업데이트 간격, 로컬 캐시 경로, 상태 확인을 자유롭게 설정할 수 있고 여러 구독을 동시에 등록해 서로 백업으로 활용할 수도 있습니다. 형식이 맞지 않는 구독을 만났다면 구독 변환 서비스를 이용해 Base64, Clash YAML, sing-box 등의 형식 간에 상호 변환할 수 있으며, 자세한 방법은 사이트 내 기술 노트에서 별도로 다루고 있습니다.
proxy-providers:
main:
type: http
url: https://example.com/sub.yaml
interval: 86400
path: ./providers/main.yaml
GEOIP와 GEOSITE 두 규칙 유형은 각각 독립적으로 업데이트할 수 있는 데이터베이스를 기반으로 합니다. 전자는 IP 소속 지역을 기준으로 매칭하며 특정 지역의 트래픽을 직접 연결시킬 때 주로 사용되고, 후자는 용도별로 분류된 도메인 목록을 담고 있어 GEOSITE,category-ads 한 줄만으로 수천 개의 광고 도메인 규칙을 대체해 설정을 간결하게 유지할 수 있습니다. 데이터베이스 파일은 직접 다운로드해 교체할 수도 있고, 설정에 미러 주소와 업데이트 간격을 지정해 코어가 주기적으로 자동으로 가져오게 할 수도 있습니다. 배포판별 차이와 업데이트 방식은 기술 노트에서 별도로 비교하고 있습니다.
geodata-mode: true
geo-auto-update: true
geo-update-interval: 24
설치 파일은 운영체제별로 분류되어 있으며, 플랫폼 카드를 클릭하면 다운로드 페이지의 해당 탭으로 바로 이동합니다. 버전 번호는 다운로드 페이지에서 실시간으로 가져와 각 프로젝트의 최신 정식 버전과 일치합니다.
설치부터 연결 확인까지 보통 10분 이내에 끝납니다. 각 단계의 상세 설명과 스크린샷 안내는 가이드 페이지에서 확인할 수 있습니다.
다운로드 페이지에서 사용 중인 시스템에 맞는 설치 파일을 선택해 설치한 뒤 클라이언트를 실행하고, 서비스 제공업체가 제공한 구독 링크를 「설정 / Profiles」 페이지에 붙여넣어 가져옵니다. 클라이언트가 노드 목록을 가져와 설정 파일을 생성하며, 목록 페이지에 노드가 표시되면 가져오기가 완료된 것입니다.
실행 모드를 「규칙 / Rule」로 설정하면 트래픽이 설정된 rules에 따라 자동으로 분기됩니다. 이어서 정책 그룹에서 지연 시간이 낮은 노드를 선택하거나, 자동 속도 측정 그룹을 사용해 클라이언트가 결정하도록 맡길 수 있습니다. 전역 모드와 직접 연결 모드는 문제를 진단할 때만 임시로 사용하세요.
클라이언트의 「시스템 프록시」 스위치를 켜고, 이전에 열리지 않던 사이트에 접속해 연결을 확인합니다. 명령줄이나 게임처럼 시스템 프록시를 거치지 않는 프로그램까지 처리하려면 가이드에 따라 TUN 모드를 추가로 활성화하세요. 확인에 실패했다면 가이드 페이지 끝에 있는 점검 목록을 하나씩 확인하세요.
이 사이트에 수록된 모든 클라이언트는 공개 저장소에서 가져온 것으로, 소스 코드와 이슈, 릴리스 기록은 호스팅 플랫폼에서 하나하나 확인할 수 있습니다.
Clash는 원래 Go로 작성된 규칙 기반 프록시 코어로, 명확한 YAML 설정 형식과 유연한 분기 규칙을 바탕으로 완전한 오픈소스 생태계를 형성했습니다. 원본 저장소가 유지보수를 멈춘 뒤 커뮤니티 포크인 Clash Meta가 개발을 이어받아 mihomo로 이름을 바꾸었고, 더 많은 프로토콜과 규칙 유형을 추가하며 현재 대부분의 GUI 클라이언트가 사용하는 공통 코어로 자리 잡았습니다.
Clash Verge Rev, FlClash, Clash Nyanpasu 등의 GUI 클라이언트는 모두 mihomo를 기반으로 만들어졌으며, 각자 릴리스 주기와 인터페이스 스타일을 유지하고 있습니다. 설정 형식은 서로 호환되므로 같은 YAML 파일을 클라이언트만 바꿔서 사용해도 거의 수정이 필요 없습니다. 이 사이트는 정해진 목록에 따라 각 프로젝트의 정식 릴리스를 추적하며, 다운로드 페이지의 버전 번호는 버전 목록에서 실시간으로 읽어와 업스트림 릴리스와 동기화됩니다.
서버나 라우터에서 코어를 직접 실행하거나 구현 세부 사항을 살펴보고 싶다면 mihomo 저장소를 클론해 직접 빌드할 수 있습니다. 이슈 게시판과 커밋 기록은 코어 레벨 문제를 진단할 때 가장 직접적인 1차 자료입니다.
git clone https://github.com/MetaCubeX/mihomo.git
이 저장소는 GPL-3.0 라이선스로 배포되며, 수천 개의 스타와 꾸준히 반영되는 커밋 기록을 호스팅 플랫폼에서 공개적으로 확인할 수 있습니다. 일반 사용자는 직접 빌드할 필요 없이 다운로드 페이지의 사전 빌드된 패키지를 바로 사용하면 됩니다.
자주 나오는 질문 네 가지를 한 줄로 정리했습니다. 전체 답변과 더 많은 항목은 FAQ 페이지와 개념 정리에서 확인할 수 있습니다.
설정 구조, 데이터베이스 업데이트, 문제 해결을 다루는 심층 글을 발행일 역순으로 정리했습니다.
설정 파일을 위에서 아래 순서로 짚어가며 공통 필드, proxies, proxy-groups, rules의 역할 범위를 설명하고, 각 블록이 어떻게 함께 작동하는지 최소한의 예시로 보여줍니다.
전체 읽기 →인증서 오류가 발생하는 몇 가지 원인—시스템 시간 오차, 노드 하이재킹, TUN 모드에서의 DNS 오염 폴백, 로컬 패킷 캡처 소프트웨어에 남은 인증서—를 구분해서 설명하고, 우선순위에 따른 점검 절차를 제시합니다.
전체 읽기 →URL 테스트의 전체 흐름과 측정 대상을 분석해 핸드셰이크 방식, 테스트 주소, 캐시가 결과에 미치는 영향을 설명하고, 낮은 지연 시간이 높은 대역폭을 의미하지 않는 이유와 체감에 더 가까운 노드 선택 방법을 제시합니다.
전체 읽기 →