
功能定位:旁路由透明代理到底解决什么
旁路由(Side-Router)把 kuailian 加密隧道从主路由剥离,主路由继续拨号与 NAT,旁路由只负责“流量筛选+加密转发”。好处有三:主路由固件零改动,运营商 ITMS 不会异常下发;单点故障直接断电即可回退;借助 OpenWrt 的 nftables/iptables 在数据包刚进入协议栈时打标记,按域名、IP、端口三维分流,iOS、Android、机顶盒无需装客户端就能走快连隧道。
相比“主路由直拨 privacy tool”,透明代理把策略下沉到旁路由,CPU 占用上移,因此选型务必给旁路由留足算力。经验性观察:500 M 宽带下,WireGuard 单核占 30%,若再开 V2Ray+TLS 会再涨 15%;低于 ARM A53 1.2 GHz 的设备晚高峰可能出现丢包>1%,此时应降阶协议或切回主路由方案。
前置条件与版本边界
硬件
- 主路由任意品牌,需支持静态路由表(给旁路由分配独立子网即可)。
- 旁路由:RAM≥512 MB、闪存≥256 MB,千兆网口×2,USB-C 供电更佳,方便断电回退。
软件
- OpenWrt 官方镜像:截至当前最新版 23.05.x 已自带 nftables;若沿用 18.06 等旧版,请手动装 iptables-nft。
- kuailian:v8.3.0 及以上,含 WireGuard 私钥导出(设置-Lab-导出配置)。
最短可达路径:30 分钟落地透明代理
1. 旁路由刷机与初启
- 把 OpenWrt 固件写入 TF 卡或 NAND,插电开机;电脑网卡手动设 192.168.1.2,浏览器访问 192.168.1.1 完成 root 密码初始化。
- Network → Interfaces 新建接口 wan,协议选 DHCP 客户端,物理口接主路由 LAN;再建接口 lan,协议选静态地址 192.168.2.1,物理口接交换机或 AP。
- System → Software 先 Update list,搜索并安装 luci-proto-wireguard、dnsmasq-full、ipset、iptables-nft。
2. kuailian 侧导出密钥
手机或电脑打开 kuailian → 设置 → Lab → 导出 WireGuard 配置,系统会生成含 [Interface]PrivateKey、[Peer]PublicKey、Endpoint=udp51820 的节点信息。复制到剪贴板,稍后粘贴进 OpenWrt。
3. OpenWrt 配置 WireGuard 接口
- Network → WireGuard → 新建接口 wg0,粘贴私钥;监听端口填 0(客户端不监听)。
- Peers 里填入公钥、允许 IP 0.0.0.0/0、Endpoint 填快连给出的域名:51820,勾选 Route Allowed IPs。
- 防火墙把 wg0 加入 wan 区域,确保 Input=Reject、Forward=Accept、Masquerade=1。
4. 写 nftables 规则实现“大陆白名单”
cn.zone 可从 APNIC 每周导出,含中国大陆路由表。标记 0xcafe 后,在 mangle 表把对应包导入 wg0,即完成“国内直连、海外走快连”的透明分流。重启 nftables 服务生效。
5. 主路由写静态回程
主路由新增静态路由:目的 192.168.2.0/24,下一跳 192.168.1.x(旁路由 wan 口拿到的地址)。否则会出现“能出国却回不来”的单向断流。
验证与观测:三条命令确认生效
wg show若 latest handshake 在 30 秒内,隧道已通。nft list ruleset | grep 0xcafe计数器持续增长,表示分流规则命中。- 手机关客户端,访问 ipinfo.io 若显示快连节点所在地即透明代理成功;再访问中国大学 MOOC 若显示本地宽带 IP,则白名单生效。
例外与副作用:什么时候不该用
1. IPv6 前缀频繁变化
若运营商每 48 小时重新下发 /56 前缀,旁路由的 wg0 会瞬间断连,需要写 crontab 每 5 分钟检测并重启 WireGuard。经验性观察,家用宽带 IPv6 稳定性普遍低于 IPv4,若游戏延迟要求 <80 ms,建议干脆关闭 IPv6。
2. 公司 802.1X 认证
部分企业交换机检测到旁路由 MAC 与员工电脑不一致时会踢下线。可把旁路由 wan 口 MAC 克隆成电脑 MAC,但需确保电脑不再直连,否则双 MAC 冲突导致整端口 shutdown。
3. 多拨或链路聚合
主路由做多拨时,不同流被哈希到不同出口,旁路由的回程包可能走错 WAN 口,造成 TCP 重复握手。解决思路:在主路由的 mangle 里把旁路由 IP 绑定到固定出口,或干脆放弃多拨。
故障排查速查表
| 现象 | 最可能原因 | 验证动作 | 处置 |
|---|---|---|---|
| 国内网站打不开 | cn.zone 未加载 | nft list set inet quicklink cn_ip | 重新下载并重启 nftables |
| wg0 握手超时 | 主路由未放行 UDP 51820 | tcpdump -i wan port 51820 | 主路由防火墙放行 |
| Netflix 仍检测代理 | DNS 泄露 | dnsleaktest.com | dnsmasq 强制 53 转发至快连 DNS |
性能调优:让 500 M 跑满还不发烫
1. 开软件流量分载
OpenWrt 23.05 默认开启 software offload,若用 nftables 需确认 flowtable 已启用,可把转发延迟再降 0.3~0.5 ms。路径:Network → Firewall → Settings → Software flow offloading。
2. 选协议
同节点下,WireGuard 吞吐 ≈ V2Ray+TLS 的 1.4 倍,CPU 占用反而低 10%。若只是网页/视频,直接 WireGuard;若遇到 QoS,再切 V2Ray+TLS 并开 ShadowTLS,CPU 会涨但抗丢包更好。
3. thermal 限频
塑料壳盒子夏季壳温可达 75℃,触发降频后吞吐腰斩。工作假设:在 /etc/rc.local 加 echo 60000 > /sys/class/thermal/thermal_zone0/trip_point_0_temp,把温控墙提到 60℃,再配小风扇,可让峰值 500 M 持续十分钟不降速。
适用/不适用场景清单
- 适用:家庭宽带 ≤1000 M、终端混杂(电视、游戏机、IoT)、需要“零客户端”出国;留学合租、短租公寓,搬走时旁路由直接带走。
- 不适用:公司内网强制 802.1X、多出口负载均衡、IPv6-only 网络、对延迟 <50 ms 的职业电竞;政企单位需等保测评,旁路由引入额外边界设备,可能无法备案。
最佳实践检查表(上线前逐项打钩)
□ 主路由静态回程已写
□ cn.zone 每周自动更新 crontab
□ wg0 接口已选“自动重启”并配守护脚本
□ dnsmasq 强制 53 转发,防止 DNS 泄露
□ nftables 规则已备份至 /etc/nftables.d/
□ 旁路由断电测试,确认全屋可秒级回退直连
FAQ(结构化数据)
旁路由断网后如何快速恢复?
直接拔掉旁路由电源,主路由会自动把流量走默认 WAN,全屋恢复;若之前写过静态路由,需登录主路由删除 192.168.2.0/24 那条即可。
Netflix 仍提示代理怎么办?
先检查 dnsleaktest.com 是否显示本地 DNS;若泄露,在 dnsmasq 里把 server=8.8.8.8 重定向至 wg0 接口,并重启 dnsmasq。仍不通过则切换至 V2Ray+TLS+ShadowTLS 混淆。
需要给每个设备装证书吗?
透明代理基于三层 IP 分流,无需证书;若你启用了 V2Ray+TLS 且开 HTTPS 拦截才需装根证书,默认方案不涉及。
收尾:下一步行动建议
完成上述步骤后,旁路由已具备“零客户端、可回退、低延迟”三大特征。建议每周跑一次 fast.com 与 dnsleaktest,把结果记到备忘录;若吞吐下降>20% 或 DNS 泄露,按本文故障表回查。三个月后,若 kuailian 推出新协议,只需在 wg0 同级再建新接口,nftables 标记稍作改动即可平滑迁移,全屋设备依旧无感。


