Skip to content

这是一个用于在Android设备上开机自启动pingtunnel的Magisk模块,支持配置化启动多个实例。

License

Notifications You must be signed in to change notification settings

stillywud/magisk_pingtunnel

Repository files navigation

pingtunnel Magisk模块

这是一个用于在Android设备上开机自启动pingtunnel的Magisk模块,支持配置化启动多个实例。

功能特性

  • 开机自动启动pingtunnel服务
  • 支持配置化启动多个pingtunnel实例
  • 详细的日志记录和错误诊断
  • 进程管理和状态监控
  • 网络连接和端口检查

安装方法

  1. 将模块文件复制到设备的 /sdcard/Download/ 目录
  2. 在Magisk Manager中安装模块
  3. 创建配置文件(见下文)
  4. 重启设备

配置文件

配置文件位置

固定路径: /data/local/tmp/pingtunnel_init.sh

注意: 模块现在使用固定的配置文件路径,确保在所有设备上都能正常工作。

创建配置文件

# 使用创建脚本(推荐)
sh /data/adb/modules/pingtunnel/create_config.sh

# 或手动创建
echo '$MODDIR/pingtunnel -type client -key 1234567 -l 127.0.0.1:50004 -s 1.2.3.4 -t 127.0.0.1:50003 -tcp 1 -nolog 1' > /data/local/tmp/pingtunnel_init.sh

配置文件格式

# 每行一个pingtunnel启动命令
# 以#开头的行为注释,会被忽略
# 空行会被忽略

# 示例1: 基本的HTTP代理映射
$MODDIR/pingtunnel -type client -key 1234567 -l 127.0.0.1:50004 -s 1.2.3.4 -t 127.0.0.1:50003 -tcp 1 -nolog 1

# 示例2: 第二个映射实例(使用不同端口)
$MODDIR/pingtunnel -type client -key 1234567 -l 127.0.0.1:50005 -s 1.2.3.4 -t 127.0.0.1:50006 -tcp 1 -nolog 1

# 示例3: 映射到远程服务器
$MODDIR/pingtunnel -type client -key 1234567 -l 127.0.0.1:50007 -s 1.2.3.4 -t 8.8.8.8:53 -tcp 1 -nolog 1

参数说明

  • -type client: 客户端模式
  • -key [密钥]: 连接密钥
  • -l [本地地址:端口]: 本地监听地址
  • -s [服务器地址]: 服务器地址
  • -t [目标地址:端口]: 目标地址
  • -tcp 1: 启用TCP模式
  • -nolog 1: 禁用日志输出

故障排除

1. 检查模块状态

# 在终端中运行
sh /data/adb/modules/pingtunnel/debug.sh

2. 检查服务状态

# 检查pingtunnel是否正在运行
sh /data/adb/modules/pingtunnel/status.sh

3. 查看日志

# 查看详细日志
cat /data/local/tmp/pingtunnel.log

# 查看调试日志
cat /data/local/tmp/pingtunnel_debug.log

4. 手动启动服务

# 手动启动pingtunnel服务
sh /data/adb/modules/pingtunnel/service.sh

5. 创建配置文件

# 使用创建脚本
sh /data/adb/modules/pingtunnel/create_config.sh

# 或手动创建
echo '$MODDIR/pingtunnel -type client -key 1234567 -l 127.0.0.1:50004 -s 1.2.3.4 -t 127.0.0.1:50003 -tcp 1 -nolog 1' > /data/local/tmp/pingtunnel_init.sh

6. 检查配置文件

# 查看配置文件内容
cat /data/local/tmp/pingtunnel_init.sh

# 检查配置文件语法
sh /data/adb/modules/pingtunnel/debug.sh

常见问题

Q: pingtunnel没有启动

A: 请检查以下几点:

  1. 确保设备已root并安装了Magisk
  2. 检查配置文件是否存在:/data/local/tmp/pingtunnel_init.sh
  3. 检查网络连接是否正常
  4. 查看日志文件了解具体错误信息
  5. 确保pingtunnel二进制文件有执行权限

Q: 配置文件不存在

A: 创建配置文件:

# 使用创建脚本(推荐)
sh /data/adb/modules/pingtunnel/create_config.sh

# 或手动创建
echo '$MODDIR/pingtunnel -type client -key 1234567 -l 127.0.0.1:50004 -s 1.2.3.4 -t 127.0.0.1:50003 -tcp 1 -nolog 1' > /data/local/tmp/pingtunnel_init.sh

Q: 端口被占用

A: 检查配置文件中使用的端口是否被其他程序占用:

# 查看配置文件中使用的端口
grep -o ':[0-9]\+' /data/local/tmp/pingtunnel_init.sh | sed 's/://'

# 检查端口占用情况
netstat -tuln | grep -E ":(50003|50004|50005) "

Q: 多个实例启动失败

A: 检查以下几点:

  1. 确保每个实例使用不同的本地端口
  2. 检查系统资源是否足够
  3. 查看日志了解具体错误信息
  4. 确保所有命令格式正确

Q: 网络连接失败

A: 检查网络设置和防火墙规则,确保可以访问服务器

配置示例

基本配置(单个实例)

$MODDIR/pingtunnel -type client -key 1234567 -l 127.0.0.1:50004 -s 1.2.3.4 -t 127.0.0.1:50003 -tcp 1 -nolog 1

多实例配置

# 实例1: HTTP代理
$MODDIR/pingtunnel -type client -key 1234567 -l 127.0.0.1:50004 -s 1.2.3.4 -t 127.0.0.1:50003 -tcp 1 -nolog 1

# 实例2: 另一个映射
$MODDIR/pingtunnel -type client -key 1234567 -l 127.0.0.1:50005 -s 1.2.3.4 -t 127.0.0.1:50006 -tcp 1 -nolog 1

# 实例3: 映射到远程服务
$MODDIR/pingtunnel -type client -key 1234567 -l 127.0.0.1:50007 -s 1.2.3.4 -t 8.8.8.8:53 -tcp 1 -nolog 1

文件说明

  • service.sh: 主要的服务启动脚本
  • debug.sh: 调试和诊断脚本
  • status.sh: 状态检查脚本
  • create_config.sh: 配置文件创建脚本
  • customize.sh: 安装时的权限设置脚本
  • module.prop: 模块属性文件
  • pingtunnel_init.sh: 示例配置文件

日志文件位置

  • 主日志: /data/local/tmp/pingtunnel.log
  • 调试日志: /data/local/tmp/pingtunnel_debug.log
  • 进程ID文件: /data/local/tmp/pingtunnel.pid
  • 配置文件: /data/local/tmp/pingtunnel_init.sh

更新日志

v1.1.0

  • 修复配置文件路径问题
  • 使用固定的配置文件路径 /data/local/tmp/pingtunnel_init.sh
  • 简化配置文件查找逻辑
  • 提高启动可靠性

技术支持

如果遇到问题,请:

  1. 运行 debug.sh 脚本收集诊断信息
  2. 查看日志文件了解错误详情
  3. 检查配置文件格式是否正确
  4. 检查网络连接和系统权限

About

这是一个用于在Android设备上开机自启动pingtunnel的Magisk模块,支持配置化启动多个实例。

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages