惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Google DeepMind News
Google DeepMind News
G
Google Developers Blog
博客园 - 三生石上(FineUI控件)
B
Blog
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
Hugging Face - Blog
Hugging Face - Blog
C
Check Point Blog
V
V2EX
Vercel News
Vercel News
U
Unit 42
Recent Announcements
Recent Announcements
Last Week in AI
Last Week in AI
J
Java Code Geeks
WordPress大学
WordPress大学
罗磊的独立博客
I
InfoQ
阮一峰的网络日志
阮一峰的网络日志
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
小众软件
小众软件
M
MIT News - Artificial intelligence
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Apple Machine Learning Research
Apple Machine Learning Research
Martin Fowler
Martin Fowler
云风的 BLOG
云风的 BLOG

Chongxiの咖啡屋

Google相册迁移到iCloud分享 - Chongxiの咖啡屋 讲讲「万物皆虚,万事皆允」 - Chongxiの咖啡屋 舞萌DX 落雪查分器使用指南 - Chongxiの咖啡屋 现代人的刻舟求剑 - Chongxiの咖啡屋 舞萌DX错误码0010深度解析及处理方法 - Chongxiの咖啡屋 做了一个明日方舟-奇象巡展的像素画拼豆工具 - Chongxiの咖啡屋 舞萌DX国服封禁机制详解 - Chongxiの咖啡屋 舞萌开机网络自检底层技术说明,断网如何排查讲解 - Chongxiの咖啡屋 舞萌机台开机初始化进程详解 - Chongxiの咖啡屋 为什么喜欢音乐 反而不该去学音乐? - Chongxiの咖啡屋 从装逼到嘉豪:中国互联网的精神胜利进化史 - Chongxiの咖啡屋 游蒋介石故居:奉化溪口 - Chongxiの咖啡屋 钢铁雄心4 steam正版导入全DLC补丁 - Chongxiの咖啡屋 漫漫长夜全地图及介绍 - Chongxiの咖啡屋 记一次无需实名换绑米哈游通行证手机号 - Chongxiの咖啡屋 邮储银行万事达借记卡全面指南 - Chongxiの咖啡屋 x402:一个来自27年前的状态码能救活被ai榨干的「人类网站」吗 - Chongxiの咖啡屋 舞萌国人口大普查:全服玩家数据分析 - Chongxiの咖啡屋 家中网络「捉奸」记 - Chongxiの咖啡屋 中国移动PT927G光猫折腾指南:破解超级密码改桥接 - Chongxiの咖啡屋 最好用的Android邮件客户端推荐 - Chongxiの咖啡屋 如何验证对方是不是Chongxi我本人 - Chongxiの咖啡屋 三星S20系列刷入移植OneUI8流程 - Chongxiの咖啡屋 使用obisidian和git插件来完美管理静态博客 - Chongxiの咖啡屋 玩客云拆机教程 - Chongxiの咖啡屋 母语级英语的本质,不是英语 - Chongxiの咖啡屋 我用过最好用的Android桌面(启动器) - Chongxiの咖啡屋 1. 区块链基本知识 - Chongxiの咖啡屋 b站创作激励提现几乎无门槛了 - Chongxiの咖啡屋 速报:APKPure 版 Telegram 被植入恶意后门 - Chongxiの咖啡屋
在Android设备上以系统级运行Clash - Chongxiの咖啡屋
Chongxi · 2025-08-26 · via Chongxiの咖啡屋

免责声明#

caution

本文内容仅限技术研究学习目的,旨在帮助开发者等深入了解网络代理,流量路由等运作机制。任何不当使用造成的后果均与本文作者无关。严禁用于商业用途。

您必须确保所有操作均遵守您所在国家 / 地区的法律法规。本文坚决反对并谴责任何使用网络代理技术绕过正当网络管控、访问非法内容或从事任何非法活动的行为。

本文涉及到的操作需要修改 Android 系统底层,具有潜在风险(如设备变砖,数据丢失,系统不稳定等)。所有操作均基于您自愿选择并自行承担全部风险。本文作者不对任何因遵循本文步骤导致的设备问题或法律纠纷负责。

本文面向具备足够知识背景和风险认知的用户,尝试前请确保您已了解关于 root 等基本概念。如果您不知道您在做什么,请自觉停止操作。

INTRO#

在开始之前,我们简单对比一下常规代理与box4magiskCHIZI-0618/box4magisk

CLASH FOR ANDROID#

以最常见的Clash for Android为例,他通常通过调用 Android 系统提供的VPN Service API工作。

当您在 CFA(Clash For Android)中启动代理时,应用会向系统申请创建一个虚拟 VPN 接口,此时会要求用户授权。随后 Android 会将设备上几乎所有应用程序的流量都重定向到此接口。

CFA 本质上其实是个壳,用于更方便与用户交互,本质其实是 Clash 核心在处理流量。

Clash 内核会根据您配置的规则来检查所有经过的流量,根据规则匹配结果,决定该流量走向。

BOX4MAGISK#

box4magisk借助 magisk/kernelSU/APatch 将 clash 部署在data/adb/,使其深度集成在 Android 系统的网络栈,实现了更高权限的流量接管。

由于他不依赖VPN Service API,因此完全不占用 VPN 槽位,通过透明代理,使其能绕过大多数检测。

PRINCIPLE#

TRANSPARENT PROXY#

Transparent Proxy,也就是透明代理。简单来讲,就是让应用程序无法检测其存在,让应用认为他在直接连接互联网。其劫持实现主要如下

TUN#

TUN设备是软件实现的虚拟网络设备。他不像eth0wlan0那样是真实的硬件。他就像一个虚拟的网线接口,一端插在系统的网络栈,一端插在 Clash 核心。

其工作原理主要为:

系统根据iptables规则,把所有需要被代理的网络流量发送到TUN设备。Clash 内核则从另一端读取这些原始数据包进行处理,随后经过TUN回到系统内核,并出口到目的地。

TUN 设备在网络层工作,处理IP 数据包使其能够接管所有基于 IP 的流量。

TUN2SOCKS#

众所周知,Clash 一般监听在 SOCKS5/HTTP 端口,守听的是预期符合代理协议的数据。但 TUN 里给出的数据则是原始网络数据包,压根不是一回事。

TUN2SOCKS作为其中的桥梁,达到了翻译的效果。他负责读取 TUN 来的原始数据包,以客户端身份将其打包为标准的 SOCKS5 协议格式,并将其发送给 Clash 内核,这样 Clash 就可以正常处理这些流量了。

  • 对于 Clash 来说,它只是为叫做tun2socks的本地客户的提供代理服务,并不知道其接管的流量来自系统全局。
  • 对于应用程序来说,它以为自己是直接连接到互联网,并不知道自己的流量被 TUN 劫持并转译。

IPTABLES#

系统流量默认可不会自己跑进 TUN,在 Box4magisk 中,使用到了iptables让流量走向 TUN。

我们先来了解下iptables,这是 Linux 系统内置的数据包过滤和操作工具,不过在这里,他的核心作用不是防火墙,而是对流量进行路由。

Box4magisk 在启动时,会添加一系列规则达到REDIRECTTProxy到 TUN 设备的目的。

接下来我们会举一个例子,来更好理解他们协同工作时的流量走向#

  1. app 试图连接xice.cx:443
  2. iptables立即截获此 TCP 请求,根据规则,将流量引至 TUN 设备
  3. TUN 会将流量引至tun0
  4. tun2socks会从tun0中读取到这个原始 TCP 请求,并将其打包为SOCKS5协议的CONNET blog.chongxo.us 443发给 localhost 的 Clash 端口。
  5. Clash 接收到该请求后,根据代理规则进行出口。

从远程服务器返回的数据则会以以上方式反向走一遍。

PREREQUISITES#

  • 一台已获取 Root 权限的 Android 设备
  • 获取 Magisk 模块文件

这里我们使用Surfing作为演示,这是 fork 自box4magisk的项目,有集成式一体服务、即刷即用的特色。

您也可以选择原始的box4magisk进行配置,后续 Chongxi 会考虑写关于这个的 blog。

GitMetaio/Surfing

LET’S GO#

Surfing 的部署到此完毕。

CONCLUSION#

至此,我们通过 Box4Magisk 模块,我们超越了普通应用的限制,将 Clash 深植于系统底层,实现了真正全局、无感的网络代理。

同时,我们也深入理解了其背后的工作原理,让「魔法」变成了可控的「技术」。

center large

这里是 Chongxi,期待与您的下一次见面

Thanks For Watching.