OpenWrt 공유기를 VPN 게이트웨이로 구성하면 노트북, 스마트폰, 태블릿, 스마트 TV처럼 여러 기기의 연결 정책을 한곳에서 관리할 수 있습니다. 각 기기에 클라이언트를 따로 설치하는 방식과 달리 공유기에서 터널 또는 프록시 경로를 만들고, 필요한 기기나 도메인만 해당 경로로 보내는 구조입니다. 다만 공유기에서 모든 트래픽을 무조건 우회하는 것이 항상 좋은 선택은 아닙니다. 펌웨어 저장 공간, CPU 성능, 무선 환경, 프로토콜 호환성, DNS 처리 방식과 기기별 예외 규칙을 함께 확인해야 안정적으로 운영할 수 있습니다.
이 글에서는 OpenWrt의 LuCI 관리 화면을 기준으로 VPN 게이트웨이를 설계하는 순서를 설명합니다. WireGuard와 OpenVPN처럼 OpenWrt 패키지로 직접 구성할 수 있는 방식, sing-box 또는 호환 프록시 관리 도구를 활용하는 방식의 차이를 구분하고, 구독 프로필 등록, 정책 기반 라우팅, DNS 확인, 연결 실패 시 원상 복구까지 단계별로 정리합니다. 메뉴 이름은 OpenWrt 버전과 설치한 패키지에 따라 달라질 수 있으므로, 특정 버튼의 위치보다 설정의 역할을 기준으로 따라가세요.
OpenWrt VPN 게이트웨이의 구조부터 이해하기
일반적인 가정용 공유기는 인터넷 회선에서 공인 주소를 받고, 내부 기기에 사설 주소를 나누어 줍니다. OpenWrt에 VPN 기능을 추가하면 공유기가 내부 기기의 기본 게이트웨이 역할을 계속 수행하면서 특정 트래픽을 VPN 인터페이스 또는 프록시 터널로 전달하게 됩니다. 내부 기기는 별도의 앱을 실행하지 않아도 되지만, 공유기에서 처리할 수 없는 인증 방식이나 애플리케이션별 예외는 직접 관리해야 합니다.
가장 먼저 정할 것은 “어떤 기기를 어떤 트래픽으로 보낼 것인가”입니다. 거실 TV만 특정 경로를 사용하게 할 수도 있고, 업무용 노트북은 기존 인터넷 회선을 유지하면서 테스트용 기기만 VPN 인터페이스를 사용하게 할 수도 있습니다. 반대로 전체 네트워크를 하나의 터널로 보내면 규칙은 단순해지지만, 국내 서비스나 공유기 관리 주소까지 우회되어 접속 문제가 생길 가능성이 커집니다.
90+
국가 범위
200+
회선 범위
5
지원 플랫폼
무제한
동시 온라인 기기
공유기에서 사용할 수 있는 방식은 크게 세 가지로 생각하면 됩니다. WireGuard는 설정 항목이 비교적 간결하고 성능 부담을 관리하기 쉬운 편이며, OpenVPN은 인증서와 암호화 설정을 포함한 전통적인 VPN 구성이 가능합니다. Shadowsocks, VMess, Trojan, Hysteria2 같은 프록시 프로토콜은 일반적으로 전용 클라이언트나 sing-box 계열 도구가 설정을 해석해야 하며, OpenWrt의 기본 VPN 메뉴에 그대로 입력하는 방식이 아닐 수 있습니다. 구독 링크가 있다고 해서 모든 펌웨어가 모든 프로토콜을 자동으로 가져오는 것은 아닙니다.
프로토콜과 라우팅 범위 선택
- ✅ 공유기에서 직접 관리하려면 현재 OpenWrt 버전과 호환되는 WireGuard 또는 OpenVPN 패키지를 먼저 확인합니다.
- ✅ 여러 프록시 프로토콜이 포함된 구독은 sing-box 계열 도구가 해당 형식을 지원하는지 확인한 뒤 가져옵니다.
- ✅ 처음에는 테스트 기기 하나와 제한된 규칙으로 시작하고, 연결이 검증된 뒤 적용 범위를 넓힙니다.
- ❌ VPN 인터페이스가 생성되었다는 이유만으로 DNS와 모든 내부 대역까지 같은 터널로 보내지 않습니다.
VLESS나 TUIC처럼 특정 클라이언트 생태계에서 주로 사용되는 형식도 있습니다. 공유기용 도구가 해당 프로토콜의 전송 방식, TLS, 인증서, SNI와 UDP 처리를 모두 지원하는지 확인해야 합니다. 지원하지 않는 옵션을 억지로 변환하면 프로필은 저장되어도 핸드셰이크가 성립하지 않을 수 있습니다. 반면 단순한 프록시 구성은 연결되더라도 DNS 요청이나 일부 UDP 트래픽이 기존 회선으로 빠질 수 있으므로, 연결 성공과 전체 정책 적용을 별도로 점검해야 합니다.
설정 전에 OpenWrt와 연결 프로필 준비하기
먼저 공유기의 OpenWrt 버전, CPU 아키텍처, 저장 공간과 메모리 여유를 확인합니다. 패키지를 추가로 설치할 때 저장 공간이 부족하면 설치 도중 오류가 발생하거나 설정 파일이 정상적으로 저장되지 않을 수 있습니다. 무선 공유기에서 VPN 암호화와 프록시 규칙을 동시에 처리하면 무선 속도보다 공유기 처리 능력이 먼저 한계에 도달할 수 있으므로, 고성능을 기대하기보다 필요한 기기와 규칙을 좁혀 설계하는 것이 좋습니다.
관리 화면에 접속한 뒤 현재 네트워크, DHCP, 방화벽, 무선 설정을 백업합니다. LuCI의 시스템 백업 메뉴에서 설정 파일을 내려받고, 백업 파일이 실제로 저장되었는지 확인하세요. 가능하다면 공유기에 유선으로 연결한 컴퓨터를 하나 유지합니다. VPN 정책을 잘못 적용해 무선 기기가 인터넷에 접속하지 못하더라도 유선 관리 경로를 통해 규칙을 되돌릴 수 있기 때문입니다.
서비스에서 받은 연결 정보는 프로토콜에 따라 형태가 다릅니다. WireGuard는 개인 키, 공개 키, 서버 주소, 포트, 허용 IP와 keepalive 같은 항목으로 구성될 수 있습니다. OpenVPN은 설정 파일과 인증서 또는 사용자 인증 정보가 필요할 수 있습니다. 구독 링크는 여러 노드와 프로토콜 정보를 내려받는 주소일 수 있으므로 공개 게시판이나 캡처 이미지에 노출하지 마세요. 링크가 갱신되거나 폐기될 수 있다는 점도 기억해야 합니다.
공유기용 클라이언트 결정하기
WireGuard와 OpenVPN은 OpenWrt의 네트워크 인터페이스와 방화벽 영역을 이용해 비교적 전통적인 방식으로 구성할 수 있습니다. 반면 구독 주소를 한 번에 가져와 노드 목록을 관리하려면 별도의 패키지나 관리 도구가 필요합니다. sing-box는 여러 프록시 프로토콜을 하나의 구성 체계로 다룰 수 있지만, OpenWrt에서의 설치 방법과 LuCI 연동 여부는 펌웨어 저장소와 배포판에 따라 다릅니다. OpenClash 같은 도구를 고려할 때도 지원하는 코어, 규칙 형식, DNS 모드와 업데이트 방법을 먼저 확인해야 합니다.
가정에서 단순히 한 지역의 VPN 인터페이스를 선택해 일부 기기에 적용하려면 WireGuard 구성이 관리하기 쉽습니다. 여러 프로토콜과 구독 노드를 자주 전환해야 한다면 호환 클라이언트를 사용할 수 있지만, 규칙 파일과 DNS 모드가 복잡해질 수 있습니다. 중요한 것은 공유기에서 지원되지 않는 프로필을 억지로 넣지 않고, 필요하다면 Windows, macOS, Android, iOS, Linux 공식 클라이언트에서 먼저 연결을 검증한 뒤 공유기 구성을 진행하는 것입니다.
OpenWrt에서 VPN 연결과 기기별 라우팅 설정하기
이제 실제 구성 순서를 진행합니다. 메뉴의 정확한 명칭은 패키지에 따라 다르지만, 흐름은 인터페이스 생성, 방화벽 영역 연결, 라우팅 정책 작성, DNS 정책 지정의 순서로 이해할 수 있습니다. 한 번에 여러 설정을 바꾸지 말고 각 단계가 끝날 때마다 저장과 적용을 완료한 뒤 상태를 확인하세요.
- VPN 패키지 설치: 시스템의 소프트웨어 메뉴에서 현재 펌웨어와 맞는 WireGuard, OpenVPN 또는 필요한 프록시 관리 도구를 설치합니다. 저장소 주소를 임의로 바꾸기보다 사용 중인 릴리스와 일치하는 패키지를 선택하세요.
- 인터페이스 생성: WireGuard라면 개인 키와 피어의 공개 키, 엔드포인트, 허용 IP를 입력합니다. OpenVPN이라면 제공된 설정 파일과 인증 항목을 확인합니다. 자동으로 전체 기본 경로를 덮어쓰는 옵션은 목적을 이해한 뒤 선택해야 합니다.
- 방화벽 영역 지정: VPN 인터페이스를 별도의 영역으로 묶고, 내부 LAN에서 VPN 영역으로 나가는 전달 규칙을 설정합니다. 관리 목적의 SSH나 LuCI 접속 경로까지 차단하지 않도록 기존 LAN 접근 정책을 먼저 보존합니다.
- 테스트 기기 고정: DHCP 고정 임대나 기기 주소를 이용해 테스트할 단말을 식별합니다. 기기 주소가 바뀌면 정책 대상이 달라질 수 있으므로, 무작위 주소 기능을 사용하는 모바일 기기는 예외 처리가 필요할 수 있습니다.
- 정책 기반 라우팅 적용: 테스트 기기의 전체 트래픽을 VPN으로 보내거나, 특정 도메인·주소 대역만 보내는 규칙을 작성합니다. 처음에는 좁은 범위로 시작하고 기존 회선으로 유지할 내부 주소와 업무용 서비스를 명시적으로 제외합니다.
- DNS 경로 지정: VPN을 사용하는 기기의 DNS 요청이 기존 인터넷 회선으로 빠지지 않는지 확인합니다. 로컬 호스트 이름, 공유기 관리 주소와 외부 도메인 조회를 같은 규칙으로 처리하지 말고 목적에 맞게 나눕니다.
- 저장 후 재연결: 설정을 적용한 뒤 테스트 기기의 Wi-Fi를 껐다 켜거나 DHCP 임대를 갱신합니다. 기존 연결이 캐시에 남아 있으면 변경된 라우팅이 즉시 반영되지 않은 것처럼 보일 수 있습니다.
WireGuard의 허용 IP는 단순한 서버 주소 목록이 아니라 어떤 목적지로 터널을 사용할지 결정하는 중요한 항목입니다. 전체 트래픽을 보내려는 구성과 특정 네트워크만 보내는 구성은 결과가 크게 다릅니다. OpenVPN도 기본 경로를 수신하는지, 서버가 전달하는 라우팅을 허용하는지에 따라 동작이 달라질 수 있습니다. 설정 파일의 지시문을 의미 없이 삭제하거나 복사하지 말고, 각 옵션이 기본 경로와 DNS에 미치는 영향을 확인하세요.
프록시 방식에서는 더 많은 요소를 살펴봐야 합니다. TCP 연결은 정상이어도 UDP 기반 서비스가 작동하지 않을 수 있고, 규칙 모드가 도메인 목록을 제대로 해석하지 못하면 원하는 앱이 직접 연결될 수 있습니다. 글로벌 모드는 문제 범위를 확인하는 임시 테스트에 유용하지만, 장기간 유지하면 로컬 서비스와 공유기 관리 접속까지 영향을 받을 수 있습니다. 검증이 끝나면 목적에 맞는 규칙 모드로 되돌리세요.
| 확인 영역 | 정상적으로 확인할 내용 | 문제가 있을 때 우선 볼 항목 |
|---|---|---|
| 인터페이스 | VPN 인터페이스가 생성되고 피어 또는 프로필 상태가 표시됨 | 키, 엔드포인트, 포트, 프로필 형식 |
| 방화벽 | 테스트 LAN 기기가 VPN 영역으로 전달됨 | 영역 연결, 전달 정책, NAT |
| 라우팅 | 정한 기기와 목적지만 VPN 경로를 사용함 | 기본 경로, 정책 우선순위, 예외 규칙 |
| DNS | 도메인 조회가 의도한 DNS 정책을 따름 | DHCP 배포 주소, DNS 리다이렉션, 캐시 |
| 복구 | VPN을 끄면 기존 인터넷 경로로 돌아감 | 자동 시작, 잔여 라우팅, 방화벽 규칙 |
DNS와 네트워크 상태를 점검하는 방법
연결 표시가 켜졌다는 것만으로 설정이 완성된 것은 아닙니다. 테스트 기기에서 웹페이지 접속, 현재 외부 주소 확인, DNS 조회, 일반 국내 서비스 접속을 각각 확인해야 합니다. 외부 주소 확인은 현재 출구 경로가 예상과 같은지 보는 절차이고, DNS 조회는 도메인 이름을 어느 서버가 해석하는지 확인하는 절차입니다. 두 결과가 서로 다르게 보일 수 있으므로 하나만 보고 판단하지 마세요.
먼저 VPN을 끈 상태에서 기본 인터넷 연결을 확인하고, 다음으로 VPN을 켠 상태에서 같은 테스트를 반복합니다. 그 뒤 VPN 대상에서 제외한 기기가 기존 경로를 유지하는지 확인합니다. 한 기기의 변경이 다른 기기의 연결까지 끊는다면 전체 기본 경로 또는 방화벽 전달 규칙이 의도보다 넓게 적용된 것입니다. 공유기 자체의 시간 설정, 인증서 검증, MTU도 점검 대상입니다. 시간이 크게 어긋나면 TLS 기반 프로필이 실패할 수 있고, MTU가 맞지 않으면 일부 웹사이트나 장시간 연결에서만 문제가 나타날 수 있습니다.
- ✅ VPN 대상 기기와 제외 기기를 구분해 각각 외부 주소와 접속 상태를 확인합니다.
- ✅ DNS 누출 여부뿐 아니라 로컬 공유기 주소와 내부 기기 이름이 계속 해석되는지도 확인합니다.
- ✅ 연결이 끊겼을 때 기존 인터넷 경로로 자동 복귀하는지 테스트합니다.
- ❌ 한 번의 웹페이지 접속만으로 모든 앱과 UDP 서비스가 정상이라고 결론 내리지 않습니다.
로그를 볼 때는 오류 문장 전체를 기록하되, 개인 키와 구독 주소는 가린 상태로 보관합니다. “인증 실패”는 키나 계정 문제일 수 있고, “네트워크에 연결할 수 없음”은 DNS, 방화벽, 엔드포인트 또는 통신사 경로 문제일 수 있습니다. 프로필을 다시 붙여 넣기 전에 로그에서 실패 지점을 구분하면 불필요한 설정 변경을 줄일 수 있습니다.
연결 오류가 발생했을 때 되돌리는 절차
설정 후 인터넷이 끊겼다면 먼저 VPN 프로필을 삭제하기보다 자동 시작과 정책 라우팅을 중지합니다. 테스트 기기를 기존 LAN 정책으로 되돌리고, VPN 인터페이스를 비활성화한 뒤 연결을 다시 확인하세요. 이 단계에서 인터넷이 복구되면 터널 자체보다 정책, DNS 또는 방화벽 영역의 범위를 좁혀 조사할 수 있습니다.
관리 화면에 접속할 수 없다면 유선 연결을 사용하고, 공유기의 복구 모드나 콘솔 접근 방법을 제조사와 OpenWrt 문서에서 확인합니다. 백업 파일이 있다면 현재 설정을 무작정 덮어쓰기보다 필요한 방화벽과 네트워크 설정만 되돌리는 것이 좋습니다. 전체 복원은 무선 이름, 관리자 접속, DHCP 설정까지 과거 상태로 돌아갈 수 있으므로 복원 전에 백업 파일의 생성 시점을 확인하세요.
자주 나타나는 오류 패턴
- 터널은 연결되지만 인터넷이 안 됨: 기본 경로, NAT, 방화벽 전달과 DNS를 순서대로 확인합니다.
- 일부 사이트만 열리지 않음: MTU, 도메인 규칙, IPv6 경로와 해당 서비스의 UDP 사용 여부를 확인합니다.
- 공유기 관리 화면이 사라짐: LAN 관리 주소를 VPN 영역으로 보내고 있지 않은지, 로컬 대역 예외가 남아 있는지 확인합니다.
- 구독은 가져왔지만 노드가 작동하지 않음: 클라이언트가 프로토콜과 전송 옵션을 지원하는지, 구독 주소가 노출되거나 만료되지 않았는지 확인합니다.
- 재부팅 후 정책이 달라짐: 서비스 자동 시작 순서, DHCP 임대, 규칙 생성 시점을 점검합니다.
문제를 해결할 때는 한 번에 하나의 요소만 바꾸세요. 예를 들어 DNS를 바꾼 뒤 라우팅과 방화벽까지 동시에 수정하면 어떤 변경이 효과가 있었는지 알 수 없습니다. 설정이 안정된 후에는 백업 파일에 날짜와 변경 목적을 기록하고, 사용하지 않는 프로필과 오래된 규칙을 정리합니다. 공유기를 여러 사람이 사용하는 환경이라면 어떤 기기가 VPN 대상인지, 장애 시 어떻게 끄는지 간단한 메모를 관리 화면 근처에 남겨두는 것도 도움이 됩니다.
OpenWrt VPN 설정 FAQ
모든 기기를 VPN으로 보내야 하나요?
그럴 필요는 없습니다. 스트리밍 기기나 특정 테스트 단말만 적용하고, 업무용 컴퓨터와 공유기 관리 장치는 기존 경로에 남기는 정책이 더 관리하기 쉬울 수 있습니다. 전체 적용은 구조가 단순하지만 DNS, 로컬 서비스, 업데이트와 내부 대역까지 영향을 받을 수 있으므로 연결 목적이 분명할 때 선택하세요.
구독 링크를 OpenWrt에 바로 붙여 넣으면 되나요?
구독 링크의 형식과 OpenWrt에 설치한 도구의 지원 여부에 따라 다릅니다. WireGuard나 OpenVPN은 필요한 설정 파일 또는 키 항목을 직접 입력하는 경우가 많고, Shadowsocks, VMess, Trojan, Hysteria2 등은 해당 프로토콜을 해석하는 호환 클라이언트가 필요할 수 있습니다. 먼저 클라이언트 지원 목록과 프로필 형식을 확인하세요.
VPN을 켜면 공유기가 느려지는 이유는 무엇인가요?
암호화, 프록시 규칙, DNS 처리와 패킷 전달을 공유기가 동시에 수행하기 때문입니다. 무선 신호 문제와 VPN 처리 한계를 구분하려면 같은 기기를 유선과 무선에서 각각 확인하고, 전체 적용 대신 일부 기기부터 테스트하세요. 불필요한 규칙과 로그를 줄이는 것도 도움이 됩니다.
문제가 생기면 가장 빠르게 끄는 방법은 무엇인가요?
VPN 자동 시작을 중지하고, 테스트 기기의 정책 라우팅을 해제한 뒤 인터페이스와 방화벽 전달 규칙을 비활성화합니다. 그래도 복구되지 않으면 사전에 저장한 백업을 사용하되, 복원 전 현재 설정도 별도로 보관하세요. 다음 설정에서는 유선 관리 기기와 좁은 테스트 범위를 먼저 확보하는 것이 안전합니다.