路由器的 VPN 客户端模式与服务器模式:各自能实现什么
路由器的两种角色,一种把流量送往远端出口,另一种让你从外部连回家。启用任一种之前,先看清菜单、凭据和返回路径。
登录路由器、打开 VPN 页面,你会看到两个标签页,像同一个功能被写了两遍:一个要求导入别处生成的配置文件,另一个要求你生成证书并挑端口。它们并不是同一个设置的两个视图。一个角色让路由器主动向外拨号,另一个角色让路由器应答,而一台设备可以两者兼做,彼此并不互相帮忙。下面说明如何阅读菜单,以及在启用任何功能之前判断自己站在哪一侧。
打开 VPN 菜单,先读角色名称
从各分区的标题入手,而不是开关。标着“客户端”或“连接到 VPN 服务”的标签页,期待导入的配置文件、配置或他人签发的凭据集合。标着“服务器”的标签页,期待你创建身份、选择协议和端口,通常还要为每台将要连接的设备导出配置文件。
包装盒上的营销话术在菜单与之对应之前,都应视为未经验证。“支持 VPN”可能指客户端、服务器、只把数据包转给路由器后方设备的协议穿透助手,也可能指完全没有标准配置文件的厂商私有远程访问应用。只有固件文档能区分这些情况,贴纸上的型号不能。
客户端模式:你的局域网经由他人的出口离开
在客户端模式下,路由器表现得像一台运行 VPN 应用的笔记本电脑。它需要兼容的协议、远端运营商提供的配置文件或凭据,以及决定哪些下游设备走隧道的路由策略。许多固件提供策略列表,由你指定要走隧道的源地址或接口,其余设备仍走普通连接。
悄悄失效的部分在远端。你连接的端点必须替你转发互联网流量并提供返回路径,这是运营商侧的策略,不是你路由器上的设置。只提供服务器模式的菜单无论怎么配置都建不出这种对外服务;而只支持站点间链路的运营商,可能把隧道连上,却把你发进去的流量全部丢弃。
接着检查隧道如何处理 DNS。如果配置文件下发了域名解析器,路由器应把它交给下游客户端;如果没有,客户端仍用运营商解析器,于是数据包走隧道、域名却在隧道外解析。用已连接的笔记本快速核对:在 IP 回显页看到的地址应是出口,正在使用的解析器地址应是隧道下发的那个。
服务器模式:别人进入你的局域网
服务器模式把方向倒过来。路由器监听,在外的设备发起连接,然后路由器决定这次连接能访问哪些家中资源。NAS、实验机或打印机需要的就是这个角色,而它有一个客户端角色没有的前提:外面的东西必须能到达监听方。
多数家庭部署卡在这个前提上。如果路由器位于运营商自己那只网关之后,就得在那只网关上转发 VPN 端口,或者把路由器设为桥接或 DMZ 模式。在运营商级 NAT 之后根本没有可转发的入站端口,设计就必须改变:从路由器向外建立到中继、托管端点或组网产品的隧道。连不上的服务器不是配置错了,而是根本不可达。
身份也随角色不同。把全部流量送往付费出口的家庭客户端配置是一份共享密钥,而接纳三部手机和一台笔记本的服务器需要四个可分别吊销的身份。证书和密钥按设备签发,路由器的导出页面应给每台设备一个文件,而不是全家共用一个文件。
动手之前先核对实现细节
Netgate 关于选择 VPN 角色的文档正是这样划分角色的,值得读一读与你固件对应的那一页,而不是从标签页名称去猜。找三个具体事实:客户端能说哪些协议、服务器是否支持你设备使用的协议、路由策略覆盖的是源地址、整个接口,还是什么都不管。
然后看支持边界。有客户端标签页却没有策略列表的消费级路由器,会把所有设备都送进隧道,这对流媒体盒子没问题,对需要办公室隧道的办公笔记本就是错的。有服务器标签页但只有一份共享配置的路由器,作为实验工具尚可,对家庭则不合适,因为吊销一台设备意味着改所有人的配置。
按流量起点选择角色
| What you want | Role | What must be true |
|---|---|---|
| Household devices exit through a paid VPN | client | provider profile plus a working return path |
| Reach a NAS while travelling | server | reachable listener and per-device identities |
| Join two sites permanently | either, as a site-to-site pair | matching protocols and non-overlapping subnets |
| Only one laptop needs the tunnel | neither | run the client on the laptop instead |
在改动其他任何东西之前,把选中的那一行走一遍。启用角色,接入一个客户端,确认它呈现的地址,确认它使用的解析器,再确认反方向的返回路径。如果路由器还有防火墙页面,检查新接口是否被隧道还不存在时写下的默认规则挡住。
两种角色都可用、需求也确实两者兼有时,把它们当作两项独立功能分别维护文档。一台路由器可以同时为电视向外拨号、接受手机连接 NAS,但两套策略不能共用子网、DNS 设置或防火墙区域,否则为其中一项所做的第一次改动就会弄坏另一项。