CLASH / CONFIGURATION INDEX

Clash 클라이언트 다운로드및 config.yaml 설정 가이드

운영체제에 맞는 클라이언트를 선택하고 YAML 설정, DNS 확인, 정책 그룹별 트래픽 분기를 필드별로 살펴보세요.

오픈 소스 코드한국어 문서mihomo 필드 안내

FIELD REFERENCE

config.yaml 최상위 필드 색인

클라이언트는 설정 가져오기와 전환, 표시를 담당하고 코어는 설정에 따라 연결을 처리합니다. 먼저 수신 포트, DNS 처리 방식, 아웃바운드 대상을 구분한 뒤 해당 필드를 수정하세요. 아래 예시는 각각 하나의 설정 항목을 설명하며, 그대로 합쳐 완성된 구독 설정으로 사용할 수는 없습니다. 정책 그룹 예시는 내장 아웃바운드 DIRECT만 참조하며, 실제 프록시 노드는 별도로 설정해야 합니다.

mixed-port:

HTTP와 SOCKS가 공유하는 수신 포트

mixed-port는 하나의 포트에서 HTTP와 SOCKS 요청을 모두 받으므로 브라우저, 명령줄 도구, 프록시 주소를 직접 입력해야 하는 앱에 적합합니다. 로컬에서만 사용할 경우 주소는 보통 루프백 주소로 설정하고, 포트는 실행 중인 설정과 맞춰야 합니다. allow-lan은 같은 LAN의 기기에서 접속할 수 있는지 결정하지만, 수신 주소와 시스템 방화벽도 함께 확인해야 합니다. 시스템 프록시는 클라이언트가 운영체제에 설정하는 기능으로, 모든 앱이 해당 포트를 거친다는 뜻은 아닙니다. 다른 트래픽까지 처리해야 한다면 가이드에 따라 TUN 모드를 검토하세요.

mixed-port: 7890
allow-lan: false
mode: rule
log-level: info
dns:

내장 DNS와 Fake-IP 해석

dns.enable은 내장 DNS 서비스를 켜고 끄며, enhanced-mode는 향상된 DNS 처리 방식을 지정합니다. Fake-IP는 가상 IP 주소로 도메인과 연결 정보를 연결해 규칙에 따른 도메인 분기를 지원합니다. nameserver에는 DNS 질의에 사용할 상위 서버를 지정합니다. 내장 DNS를 켰다고 해서 시스템의 DNS 요청이 자동으로 이 서비스에 들어오는 것은 아니므로 TUN의 DNS 가로채기 설정이나 시스템 DNS 설정도 확인해야 합니다. Clash DNS 누수가 의심되면 단순히 스위치 상태만 보지 말고 DNS 요청이 실제로 어디로 전달되는지 확인하세요. LAN 도메인에 문제가 생기면 해당 도메인에 맞춰 필터링이나 DNS 처리 규칙을 설정하세요.

dns:
  enable: true
  enhanced-mode: fake-ip
  fake-ip-range: 198.18.0.1/16
  nameserver:
    - https://dns.alidns.com/dns-query
proxies:

프록시 노드와 프로토콜 매개변수

proxies는 프록시 노드 정의 목록입니다. 각 항목은 name으로 참조할 이름을 지정하고 type으로 프로토콜을 정합니다. server, port, 인증 정보는 서버 설정과 일치해야 하며, 하나의 비밀번호 필드로 프로토콜마다 필요한 별도 매개변수를 대신할 수는 없습니다. 구독에는 보통 노드 정보가 포함되어 있으므로 처음부터 직접 다시 작성할 필요는 없습니다. 아래 예시의 예약 도메인과 안내용 비밀번호는 구조 설명에만 사용되며 실제 연결에는 사용할 수 없습니다. 프로토콜 지원 여부는 현재 코어가 지원하는 범위에 따라 달라집니다. 클라이언트 화면에 이름이 표시된다고 해서 코어의 설정 검사를 통과했다는 뜻은 아닙니다.

proxies:
  - name: 예시 노드
    type: ss
    server: proxy.example.com
    port: 443
    cipher: aes-128-gcm
    password: "your-password"
proxy-groups:

정책 그룹과 아웃바운드 이름 참조

proxy-groups는 프록시 노드나 다른 정책 그룹을 하나의 아웃바운드 대상으로 묶습니다. select는 직접 선택할 때, url-test는 테스트 결과에 따라 자동 선택할 때, fallback은 사용 가능 여부에 따라 순서대로 대체할 때 사용합니다. 이름만 보고 세 방식을 서로 바꿔 써도 된다고 판단해서는 안 됩니다. 규칙은 화면상의 배열 위치가 아니라 그룹 이름을 참조합니다. name을 바꾼 경우 rules와 다른 그룹의 참조 이름도 함께 갱신하고, 그룹끼리 순환 참조가 생기지 않도록 확인하세요. 예시에서는 유효한 참조인 DIRECT를 유지했습니다. 실제 구독을 가져온 뒤에는 구독에 포함된 노드 이름을 목록에 추가하세요.

proxy-groups:
  - name: 아웃바운드 선택
    type: select
    proxies:
      - DIRECT

rules:
  - MATCH,아웃바운드 선택
rules:

위에서 아래로 적용되는 트래픽 분기 규칙

rules는 목록 순서대로 검사하며, 먼저 일치한 규칙이 연결의 아웃바운드 대상을 결정합니다. DOMAIN은 도메인 전체와 일치하고, DOMAIN-SUFFIX는 해당 도메인과 하위 도메인에 적용됩니다. IP-CIDR은 대상 IP 주소 범위에 적용되며, MATCH는 보통 마지막에 배치해 나머지 연결을 처리합니다. 더 구체적인 규칙을 포괄적인 규칙보다 먼저 배치해야 합니다. 그렇지 않으면 뒤쪽 조건이 적용되지 않을 수 있습니다. 수정 후 연결 상세 정보에서 일치한 규칙과 실제 정책 그룹을 확인하세요. 이 목록에 따른 분기는 규칙 모드에서만 적용됩니다. 전역 모드로 전환했다면 같은 규칙 적중 기준으로 결과를 판단하지 마세요.

rules:
  - DOMAIN,example.com,DIRECT
  - DOMAIN-SUFFIX,example.org,DIRECT
  - IP-CIDR,192.168.0.0/16,DIRECT
  - MATCH,아웃바운드 선택
profile:

정책 선택 및 Fake-IP 상태 저장

profile의 store-selected는 정책 그룹 선택 상태를 저장하고, store-fake-ip는 Fake-IP 매핑을 유지하는 데 사용합니다. 실행 상태를 관리하는 설정으로, 구독을 다운로드하거나 구독 업데이트 간격을 제어하지는 않습니다. 클라이언트에서 구독을 업데이트한 뒤 그룹 이름이 바뀌면 기존 선택 기록이 더 이상 연결되지 않을 수 있습니다. 이때는 설정을 전부 지우기보다 정책 그룹을 다시 확인하세요. 구독 내용을 수정하기 전에 클라이언트가 덮어쓰기나 병합 기능을 제공하는지 먼저 확인해야 합니다. 다운로드한 파일을 직접 편집하면 다음 업데이트에서 변경 내용이 사라질 수 있습니다.

profile:
  store-selected: true
  store-fake-ip: true

전체 설정 필드 및 덮어쓰기 안내 보기 →

CLIENT / PLATFORM

운영체제에 맞는 Clash 클라이언트 선택

먼저 운영체제와 프로세서 아키텍처를 확인한 뒤 클라이언트의 설정 관리 방식을 비교하세요. 데스크톱 GUI는 구독 관리와 연결 확인에 적합합니다. 서버나 라우터에서는 코어를 직접 실행할 수 있지만 설정 파일 경로, 서비스 실행, 네트워크 권한을 직접 관리해야 합니다. 다른 운영체제로 옮길 때는 같은 YAML 필드를 참고할 수 있지만, 시스템 프록시와 TUN 권한, 덮어쓰기 위치는 운영체제별로 따로 설정해야 합니다.

Windows

우선 추천하는 클라이언트는 Clash Plus입니다. 사용 방식에 따라 Clash Verge Rev, FlClash, Clash Nyanpasu를 선택할 수도 있습니다. 시스템 정보를 확인해 아키텍처를 파악한 뒤 다운로드 페이지에서 맞는 설치 파일을 받으세요. Clash for Windows를 교체한다면 기존 프로그램 폴더를 덮어쓰는 대신 구독, 규칙, 정책 선택 상태를 이전하는 데 중점을 두세요. 실행 후 혼합 포트와 시스템 프록시 주소가 일치하는지 확인하세요.

다운로드 페이지로 이동

macOS

먼저 ‘이 Mac에 관하여’에서 Apple Silicon과 Intel을 구분한 뒤 알맞은 설치 파일을 선택하세요. Clash Plus를 우선 추천하며, Clash Verge Rev와 FlClash도 GUI 클라이언트로 사용할 수 있습니다. 네트워크를 처음 제어할 때는 시스템 안내에 따라 필요한 권한을 허용하세요. 메뉴 막대에 앱이 표시된다고 시스템 프록시가 활성화된 것은 아닙니다. 앱 설정과 연결 기록을 함께 확인하세요.

다운로드 페이지로 이동

Android

Clash Plus를 우선 추천하며, 설정 형식에 따라 Clash Meta for Android, FlClash, Surfboard도 선택할 수 있습니다. 기기의 아키텍처에 맞는 앱을 설치하고 처음 연결할 때 시스템 VPN 권한을 허용하세요. 앱별 분기 설정과 시스템 VPN 설정에 따라 프록시를 통과하는 앱이 달라집니다. 연결 직후에는 정상인데 백그라운드에서 끊긴다면 배터리 관리와 백그라운드 실행 제한을 확인하세요.

다운로드 페이지로 이동

iOS

다운로드 페이지에서 Clash Plus의 App Store 링크와 공식 사이트 clashplus.io를 이용할 수 있습니다. 설치 후 호환되는 구독을 가져오고, 시스템 권한 요청에서 VPN 구성을 추가하도록 허용한 다음 클라이언트로 돌아와 정책 그룹을 선택하세요. 연결에 문제가 생기면 현재 활성화된 설정이 무엇인지 먼저 확인하고 다른 네트워크 확장 기능이 동시에 켜져 있는지도 살펴보세요.

다운로드 페이지로 이동

Linux

GUI 데스크톱 환경에서는 추천 클라이언트인 Clash Verge Rev 또는 FlClash를 선택하고 배포판에 맞는 패키지 형식을 사용하세요. 시스템 프록시는 데스크톱 환경에 따라 달라지며, 터미널 프로그램은 프록시 환경 변수를 별도로 설정해야 할 수도 있습니다. GUI가 없는 서버에서는 다운로드 페이지의 코어 항목을 참고해 서비스 관리, 작업 디렉터리, 권한을 직접 설정하세요. 데스크톱 클라이언트 설치 절차를 라우터에 그대로 적용하지 마세요.

다운로드 페이지로 이동

전체 클라이언트 보기 →클라이언트 및 설정 관리 방식 비교 →

QUICK START / THREE STEPS

구독 가져오기, 규칙 모드, 연결 확인

01 / IMPORT

구독 가져오기 및 설정 활성화

구독 제공업체에서 클라이언트에 맞는 설정 링크를 받은 뒤, 클라이언트의 구독 또는 설정 화면에서 원격 설정을 추가하세요. 다운로드가 끝나면 해당 설정을 현재 설정으로 지정합니다. 목록에 항목이 표시되는 것은 첫 단계일 뿐이며 코어가 설정을 정상적으로 불러왔는지도 확인해야 합니다. 링크에 접속 정보가 포함될 수 있으므로 문제 해결용 스크린샷에서는 전체 주소를 가리세요. 형식 오류가 표시되면 YAML 설정과 단일 노드 링크를 먼저 구분하고, 파일 확장자만 바꾸지는 마세요.

02 / ROUTE

규칙 모드 및 아웃바운드 정책 선택

실행 모드를 규칙 모드로 설정한 뒤 프록시 또는 정책 그룹 화면에서 구독 내 수동 선택 그룹의 아웃바운드를 지정하세요. 그룹 이름은 설정에 따라 다르므로 구독마다 같지는 않습니다. 노드를 선택해도 시스템 트래픽이 자동으로 클라이언트를 통과하지는 않습니다. 데스크톱에서는 용도에 따라 시스템 프록시나 TUN을 켜야 하고, 모바일에서는 시스템 VPN 권한을 허용해야 합니다. 첫 테스트에서는 DNS와 분기 규칙을 동시에 바꾸지 말고 단순한 설정을 유지하세요.

03 / VERIFY

연결 상세 정보에서 규칙 적용 결과 확인

접속하려는 페이지를 연 다음 클라이언트의 연결 목록에서 대상 도메인, 일치한 규칙, 아웃바운드 정책을 확인하세요. 지연 시간 테스트에 성공해도 테스트 요청이 완료됐다는 뜻일 뿐, 실제 앱에서의 연결을 대신 확인해 주지는 않습니다. 연결 목록에 기록이 없다면 먼저 트래픽 유입 경로를 확인하세요. 기록은 있지만 연결에 실패한다면 규칙 대상, 노드 상태, DNS 결과를 확인하세요. 확인이 끝나면 필요에 따라 구독 업데이트 간격을 설정하고 사용자 지정 덮어쓰기 위치를 기록해 두세요.

전체 사용 가이드 보기 →

SOURCE / CORE / CONFIGURATION

Clash 생태계, mihomo 코어 및 소스 코드

클라이언트 인터페이스와 프록시 코어 구분하기

Clash 생태계에는 YAML 설정, 규칙 기반 트래픽 분기, GUI 클라이언트를 바탕으로 다양한 구현이 있습니다. 초기 프로젝트의 유지보수 상황이 바뀐 뒤에도 후속 코어와 클라이언트는 계속 발전해 왔습니다. 따라서 ‘Clash’가 하나의 통합 설치 파일을 의미하지는 않습니다. 다운로드할 때는 프로젝트 이름, 지원 플랫폼, 유지보수 상태를 확인하세요. 파일 이름에 Clash가 들어 있다는 이유만으로 기존 설정과 완전히 호환된다고 판단해서는 안 됩니다. 이 사이트는 문서와 다운로드 링크를 제공하며, 모든 클라이언트 프로젝트의 개발자가 아닙니다.

mihomo는 Clash 생태계의 프록시 코어로, 프로토콜 연결, 규칙 매칭, DNS 등의 기능을 담당합니다. Clash Verge Rev 같은 GUI 클라이언트는 코어 위에 설정 관리와 조작 인터페이스를 제공합니다. GUI 메뉴와 YAML 필드가 항상 일대일로 대응하는 것은 아니며, 일부 스위치는 클라이언트가 설정을 생성하거나 덮어쓸 수 있습니다. 문제를 확인할 때는 코어가 최종적으로 어떤 필드를 불러왔는지 먼저 살펴본 뒤 메뉴 설정을 점검하세요. 파일을 수정했는데 동작이 바뀌지 않는 상황을 빠르게 파악할 수 있습니다.

오픈 소스 정보와 라이선스 범위

mihomo의 소스 코드, 라이선스, 이슈 논의, 릴리스 기록은 프로젝트 저장소에서 확인할 수 있으며, 저장소에는 GPL-3.0 라이선스가 적용됩니다. 오픈 소스 프로젝트마다 라이선스와 패키징 방식이 다르므로 각각 확인해야 합니다. 코어 라이선스가 모든 클라이언트, 구독 서비스, 서드파티 설정에 동일하게 적용되는 것은 아닙니다. 동작을 재현해야 한다면 사용한 클라이언트와 코어 정보, 재현 조건을 기록하세요. 문제를 보고할 때는 필요한 내용만 남기고 구독 주소, 비밀번호, 기타 접속 정보는 삭제하세요.

프로그램 업데이트, 구독 업데이트, 덮어쓰기 유지

클라이언트 프로그램 업데이트, 코어 업데이트, 구독 새로고침은 서로 다른 작업입니다. 프로그램 업데이트는 인터페이스나 통합 기능을 바꾸고, 코어 업데이트는 필드 지원이나 처리 방식에 영향을 줄 수 있습니다. 구독 업데이트는 원격 설정 내용을 바꿉니다. 설정을 불러오지 못한다면 오류 위치와 필드 유형부터 확인하세요. 원인을 찾는 대신 프로그램을 계속 바꾸지 마세요. 최신 설정 필드를 오래된 클라이언트가 인식하지 못할 수도 있습니다. 이전하기 전에 클라이언트 선택 가이드를 확인하세요.

장기간 사용할 사용자 지정 규칙은 클라이언트가 지원하는 덮어쓰기 또는 병합 기능에 우선 추가하고, 구독 처리의 어느 단계에서 병합되는지 확인하세요. 목록은 통째로 교체될 수도 있고 클라이언트의 규칙에 따라 추가될 수도 있으므로 YAML 계층만 보고 판단해서는 안 됩니다. 업데이트할 때마다 주요 정책 그룹 이름, 마지막 MATCH 규칙, DNS 설정이 예상대로 유지되는지 확인하세요. 전체 예시와 적용 범위는 설정 참고에서 확인하고, 소스 코드는 프로젝트 저장소에서 살펴보세요.

CONFIGURATION NOTES

최근 설정 가이드

각 글은 구체적인 작업 상황을 중심으로 설명합니다. 프록시를 공유할 때는 수신 포트를 확인하고, 노드를 고를 때는 테스트 결과와 트래픽 요금제를 구분하며, 구독 형식을 변환할 때는 설정 구조를 점검하세요. 공통 필드는 설정 참고 문서와 함께 확인하고, 개별 글의 일부 설정을 기존 구성에 그대로 덮어쓰지 마세요.

고급 설정

Clash LAN 프록시 공유: mixed-port와 allow-lan 설정 방법

mixed-port와 allow-lan의 역할을 설명하고, 같은 LAN의 휴대폰·TV·게임 콘솔에서 PC 프록시를 사용하는 설정 방법과 방화벽 주의사항을 안내합니다.

설정 안내 읽기 →
입문 가이드

Clash 노드 선택 방법: 지연 시간 테스트, 트래픽 배수, 지역과 프로토콜 비교

지연 시간 테스트 수치의 의미와 한계, 트래픽 배수가 사용량에 미치는 영향을 설명하고, 용도에 따라 지역과 프로토콜을 선택하는 기준을 제시합니다.

설정 안내 읽기 →
형식 선택

Clash YAML 구독과 Base64 노드 링크: 형식 차이 및 상호 변환 방법

Clash YAML 구독, Base64 인코딩 링크, 단일 노드 URI의 구조를 비교하고, 변환 시 필드 대응 방식과 변환 후 점검할 항목을 설명합니다.

설정 안내 읽기 →

전체 글 보기 →