OpenClash는 OpenWrt 공유기에서 실행되는 Clash 계열 프록시 관리 도구입니다. PC나 스마트폰마다 별도의 프록시 앱을 설치하지 않아도 공유기에 연결된 여러 기기의 트래픽을 한 곳에서 라우팅할 수 있어, 가정용 네트워크와 소규모 사무실 환경에서 특히 편리합니다. 이 글에서는 OpenWrt 공유기의 호환성을 확인하는 방법부터 OpenClash 설치, 대시보드 접속, 설정 파일 적용, 연결 테스트와 문제 해결까지 초보자도 따라 할 수 있도록 단계별로 설명합니다.

OpenClash와 OpenWrt 준비사항

OpenClash 설치를 시작하기 전에 먼저 공유기의 펌웨어와 하드웨어 정보를 확인해야 합니다. OpenClash는 일반 제조사 펌웨어가 아니라 OpenWrt 또는 OpenWrt 기반 펌웨어에서 동작합니다. 공유기 관리자 페이지가 제조사 전용 화면이라면 바로 설치할 수 없으며, 먼저 해당 모델에 맞는 OpenWrt 펌웨어를 설치해야 합니다.

확인 항목권장 기준확인 방법
펌웨어OpenWrt 23.05 이상 또는 호환되는 최신 버전관리 페이지의 상태 또는 시스템 정보
저장 공간패키지와 로그를 고려해 여유 공간 확보시스템 → 소프트웨어 또는 저장 공간 메뉴
메모리최소 128MB, 가능하면 256MB 이상상태 → 개요의 메모리 정보
인터넷 연결패키지 다운로드가 가능한 WAN 연결시스템 로그와 네트워크 상태
관리 권한root 또는 관리자 계정SSH 접속 및 LuCI 로그인

저장 공간과 메모리가 부족하면 설치 자체는 완료되어도 규칙 업데이트, DNS 캐시, 연결 로그를 처리할 때 문제가 발생할 수 있습니다. 오래된 8MB 플래시 공유기에서는 패키지 설치가 실패하거나 설정 파일을 저장할 공간이 부족할 가능성이 높습니다. 이 경우 USB 저장 장치를 추가하거나, 처음부터 저장 공간이 넉넉한 라우터를 선택하는 편이 안정적입니다.

OpenWrt 펌웨어를 잘못 선택하면 공유기가 부팅되지 않을 수 있습니다. 모델명뿐 아니라 하드웨어 리비전, 지역 버전, NAND 또는 NOR 플래시 유형까지 확인하고 설정 백업을 먼저 저장하세요.

패키지 목록 갱신과 OpenClash 설치

OpenClash는 LuCI 관리 화면의 소프트웨어 메뉴에서 설치할 수도 있고, SSH 터미널에서 패키지를 직접 설치할 수도 있습니다. 초보자에게는 LuCI 방식이 간단하지만, 패키지 저장소 오류가 발생했을 때는 SSH 명령이 더 정확한 원인을 보여줍니다. 두 방법 중 하나만 사용하면 되며, 같은 패키지를 반복해서 설치할 필요는 없습니다.

먼저 공유기 관리자 페이지에 로그인한 뒤 시스템소프트웨어로 이동합니다. 패키지 목록 갱신 버튼을 눌러 저장소 정보를 새로 받은 다음 검색창에서 luci-app-openclash를 찾습니다. 목록에 패키지가 표시되면 설치 버튼을 누르고, 의존성 패키지까지 함께 설치되도록 기다립니다.

저장소에 OpenClash가 표시되지 않는 경우에는 OpenClash 패키지 파일을 공유기에 업로드하는 방법을 사용할 수 있습니다. 다만 OpenWrt 버전과 CPU 아키텍처가 맞지 않는 패키지는 설치해도 실행되지 않습니다. 공유기의 아키텍처는 SSH에서 다음 명령으로 확인할 수 있습니다.

공유기 환경 확인 명령
# OpenWrt 버전 확인
cat /etc/openwrt_release

# CPU 아키텍처 확인
opkg print-architecture

# 여유 저장 공간 확인
df -h

# 메모리 상태 확인
free -h

SSH 설치를 선택했다면 먼저 패키지 목록을 갱신합니다. 이후 호환되는 패키지 파일을 설치하고 공유기를 재부팅하거나 LuCI 페이지를 새로 고칩니다. 설치가 완료되면 왼쪽 메뉴 또는 서비스 메뉴에 OpenClash 항목이 나타납니다.

설치 후 메뉴가 바로 보이지 않으면 브라우저 캐시를 삭제하고 다시 로그인하세요. 그래도 나타나지 않으면 /etc/init.d/uhttpd restart를 실행한 뒤 LuCI에 재접속하면 됩니다.

OpenClash 기본 설정과 관리 페이지

OpenClash 메뉴를 처음 열면 의존성 검사, 코어 설치, 설정 파일 준비와 관련된 안내가 표시됩니다. OpenClash는 실제 트래픽을 처리할 Clash 코어가 필요하므로, 사용 중인 펌웨어와 CPU에 맞는 Mihomo 코어를 선택하는 것이 일반적입니다. 코어를 다운로드할 때는 공유기의 아키텍처가 정확히 일치해야 하며, 다운로드 중에는 전원을 끄지 않는 것이 좋습니다.

설치 화면에서 먼저 코어 버전을 선택하고 설치 또는 업데이트를 실행합니다. 다음으로 설정 파일 관리 메뉴에서 구독 URL을 입력하거나 기존 YAML 파일을 업로드합니다. 구독 링크는 개인 계정 정보가 포함될 수 있으므로 공개 게시판이나 타인에게 공유하지 마세요. URL을 입력한 뒤 업데이트를 실행하면 프록시 노드와 프록시 그룹이 설정 파일에 추가됩니다.

처음 사용하는 경우에는 너무 많은 옵션을 한 번에 바꾸지 않는 것이 좋습니다. 기본적으로 다음 항목을 순서대로 확인하면 설정 오류를 줄일 수 있습니다.

  1. Mihomo 코어가 정상적으로 설치되었는지 확인합니다.
  2. 유효한 YAML 설정 파일을 선택하고 구독 업데이트를 실행합니다.
  3. 프록시 그룹에서 사용할 노드 또는 자동 선택 그룹을 지정합니다.
  4. DNS 모드와 LAN 접근 정책을 확인합니다.
  5. OpenClash 서비스 메뉴에서 자동 시작과 실행을 활성화합니다.

관리 페이지의 서비스 상태가 실행 중으로 표시되어도 실제 프록시가 정상 작동한다는 의미는 아닙니다. 코어 로그를 열어 설정 파일 파싱 오류, DNS 바인딩 실패, 포트 충돌, 노드 연결 실패가 없는지 확인해야 합니다. 특히 YAML은 들여쓰기와 콜론 위치에 민감하므로, 설정을 직접 수정할 때는 공백을 일정하게 유지하세요.

DNS와 라우팅 규칙 설정

공유기에서 OpenClash를 실행할 때 가장 중요한 부분은 DNS와 라우팅입니다. 클라이언트 기기가 공유기의 DNS를 사용하지 않고 통신사 DNS나 다른 외부 DNS를 직접 사용하면, 도메인 해석이 OpenClash의 규칙과 분리될 수 있습니다. 그 결과 일부 사이트는 직접 연결되고, 일부 사이트는 프록시로 연결되는 등 예상하기 어려운 동작이 발생합니다.

초보자는 먼저 안정적인 모드로 시작한 뒤 문제가 있을 때 fake-ip로 전환하는 방법이 좋습니다. redir-host는 실제 IP를 반환하므로 일부 게임과 로컬 서비스에서 호환성이 좋습니다. fake-ip는 도메인 기반 규칙 처리와 DNS 누출 방지에 유리하지만, 특정 게임이나 STUN 기반 음성 통화에서는 예외 도메인을 추가해야 할 수 있습니다.

기본 DNS 설정 예제
dns:
  enable: true
  enhanced-mode: fake-ip
  fake-ip-range: 198.18.0.1/16
  nameserver:
    - 1.1.1.1
    - 8.8.8.8
  fake-ip-filter:
    - '*.lan'
    - '*.local'
    - 'time.*.com'
    - 'stun.*.*'

위 예제는 참고용이며 모든 환경에 그대로 적용해야 하는 것은 아닙니다. 공유기에서 이미 다른 DNS 서비스가 53번 포트를 사용하고 있다면 바인딩 충돌이 생길 수 있습니다. 또한 IPTV, 홈 서버, 프린터처럼 로컬 네트워크에 있는 장치는 프록시 대상에서 제외하는 것이 일반적입니다.

라우팅 규칙은 보통 국내 또는 LAN 주소는 DIRECT, 지정한 도메인과 해외 서비스는 프록시 그룹, 나머지는 기본 정책으로 구성합니다. 규칙의 순서가 중요하므로 광범위한 MATCH 규칙을 위쪽에 배치하면 뒤에 있는 세부 규칙이 실행되지 않습니다. 설정을 바꾼 뒤에는 반드시 코어를 재시작하거나 설정 적용 버튼을 눌러 새 구성을 로드하세요.

서비스 실행과 정상 작동 확인

설정을 저장했다면 OpenClash의 서비스 관리 화면에서 자동 시작을 활성화하고 서비스를 시작합니다. 공유기 재부팅 후에도 서비스가 자동으로 실행되는지 확인하려면 전원을 다시 켠 뒤 1~2분 정도 기다리고 상태를 확인하세요. 저장 공간이 부족하거나 코어 다운로드가 실패한 경우 서비스가 자동 시작되지 않을 수 있습니다.

정상 작동 여부는 한 가지 테스트만으로 판단하지 말고 DNS, 외부 IP, 실제 연결 로그를 함께 확인해야 합니다.

  1. 클라이언트 기기가 공유기의 Wi-Fi 또는 LAN에 연결되어 있는지 확인합니다.
  2. 클라이언트의 DNS 서버가 공유기 주소를 가리키는지 확인합니다.
  3. 브라우저에서 외부 IP 확인 사이트를 열어 예상한 출구 IP가 표시되는지 확인합니다.
  4. OpenClash의 연결 또는 로그 페이지에서 요청 도메인과 적용된 규칙을 확인합니다.
  5. 프록시 그룹에서 다른 노드로 전환한 뒤 연결이 바뀌는지 테스트합니다.

특정 기기만 연결되지 않는다면 해당 기기의 수동 DNS 설정, IPv6 사용 여부, 브라우저의 보안 DNS 기능을 확인하세요. 스마트폰이나 최신 브라우저는 자체적으로 DoH 또는 DoT를 사용할 수 있어 공유기의 DNS 리디렉션을 우회할 수 있습니다. 처음에는 클라이언트에서 수동 DNS와 보안 DNS를 끄고 테스트하는 것이 원인 파악에 도움이 됩니다.

증상가능한 원인확인할 항목
서비스가 시작되지 않음코어 미설치, 권한 또는 저장 공간 부족코어 상태, 시스템 로그, df -h
노드 테스트 실패잘못된 구독 정보, 서버 만료, 시간 오류구독 URL, 공유기 시간, 코어 로그
일부 사이트만 연결 안 됨DNS 모드 또는 규칙 충돌DNS 로그, 매칭 규칙, fake-ip 예외
공유기 관리 화면이 느림메모리 부족, 과도한 연결 및 로그메모리 사용량, 연결 수, 로그 수준
로컬 장치 검색 실패LAN 도메인이 프록시 처리됨LAN/DIRECT 규칙, fake-ip-filter

자주 묻는 질문

OpenClash는 일반 VPN과 무엇이 다른가요?

OpenClash는 공유기에서 트래픽을 규칙에 따라 직접 연결하거나 프록시 그룹으로 전달하는 관리 도구입니다. 모든 트래픽을 하나의 암호화 터널로 보내는 일반적인 VPN과 달리 도메인, IP, 국가, 애플리케이션 환경에 따라 경로를 나눌 수 있습니다. 다만 실제 보안 수준과 개인정보 보호 범위는 사용하는 프록시 서버와 설정에 따라 달라집니다.

모든 연결 기기가 자동으로 프록시를 사용하나요?

기기가 공유기를 기본 게이트웨이와 DNS 서버로 사용하고, OpenClash의 LAN 처리 설정이 활성화되어 있다면 대부분의 TCP와 UDP 트래픽을 처리할 수 있습니다. 그러나 별도의 VPN, 수동 프록시, DoH, 고정 게이트웨이를 사용하는 기기는 공유기 규칙을 우회할 수 있습니다.

초보자도 fake-ip를 사용해도 되나요?

웹 브라우징과 일반적인 앱 사용이 중심이라면 fake-ip가 편리한 경우가 많습니다. 게임, 화상회의, 프린터 검색, 일부 은행 앱에서 문제가 발생하면 해당 도메인을 필터에 추가하거나 redir-host로 바꾸어 호환성을 비교하세요. 한 번에 여러 설정을 바꾸지 말고 변경 전후를 기록하는 것이 좋습니다.

구독 업데이트가 실패하면 어떻게 하나요?

먼저 공유기의 날짜와 시간이 정확한지, WAN 연결이 가능한지, 구독 URL이 만료되지 않았는지 확인합니다. HTTPS 인증서 오류가 있다면 시스템 시간과 CA 인증서 패키지를 점검해야 합니다. 업데이트가 반복해서 실패하면 설정 파일을 로컬에 다운로드한 뒤 업로드하는 방법으로 원인을 분리할 수 있습니다.

OpenClash는 설치보다 운영 과정의 안정성이 더 중요합니다. 처음에는 하나의 노드와 단순한 규칙으로 시작하고, 연결 로그가 정상적으로 쌓이는 것을 확인한 뒤 DNS 모드와 자동 선택 그룹을 단계적으로 추가하세요. 공유기 설정 백업과 구독 정보 관리를 습관화하면 OpenWrt 환경에서도 여러 기기의 트래픽을 안정적으로 제어할 수 있습니다.

시작하기

Clash로 트래픽을 완전히 제어하세요

Windows, macOS, Linux, Android, iOS 지원. 유연한 규칙, 간단한 설정.

무료 다운로드 설정 가이드 보기 →