입문

초보 필독: 5분 만에 이해하는 Clash 작동 원리

Clash를 처음 접하면 「노드, 구독, 규칙, 정책 그룹, 코어」 같은 용어에 어지럽고, 설정 파일을 열어보면 더 막막해지기 쉽습니다. 핵심은 하나뿐입니다—라우팅, 즉 규칙에 따라 서로 다른 트래픽을 서로 다른 출구로 보내는 것—이 개념만 잡으면 나머지 용어는 자연스럽게 제자리를 찾습니다. 이 글은 복잡한 설정은 다루지 않고, 머릿속에 명확한 「지도」를 그리는 데만 집중합니다.

Clash란 무엇인가?

Clash는 규칙 기반 프록시 클라이언트입니다. 두 가지를 기억하세요. 첫째, 「클라이언트」이므로 인터넷에 연결되는 회선을 직접 제공하지 않습니다. 둘째, 「규칙 기반」이므로 각 연결이 어디로 갈지 판단하는 일을 가장 잘합니다.

실제로 하는 일도 하나입니다. 기기의 모든 네트워크 요청을 정의한 규칙에 따라, 로컬 직접 연결로 갈지 특정 프록시 서버로 넘길지 결정합니다.

비유하자면 Clash는 회사 접수처의 분류 담당과 같습니다. 택배(네트워크 요청)가 오면 수신 주소(도메인 또는 IP)를 보고, 현지에서 바로 배달(직접 연결)할지 특정 택배사(프록시 노드)로 넘길지 정합니다. 직접 배달하지는 않고 「분류」만 담당합니다.

왜 「라우팅」이 필요한가?

모든 트래픽을 프록시로 보내면 되지 않느냐고 물을 수 있습니다. 그렇게 하면 비효율적입니다. 국내 사이트나 국내 영상은 원래 직접 연결이 빠르고 안정적인데, 프록시를 한 바퀴 돌리면 속도가 느려지고 지연이 커지며, 소중한 프록시 트래픽만 낭비됩니다. 반대로 직접 연결이 안 되는 해외 서비스에만 프록시가 필요합니다.

「라우팅」은 이 두 종류의 트래픽을 자동으로 구분합니다. 직접 연결할 것은 직접, 프록시할 것은 프록시로, 각자 길을 가며 서로 방해하지 않습니다. 이것이 Clash의 가장 큰 가치이며, 「전부 프록시」 방식 도구와의 본질적 차이입니다.

네 가지 핵심 개념

1. 노드(proxies)

노드는 실제로 트래픽을 중계해 주는 서버로, 서비스 제공업체나 직접 구축한 것입니다. 서버 주소, 포트, 프로토콜, 비밀번호 등이 포함됩니다. 다시 한번 강조하면 Clash 자체에는 노드가 없으며, 직접 준비해야 합니다.

2. 정책 그룹(proxy-groups)

노드가 많을 때는 「그룹」으로 묶어 관리하는 편이 훨씬 편합니다. 정책 그룹은 수동 선택, 자동 속도 테스트로 최적 선택, 장애 시 자동 전환 등 다양한 유형이 있습니다. 클라이언트 UI에서 클릭하며 바꾸는 대상은 대부분 개별 노드가 아니라 정책 그룹입니다.

3. 규칙(rules)

규칙은 「어떤 트래픽이 어떤 출구로 갈지」를 정합니다. Clash는 위에서 아래로 한 줄씩 매칭하며, 한 번 맞으면 즉시 멈춥니다. 도메인, IP 대역, 지역(GEOIP), 프로세스 이름 등이 흔한 기준입니다. 예를 들면:

4. 구독(subscription)

구독은 링크 하나로, 클라이언트가 접속하면 노드 묶음을 자동으로 가져와 주기적으로 갱신합니다(규칙이 포함되기도 합니다). 서비스 제공업체가 서버를 바꿔도 설정을 수동으로 고칠 필요 없이 클라이언트가 동기화합니다. 구독 링크는 자격 증명과 같으니 공개해서는 안 됩니다.

요청 한 번의 전체 여정

위 개념을 이어 붙이면 웹페이지 접속 과정은 다음과 같습니다.

  1. 브라우저에서 사이트를 엽니다;
  2. Clash가 요청을 가로채 도메인 또는 IP를 추출합니다;
  3. rules 순서대로 매칭해 「직접 연결」「특정 정책 그룹」「거부」 중 하나를 정합니다;
  4. 정책 그룹으로 가면, 그 그룹에서 현재 선택된 노드가 요청을 중계합니다;
  5. 데이터가 돌아와 페이지가 열립니다. 전 과정은 밀리초 단위로 끝나 거의 느끼지 못합니다.

코어와 클라이언트의 관계

헷갈리기 쉬운 한 쌍이 더 있습니다. 코어(Core)는 실제 프록시·라우팅을 담당하는 하위 엔진(클래식 Clash 코어, 후속 Mihomo 등)이고, 클라이언트(GUI)는 그 위에 그래픽 UI를 씌워 클릭으로 조작하게 해 줍니다(Clash Verge Rev, FlClash 등). 보통 받는 것은 클라이언트이며, 해당 코어가 내장되어 바로 쓸 수 있습니다.

초보자 흔한 오해

Clash가 할 수 있는 것과 없는 것

경계를 알면 시행착오가 줄어듭니다. Clash는 이미 있는 노드를 잘 관리·라우팅합니다. 여러 노드 간 전환, 규칙에 따른 정확한 출구 분배, 광고·추적 도메인 차단, 구독으로 최신 노드 목록 자동 유지가 가능합니다. 결국 「스케줄링」과 「라우팅」을 하는 도구입니다.

반대로 Clash가 할 수 없는 것도 분명합니다. 쓸 수 있는 회선을 만들어 주지 않으며, 특정 노드가 반드시 되거나 빠르다고 보장하지 않습니다—전적으로 노드 품질에 달립니다. 백신이나 방화벽도 아니며, 바이러스 차단이나 악성 프로그램으로부터의 보호는 담당하지 않습니다. 똑똑한 「교통 통제」이지 「도로」나 「차량」이 아니라고 이해하면 기대치가 맞고, 문제 발생 시 어느 단계인지 판단하기 쉬워집니다.

다음 단계

원리를 이해했다면 안심하고 시작하세요. 먼저 다운로드 페이지에서 기기에 맞는 클라이언트를 고르고, 문서를 따라 구독이나 설정을 가져오세요. 중간에 문제가 생기면 FAQ에서 답을 찾을 가능성이 큽니다. 이 「지도」만 잡으면 Clash는 생각보다 훨씬 단순합니다.


더 읽기