Lazy loaded image
box4模块使用
字数 1089阅读时长 3 分钟
2024-7-2
2024-7-2
日期
类型
状态
链接
摘要
标签
分类
图标
密码
URL
MT管理器:
box5magisk:
box4magisk:
极客湾root指南:
安卓远程桌面软件:
 
使用教程

常规方法(默认 & 推荐方法)

管理服务的启停

以下核心服务统称 Box
  • Box 服务默认会在系统启动后自动运行
  • 您可以通过 Magisk Manager 应用打开或关闭模块实时启动或停止 Box 服务,不需要重启您的设备。启动服务可能需要等待几秒钟,停止服务可能会立即生效

选择需要代理的应用程序(APP)

  • Box 默认代理所有安卓用户的所有应用程序(APP)
  • 如果您希望 Box 代理所有应用程序(APP),除了某些特定的应用,那么请打开 /data/adb/box/scripts/box.config 文件,修改 proxy_mode 的值为 blacklist(默认值),在 user_packages_list 数组中添加元素,数组元素格式为安卓用户:应用包名,元素之间用空格隔开。即可不代理相应安卓用户应用。例如 user_packages_list=("0:com.android.captiveportallogin" "10:com.tencent.mm") 代表不代理用户 0 的 CaptivePortalLogin 和用户 10 的 Wechat
  • 如果您希望只对特定的应用程序(APP)进行透明代理,那么请打开 /data/adb/box/scripts/box.config 文件,修改 proxy_mode 的值为 whitelist,在 user_packages_list 数组中添加元素,数组元素格式为安卓用户:应用包名,元素之间用空格隔开。即可仅代理相应安卓用户应用。例如 user_packages_list=("0:com.termux" "10:org.telegram.messenger") 代表代理用户 0 的 Termux 和用户 10 的 Telegram
  • proxy_mode 的值为 core 时,透明代理不会工作,仅仅启动相应核心,这可以用来支持部分核心(sing-box、clash)原生的 TUN 入站

高级用法

更改代理模式

  • Box 默认使用 TPROXY 透明代理 TCP + UDP,若检测到设备不支持 TPROXY,则自动使用 REDIRECT 仅代理 TCP
  • 打开 /data/adb/box/scripts/box.config 文件,修改 proxy_method 的值为 REDIRECT 或 MIXED 则使用 REDIRECT 代理 TCP,在核心(仅 sing-box、clash 支持 TUN)没有启用 TUN 时 UDP 不会被代理

更改启动 Box 服务的用户

  • Box 默认使用 root:net_admin 用户用户组启动
  • 打开 /data/adb/box/scripts/box.config 文件,修改 box_user_group 的值为设备中已存在的 UID:GID,此时 Box 使用的核心必须在 /system/bin/ 目录中(可以使用 Magisk),且需要 setcap 二进制可执行文件,它被包含在 libcap 中

连接到 WLAN 或开热点时绕过透明代理

  • Box 默认透明代理本机、热点、USB 网络共享
  • 打开 /data/adb/box/scripts/box.config 文件,修改 ignore_out_list 数组添加 wlan+ 元素则透明代理绕过 WLAN,热点不受影响
  • 打开 /data/adb/box/scripts/box.config 文件,修改 ap_list 数组删除 wlan+ 元素则不透明代理热点(联发科机型可能为 ap+ 而非 wlan+,可使用 ifconfig 命令查看)

特定进程的透明代理

  • Box 默认透明代理所有进程
  • 如果您希望 Box 代理所有进程,除了某些特定的进程,那么请打开 /data/adb/box/scripts/box.config 文件,修改 proxy_mode 的值为 blacklist(默认值),在 gid_list 数组中添加 GID 元素,GID 之间用空格隔开。即可不代理相应 GID 的进程
  • 如果您希望只对特定的进程进行透明代理,那么请打开 /data/adb/box/scripts/box.config 文件,修改 proxy_mode 的值为 whitelist,在 gid_list 数组中添加 GID 元素,GID 之间用空格隔开。即可仅代理相应 GID 进程
小贴士:因为安卓 iptables 不支持 PID 扩展匹配,所以 Box 匹配进程是通过匹配 GID 间接达到的。安卓可以使用 busybox setuidgid 命令使用特定 UID 任意 GID 启动特定进程

进入手动模式

如果您希望完全通过运行命令来控制 Box 服务,只需新建一个文件 /data/adb/box/manual。在这种情况下,Box 服务不会在您的设备启动时自动启动,您也不能通过 Magisk Manager 或 KernelSU Manager 应用管理 Box 服务的启动或停止。
上一篇
Ubuntu设置默认输入设备
下一篇
安装wifi网卡驱动