路由器上的VPN把隧道从单台设备转移到了家庭网络的入口:它保护的是整个家——手机、笔记本电脑、电视、 电视棒和各种智能设备。我们来看看什么情况下值得这么做、该选什么路由器,以及如何在OpenWrt上搭建个人 VPN。
本文适合愿意进入路由器网页管理界面、一次性完成全部设置的读者。如果你只是想给电视装VPN,文末有更简单 的方法——通过Apple TV和Android TV的专用App。
为什么要在路由器上用VPN
手机上的App只能保护这一部手机。装了VPN的路由器保护的是接入家庭网络的所有设备,而且对设备本身完全 透明:它们看到的只是普通的Wi-Fi,加密和路由都在路由器上完成。
- 没有VPN客户端的电视、游戏主机、媒体播放器和智能设备,会获得和手机一样的IP。
- 笔记本电脑和手机不会因此耗电,也不用操心隧道有没有开着。
- 访客和新设备一接入Wi-Fi就自动受到保护。
- 所有设置集中在一个地方,而不是分散在十几个App里。
但也要付出代价:速度受限于路由器的处理器,隧道出了问题会牵连整个家。因此正确选择设备、并提前想好 断线时该怎么办很重要。
选择合适的路由器
MeduzaVPN为OpenWrt提供现成的软件包——这是一款可以刷入数百款路由器型号的开源固件。软件包为我们测试 过的三种平台编译好,其余平台可以使用静态编译的守护进程。
| 平台 | 形式 | 典型设备 | 预期速度 |
|---|---|---|---|
| x86/64 | 现成软件包 | 迷你主机、虚拟机、基于Intel/AMD的工业路由器 | 数百Mbit/s以上 |
| MediaTek Filogic | 现成软件包 | 基于MT7981/MT7986的新款Wi-Fi 6路由器 | 数百Mbit/s |
| MT7621 | 现成软件包 | 2018–2023年间的主流路由器 | 数十Mbit/s |
| arm64、armv7、mips | 静态编译守护进程 | OpenWrt支持的其他平台,需手动安装 | 取决于处理器 |
内存与存储
关键要求是存储空间。软件包连同依赖项需要40–46 MB。16 MB闪存的路由器不适用:装完固件本身之后往往只 剩几MB。请选择128 MB以上闪存的型号,或者在有USB接口的情况下用extroot扩展到U盘上。内存建议256 MB以 上,否则在连接数较多时,守护进程和网页管理界面会互相争抢资源。
购买前请对照OpenWrt的硬件支持列表:重要的不只是处理器和内存大小,还有这个型号是否被当前固件分支 支持。过旧的分支可能缺少所需的依赖项。
在OpenWrt上安装软件包
这里假设你已经装好了OpenWrt,路由器能正常上网。安装软件包只需要几分钟。
- 打开路由器VPN页面,下载对应平台的软件包。
- 确认可用空间不少于50 MB:LuCI里“系统 → 软件包”一节会显示剩余空间。
- 通过LuCI的同一栏目上传软件包,或者通过SSH执行opkg安装命令。
- 等待依赖项安装完成;守护进程首次启动时会生成自己的配置。
- 在LuCI菜单中打开新出现的MeduzaVPN页面,扫描二维码登录。
- 选择地点和协议,开启连接,并在网络中任意一台设备上确认IP是否已经改变。
其他平台的静态编译版本
如果你的路由器运行在arm64、armv7或mips平台上,请使用静态编译的守护进程版本。它不依赖固件里的库文 件,像普通服务一样运行。这种情况下LuCI里没有对应页面:登录和选择地点要通过SSH命令完成,参数保存在 配置文件里。这条路径适合能熟练使用命令行的用户。
通过二维码登录和LuCI页面
路由器没有方便的键盘,也不适合在上面保存账户密码。因此登录方式和电视上一样:LuCI里的MeduzaVPN页面 会显示一个二维码,你用装有App的手机扫描它,或者在浏览器里打开链接并确认登录。路由器会获得自己专属 的访问密钥,你可以随时在账户里将其吊销。
页面上可以进行以下操作:
- 查看连接状态、当前地点和外部IP;
- 从60多个地点中选择,并切换协议——MeduzaVPN ULTRA、WireGuard、VLESS等;
- 开启kill switch;
- 选择哪些设备或子网走隧道;
- 查看最近的连接事件日志。
路由器只是账户里的又一台设备。它不会占用单独的订阅名额,也不受设备数量限制。如果你想和家人共享 VPN,可以了解共享访问是怎么运作的。
Kill switch与流量分流
Kill switch
隧道断开时,路由器可以选择让流量直接通过,也可以在连接恢复之前把它阻断。后者就是kill switch。在 路由器上它会对所有设备生效,所以要提前想清楚:如果家里有对持续联网要求很高的设备(视频监控、智能 家居),或许应该让它们绕过隧道,只对其余设备开启阻断。
按设备分流
在OpenWrt里,按客户端分流很容易实现。一种实用做法是建立两个Wi-Fi网络:一个走VPN,另一个直连。把 电视和电视棒接到第一个网络,把用公司VPN的办公设备接到第二个。这和App里的split tunneling(分流)是同一个原理,只不过这里的 边界是网络本身,而不是程序列表。
DNS
请确认DNS请求也走了隧道。如果路由器仍在向运营商的DNS服务器发起查询,网站看到的会是VPN的IP,而运 营商看到的会是你访问过的域名列表。MeduzaVPN软件包默认会把DNS配置进隧道,但如果你手动改过dnsmasq 的设置,最好重新检查一遍。
局限性与注意事项
- 速度。加密由路由器的处理器完成。MT7621的实际上限是几十Mbit/s,Filogic和x86是 几百Mbit/s。看4K视频够用,跑满千兆宽带不够。
- 所有设备共用一个地点。路由器只连接一台服务器。如果一台设备需要阿姆斯特丹,另一 台需要东京,就只能来回切换,或者在该设备上单独装App。
- 地区限定服务。所有设备都会获得所选地点的IP,一些服务会因此改用外国的内容目 录、货币和语言。这类情况可以用分流来解决。
- 按网络切换协议。运营商可能开始干扰某个协议,在路由器上这会立刻影响全家。请留 意LuCI页面,以便及时切换——比如从WireGuard切到MeduzaVPN ULTRA。
- 更新。软件包通过opkg更新,和OpenWrt的其他组件一样。建议每隔几个月检查一次新 版本。
- 单点故障。路由器设置出错会让全家断网。修改前请先备份好配置。
路由器的替代方案
并不是任何情况下都需要路由器。如果目标只是电视或电视棒,直接在设备本身装App会更简单。
| 对比项 | 路由器上的VPN | 设备端App |
|---|---|---|
| 覆盖范围 | 网络内所有设备,包括没有客户端的设备 | iPhone、Android、macOS、Windows、Linux、Apple TV、Android TV、Fire TV |
| 速度 | 受路由器处理器限制 | 受带宽和服务器限制 |
| 地点 | 全部设备共用一个 | 每台设备可各自选择 |
| 设置 | 需要OpenWrt和网页管理界面 | 从商店安装,扫码或通过账户登录 |
| 离家之后 | 不生效 | 在任何网络中都能用 |
针对电视,MeduzaVPN提供Apple TV、Android TV和Fire TV应用:手机扫码登录,遥控器选择地点,使用的 是同一台个人服务器。很多人会两种方式一起用:路由器负责没有客户端的设备,App负责会离开家的手机和 笔记本电脑。
结语
在OpenWrt路由器上用VPN,是用一次连接保护全家、并顾及那些没有自带客户端的设备的办法。关键条件是: 40–46 MB存储空间、受支持的平台,以及清楚隧道断开时网络会怎样表现。
MeduzaVPN在路由器上用的个人VPN,和App一样是拥有独立IP的专属服务器,所有设备共用一个账户。订阅享 有7天免费试用和15天内可退款。选择套餐。
常见问题
各种设备都有自己的App了,为什么还要在路由器上装VPN?
路由器可以用一次连接保护家中所有设备的流量,包括那些没有自带VPN客户端的设备:没有App的电视、游戏主机、智能音箱和访客设备。而且手机和笔记本电脑不会因此耗电,也不用一直盯着隧道有没有连着。
MeduzaVPN的OpenWrt软件包支持哪些路由器?
现成的软件包已经为三种平台编译好:x86/64、MediaTek Filogic和MT7621。其他平台(arm64、armv7、mips)可以使用静态编译的守护进程,手动安装。通用要求是40–46 MB可用存储空间,以及较新分支的OpenWrt固件。
16 MB闪存的路由器够用吗?
不够。这个软件包连同依赖项大约需要40–46 MB存储空间,而16 MB闪存的设备装完固件本身后往往只剩几MB。这类路由器只适合最简单的配置;如果是用来搭建个人VPN,建议选择128 MB以上闪存的型号,或者通过USB存储设备配置extroot扩展存储。
路由器既没有浏览器也没有键盘,要怎么登录账户?
LuCI网页管理界面里会出现一个MeduzaVPN页面,显示一个二维码。用装有App的手机扫描它,或者在网站上打开链接并确认登录,路由器就能获得访问你个人VPN的权限,全程不需要在设备本身输入密码。
如果路由器上的VPN断开,家里的网络会怎样?
这取决于kill switch(断网保护)的设置。开启后,路由器不会让流量绕过隧道,设备会在连接恢复之前断网。关闭后,流量会直接经运营商发出。选哪种取决于你更看重持续保护还是持续上网。
家里的网速会因此变慢吗?
会,因为加密由路由器的处理器完成,它比手机处理器弱得多。在MT7621上,实际上限通常是几十Mbit/s;在Filogic和x86平台上是几百Mbit/s。这对看流媒体视频已经够用,但在千兆宽带下下载大文件就不够了。
能不能只让电视走VPN,而不是所有设备?
可以。在OpenWrt里可以按设备或子网划分流量:一部分客户端走隧道,一部分直连。简单的做法是为需要VPN的设备单独建一个Wi-Fi网络或VLAN。这相当于把App里的split tunneling(分流)搬到了整个家庭网络层面。
如果路由器不合适,还有别的办法吗?
针对电视和电视棒,MeduzaVPN提供专门的Apple TV、Android TV和Fire TV应用,支持手机扫码登录。其他设备可以用iPhone、Android、macOS、Windows和Linux版应用。同一个账户可在所有设备上使用,不限设备数量。
