/블로그/Dashboard 사용 가이드

Clash Dashboard 사용 가이드: 연결 관리, 트래픽 그래프, 지연시간 테스트

"이 규칙이 정말 적용되고 있는 걸까?", "이 연결은 어떤 노드를 쓰고 있지?", "왜 갑자기 느려졌지?" — 이런 질문들은 추측만으로는 답을 찾기 어렵지만, Dashboard를 열어보면 대부분 한눈에 확인할 수 있습니다. 이 글에서는 패널과 Clash 코어의 관계, 여는 방법, 주요 기능 사용법, 그리고 반드시 알아야 할 보안 주의사항을 정리합니다.

🗓️ 2026년 7월 17일 ⏱️ 약 8분 소요 🔗 관련 문서: 설정 레퍼런스 · 외부 컨트롤러와 패널

Dashboard와 코어의 관계

Dashboard 자체는 네트워크 트래픽을 처리하지 않습니다. 코어의 상태를 "읽고 조작"하기 위한 웹 UI일 뿐이며, 실제 작업은 항상 Clash 코어가 담당합니다.

이 관계는 설정 파일의 external-controller 필드를 통해 성립됩니다 — 코어가 시작되면 해당 주소에 로컬 API가 열리고, Dashboard 화면은 브라우저를 통해 이 API에 접근해 노드 목록, 연결 상태, 로그 등의 정보를 표시합니다. 동시에 이 API를 통해 명령을 내릴 수도 있습니다(예: 프록시 그룹이 현재 사용 중인 노드 전환). 이를 이해하면 Dashboard는 존재할 수 있는 수많은 "프런트엔드" 중 하나일 뿐이라는 점을 알 수 있습니다 — 동일한 코어에 여러 개의 다른 패널이 동시에 연결될 수 있습니다.

config.yamlyaml
external-controller: 127.0.0.1:9090
secret: "충분히 복잡한 키를 설정하세요"

패널을 여는 방법

클라이언트마다 Dashboard를 제공하는 방식은 조금씩 다르지만, 원리는 모두 동일합니다:

  • 대부분의 GUI 클라이언트(Clash Verge Rev, FlClash 등): 이미 패널 진입 메뉴가 내장되어 있어, 보통 앱의 "개요" 또는 "패널" 메뉴에서 바로 열 수 있으며 추가 설정이 필요 없습니다.
  • 코어 단독 / 커맨드라인 배포: 오픈소스 패널 프로젝트(커뮤니티에서 자주 쓰는 yacd, metacubexd 등)를 별도로 준비해야 합니다. 패널의 정적 파일을 코어와 같은 위치에 두거나, external-controller 주소에 접근 가능한 임의의 위치에 배포한 뒤 브라우저로 열면 됩니다.
💡

패널 화면은 자유롭게 바꿔서 사용할 수 있습니다 — 동일한 코어에 대해, 클라이언트 내장 패널을 사용하면서 동시에 브라우저에서 커뮤니티 패널을 열어 같은 external-controller 주소에 연결할 수도 있습니다. 둘 다 동일한 실시간 데이터를 보여줄 뿐, 서로 충돌하지 않습니다.

주요 기능 둘러보기

패널 기능확인할 수 있는 것대표 활용법
연결 목록 (Connections)각 활성 연결의 대상 도메인/IP, 사용 중인 프록시 노드, 매칭된 규칙, 전송된 트래픽"이 사이트가 실제로 어떤 노드/규칙을 타고 있는지" 확인
프록시 (Proxies)모든 노드와 프록시 그룹, 각 노드의 현재 지연시간, select 그룹의 노드를 수동으로 전환 가능수동 속도 비교, 수동 회선 전환
트래픽 (Traffic)실시간 업로드/다운로드 속도 그래프실제로 트래픽이 흐르고 있는지, 비정상적인 급증이 있는지 직관적으로 확인
로그 (Logs)코어가 실시간으로 출력하는 로그, 규칙 매칭 및 연결 성립/실패 정보 포함오류 확인, 특정 규칙이 실제로 트리거됐는지 확인

평소 트러블슈팅에서 가장 많이 쓰는 것은 연결 목록입니다. 특정 연결을 클릭하면 실제로 사용 중인 노드와 매칭된 규칙 이름을 바로 확인할 수 있어, "규칙이 정말 적용되고 있는지"를 판단하는 가장 직접적인 방법이며, 설정을 반복해서 수정하고 테스트하는 것보다 훨씬 빠릅니다.

연결 목록으로 실제 문제 진단하기

"특정 사이트가 이상하게 접속된다"는 상황을 만나면, 설정이 잘못됐다고 바로 의심하기보다 연결 목록에서 해당 연결을 먼저 찾아보는 것이 더 효율적입니다:

  1. 연결 목록에서 대상 도메인을 찾습니다(보통 최근 발생 순으로 정렬되어 있어 찾기 쉽습니다). 목록에 전혀 나타나지 않는다면 요청이 시스템 레벨에서 차단됐을 가능성이 있으며, 문제는 Clash에 있지 않습니다.
  2. 매칭된 규칙 이름을 확인하고, 설정 파일과 대조해 이 규칙의 동작이 예상과 일치하는지 확인합니다.
  3. 사용 중인 프록시 노드를 확인합니다. 규칙의 동작이 특정 프록시 그룹을 가리키는데 실제 사용 노드가 예상과 다르다면, "프록시" 탭으로 돌아가 해당 그룹의 현재 스케줄링 상태를 확인하세요(예: url-test 그룹이 가장 빠른 노드를 제대로 선택했는지).

이 진단 방식은 본질적으로 규칙 엔진의 매칭 로직과 실제 실행 결과를 서로 대조해보는 것으로, 단순히 "설정을 바꾸고 다시 시도"하는 것보다 훨씬 타겟이 명확합니다.

보안 주의사항: secret과 allow-lan

⚠️

external-controller가 노출하는 인터페이스는 단순히 "조회"만 가능한 게 아니라 "조작"도 가능합니다 — 노드 목록 읽기, 프록시 전환, 일부 런타임 설정 변경까지 가능합니다. allow-lan이 켜져 있으면 이 인터페이스는 로컬 네트워크 내에서도 접근 가능해집니다.

따라서 반드시 지켜야 할 보안 원칙이 두 가지 있습니다:

  • allow-lan이 켜져 있는 동안에는 반드시 충분히 복잡한 secret을 설정해, 로컬 네트워크 내 다른 기기가 승인 없이 패널 API에 접근하지 못하도록 해야 합니다.
  • 단일 기기에서만 사용한다면 external-controller0.0.0.0이나 LAN IP에 바인딩할 필요가 없습니다. 기본값인 127.0.0.1(로컬에서만 접근 가능)만으로도 충분히 안전하고 더 간단합니다.