跳至主要内容

博文

目前显示的是 二月, 2022的博文

OpenWrt + Clash Tun + Policy Based Routing 网关代理实践

一、前言 在运行 OpenWrt 的路由器上跑 Clash 网关代理有许多现成的方案,但是因为一些原因,那些方案我都不喜欢。 在 Clash v1.8.0 版本更新之前,我将就用着缝合各家方案的 Shell 脚本来运行 Clash,虽然不是特别稳定,但日子还算勉强过得去。不幸的是,Clash v1.8.0 版本之后开发者去除了 redir-host 模式的远端 DNS 解析,我在并未仔细研究更新日志的情况下例行升级了 Clash Premium Core,从此我的网关代理就没稳定过……终端翻墙的日子持续了好几个月,在这期间我尝试过各种办法,但终究不够稳定,甚至我找回旧版本,想用回原来较稳定的方案都玄学地失败了。 前些日子(1 月中旬的样子)我在例行翻阅 Clash 项目的 Issue 和 Discussion 时,偶然发现一位朋友提出了我从未见过的方案,如下图: 来源位置: Issue#1358 我当时立马就在 OpenWrt 上安装了 VPN Policy Routing 这个组件,但是可能因为心情过于浮躁,不得其门而入,只能遗憾放弃,继续苦哈哈地研究 Shell 脚本启动和 iptables。——实际上还是因为我太菜了,才会被这一点点问题搞得身心俱疲。 前几天我再次尝试这个 VPN Policy Routing 方案时,不知怎么福至心灵,突然就找到了窍门——当然其实逻辑非常简单,各位看官大手子们一定一看到界面就知道该怎么弄了。在“简单”研究了两天之后,我认定这个方案还算稳定,故写出来以作记录,或许能稍微造福到后来人(如果有人看的话嘤嘤嘤)。 二、环境 1. 全新安装的 OpenWrt 21.02.1 x86_64 官方预编译版本 2. Clash Premium Core 2022.01.27 版本(dns: fake-ip) 3. Policy Based Routing 0.9.4-10 版本(pbr 和 luci-app-pbr 包) 其他环境不保证成功,OpenWrt 各种固件差别很大,基于 Linux 让它的环境很容易受到...