mirror of
https://gitee.com/xmz7891/ykxmz.git
synced 2026-10-18 17:10:43 +00:00
被控端 - 修复 MTU 问题:夹 MSS + 路径 MTU 探测(公网可用率 48% -> 100%) - 复用 HTTP 连接(免掉每次新建 TLS 的 30% 握手失败) - 每分钟回头找局域网,自动切回快 400 倍的路径 - 画面心跳帧:静止时省流量,客户端仍知道流是活的 - 锁屏时给出可操作的提示 手表端 - 内置 GTS Root R4 / GlobalSign Root CA,修 SSLHandshakeException - 连接错误翻译成人话(证书/时间/解析/超时分别提示) - 经中转连上后用服务器报的地址刷新已配对记录 - 新增局域网连接页面、服务器延迟检测 服务器端 - 支持 chunked 请求体(修每 16 秒一次的连接错乱与大面积 502) - 网络调优脚本 net-tune.sh(开机自动应用) - 管理页:批量删除、网络体检、下载区 - 隧道改 HTTP/2 + 双连接 文档 - 许可协议 / 安装前必读 / 安装后须知(作者:小麦子)
73 lines
2.7 KiB
Bash
73 lines
2.7 KiB
Bash
#!/bin/bash
|
||
# 确认(并确保)三个服务开机自启。
|
||
#
|
||
# 用户要求:部署到 Debian 上要能开机自启 —— 随身 WiFi 重启后
|
||
# 中转和隧道自己起来,不用人工干预。
|
||
set -u
|
||
|
||
echo "===== 1. 当前状态 ====="
|
||
printf " %-32s %-10s %s\n" "服务" "运行" "开机自启"
|
||
for s in lanremote-relay lanremote-tunnel lanremote-watchdog.timer; do
|
||
active=$(systemctl is-active "$s" 2>/dev/null)
|
||
enabled=$(systemctl is-enabled "$s" 2>/dev/null)
|
||
printf " %-32s %-10s %s\n" "$s" "$active" "$enabled"
|
||
done
|
||
|
||
echo
|
||
echo "===== 2. 缺的补上 ====="
|
||
for s in lanremote-relay lanremote-tunnel lanremote-watchdog.timer; do
|
||
enabled=$(systemctl is-enabled "$s" 2>/dev/null)
|
||
if [ "$enabled" != "enabled" ]; then
|
||
echo " $s 不是自启($enabled)-> 开启"
|
||
systemctl enable "$s" 2>&1 | tail -1 | sed 's/^/ /'
|
||
else
|
||
echo " $s 已经是自启"
|
||
fi
|
||
active=$(systemctl is-active "$s" 2>/dev/null)
|
||
if [ "$active" != "active" ]; then
|
||
echo " $s 没在跑 -> 启动"
|
||
systemctl start "$s"
|
||
fi
|
||
done
|
||
|
||
echo
|
||
echo "===== 3. 复核 ====="
|
||
printf " %-32s %-10s %s\n" "服务" "运行" "开机自启"
|
||
ALL_OK=1
|
||
for s in lanremote-relay lanremote-tunnel lanremote-watchdog.timer; do
|
||
active=$(systemctl is-active "$s" 2>/dev/null)
|
||
enabled=$(systemctl is-enabled "$s" 2>/dev/null)
|
||
printf " %-32s %-10s %s\n" "$s" "$active" "$enabled"
|
||
[ "$active" = "active" ] && [ "$enabled" = "enabled" ] || ALL_OK=0
|
||
done
|
||
|
||
echo
|
||
echo "===== 4. 依赖关系(谁先起)====="
|
||
for s in lanremote-relay lanremote-tunnel lanremote-watchdog.service; do
|
||
deps=$(systemctl show "$s" -p After -p Requires 2>/dev/null | tr '\n' ' ' | cut -c1-140)
|
||
printf " %-28s %s\n" "$s" "$deps"
|
||
done
|
||
|
||
echo
|
||
echo "===== 5. 开机流程会拉起哪些 ====="
|
||
systemctl list-unit-files --state=enabled --no-pager 2>/dev/null \
|
||
| grep -E 'lanremote' | sed 's/^/ /'
|
||
|
||
echo
|
||
echo "===== 6. 重启验证(只看 enabled,不真重启)====="
|
||
if [ "$ALL_OK" = "1" ]; then
|
||
echo " ✓ 三个服务都是 active + enabled"
|
||
echo " 随身 WiFi 重启后会自己起来:"
|
||
echo " 1) lanremote-relay 中转服务"
|
||
echo " 2) lanremote-tunnel Cloudflare 隧道(固定域名 relay.xxmxxs.top)"
|
||
echo " 3) lanremote-watchdog.timer 每 5 分钟检查隧道,断了自动重启"
|
||
else
|
||
echo " ✗ 还有服务没配好"
|
||
fi
|
||
|
||
echo
|
||
echo "===== 7. 当前隧道地址 ====="
|
||
cat /root/lanremote-relay/public_url.txt 2>/dev/null | sed 's/^/ /'
|
||
echo
|
||
echo " 公网可达性: HTTP $(timeout 20 curl -4 -s -o /dev/null -w '%{http_code}' -H 'User-Agent: LanRemote/1.4.0' https://relay.xxmxxs.top/v1/health 2>/dev/null)"
|