首页
社区
课程
招聘
[原创]最好用过VPN检测
发表于: 1天前 704

[原创]最好用过VPN检测

1天前
704

XjVPN

Android CI
Release
License: GPL v3

XjVPN 是一个面向 Root Android 设备的按应用透明代理客户端。它不创建
VpnService,而是用应用 UID、iptables REDIRECT/TPROXY 和策略路由把选定
应用的流量送入 Mihomo。

下载

GitHub Releases
下载 XjVPN-v0.3.1-arm64.apk。当前仅提供 arm64-v8a 版本。

当前能力

  • 导入 Clash/Mihomo YAML 文件
  • 从 HTTP/HTTPS Clash 订阅更新配置
  • 使用 Root 直接读取 Clash Meta for Android 的当前配置和订阅地址
  • http://https://socks5://socks5h:// 代理 URL 生成为配置
  • 读取 Mihomo Selector 策略组,展示节点类型、状态和延迟
  • 在线切换策略节点、整组测速并在服务重启后恢复选择
  • 记录本次连接的全部域名、协议、端口、次数、规则和代理链
  • 域名记录支持实时刷新、搜索、排序和点击复制
  • 按应用 UID 或全部应用全局代理
  • IPv4 TCP REDIRECT、UDP TPROXY 与 IPv6 TPROXY
  • IPv4 DNS 劫持与 redir-host 域名映射
  • 独立 iptables 链、fwmark 和策略路由表
  • 正常停止、启动失败和应用进程被强制终止时自动清理规则

构建

环境要求:

  • JDK 17 或更高版本
  • Android SDK 35/36
  • Android 设备为 arm64-v8a
./gradlew testDebugUnitTest lintDebug assembleDebug
adb install -r app/build/outputs/apk/debug/app-debug.apk

构建任务会从 MetaCubeX 官方 Release 下载 Mihomo v1.19.30 Android arm64
二进制,校验固定 SHA-256 后打入 APK,不在仓库中提交 50 MB 的生成文件。

设备要求

  • Magisk、KernelSU 或 APatch 提供的 su
  • su -M 全局挂载命名空间支持
  • iptables ownerMARKTPROXYsocket 模块
  • IPv4 和 IPv6 policy routing

APatch 不弹出即时授权对话框。首次运行后,需要在 APatch 的“超级用户”页面
为 XjVPN 打开授权。

订阅 URL 和代理 URL 仅在点击导入按钮时读取。成功导入后生成的 Clash YAML
保存在应用私有目录,日常启停直接使用本地配置,不会重复下载;需要更新时再
点击“导入或更新订阅”。

域名审计记录只保存在应用本地数据库。每次启动代理会开始一个新会话并清空
上一轮记录;停止后仍可查看本次结果,便于整理广告域名和后续规则。

不少 Android 内核没有 ip6tables nat 表。XjVPN 因此只对 IPv4 DNS 安装
REDIRECT;IPv6 TCP/UDP 仍走 TPROXY,域名规则由 Mihomo 嗅探补充。

数据面

XjVPN 使用以下专用资源,不清空或替换 Android/netd 与其他防火墙的规则:

  • iptables 链:XJVPN_OUTXJVPN_PREXJVPN_DNSXJVPN_INPUT
  • fwmark:0x01000000/0x01000000
  • 路由表:20220
  • TCP Redirect:127.0.0.1:17892
  • UDP/IPv6 TProxy:127.0.0.1:17893
  • DNS:127.0.0.1:11053
  • Controller:127.0.0.1:19090,随机 secret

本应用 UID 和 Root UID 会被排除并设置 Android protect-from-VPN 标记,防止
代理内核出口重新进入透明代理或设备上已有的 VPN。

“全局模式”包含 Android 系统应用及其隔离进程,效果与常规 VPN 的全局接管
一致。按应用模式只接管用户明确选择的 UID。

兼容边界

“Clash 格式”以 Mihomo 配置语义为准。运行时会保留节点、代理组、规则和
Provider,同时关闭导入配置的 TUN、自定义 listener 和原监听端口。引用本地
相对文件的 Provider 需要连同资源迁移;远程 Provider 可由 Mihomo 自动下载。

Mihomo 由 MetaCubeX 项目发布并遵循其上游许可证。


传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!!

收藏
免费 4
打赏
分享
最新回复 (4)
雪    币: 3174
活跃值: (5676)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
666666666
1天前
0
雪    币: 51
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
3
666666666666666666
1天前
0
雪    币: 195
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
4
66666666666666666666666
1天前
0
雪    币: 174
活跃值: (421)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
6666
1天前
0
游客
登录 | 注册 方可回帖
返回