개념 빠르게 찾기

Clash 용어집

커널과 연결 프로토콜부터 설정 파일까지, 자주 쓰이는 개념 24가지를 기능별로 정리했습니다. 용어가 어떤 계층에 해당하는지 확인한 다음 클라이언트 설정이나 실행 로그와 대조하면 DNS 조회 문제와 연결 문제를 구분하는 데 도움이 됩니다.

순서대로 따라 할 수 있는 안내가 필요하다면 시작하기 가이드를, 플랫폼별 권한·설치·네트워크 설정이 궁금하다면 전 플랫폼 안내를 확인하세요.

커널과 클라이언트

클라이언트는 조작 기능을 제공하고, 커널은 연결을 처리합니다. 호환성 문제를 확인할 때는 둘 다 살펴봐야 합니다.

mihomo 커널

Proxy engine · formerly Clash Meta

mihomo는 Clash Meta 이후 사용되는 프로젝트 이름으로, 설정 파일 해석, 규칙 매칭, 프록시 연결, DNS 처리를 담당합니다. 단독으로 실행할 수도 있고 그래픽 클라이언트에서 실행 및 관리할 수도 있습니다. 같은 클라이언트라도 서로 다른 커널 빌드를 사용할 수 있으므로, 특정 프로토콜이나 설정 필드의 지원 여부는 실제 실행 중인 커널을 기준으로 확인해야 합니다.

커널 및 플랫폼별 설정 안내 보기 →

Clash 클라이언트

Graphical client

Clash 클라이언트는 보통 커널을 그래픽 인터페이스로 조작할 수 있도록 구독 가져오기, 프록시 그룹 전환, 로그 확인, 시스템 프록시 설정 등의 기능을 제공합니다. 클라이언트 이름과 커널 이름은 서로 다른 개념이며, 인터페이스에서 제공하는 옵션이 커널의 모든 기능을 지원하는 것도 아닙니다. 클라이언트를 고를 때는 화면 구성만 비교하지 말고 운영체제 지원 여부, 설정 호환성, 권한 관리 방식도 확인하세요.

클라이언트 선택 가이드 보기 →

노드

Proxy endpoint

노드는 프록시 연결에 필요한 설정 항목으로, 일반적으로 서버 주소, 포트, 프로토콜, 인증 정보, 전송 설정을 포함합니다. 표시 이름은 선택을 돕는 식별용일 뿐 서버 위치, 회선 품질, 사용 가능한 대역폭을 보장하지 않습니다. 노드를 불러올 수 있다는 것은 설정을 읽을 수 있다는 뜻일 뿐이므로, 연결 테스트와 실제 접속으로 이용 가능 여부를 확인해야 합니다.

지연 시간 테스트

URL Test · request timing

클라이언트는 보통 특정 노드를 통해 지정된 테스트 주소에 접속하고, 요청에 걸린 시간을 지연 시간으로 표시합니다. 이 값에는 연결 설정, 프로토콜 핸드셰이크, 대상 서버의 응답 시간이 포함될 수 있어 ICMP Ping과 같지 않습니다. 지연 시간이 짧다고 다운로드 속도가 빠른 것도 아닙니다. 노드를 비교할 때는 같은 테스트 주소를 사용하고 패킷 손실, 연속 접속, 실제 전송 속도도 함께 확인하세요.

지연 시간 테스트 원리 알아보기 →

프록시 프로토콜

프로토콜은 클라이언트와 서버가 데이터를 주고받는 방식을 정합니다. 프로토콜, 전송 방식, 암호화 계층을 각각 구분해야 합니다.

Shadowsocks

Encrypted proxy protocol

Shadowsocks는 공유 키와 지정된 암호화 방식을 사용해 클라이언트와 서버 사이에 프록시 트래픽을 전송합니다. 노드를 설정할 때는 암호화 방식, 비밀번호, 관련 프로토콜 매개변수가 서버 설정과 일치해야 합니다. 주소와 포트만으로는 연결할 수 없습니다. 암호화 방식마다 지원 범위와 실행 오버헤드가 다르므로, 기존 설정을 가져올 수 있어도 현재 커널이 모든 옵션을 지원하는 것은 아닙니다.

VMess

V2Ray protocol

VMess는 V2Ray 생태계에서 사용하는 프록시 프로토콜로, 일반적으로 UUID로 사용자를 식별하며 다양한 전송 방식을 조합할 수 있습니다. WebSocket, TLS, VMess는 서로 다른 계층이므로 프로토콜 인증, 전송 경로, 서버 이름을 각각 맞춰야 합니다. 일부 인증 과정에는 정확한 시스템 시간이 필요하므로 핸드셰이크가 실패하면 시각과 서버 매개변수도 함께 확인하세요.

VLESS

Lightweight proxy protocol

VLESS는 UUID 인증을 사용하는 경량 프록시 프로토콜로, 자체적으로 범용 페이로드 암호화를 제공하지 않으며 실제 연결에는 TLS나 REALITY 등을 조합하는 경우가 많습니다. 서버에 설정된 흐름 제어, 전송 방식, 보안 매개변수를 모두 일치시켜야 합니다. VMess 설정의 유형 이름을 VLESS로 바꾸는 것만으로 변환이 완료되는 것은 아닙니다. 두 프로토콜의 구조와 필요한 매개변수가 다릅니다.

Trojan

TLS-based proxy protocol

Trojan은 일반적으로 TLS 연결을 통해 프록시 트래픽을 전송하고 비밀번호로 인증합니다. 연결할 때 비밀번호뿐 아니라 서버 이름과 인증서의 일치 여부, 인증서 신뢰 체인도 확인해야 합니다. 인증서 검증을 건너뛰면 보안 경계가 달라지므로 핸드셰이크 실패 시 기본 해결책으로 사용하지 마세요. 먼저 시스템 시간, 도메인 설정, 서버 인증서 상태를 확인하세요.

규칙 설정과 라우팅

규칙은 연결 경로를 결정하고, 프록시 그룹은 해당 경로에서 사용할 노드를 정합니다. 규칙 순서와 이름 모두 설정의 일부입니다.

규칙 기반 라우팅

Rule-based routing

규칙 기반 라우팅은 도메인, 대상 IP, 프로세스 등의 조건에 따라 연결에 직접 연결, 프록시, 거부 정책을 적용합니다. 규칙은 일반적으로 위에서 아래로 확인하며, 처음 일치하는 규칙이 적용됩니다. 따라서 구체적인 예외 규칙을 포괄적인 규칙보다 앞에 배치해야 합니다. 규칙을 수정한 뒤에는 연결 세부 정보에서 실제로 일치한 규칙을 확인하세요. 출구 IP만 확인해서는 특정 앱이 여전히 기존 경로를 사용하는 이유를 파악하기 어렵습니다.

규칙 구문과 우선순위 보기 →

프록시 그룹

Proxy group

프록시 그룹은 여러 노드나 정책을 하나의 이름으로 묶어 규칙에서 참조할 수 있게 합니다. 노드를 하나씩 지정할 필요가 없습니다. 대표적인 유형으로는 수동 선택 방식인 select, 테스트 결과에 따라 선택하는 url-test, 사용 가능 여부에 따라 대체하는 fallback이 있습니다. 자동 선택이 모든 상황에서 더 빠른 것은 아니므로 그룹 내 노드, 테스트 주소, 전환 조건을 함께 확인해야 합니다.

DIRECT, REJECT, PROXY

Built-in policies and configured names

DIRECT는 프록시 서버를 거치지 않고 대상에 직접 연결하는 기본 정책이고, REJECT는 일치하는 연결을 거부합니다. 반면 PROXY는 일반적으로 설정 작성자가 지정한 프록시 그룹 이름일 뿐, 모든 설정에 기본으로 포함된 고정 정책은 아닙니다. 규칙에서 참조하는 그룹 이름은 정의된 이름과 정확히 일치해야 합니다. 대소문자, 공백, 이름 변경이 일치하지 않으면 설정을 불러오지 못할 수 있습니다.

MATCH

Catch-all rule

MATCH는 앞선 규칙에서 처리되지 않은 나머지 모든 연결에 적용됩니다. 보통 규칙 목록의 마지막에 기본 규칙으로 둡니다. 예를 들어 MATCH,DIRECT는 나머지 연결을 직접 연결하며, 구체적인 정책은 설정 목적에 따라 선택해야 합니다. 목록 앞부분에 배치하면 뒤의 세부 규칙이 적용되지 않는 경우가 많습니다. 라우팅이 예상과 다를 때는 먼저 MATCH의 위치를 확인하세요.

GeoIP와 GeoSite

IP geography and domain categories

GeoIP는 IP 주소의 분류 정보를, GeoSite는 도메인 분류 정보를 제공하며 둘 다 규칙 판단에 사용됩니다. 프록시 노드를 제공하는 기능은 아닙니다. 분류 결과는 데이터 출처와 업데이트 시점에 따라 달라질 수 있으며, 사용자나 서버의 정확한 물리적 위치와도 다를 수 있습니다. 사용할 때는 커널이 해당 데이터 형식을 지원하는지, 파일을 정상적으로 불러왔는지, 앞선 규칙이 해당 규칙을 덮어쓰지 않는지 확인하세요.

데이터베이스 업데이트 및 규칙 작성법 보기 →

DNS와 네트워크 스택

트래픽을 가로채는 과정과 도메인을 조회하는 과정은 서로 관련되어 있지만 별개의 경로입니다. 프록시를 켠 뒤에도 앱이 실제로 어떤 경로를 사용하는지 확인해야 합니다.

TUN 모드

Virtual network interface

TUN 모드는 가상 네트워크 인터페이스로 IP 트래픽을 받아 커널에서 라우팅과 연결 처리를 수행합니다. 시스템 프록시 설정을 따르지 않는 앱도 더 폭넓게 처리할 수 있지만, 실제 적용 범위는 라우팅, 제외 항목, 플랫폼 구현에 따라 달라집니다. 사용하려면 일반적으로 적절한 권한이 필요하며, 다른 VPN이나 가상 네트워크 어댑터, 로컬 네트워크 접근 규칙과 충돌하지 않는지도 확인해야 합니다.

플랫폼별 TUN 설정 보기 →

시스템 프록시

Operating system proxy settings

시스템 프록시는 운영체제의 프록시 설정을 클라이언트의 로컬 수신 주소와 포트에 연결해 해당 설정을 따르는 앱에서 사용하도록 합니다. 모든 네트워크 연결을 하나의 터널로 처리하는 기능은 아닙니다. 일부 게임, 명령줄 도구, 자체 네트워크 스택을 사용하는 앱은 이 설정을 따르지 않을 수 있습니다. 클라이언트를 종료한 뒤 프록시 설정이 남아 있고 수신 포트가 닫히면 브라우저가 연결되지 않을 수 있습니다.

DNS

Domain Name System

DNS는 도메인을 IP 주소 등의 레코드로 변환하며, 일반적으로 조회가 성공한 뒤 대상에 연결합니다. 브라우저의 보안 DNS, 시스템 리졸버, 커널 DNS가 동시에 작동할 수 있어 클라이언트의 DNS 옵션을 바꿔도 모든 앱의 조회 경로가 바뀌는 것은 아닙니다. 문제를 확인할 때는 DNS 조회 실패, 부적절한 주소 반환, 대상 연결 실패를 구분해야 합니다. 각각 해결 방법이 다릅니다.

Fake-IP

Synthetic address mapping

Fake-IP는 조회한 도메인에 가상 주소를 반환하고, 커널에 주소와 도메인의 매핑 정보를 저장합니다. 이후 연결이 커널에 도달하면 매핑으로 도메인을 복원해 라우팅한 뒤 실제 연결을 시도합니다. 이 주소는 웹사이트의 실제 IP가 아닙니다. 실제 DNS 결과에 의존하는 앱은 예외 설정이 필요할 수 있으며, DNS 모드를 바꾼 뒤에도 운영체제나 앱에 이전 캐시가 남아 있을 수 있습니다.

DNS 누출

DNS query path leakage

DNS 누출은 조회가 예상한 경로를 우회하는 현상을 말합니다. 예를 들어 프록시를 통해 전송하려던 DNS 조회가 앱에서 다른 리졸버로 직접 전송될 수 있습니다. 확인할 때는 출구 IP만으로 추측하지 말고 조회가 실제로 어디로, 어떤 전송 방식으로 전달되며 의도한 경로와 일치하는지 살펴봐야 합니다. 암호화 DNS는 특정 전송 구간을 보호하지만 조회가 프록시를 통과한다는 보장은 없습니다. 브라우저 설정, 시스템 라우팅, 커널 로그를 함께 확인하세요.

네트워크 문제 해결 문답 보기 →

구독과 설정 파일

구독은 정보를 배포하고 설정 파일은 동작 방식을 정의합니다. 가져오기 성공, 구문 유효성, 연결 가능 여부는 각각 별도로 확인해야 합니다.

구독

Subscription URL

구독은 하나의 주소를 통해 노드 정보나 전체 설정을 가져오고 업데이트하는 배포 방식입니다. 제공되는 내용이 모든 클라이언트와 호환되는 것은 아닙니다. 주소에 접근 인증 정보가 포함될 수 있으므로 화면 캡처, 로그, 문의 내용을 공유하기 전에 전체 주소를 가리세요. 구독을 업데이트하면 로컬에서 수정한 내용이 덮어써질 수 있습니다. 사용자 지정 규칙은 클라이언트에서 지원하는 덮어쓰기나 병합 기능에 추가하고, 업데이트 후 결과를 확인하세요.

구독 가져오기 단계 보기 →

YAML

YAML configuration format

YAML은 Clash 설정에 자주 쓰이는 구조화된 텍스트 형식으로, 들여쓰기로 계층을 표현하고 목록과 맵으로 매개변수를 구성합니다. 들여쓰기에는 탭 대신 공백을 사용하고, 특수 문자가 포함된 값은 YAML 규칙에 따라 따옴표로 묶어야 합니다. 구문 분석에 성공해도 텍스트 구조가 유효하다는 뜻일 뿐입니다. 필드 지원 여부와 참조한 프록시 그룹의 존재 여부는 현재 커널에서 추가로 확인해야 합니다.

config.yaml

Runtime configuration file

config.yaml은 프록시 커널에서 흔히 사용하는 설정 파일 이름으로, 수신 포트, 노드, 프록시 그룹, 규칙, DNS 설정 등을 지정할 수 있습니다. 그래픽 클라이언트는 구독, 덮어쓰기 내용, 인터페이스 설정을 합쳐 별도의 실행 설정을 만들 수 있습니다. 따라서 편집 중인 파일이 커널에서 실제로 읽는 파일과 다를 수 있습니다. 변경 사항이 적용되지 않으면 같은 필드를 반복해서 수정하기보다 현재 설정, 저장 여부, 다시 불러온 결과를 확인하세요.

구독 변환

Subscription conversion

구독 변환은 노드 정보나 기존 설정을 다른 클라이언트에서 읽을 수 있는 형식으로 정리하며, 프록시 그룹이나 규칙 템플릿을 추가하기도 합니다. 형식을 변환해도 커널에서 지원하지 않는 프로토콜이 추가되지는 않으며, 원본 데이터에 필수 매개변수가 빠져 있으면 자동으로 채워지지 않습니다. 원격 변환 서비스를 이용하면 서비스 제공자가 원본 구독 주소와 노드 인증 정보에 접근할 수 있으므로 처리 범위를 먼저 확인하세요. 이미 호환되는 설정이라면 바로 가져오는 방법을 우선 고려할 수 있습니다.

proxy-providers

External proxy providers

proxy-providers는 원격 또는 로컬 노드 목록을 선언해 노드 업데이트와 기본 설정 관리를 분리할 수 있게 합니다. 목록을 불러온 뒤에는 해당 노드가 선택 항목에 표시되도록 프록시 그룹에서 use로 참조해야 하는 경우가 많습니다. 제공자에서 데이터를 성공적으로 내려받았다고 해서 그룹 내 노드에 연결할 수 있는 것은 아닙니다. 내용 형식, 참조 이름, 노드 테스트 결과를 각각 확인하세요.

rule-providers

External rule providers

rule-providers는 외부 규칙 모음을 선언하며, RULE-SET을 사용해 기본 규칙 목록에서 적용 위치와 대상 정책을 지정합니다. 규칙 모음의 내용 구성은 선언된 behavior 및 format과 일치해야 합니다. 도메인 목록을 임의 형식의 규칙 모음으로 사용할 수는 없습니다. 규칙 모음의 내용이 업데이트되어도 기본 목록에서의 순서에 따라 연결에 적용되는지가 결정됩니다.

규칙 모음과 매칭 순서 보기 →