Configuration Guide

Clash 설정 가이드

Clash / Mihomo의 핵심 설정인 규칙 기반 라우팅, 정책 그룹, 구독 링크 가져오기 및 API 콘솔에 대해 자세히 알아보고 프록시 설정을 더 정확하고 유연하게 만드세요.

규칙 설정 문서

Clash 규칙 기반 라우팅 유형과 작성법을 알아보고 국내 직접 연결, 해외 프록시 우회의 정확한 제어를 구현합니다.

01

규칙의 역할

Clash의 rules 필드는 각 트래픽이 어느 출구로 나갈지 결정합니다: 직접 연결(DIRECT), 지정된 프록시 노드, 또는 거부(REJECT). 규칙은 위에서 아래 순서로 일치 여부를 확인하며, 첫 번째로 일치하는 규칙이 즉시 적용됩니다. 따라서 정확한 규칙은 앞에 배치하고, 예외를 처리하는 MATCH는 마지막에 배치해야 합니다.

02

일반적인 규칙 유형

유형 일치 방식 예시
DOMAIN 전체 도메인 이름 정확히 일치 DOMAIN,www.google.com,Proxy
DOMAIN-SUFFIX 도메인 접미사 일치 (하위 도메인 포함) DOMAIN-SUFFIX,google.com,Proxy
DOMAIN-KEYWORD 도메인 이름에 키워드 포함 DOMAIN-KEYWORD,youtube,Proxy
IP-CIDR IP 주소 대역 일치 IP-CIDR,192.168.0.0/16,DIRECT
GEOIP IP 할당 국가 기반 GEOIP,CN,DIRECT
MATCH 폴백 일치 (반드시 마지막에 배치) MATCH,Proxy
03

규칙 설정 예시 (YAML)

전형적인 규칙 기반 라우팅 설정: 국내 직접 연결, 해외 프록시 우회, 로컬 네트워크 직접 연결:

config.yaml — rules 설정 섹션
rules: # 로컬 네트워크 직접 연결 - IP-CIDR,127.0.0.0/8,DIRECT - IP-CIDR,192.168.0.0/16,DIRECT - IP-CIDR,10.0.0.0/8,DIRECT # 자주 사용하는 국내 도메인 직접 연결 - DOMAIN-SUFFIX,cn,DIRECT - DOMAIN-SUFFIX,baidu.com,DIRECT - DOMAIN-SUFFIX,taobao.com,DIRECT - DOMAIN-SUFFIX,qq.com,DIRECT - DOMAIN-SUFFIX,bilibili.com,DIRECT # 자주 사용하는 해외 도메인 프록시 우회 - DOMAIN-SUFFIX,google.com,Proxy - DOMAIN-SUFFIX,youtube.com,Proxy - DOMAIN-SUFFIX,github.com,Proxy - DOMAIN-KEYWORD,twitter,Proxy - DOMAIN-SUFFIX,openai.com,Proxy # 중국 본토 IP 직접 연결 - GEOIP,CN,DIRECT # 폴백: 나머지 모두 프록시 우회 - MATCH,Proxy
04

규칙 세트 (Rule Provider) 사용

직접 규칙을 작성하는 것은 유지 관리가 어렵기 때문에 규칙 세트 (Rule Provider) 사용을 권장합니다: 원격 URL에서 정리된 규칙 목록을 가져오고 자동으로 업데이트되므로 수동 관리가 필요 없습니다. 프로바이더에서 제공하는 Clash 구독에는 보통 완전한 규칙 세트가 내장되어 있어 가져오기만 하면 바로 사용할 수 있습니다.

config.yaml — rule-providers 설정 섹
rule-providers: reject: type: http behavior: domain url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/reject.txt" path: ./ruleset/reject.yaml interval: 86400 proxy: type: http behavior: domain url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/proxy.txt" path: ./ruleset/proxy.yaml interval: 86400 direct: type: http behavior: domain url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/direct.txt" path: ./ruleset/direct.yaml interval: 86400 rules: - RULE-SET,reject,REJECT - RULE-SET,proxy,Proxy - RULE-SET,direct,DIRECT - GEOIP,CN,DIRECT - MATCH,Proxy
대부분의 프로바이더 구독에는 규칙 기반 라우팅이 내장되어 있어 수동으로 수정할 필요가 없습니다. 심층적인 사용자 정의가 필요한 경우 Mihomo 공식 문서(wiki.metacubex.one)에서 rule-providers 사용법을 확인하세요.

정책 그룹 설정 문서

정책 그룹(Proxy Group)을 통해 노드를 유연하게 조합하여 자동 속도 테스트, 페일오버 및 로드 밸런싱 구현

01

정책 그룹이란 무엇인가요?

정책 그룹(Proxy Group)은 Clash의 노드 조합 단위로, 여러 노드를 하나의 정책 그룹으로 묶어 클라이언트가 최적의 노드를 자동으로 선택하거나 수동으로 전환할 수 있게 합니다. 규칙에서는 정책 그룹 이름을 아웃바운드 대상으로 사용합니다 (예: MATCH,ProxyProxy).

02

네 가지 정책 그룹 유형

유형 동작 예시
url-test 정기적으로 속도 테스트를 수행하여 지연 시간이 가장 낮은 노드 자동 선택 일상적인 주요 프록시 그룹 (권장)
fallback 첫 번째 노드를 우선적으로 사용하고, 사용 불가능할 때 다음 노드로 자동 전환 고가용성 백업 노드 설정
load-balance 여러 노드에 트래픽을 라운드 로빈 방식으로 분산 다중 노드 로드 밸런싱 (대용량 트래픽 시나리오)
select 목록에서 노드 수동 선택 특정 노드를 고정해야 할 때 수동으로 전환
03

정책 그룹 설정 예시 (YAML)

자동 속도 테스트 그룹(Proxy), 수동 선택 그룹 및 페일오버 백업 그룹 포함:

config.yaml — proxy-groups 설정 섹션
proxy-groups: # 자동 속도 테스트, 최저 지연 노드 선택 (일상 권장) - name: Proxy type: url-test url: https://www.gstatic.com/generate_204 interval: 300 # 300초마다 속도 테스트 수행 tolerance: 50 # 지연 시간 차이가 50ms 이내면 전환하지 않음 proxies: - 홍콩-01 - 홍콩-02 - 미국-01 - 일본-01 # 수동으로 노드 선택 - name: Manual type: select proxies: - Proxy # 다른 정책 그룹 중첩 가능 - 홍콩-01 - 미국-01 - DIRECT # 장애 시 자동 전환 - name: Fallback type: fallback url: https://www.gstatic.com/generate_204 interval: 120 proxies: - 홍콩-01 - 미국-01 - 일본-01 # 다중 노드 로드 밸런싱 - name: LoadBalance type: load-balance url: https://www.gstatic.com/generate_204 interval: 300 strategy: round-robin proxies: - 홍콩-01 - 홍콩-02 - 홍콩-03
04

사용 권장 사항

프로바이더의 Clash 구독 설정에는 일반적으로 정책 그룹이 사전 설정되어 있어 가져오기만 하면 바로 사용할 수 있으며 수동 작성이 필요하지 않습니다. 사용자 정의가 필요한 경우 Clash Verge Rev 등 클라이언트의 「설정 덮어쓰기(Override)」 기능을 사용하여 정책 그룹을 수정할 수 있으며 YAML 파일을 직접 편집할 필요가 없습니다.

정책 그룹의 proxies 목록에 노드 이름(proxies: 필드에 정의된 name과 일치)을 입력하거나 다른 정책 그룹 이름을 중첩하여 입력할 수 있습니다.

구독 링크 사용 튜토리얼

프로바이더 구독 URL 획득부터 Clash 클라이언트로의 원클릭 가져오기까지의 전체 과정 설명

01

구독 링크란 무엇인가요?

구독 링크(Subscription URL)는 프로바이더(프록시 서비스 제공업체)가 사용자에게 제공하는 고유 URL로, 모든 노드 설정 정보가 포함되어 있습니다. Clash는 이 링크를 통해 노드 목록을 자동으로 다운로드하고 분석하므로 각 노드 매개변수를 수동으로 입력할 필요가 없습니다.

구독 링크는 계정과 연결되어 있으므로 트래픽 도용을 방지하기 위해 타인과 공유하지 마십시오.
02

지원되는 구독 형식

Clash (Mihomo 커널)는 다음과 같은 주요 구독 형식을 지원합니다:

  • Clash YAML 형식 (권장): 프로바이더가 직접 제공하는 config.yaml 형식으로 노드와 규칙이 모두 내장되어 즉시 사용 가능
  • Base64 인코딩 형식: SS / VMess 노드의 Base64 인코딩 목록으로 Clash 클라이언트가 자동으로 인식 및 변환
  • SIP008 형식: Shadowsocks 표준 구독 형식으로 Mihomo에서 기본 지원
  • clash:// 프로토콜: 링크를 클릭하면 클라이언트를 호출하여 자동으로 가져오기를 수행하며 일부 프로바이더에서 지원
03

구독 링크를 얻는 방법

  1. 사용 중인 프로바이더(VPN 서비스 제공업체) 공식 웹사이트 콘솔에 로그인합니다
  2. 「구독」, 「노드」, 「사용 튜토리얼」 또는 「원클릭 가져오기」 페이지를 찾습니다
  3. Clash 형식 또는 Mihomo 형식의 구독 링크를 선택합니다
  4. 「복사」 버튼을 클릭하여 전체 구독 URL을 가져옵니다
프로바이더가 없으신가요? 프로바이더는 프록시 노드 서비스를 구매하는 플랫폼으로 본 사이트에서 제공하지 않습니다. 검색 엔진에서 「Clash 프로바이더 추천」을 검색하여 리뷰를 찾아보고 Hysteria2 / VLESS 등 새로운 프로토콜을 지원하는 업체를 우선적으로 선택하는 것이 좋습니다.
04

구독을 가져오는 방법 (Clash Verge Rev 기준)

  1. Clash Verge Rev를 열고 왼쪽 「구독」 메뉴를 클릭합니다
  2. 오른쪽 상단의 「+」 버튼을 클릭하고 「가져오기」를 선택합니다
  3. URL 입력란에 구독 링크를 붙여넣고 별칭을 입력합니다
  4. 가져오기」를 클릭하고 노드 설정 다운로드가 완료될 때까지 기다립니다
  5. 구독 카드의 오른쪽에 있는 「활성화」 버튼을 클릭하여 현재 설정으로 지정합니다
다른 플랫폼(FlClash, ClashMeta for Android 등)도 단계가 유사하며 자세한 내용은 각 플랫폼 설치 튜토리얼을 참조하십시오.
05

구독 자동 업데이트

프로바이더 노드는 정기적으로 업데이트될 수 있으므로 구독 자동 업데이트를 켜는 것이 좋습니다: Clash Verge Rev에서 구독 카드를 마우스 오른쪽 버튼으로 클릭 → 「편집」 → 「자동 업데이트 간격」 설정(24시간 권장). 클라이언트는 정기적으로 프로바이더에서 최신 노드 설정을 가져오므로 수동 조작이 필요 없습니다.

FlClash도 구독 설정에서 「자동 업데이트」 스위치를 제공하며, 활성화 후 업데이트 간격을 설정할 수 있습니다. ClashMeta for Android는 「정기 업데이트」 기능을 지원하며 활성화 방식은 유사합니다.

API 및 콘솔 문서

RESTful API 및 Web UI를 통해 트래픽을 실시간으로 모니터링하고 노드를 관리하며 정책 그룹을 전환합니다

01

외부 컨트롤러 활성화

Mihomo 코어에는 RESTful API 서비스가 내장되어 있으며 external-controller 설정 항목을 통해 외부로 노출됩니다. 기본적으로 127.0.0.1:9090에서 수신 대기하며 Web UI는 이 포트를 통해 코어와 통신합니다.

config.yaml — API 컨트롤러 설정
# 외부 컨트롤러 수신 주소 및 포트 external-controller: 127.0.0.1:9090 # API 액세스 키 (비어 있으면 비밀번호 필요 없음) secret: "your-secret-here" # Web UI 정적 파일 디렉토리 지정 (선택 사항, UI 패널 로컬 배포용) external-ui: /path/to/ui/folder
Clash Verge Rev 등 그래픽 클라이언트는 「설정」에 외부 컨트롤러 설정 항목이 내장되어 있어 YAML 파일을 수동으로 편집할 필요가 없습니다.
02

Web UI 콘솔 사용

Clash 클라이언트에는 일반적으로 Web 콘솔 진입점이 내장되어 있으며 타사 오픈소스 UI 패널의 온라인 사용도 지원합니다:

패널 이름 특징 온라인 주소
Yacd 인터페이스가 깔끔하고 기능이 포괄적이며 커뮤니티의 주류 패널 yacd.haishan.me
MetaCubeX Dashboard 공식 제작, 기능이 가장 완벽하며 다크 테마 지원 d.metacubex.one
Zashboard 시각적 효과가 뛰어나고 인터페이스가 아름다움 github.com/Zephyruso/zashboard
클라이언트 내장 UI Clash Verge Rev 등 클라이언트에 내장되어 있어 별도의 설정 불필요 클라이언트 메뉴에서 직접 열기
온라인 Web UI를 사용할 때 패널의 「백엔드 주소」 입력란에 http://127.0.0.1:9090을 입력하고 비밀번호에 secret 설정 항목의 값을 입력하면 로컬 Clash 코어에 연결할 수 있습니다.
03

자주 사용하는 API 인터페이스

Mihomo RESTful API 기본 경로는 http://127.0.0.1:9090이며 요청 헤더에 Authorization: Bearer 을 포함해야 합니다:

자주 사용하는 API 엔드포인트
# 현재 버전 정보 가져오기 GET /version # 모든 프록시 노드 확인 (지연 시간 정보 포함) GET /proxies # 정책 그룹에서 선택된 노드 전환 PUT /proxies/{groupName} Body: { "name": "노드 이름" } # 특정 노드 속도 측정 GET /proxies/{name}/delay?url=https://www.gstatic.com/generate_204&timeout=5000 # 모든 실시간 연결 확인 GET /connections # 모든 연결 강제 종료 DELETE /connections # 현재 규칙 목록 확인 GET /rules # 글로벌 설정 가져오기 GET /configs # 글로벌 설정 수정 (예: 프록시 모드 전환) PATCH /configs Body: { "mode": "rule" } # rule / global / direct
04

클라이언트에서 사용

Clash Verge Rev 등 GUI 클라이언트는 위 API 기능을 인터페이스 조작으로 캡슐화했습니다: 「프록시」 페이지에서 노드 전환 및 속도 측정이 가능하고, 「연결」 페이지에서 실시간 연결 확인 및 특정 연결 종료가 가능하며, 「설정」에서 프록시 모드(규칙 / 글로벌 / 직접 연결)를 전환할 수 있습니다. 대다수 사용자는 API를 직접 호출할 필요가 없습니다.

전체 API 문서는 Mihomo 공식 문서(wiki.metacubex.one)를 참조하십시오. 여기에는 모든 엔드포인트의 요청/응답 형식 설명이 포함되어 있습니다.

설정이 준비되었습니다. 클라이언트를 선택하여 사용을 시작하세요

핵심 설정을 이해한 후 플랫폼에 맞는 Clash 클라이언트를 다운로드하고 튜토리얼에 따라 구독을 가져오면 바로 사용할 수 있습니다.