OpenWRT VLESS 客户端配置:通过 Xray 路由所有流量
在路由器级别运行 VLESS 意味着您网络上的每台设备都走代理 - 智能手机、智能电视、IoT 设备 - 无需在每台设备上安装客户端软件。本指南涵盖在 OpenWRT 上安装 xray-core 和 sing-box。
本设置指南会产出一个 OpenWrt 路由器配置,把选定网络流量发送到 VLESS 或 Xray 代理。它适合希望为多台设备、实验室或自动化环境做路由级代理的用户,覆盖前置条件、Xray 安装、配置、DNS 和验证。
前提条件
您需要至少有 16MB 闪存和 128MB RAM 的 OpenWRT 路由器。在 openwrt.org 上检查您的路由器型号以确认兼容性。本指南在 OpenWRT 23.05 和 GL.iNet 路由器上测试。
所需软件包:xray-core(或 sing-box 作为替代)、iptables-nft、dnsmasq-full(替换 dnsmasq)。需要对路由器的 SSH 访问。
在 OpenWRT 上安装 xray-core
通过 SSH 连接:ssh root@192.168.1.1。然后安装 xray-core:opkg update && opkg install xray-core。如果 xray-core 不在您构建的 opkg 仓库中,从 GitHub 下载 arm/mipsle 二进制文件并放置在 /usr/bin/xray 中。
创建配置目录:mkdir -p /etc/xray。主配置文件将是 /etc/xray/config.json。
VLESS 客户端配置
使用您的 VLESS 入站和出站配置创建 /etc/xray/config.json。入站处理本地流量(端口 1080 上的 SOCKS5 + 端口 1081 上的透明代理),出站连接到您的 VLESS 手机代理。
config.json 结构
{ "inbounds": [{"port": 1080, "protocol": "socks"}, {"port": 1081, "protocol": "dokodemo-door", "settings": {"followRedirect": true}}], "outbounds": [{"protocol": "vless", "settings": {"vnext": [{"address": "YOUR_SERVER", "port": 443, "users": [{"id": "YOUR_UUID", "encryption": "none", "flow": "xtls-rprx-vision"}]}]}, "streamSettings": {"network": "tcp", "security": "reality", "realitySettings": {"fingerprint": "chrome", "serverName": "YOUR_SNI", "publicKey": "YOUR_PUBKEY"}}}] }使用 iptables 的路由规则
要拦截所有 TCP/UDP 流量并通过 xray 路由,添加 iptables 规则。创建带有 PREROUTING 规则的 /etc/firewall.user,将流量重定向到端口 1081(dokodemo-door),本地和保留 IP 除外。
将 xray 添加到启动项:/etc/init.d/xray enable。启动服务:/etc/init.d/xray start。查看日志:logread | grep xray。
DNS 泄漏预防
没有 DNS 泄漏预防,DNS 查询会绕过代理并泄露您的真实位置。配置 dnsmasq 通过 xray 的 DNS 转发所有查询:在 /etc/dnsmasq.conf 中,设置 server=127.0.0.1#5300 并禁用 systemd-resolved。
向 xray 配置添加端口 5300 上的 DNS 入站,通过 VLESS 出站转发查询。在 proxypoland.com/tools/dns-leak-test 测试 - 所有 DNS 服务器应显示为波兰 IP。
验证
从您网络上的任何设备,访问 proxypoland.com/tools/proxy-checker。您的 IP 应该是波兰移动运营商 IP。运行速度测试 - 在功能强大的路由器上通过 VLESS Reality 通常可看到 20-40 Mbps。
官方来源
常见问题
两者都支持 VLESS Reality。xray-core 更成熟,文档更丰富。sing-box 具有更简单的 JSON 配置格式和更好的 UDP 性能。对于大多数刚入门的用户来说,xray-core 更容易找到帮助。
加密有 CPU 成本。在旧版 MIPS 路由器上,您可能会看到 10-20% 的吞吐量降低。现代 ARM 路由器(GL.iNet Beryl AX、Banana Pi R4)以全线速处理 VLESS Reality。如果速度至关重要,使用 XTLS-Vision 流,它会卸载一些处理。
从 github.com/XTLS/Xray-core/releases 下载适用于您 CPU 架构的预编译 xray 二进制文件。匹配架构:大多数旧版路由器为 MIPS24kc,现代路由器为 ARM v7/v8。放置在 /usr/bin/xray 并执行 chmod +x。
是的。在 iptables PREROUTING 规则中,按源 IP 或 MAC 地址匹配,而不是路由所有流量。示例:添加 -s 192.168.1.50 仅路由一台设备通过 VLESS,而其他设备使用普通互联网。
是的。每个 Proxy Poland 套餐都包含 VLESS/Xray 协议访问。您在订阅时会收到 VLESS Reality 连接字符串。该协议在端口 443 上以 Reality 伪装运行,使其具有抗深度包检测能力。
SSH进入路由器,运行opkg update,然后opkg install xray-core。在旧版OpenWRT(19.07及以下),xray-core可能不在官方feeds中 - 添加社区feeds后再次运行opkg update。安装后,xray可执行文件位于/usr/bin/xray。通过xray version验证版本。
xray-core空闲状态最少需要64 MB空闲RAM,持续吞吐建议128 MB以上。总RAM为32 MB的路由器(早期TP-Link、Netgear型号)在流量峰值期会出现OOM崩溃。对于家庭路由使用,64-128 MB总RAM的路由器(GL.iNet Flint 2、ASUS RT-AX88U)可以胜任VLESS工作负载。如果RAM不足,考虑将xray-core运行在局域网内的小型x86主机(树莓派4、mini PC)上,并通过iptables将流量从路由器重定向至该主机。
使用策略路由,通过将特定MAC地址或LAN IP的数据包标记到单独路由表的iptables/nftables规则实现。基本步骤:1)在route table 100中添加via xray TUN接口的默认路由;2)用iptables将目标设备的流量打标;3)添加ip rule把标记流量导入table 100。xray透明代理模式(REDIRECT或TPROXY)在xray的inbound配置中处理这部分。
如果您启用了服务,则可以:/etc/init.d/xray enable和/etc/init.d/xray start。init脚本在启动时重新启动xray-core。对于Passwall或ShadowSocksR-Plus+等插件管理器,在LuCI UI中启用开机自启选项。验证方法:reboot后运行ps | grep xray,确认进程正在运行。如果重启后失败,检查init脚本的文件权限:chmod +x /etc/init.d/xray。
LTE链路通常使用MTU 1428-1500,取决于运营商;加上VLESS封装开销,在xray的虚拟接口或上游WAN上设置MTU 1380-1400。过高的MTU导致IP碎片化,引起随机丢包和吞吐量下降。测试方法:ping -M do -s 1350 8.8.8.8 - 如果成功则逐步增加到不再出现碎片的最大值。在支持LTE的OpenWRT上,在Network > Interfaces > WAN中设置MTU,以传递到所有出站隧道。
可以 - 这是标准配置。WAN为普通设备处理直接互联网访问;xray-core服务在局域网上的某个端口监听,并将流量通过VLESS隧道转发到Proxy Poland的Polish carrier IP。使用策略路由:特定设备或域名通过xray路由,其余流量走默认WAN。这样可以将波兰代理IP专门用于特定应用,而不影响其他设备。
安装vnstat(opkg install vnstat)并将其绑定到xray虚拟接口或上游WAN - vnstat -d显示每日历史记录,vnstat -m显示月度汇总。对于实时监控,使用bmon或ifstat,与xray TUN接口绑定。xray-core内置流量统计API - 在xray config的api部分启用StatsService,然后通过HTTP JSON API查询流量数据。
OpenWRT + VLESS:配置与验证
适用场景
用于把路由器流量通过 Xray/VLESS 出口,而不是只配置单台电脑。
配置顺序
先在单客户端证明配置可用,再迁移到 OpenWRT,逐项设置防火墙、DNS、策略路由和旁路规则。
| 检查项 | 应该确认什么 | 推荐入口 |
|---|---|---|
| 出口 IP | 检查路由器日志、xray 进程、DNS、IPv6、MTU、目标设备出口 IP 和局域网分流。 | What Is My IP |
| DNS | 确认 DNS resolver 没有泄漏到本机网络或错误国家。 | DNS Leak Test |
| 速度 | 记录延迟、失败率和目标网站响应时间,避免只看一次测速。 | Proxy Speed Test |
| 价格 | 按套餐时长、协议和轮换方式比较真实成本。 | Pricing |
风险边界
路由器级代理的故障面更大;DNS、IPv6 或 firewall 任何一项错误都可能让部分流量绕过代理。 如需 VLESS 或 Xray 入口,请从VLESS/Xray 指南开始。


