diff --git a/pharmq-setup.sh b/pharmq-setup.sh index 5ecf4b5..9abbcb7 100644 --- a/pharmq-setup.sh +++ b/pharmq-setup.sh @@ -897,7 +897,8 @@ phase8_verify() { print_step "API 서버 헬스체크 중..." sleep 5 local API_STATUS - API_STATUS=$(curl -s --connect-timeout 10 "http://${CT_VPN_IP}:8082/api/status" 2>/dev/null || echo "연결 실패") + local API_STATUS="" + API_STATUS=$(curl -s --connect-timeout 10 "http://${CT_VPN_IP:-localhost}:8082/api/status" 2>/dev/null || echo "연결 실패") if echo "$API_STATUS" | grep -qi "connected\|ok\|status"; then print_ok "API 서버 정상" else @@ -911,12 +912,12 @@ phase8_verify() { qm status "$VM_VMID" 2>/dev/null || print_warn "VM $VM_VMID 상태 확인 실패" fi - # 네트워크 테스트 + # 네트워크 테스트 (tailscale ping 사용 — 일반 ping은 iptables에서 DROP될 수 있음) print_step "VPN 네트워크 테스트 중..." - if ping -c2 -W3 "$CT_VPN_IP" >/dev/null 2>&1; then + if tailscale ping -c 1 --timeout 5s "$CT_VPN_IP" >/dev/null 2>&1; then print_ok "PVE → CT 네트워크 정상" else - print_warn "PVE → CT ping 실패 (방화벽 확인)" + print_warn "PVE → CT tailscale ping 실패" fi # 최종 결과 출력