CreateYourVPN Academy
라우터

OpenWRT 라우터

Nikki로 OpenWRT 라우터를 CreateYourVPN에 연결하는 방법 — 구독 링크 하나만 추가하면 패널의 스플릿 터널링 규칙이 홈 네트워크 전체에 자동으로 적용됩니다.

라우터를 연결한다는 것은 집 전체를 VPN 뒤에 두는 것을 의미합니다: 휴대폰, TV, 노트북 등 모든 기기가 각각 설정할 필요 없이 VPN을 사용하게 됩니다. OpenWRT에서는 이것이 가장 매끄러운 방법입니다: 구독 링크 하나만 추가하면 라우터가 그 링크에서 서버와 패널의 스플릿 터널링 규칙을 함께 가져옵니다. 패널에서 규칙을 바꾸면 라우터가 다음 업데이트 때 이를 반영합니다.

우리는 Nikki — mihomo(Clash.Meta) 코어 기반의 가벼운 OpenWRT 앱 — 를 사용합니다. 이 가이드는 전체 과정을 다룹니다: Nikki 설치(많은 제공업체 환경에서 프로젝트 피드가 열리지 않기 때문에 수동 설치를 기본 방법으로 안내합니다), 구독 연결, 자동 업데이트, 그리고 작동 확인까지.

Nikki에는 OpenWRT 24.10 이상이 필요합니다(25.x와 SNAPSHOT도 작동합니다). OpenWRT 23.05는 지원되지 않습니다.

준비물

  • 인터넷에 연결된 OpenWRT ≥ 24.10 라우터.
  • 라우터의 웹 인터페이스(LuCI) 및 SSH 접근 권한(로그인 root, 비밀번호는 LuCI와 동일).
  • 같은 네트워크에 연결된 컴퓨터와 10~15분의 시간.

1단계. Nikki 설치하기

Nikki는 OpenWRT의 기본 피드에 없습니다 — 자체 패키지 피드에서 설치해야 합니다. 문제는 이 피드와 설치 스크립트가 GitHub에 있는데, 많은 제공업체 환경에서 GitHub 접속이 원활하지 않다는 점입니다 — "명령어 두 줄"로 끝나는 빠른 설치가 자주 그냥 실패합니다. 그래서 여기서는 언제나 작동하는 수동 설치 방법을 기본으로 안내합니다. GitHub 접속에 문제가 없다면 방법 B가 더 빠릅니다.

방법 A — 수동 설치 (항상 작동)

패키지를 컴퓨터로 내려받아 직접 라우터로 옮깁니다 — 라우터 자체에서 GitHub에 접속할 필요는 없습니다.

라우터의 아키텍처를 확인하세요: LuCI에서 System → Software를 열고 **Update lists…**를 클릭하면 명령 출력에 아키텍처가 표시됩니다(예: x86_64 또는 aarch64_cortex-a53). SSH로는 grep OPENWRT_ARCH /etc/os-release 명령을 대신 사용할 수 있습니다.

릴리스 페이지 nikkinikki.pages.dev를 열고, 사용 중인 OpenWRT 버전의 디렉터리(openwrt-24.10, openwrt-25.12 또는 SNAPSHOT)로 들어간 다음, 여러분의 아키텍처 폴더로 들어가세요. 세 가지 패키지를 내려받으세요: mihomo-meta(코어), nikki, luci-app-nikki — 러시아어 인터페이스가 필요하면 luci-i18n-nikki-ru도 추가로 받으세요(러시아어용이며, 한국어 팩은 아직 제공되지 않습니다). 정식 버전은 .ipk 파일, SNAPSHOT은 .apk 파일입니다. 모두 별도 폴더에 모아두세요. 예: Downloads/nikki.

폴더를 라우터로 복사하세요. -O 플래그는 필수입니다: 이 플래그가 없으면 scp가 OpenWRT에는 없는 SFTP를 사용하려고 시도합니다(반대로 사용 중인 scp 버전이 -O 플래그를 모른다면 그냥 빼세요 — 오래된 버전은 어차피 필요한 프로토콜을 사용합니다). 폴더가 "다운로드"에 있지 않거나 이름이 다르면 명령어의 경로를 알맞게 수정하세요.

macOS / Linux:

scp -O -r ~/Downloads/nikki root@192.168.1.1:/root/

Windows (PowerShell):

scp -O -r "$env:USERPROFILE\Downloads\nikki" root@192.168.1.1:/root/

SSH로 접속한 뒤 폴더 안의 패키지를 설치하세요 — mihomo 코어를 목록 맨 앞에 두세요:

ssh root@192.168.1.1
opkg update
cd nikki
opkg install ./mihomo-meta*.ipk ./nikki*.ipk ./luci-app-nikki*.ipk

opkg update는 패키지 관리자가 OpenWRT 정식 저장소에서 의존성을 가져오도록 하기 위해 필요합니다. 러시아어 번역판을 받았다면 명령어 끝에 ./luci-i18n-nikki-ru*.ipk를 추가하세요. SNAPSHOT 빌드에는 opkg가 없습니다 — 마지막 두 명령어 대신 apk update를 실행한 뒤 apk add --allow-untrusted ./mihomo-meta*.apk ./nikki*.apk ./luci-app-nikki*.apk를 실행하세요(수동 설치 시 시스템에 프로젝트 서명 키가 없기 때문에 이 플래그가 필요합니다).

방법 B — 프로젝트 피드 이용 (GitHub 접속 가능 시)

명령어 두 줄로 끝나는 전통적인 설치 방법입니다. 여러분의 제공업체 환경에서 GitHub이 정상적으로 열린다면 이 방법을 시도해 보세요.

SSH로 라우터에 접속해 프로젝트 피드를 추가하세요:

ssh root@192.168.1.1
wget -O - https://github.com/nikkinikki-org/OpenWrt-nikki/raw/refs/heads/main/feed.sh | ash

192.168.1.1은 라우터의 기본 주소입니다. 다르다면 여러분의 주소로 바꿔서 사용하세요.

패키지를 설치하세요 — mihomo 코어는 자동으로 함께 설치됩니다:

opkg install nikki luci-app-nikki luci-i18n-nikki-ru

luci-i18n-nikki-ru는 Nikki 인터페이스의 선택적 러시아어 번역판입니다(한국어 팩은 없으므로 생략해도 됩니다). SNAPSHOT 빌드에서는 패키지 관리자가 다릅니다: 동일한 패키지를 apk add로 설치합니다.

스크립트가 멈추거나 패키지가 설치되지 않는다면 — 여러분의 제공업체 환경에서 피드에 접속할 수 없는 것입니다. 걱정하지 마세요: 방법 A는 피드 없이도 작동합니다.

공식 안내서는 항상 최신 상태를 유지합니다 — 명령어가 바뀌었다면 이곳에서 확인하세요:

어떤 방법으로 패키지를 설치했든, 설치 후에는 LuCI에서 로그아웃했다가 다시 로그인하세요 — 다시 로그인해야만 메뉴에 Services → Nikki 항목이 나타납니다.

2단계. 계정에서 구독 링크 복사하기

계정에 로그인한 뒤 "라우터" 블록을 찾으세요.

"라우터 지원 활성화" 스위치를 켜세요.

**구독 링크 (OpenWRT / Nikki)**를 복사하세요 — /clash로 끝납니다. 라우터는 바로 이 링크를 통해 여러분의 서버와 패널의 스플릿 터널링 규칙을 함께 받아옵니다.

구독 링크는 비밀입니다: 이 링크를 가진 사람은 누구나 여러분의 VPN을 사용할 수 있습니다. 이 링크를 전달하거나 어디에도 게시하지 마세요.

3단계. Nikki에 구독 추가하기

Services → Nikki에서 Profile 탭을 열고 새 구독을 추가하세요: 이름은 원하는 대로 지정하고(예: CreateYourVPN), Subscription Link 필드에 계정에서 복사한 구독 링크를 붙여넣으세요. 나머지 필드는 그대로 두어도 됩니다. Save & Apply를 클릭하세요.

구독 항목에서 Update를 클릭하세요 — Nikki가 프로필(서버와 여러분의 스플릿 터널링 규칙)을 내려받습니다.

4단계. Nikki 활성화하기

Proxy Config 탭에서 프록시가 켜져 있는지(Enable) 확인하고, TCP ModeTPROXY로 전환하세요. Save & Apply를 클릭하세요. 방화벽 규칙은 Nikki가 알아서 설정합니다.

App Config 탭에서 EnableFast Reload를 켜고, 프로필 선택 필드에서 추가한 구독을 지정한 뒤 Save & Apply를 클릭하세요 — 서비스가 시작됩니다.

같은 화면에서 Scheduled Restart도 함께 켜두는 것을 권장합니다. cron 표현식은 예를 들어 0 5 * * *(매일 05:00)로 설정하세요. Nikki는 재시작할 때마다 구독을 새로 받아오므로, 라우터가 패널에서 바뀐 규칙과 최신 서버 정보를 스스로 반영하게 되어 수동으로 업데이트할 필요가 없습니다.

5단계. 작동 확인하기

Nikki에서 Open Dashboard를 클릭하세요 — 코어 상태와 여러분의 서버가 표시된 대시보드가 열립니다. 그다음 라우터를 통해 연결된 아무 기기에서나 VPN을 거쳐야 하는 사이트를 열어, 표시되는 지역이 바뀌었는지 확인하세요. 예외(VPN 우회)로 지정한 사이트는 여전히 직접 연결되어야 합니다.

코어가 처음에 바로 시작되지 않는 경우. mihomo는 처음 실행될 때 GitHub에서 지역 데이터베이스(국가별·카테고리별 규칙에 필요)를 추가로 내려받으므로 라우터에 인터넷 연결이 필요합니다 — 여러분의 네트워크에서 GitHub 접속이 원활하지 않다면 첫 시작이 실패할 수 있습니다. Nikki(또는 라우터 전체)를 재시작한 뒤 Dashboard를 다시 열어보세요 — 데이터베이스를 모두 받을 때까지 몇 번 시도해야 할 때도 있습니다. 서비스가 한 번 정상적으로 뜨고 나면 이후로는 안정적으로 작동합니다.

규칙과 서버는 어떻게 업데이트되나요

스플릿 터널링 규칙은 패널에서 수정하며, 라우터에서는 아무것도 바꿀 필요가 없습니다. 라우터는 구독이 업데이트될 때마다 최신 버전을 받아옵니다: 예약된 일정에 따라 자동으로(4단계의 Scheduled Restart) 받거나, Profile 탭의 Update 버튼으로 수동으로 받을 수 있습니다. 규칙과 함께 서버 정보도 업데이트됩니다: 여러분에게 새 서버가 배정되면, 라우터는 다음 구독 업데이트 때 그 서버로 전환됩니다.

팁: 토렌트와 라우터 부하

이제 홈 네트워크의 모든 트래픽이 라우터의 mihomo 코어를 거칩니다. 사양이 낮은 기기에서 무거운 P2P 다운로드를 돌리면 라우터의 CPU가 한계까지 차서 속도가 떨어질 수 있습니다. 이런 문제를 겪는다면 트래픽 가로채기를 포트 목록으로 제한하세요: Proxy Config → Bypass 탭에서 Destination TCP PortDestination UDP PortCustom으로 전환하고, VPN을 거쳐야 하는 포트를 나열하세요(예: 80443; 값을 입력할 때마다 Enter를 누른 뒤 Save & Apply를 클릭하세요). 목록에 없는 모든 트래픽 — 무작위 상위 포트를 사용하는 토렌트 클라이언트를 포함해서 — 은 VPN과 코어를 거치지 않고 직접 나갑니다.

이것은 일종의 타협책입니다: 목록에 없는 포트에서 동작하는 애플리케이션도 VPN을 거치지 않게 됩니다. 라우터 부하가 실제로 문제가 될 때만 사용하세요.

유용한 참고 자료

On this page