路由器与旁路由运行 V2Ray 内核:部署方式、透明代理与硬件资源评估

概览在主路由与旁路由上直接运行 Xray 或 V2Fly 内核的思路,涵盖透明代理原理、网关指向与硬件资源评估要点。

本文速览

路由器部署的关键不是把桌面配置复制过去,而是让网关、流量接管、DNS 与内核出站形成完整路径。本文面向准备使用 Linux 或 OpenWrt 设备承担代理转发的用户,先区分主路由和旁路由,再给出单机试点步骤、透明代理边界、硬件评估指标与故障回退方法。

一、部署位置:主路由与旁路由分别负责什么

主路由通常负责互联网接入、DHCP 地址分配、NAT 和防火墙。把内核运行在主路由上,容易获得完整的转发入口,但代理服务更新、规则误配或资源不足,也可能影响整个局域网。旁路由则是额外的转发设备,先让少量终端使用它作为网关,可以缩小试验范围。

独立旁路由试点

推荐

保留主路由原有拨号和地址分配,只给测试终端修改网关。出错时恢复终端原网关,比修改全网转发规则更容易定位和回退。

适合:首次部署、需要逐台验证的家庭网络

主路由直接运行

在同一设备上统一处理接入、防火墙与代理。规则入口更集中,但需要确认 CPU、内存和存储余量,并保留本地管理入口。

适合:熟悉防火墙、希望统一维护的网络

终端客户端接入

桌面使用 v2rayN,安卓按节点需求选择 v2rayNG 或 v2flyNG。无需调整局域网网关,适合作为路由器部署前的节点可用性基线。

适合:仅有少量设备需要代理、暂不改造网络

本文采用单网口旁路由示例:主路由为 192.168.10.1/24,旁路由为 192.168.10.2/24,测试终端为 192.168.10.100/24。地址需按实际网段调整,并把旁路由地址排除在 DHCP 动态分配池之外。这组地址是配置示例,不是设备出厂默认值。

测试终端 192.168.10.100
  默认网关 → 旁路由 192.168.10.2
                ├─ 直连出站 → 主路由 192.168.10.1 → 互联网
                └─ 代理出站 → 主路由 192.168.10.1 → 远端节点

旁路由自身的默认网关:192.168.10.1
主路由自身的默认网关:运营商上游

二、内核选择:协议、架构与配置格式一起核对

Xray 与 V2Fly 都是可独立运行的代理内核,不是路由器操作系统。v2rayN、v2rayNG、v2flyNG 则属于客户端界面;其中 v2rayNG 使用 Xray 内核,v2flyNG 使用 V2Fly 内核。路由器部署关注的是对应 Linux 程序、配置文件和服务启动方式,而不是安装桌面客户端。

三、透明代理:监听端口之外还需要策略路由

显式代理要求应用把连接发送到 HTTP 或 SOCKS 监听端口;透明代理则由网关在转发路径中截获连接,再交给内核。只让程序监听一个端口,既不会自动接管局域网流量,也不会自动建立返回路径。Linux 防火墙规则、策略路由与内核入站必须相互对应。

12345
透明入站示例端口
53
常规 DNS 的 UDP/TCP 端口
100
示例独立策略路由表编号

上面的端口与路由表编号是设计示例,不代表任何管理界面的默认值;路由表编号 100 使用前还要确认未被其他服务占用。透明入站需要启用所选内核要求的透明套接字选项,并匹配防火墙交付流量的方式。

接管方式关键机制部署注意项
REDIRECT将连接重定向至本地监听端口常用于 TCP;不能把 TCP 方案原样套到 UDP
TPROXY透明套接字接收流量,结合标记与策略路由送到本机可用于 TCP/UDP;需要固件内核模块和对应防火墙支持
显式 SOCKS应用主动连接代理监听地址适合先验证内核;应用必须支持并正确使用代理

OpenWrt 使用 firewall4 的环境通常基于 nftables 管理规则,旧资料中的 iptables 命令不一定能直接使用。TPROXY 常见设计是给流量打标记,通过 ip rule 选择专用路由表,再由本地路由把流量送入透明套接字;标记值与掩码必须避开已有的多线、策略路由服务。

四、网关与 DNS:先改一台终端再扩大范围

旁路由没有唯一通用的设置页面。以下以常见 OpenWrt LuCI 菜单为例,菜单翻译可能随版本变化。操作前导出配置,并记下主路由管理地址;不要在没有备用管理入口时同时修改管理 IP、DHCP 和防火墙。

  1. 固定管理地址

    进入旁路由「网络」→「接口」→「LAN」→「编辑」→「基本设置」,设置静态地址 192.168.10.2、掩码 255.255.255.0,上游 IPv4 网关填写 192.168.10.1。

  2. 保留单一 DHCP

    主路由继续分配地址。旁路由在「网络」→「接口」→「LAN」→「编辑」→「DHCP 服务器」→「常规设置」勾选「忽略此接口」,避免两台设备同时发放相互冲突的配置。

  3. 单机修改网关

    在测试终端的 IPv4 设置中保留原地址与掩码,只把网关改为 192.168.10.2。确认旁路由已启用 IPv4 转发,且对应防火墙允许所需转发方向。

  4. 核对 DNS 路径

    仅在旁路由已提供可访问的 DNS 服务后,才把测试终端 DNS 指向 192.168.10.2。分别检查 UDP/TCP 53 端口、上游解析路径,以及节点服务器域名能否在代理启动前解析。

  5. 扩大并验证

    单机稳定后,如主路由也是 LuCI,可在「网络」→「接口」→「LAN」→「编辑」→「DHCP 服务器」→「高级设置」的 DHCP 选项中设置 3,192.168.10.2;需要同步分发 DNS 时再设置 6,192.168.10.2,随后让终端续租。

同网段单网口旁路由可能出现非对称路径:终端经旁路由发送直连流量,主路由却直接向终端回包。它可能影响连接跟踪、统计和防火墙判定。是否对旁路由转发流量做源地址转换,应结合拓扑验证;源地址转换能让返回路径更可控,但会隐藏原始终端地址,不能作为所有网络的固定答案。

五、硬件资源:按目标负载测量,不按网口速率推算

千兆网口只说明链路协商能力,不代表加密代理一定能达到相同速率。CPU 单核能力、协议与传输组合、内存压力、散热和节点线路都会限制吞吐。小型路由器还要给无线、连接跟踪与防火墙保留资源;旁路由则要额外检查网卡驱动和虚拟化开销。

评估项目具体检查判断方法
CPU 与散热用 top 观察单核占用;负载持续 10 分钟吞吐平台期若伴随单核满载,优先排查算力和降频
内存余量查看 free 和内核日志;更新规则时再次记录关注可用内存、进程退出与内存不足终止记录
存储空间用 df 检查可写分区和临时目录为程序更新、规则文件及日志轮转留余量
并发连接依次用 1 台、3 台终端重复相同任务比较延迟与错误率,不能只记录峰值下载速度

测试应使用同一有线终端、同一节点和同一下载目标,依次记录直连基线、终端客户端代理、旁路由代理三组结果。每组重复 3 次,记录吞吐、延迟、CPU 和内存;如果节点本身波动明显,就不能把差异全部归因于旁路由。这里给出的是测量方法,不是某款设备的实测性能承诺。

结论:先定位瓶颈,再决定升级设备

旁路由单核持续满载而终端客户端能稳定跑得更快,才有依据优先升级算力;若两端同时变慢,应先换时间段或节点做对照,不要仅因网口标称速率较低就更换整机。

六、排错顺序:地址、转发、入站、出站逐层检查

“能打开旁路由管理页”只证明局域网地址可达,不能证明互联网转发或代理出站正常。先在旁路由上检查默认路由,再检查透明入口是否真的收到流量,最后结合连接日志判断路由规则命中了哪个出站。调试日志可能包含目标域名和地址,排查结束后应恢复常规日志级别并配置轮转。

# 以下是只读检查命令;部分精简固件需先安装对应工具。
ip -4 addr show
ip -4 route show
ip -4 rule show
ip -4 route show table 100
sysctl net.ipv4.ip_forward
ss -lntup
nft list ruleset
free
df -h

ip -4 route show table 100 仅适用于确实采用本文示例编号的方案;若管理服务使用其他路由表,应查询实际编号。ss 能确认端口与进程,但不能单凭监听结果判断透明代理规则正确。检查 nft 输出时,应关注现有规则集及匹配计数,避免清空整个防火墙来“排除干扰”。

网关改成旁路由后,所有网页都打不开怎么办?

先把测试终端网关恢复到 192.168.10.1。然后在旁路由检查默认路由是否指向主路由、net.ipv4.ip_forward 是否为 1,以及转发防火墙是否放行;先修复普通转发,再恢复接管规则。

网页能开,游戏或语音却不通?

检查应用是否依赖 UDP,再核对透明入站、TPROXY 规则、策略路由与节点出站是否都支持该流量。只有 TCP 重定向时,不能靠更换 DNS 补齐 UDP 接管能力。

配置了分流,为什么有些域名还是走错?

先看 DNS 是否由预期的解析器处理,再核对规则顺序与日志中的目标信息。应用自带加密 DNS 可能不经过本地 53 端口;嗅探也不能保证还原全部域名,应对测试应用单独验证。

重启后失效,是不是节点坏了?

依次检查内核服务是否启动、透明规则是否加载、策略路由是否存在,以及系统时间是否同步。把这些操作纳入所用固件的服务管理流程,不要只在交互终端执行一次命令。

七、上线与回退:把网关配置纳入维护范围

旁路由稳定运行不仅依靠配置文件,还依靠启动顺序与失败处理。时间未同步、DNS 尚未就绪或规则下载失败,都可能让服务在开机时异常。自动更新应先检查新配置,再替换当前文件;不要把“进程仍存在”当作网络路径正常的唯一判据。

如果需求只是让一两台设备使用代理,终端客户端通常更容易维护。确实需要统一接管局域网时,再按单机试点、DNS 验证、UDP 与 IPv6 检查、全网推广的顺序推进。参数含义可继续查阅术语手册,接入范围与路由分流的区别可参阅使用手册。

下载客户端