#!/bin/bash # 设备刚重启过(up 4 分钟)—— 查开机后各服务有没有自己起来 set -u echo "════════ 1. 开机多久了 ════════" uptime | sed 's/^/ /' echo " 开机于: $(who -b 2>/dev/null | awk '{print $3, $4}' || echo '?')" echo echo "════════ 2. 三个服务 ════════" for svc in lanremote-relay lanremote-tunnel lanremote-nettune lanremote-watchdog.timer; do printf " %-26s %s (%s)\n" "$svc" "$(systemctl is-active $svc 2>&1)" "$(systemctl is-enabled $svc 2>&1)" done echo echo "════════ 3. 开机自启清单里有没有它们 ════════" systemctl list-unit-files 2>/dev/null | grep -i lanremote | sed 's/^/ /' echo echo "════════ 4. 隧道连接数 ════════" echo " $(curl -s --max-time 5 http://127.0.0.1:20241/metrics 2>/dev/null | grep '^cloudflared_tunnel_ha_connections' | awk '{print $2}') 条" echo echo "════════ 5. 网络调优参数还在吗 ════════" for k in tcp_keepalive_time tcp_keepalive_intvl tcp_mtu_probing tcp_slow_start_after_idle; do printf " %-30s = %s\n" "$k" "$(sysctl -n net.ipv4.$k 2>/dev/null || echo '?')" done echo " MSS 钳制规则: $(iptables -t mangle -S 2>/dev/null | grep -c 'TCPMSS' || echo 0) 条" echo echo "════════ 6. 本机中转 ════════" echo " HTTP $(curl -s -o /dev/null -w '%{http_code}' --max-time 8 http://127.0.0.1:8080/v1/health)" echo echo "════════ 7. 公网(浏览器实际走的)════════" echo " 隧道地址: $(cat /root/lanremote-relay/public_url.txt 2>/dev/null || echo '(没有)')" ok=0 for i in $(seq 1 10); do c=$(curl -s -o /dev/null -w '%{http_code}' --max-time 15 \ -H 'User-Agent: LanRemote/1.4.0' https://relay.xxmxxs.top/v1/health) [ "$c" = "200" ] && ok=$((ok+1)) printf " %2d: %s\n" "$i" "$c" sleep 1 done echo " 可用 $ok/10" echo echo "════════ 8. 新地址写进状态文件了吗 ════════" cat /root/lanremote-relay/public_url.txt 2>/dev/null | sed 's/^/ /' echo echo "════════ 9. 当前 IP(换网络后)════════" hostname -I | sed 's/^/ /' echo echo "════════ 10. watchdog 最近记录 ════════" tail -8 /root/lanremote-relay/watchdog.log 2>/dev/null | sed 's/^/ /'