Files
ykxmz/_build/device_status.sh
xmz7891 b62ac865ea ykxmz 1.5.0:修复手表端 TLS 证书校验 + MTU 修复网络稳定性
被控端
- 修复 MTU 问题:夹 MSS + 路径 MTU 探测(公网可用率 48% -> 100%)
- 复用 HTTP 连接(免掉每次新建 TLS 的 30% 握手失败)
- 每分钟回头找局域网,自动切回快 400 倍的路径
- 画面心跳帧:静止时省流量,客户端仍知道流是活的
- 锁屏时给出可操作的提示

手表端
- 内置 GTS Root R4 / GlobalSign Root CA,修 SSLHandshakeException
- 连接错误翻译成人话(证书/时间/解析/超时分别提示)
- 经中转连上后用服务器报的地址刷新已配对记录
- 新增局域网连接页面、服务器延迟检测

服务器端
- 支持 chunked 请求体(修每 16 秒一次的连接错乱与大面积 502)
- 网络调优脚本 net-tune.sh(开机自动应用)
- 管理页:批量删除、网络体检、下载区
- 隧道改 HTTP/2 + 双连接

文档
- 许可协议 / 安装前必读 / 安装后须知(作者:小麦子)
2026-10-06 19:01:05 +08:00

45 lines
1.3 KiB
Bash

#!/bin/bash
# 设备状态总检查。写成文件是因为 PowerShell 会吃掉 shell 的 $ 变量。
set -u
echo "===== 三个服务 ====="
for s in lanremote-relay lanremote-tunnel cf-login; do
state=$(systemctl is-active "$s.service" 2>/dev/null)
restarts=$(systemctl show "$s.service" -p NRestarts 2>/dev/null | cut -d= -f2)
printf " %-20s %-10s 重启 %s 次\n" "$s" "$state" "$restarts"
done
echo
echo "===== 中转健康 ====="
curl -s --max-time 8 http://127.0.0.1:8080/v1/health
echo
echo
echo "===== 隧道进程(应该只有 1 个)====="
pgrep -a -f 'cloudflared tunnel' | while read -r pid rest; do
printf " PID %-6s %s\n" "$pid" "$rest"
done
COUNT=$(pgrep -c -f 'cloudflared tunnel' 2>/dev/null || echo 0)
echo " 合计 $COUNT 个"
echo
echo "===== 内存 / 磁盘 ====="
free -m | awk 'NR==1 {print " " $0} NR==2 {printf " 已用 %s MB 可用 %s MB\n", $3, $7}'
df -h / | awk 'NR==2 {printf " 磁盘可用 %s (%s)\n", $4, $5}'
echo
echo "===== 隧道地址 ====="
cat /root/lanremote-relay/public_url.txt 2>/dev/null || echo " (还没有)"
echo
echo "===== cf-login 状态 ====="
systemctl status cf-login.service --no-pager 2>/dev/null | grep -E '^\s+Active'
echo
echo "===== cert.pem ====="
if [ -f /root/.cloudflared/cert.pem ]; then
echo " ✓ 已授权"
else
echo " ✗ 还没授权"
fi