OpenWrtルーターにVPN機能を組み込むと、家庭内のすべての端末を一つの経路に固定するのではなく、端末、宛先ドメイン、IPアドレス、ポートなどの条件に応じて通信を振り分けられます。テレビやゲーム機は通常回線のままにし、仕事用のパソコンだけ別経路にする、特定の動画サービスだけ対象にする、といった構成も可能です。ただし、OpenWrtの管理画面にVPNの情報を入力するだけで完了するわけではありません。ファームウェアの対応状況、クライアントのプロトコル、DNSの解決先、ルーティングルール、IPv6の扱いまで確認して、初めて意図した通信経路になります。
この記事では、OpenWrtルーターにVPNクライアントを導入するときの考え方を、準備、購読情報の取り込み、ポリシールーティング、DNS設定、動作確認の順に整理します。具体的な画面名やパッケージ名はOpenWrtのバージョン、使用するクライアント、ルーターのCPUアーキテクチャによって変わるため、特定のコマンドをそのまま実行するのではなく、現在の環境に対応する手順へ読み替えてください。
準備:ルーター性能とクライアントの互換性を確認
OpenWrtでVPNを動かす場合、ルーターは単なる無線アクセスポイントではなく、暗号化、接続維持、DNS転送、ルール判定を同時に処理します。メモリやCPUに余裕がない機種では、接続自体は成功しても、複数端末の通信が増えたときに速度が安定しないことがあります。まず、OpenWrtのバージョン、CPUアーキテクチャ、空きストレージ、LANとWANのインターフェース名を確認しましょう。
次に、サブスクリプションを読み込むクライアントを決めます。OpenWrtでは、WireGuardやOpenVPNのようにOSのネットワーク機能と統合しやすい方式と、sing-boxやmihomo系のように複数プロトコルとルール分岐を扱えるクライアントがあります。Shadowsocks、VMess、Trojan、VLESS、Hysteria2などは、それぞれ必要なパラメーターとトランスポート方式が異なります。クライアントが購読URLに対応していても、購読内のすべてのプロトコルを処理できるとは限りません。
100+
対応国
190+
回線数
不限
同時接続端末
5
対応OS
RBVPNの購読情報をOpenWrtで利用する場合も、最初にOpenWrt側のクライアントが対応する形式を確認してください。Windows、macOS、iOS、Android、Linux向けの公式クライアントが利用できることと、OpenWrt上で同じ購読情報を直接解析できることは別の問題です。OpenWrtでは、対応形式への変換が必要な場合や、ノードを個別に登録する必要がある場合があります。
| 確認項目 | 見るポイント | 問題がある場合 |
|---|---|---|
| OpenWrt | バージョン、CPU、空き容量、対応パッケージ | パッケージを導入できない、設定を保存できない |
| クライアント | 購読形式とShadowsocks、VMess、Trojan、VLESS、Hysteria2などの対応状況 | 一覧が空になる、特定ノードだけ読み込めない |
| ルーティング | LAN端末、宛先ドメイン、通常回線の例外ルール | すべての通信がVPNへ流れる、または対象だけ分岐できない |
| DNS | LAN端末がどのDNSを使い、どの経路で問い合わせるか | 名前解決だけ失敗する、意図しない地域の応答になる |
- ✅ 設定バックアップと有線接続による復旧手段を用意する。
- ✅ ルーターのCPUアーキテクチャと空き容量を確認してからパッケージを選ぶ。
- ✅ 購読形式と実際のプロトコルがクライアントに対応しているか確認する。
- ✅ 最初は一台のテスト端末だけをVPN経由にして、家庭内全体へ広げる。
- ❌ 一般的なLinux向け設定を、OpenWrtへ無確認でコピーしない。
購読情報を取り込み、接続設定を作る
購読URLは、接続先の一覧や各ノードのパラメーターをクライアントへ配布するための入口です。ルーターそのものの管理パスワードでも、単一のサーバーへ接続する固定設定でもありません。OpenWrt上のクライアントが購読形式を解析し、必要なノードを選択できる状態にする必要があります。
購読URLを取得するときは、RBVPNのユーザーパネルから現在の情報をコピーしてください。URLにはアカウントを識別する情報が含まれる場合があるため、メモ帳、公開設定ファイル、スクリーンショット、第三者の変換サービスへ貼り付けないでください。OpenWrtの設定ファイルをサポートへ送る場合も、購読URL、UUID、パスワード、秘密鍵、認証情報を削除または伏せ字にします。
取り込み方法は大きく二つあります。一つは、OpenWrt上のクライアントが購読URLを直接取得し、ノード一覧を更新する方法です。もう一つは、パソコンなどで内容を確認し、OpenWrtで扱える形式に整理してから設定へ登録する方法です。後者では、サーバーアドレスだけでなく、ポート、暗号方式、TLS、SNI、transport、WebSocketパス、公開鍵、認証情報などを欠落させないでください。項目を省略すると、一覧には表示されても接続できないことがあります。
プロトコルとトランスポートを確認する
Shadowsocksは暗号方式とパスワード、VMessやVLESSはIDや暗号化、Trojanは認証とTLS、Hysteria2はパスワードやQUIC関連の設定など、確認すべき項目が異なります。WireGuardを使う場合は、公開鍵、秘密鍵、アドレス、AllowedIPs、エンドポイント、Keepaliveの意味を正しく分けて扱います。特にAllowedIPsは、単なる接続先の指定ではなく、経路選択にも影響します。
OpenWrt側でノードを一つ選んだら、まずルーター自身から接続できるかを確認します。その後にLAN端末へ経路を適用します。いきなり家庭内全体へ反映すると、DNSやルーティングに問題があった際、原因がノードなのかルールなのか分からなくなります。ログには名前解決失敗、TLS検証失敗、接続タイムアウト、認証失敗などが表示される場合があるため、接続ボタンの状態だけで判断しないでください。
通信振り分けを設計してから適用する
OpenWrtの通信振り分けには、端末単位、宛先単位、プロトコル単位という三つの考え方があります。端末単位は、特定のIPアドレスやMACアドレスの通信をまとめてVPNへ送る方法です。宛先単位は、指定したドメインやIPレンジだけをVPNへ送ります。プロトコル単位は、TCPやUDP、特定ポートなどを条件にします。それぞれに長所があるため、目的に合わない複雑なルールを最初から作らないことが大切です。
家庭内で扱いやすいのは、まずテスト用端末を一台だけ対象にする構成です。次に、通常回線を使う端末、VPNを使う端末、常にローカル接続を維持する機器を分けます。プリンター、NAS、スマートホーム機器などは、VPNへ流すと家庭内アクセスや検出機能が動かなくなる場合があります。LAN内のアドレス帯、ルーターの管理アドレス、DHCP、DNS、時刻同期などは、通常経路の例外として扱う設計が安全です。
- VPN経由にしたい端末またはドメインを決める。
- 通常回線へ残す端末、LAN内サービス、管理用アドレスを例外として整理する。
- 一番単純なルールを一つだけ作り、優先順位を確認する。
- 保存後にクライアントを再起動し、テスト端末から接続を確認する。
- 問題がなければ、対象端末やドメインを少しずつ追加する。
ドメインベースの分岐では、アプリが最初に接続する名前と、実際に通信する名前が異なることに注意してください。CDN、リダイレクト、複数のサブドメイン、直接IPへ接続するアプリでは、一つのドメインだけを登録しても期待どおりにならない場合があります。また、ルールの上から順に評価されるクライアントでは、広い条件を先に置くと、後ろの細かい例外が実行されません。ルールの優先順位と最終的なデフォルト経路を必ず確認します。
DNSとIPv6を整える
VPNに接続できているのにウェブページだけ開かない場合、原因はDNSであることがあります。端末が通常のDNSへ問い合わせ、通信本体だけを別経路へ送ると、地域やポリシーの判定が一致しないことがあります。反対に、すべてのDNSを遠隔経路へ送る設定では、LAN内のホスト名やプリンターの名前解決ができなくなる場合があります。
まず、OpenWrtのdnsmasqなど、家庭内の端末が通常利用するDNS転送先を確認します。そのうえで、VPN経由にするドメイン、通常回線で解決するドメイン、LAN内で解決する名前を分けます。クライアントによっては、Fake-IP、分割DNS、リモートDNS、保護DNSなどの方式がありますが、用語や実装は同じではありません。使っているクライアントの説明に合わせて、DNSの問い合わせ経路と応答アドレスの扱いを確認してください。
IPv6も忘れてはいけません。IPv4だけをVPNへ送ってIPv6を通常回線へ残すと、端末やブラウザーによってはIPv6が優先され、想定した経路を通らない場合があります。IPv6を利用するなら、IPv6側のトンネルとルールを用意します。対応できない場合は、環境に応じてIPv6の扱いを明確にし、動作確認ではIPv4とIPv6を別々に検査してください。単にVPN接続表示が出ているだけでは、全通信が同じ経路に入っているとは限りません。
動作確認とトラブルシューティング
設定後は、ルーター、テスト端末、対象サービスの三つの層で確認します。ルーターではクライアントの接続状態、ログ、DNS転送、ルーティングテーブルを見ます。テスト端末では取得したIPアドレス、DNSの応答、LAN内サービスへのアクセスを確認します。対象サービスでは、ログイン状態、動画や音声、ファイル転送など、実際に使う機能が正常かを確認します。
- ✅ VPN対象端末と通常経路の端末で、外部IPの表示が意図どおり異なるか確認する。
- ✅ VPN経由のドメインと通常経路のドメインをそれぞれ名前解決する。
- ✅ ルーターの管理画面、NAS、プリンターなどLAN内機器へ接続できるか確認する。
- ✅ IPv4とIPv6を別々に確認し、片方だけ経路から漏れていないか調べる。
- ❌ 接続中という表示だけで、すべての端末がVPN経由だと判断しない。
- ❌ 複数のVPNクライアントを同時に起動して、経路を競合させない。
| 症状 | 確認する場所 | 考えられる原因 |
|---|---|---|
| ノード一覧が空 | 購読URLとクライアントログ | URLの誤り、形式非対応、証明書検証失敗 |
| ルーターは接続中だが端末が通信できない | LANルール、DNS、デフォルト経路 | ポリシールールの優先順位やDNS転送の不一致 |
| 一部のサイトだけ開かない | ドメインルール、IPv6、MTU | サブドメインの不足、IPv6の経路漏れ、パケットサイズの問題 |
| LAN内機器が見つからない | LAN例外、マルチキャスト、名前解決 | ローカル通信までVPNへ送っている |
接続が不安定なときは、最初にノードを頻繁に変更するのではなく、ログの時刻と症状を照合します。名前解決の失敗ならDNS、接続開始後のタイムアウトなら経路やファイアウォール、TLSや認証エラーなら購読内容やクライアント互換性を優先して確認します。MTUが合わない場合は、特定の大きなページやファイル転送だけが失敗することもあります。変更は一項目ずつ行い、毎回バックアップまたは設定差分を残してください。
よくある質問
OpenWrtルーターだけにVPNを設定すれば、全端末が対象になりますか?
必ずしもそうではありません。ルーターがVPNクライアントとして動作していても、LAN側のルーティングルールで対象端末や宛先を指定する必要があります。デフォルト経路をVPNへ変更すれば広い範囲を対象にできますが、プリンターやNASなどのLAN内通信まで影響する場合があるため、最初は一台のテスト端末から始めるのが安全です。
購読URLをOpenWrtの管理画面に貼れば接続できますか?
管理画面や導入したクライアントが、その購読形式に対応している場合に限ります。購読URLは設定を配布する入口であり、すべてのOpenWrtパッケージが直接解析できるわけではありません。対応しない場合は、クライアントに合わせた形式でノードを登録し、プロトコル、TLS、認証情報などを欠落させないようにします。
接続中なのにページが開かない場合、何を確認しますか?
DNS、デフォルト経路、IPv6、ファイアウォールの順に確認します。端末がどのDNSを使っているか、対象ドメインがどのルールに一致したか、IPv6だけ通常回線へ流れていないかを調べると、原因を切り分けやすくなります。
複数のVPNクライアントをOpenWrtで同時に動かせますか?
技術的に可能な構成はありますが、ポート、DNS、ルーティング、ファイアウォールの競合を管理する必要があります。初回設定では一つのクライアントと一つの出口に絞り、安定動作を確認してから別経路を追加してください。複数のクライアントを同時に有効化すると、どのルールが実行されたか追跡しにくくなります。