﻿@echo off
chcp 65001 >nul
title Titan VPN - IKEv2 Fix / IKEv2 연결 복구

rem ===== Admin auto-elevation / 관리자 권한 자동 승격 =====
net session >nul 2>&1
if %errorlevel% neq 0 (
    echo.
    echo  [!] 관리자 권한이 필요합니다. 권한 요청 창에서 "예"를 눌러주세요.
    echo  [!] 需要管理员权限, 请在弹窗中点击"是"。
    echo  [!] Administrator rights required - click "Yes" on the prompt.
    powershell -Command "Start-Process -FilePath '%~f0' -Verb RunAs" >nul 2>&1
    exit /b
)

echo.
echo  ============================================================
echo    Titan VPN - IKEv2 연결 복구 / IKEv2 修复
echo  ============================================================
echo.
echo  IKEv2 가 연결 직후 바로 끊길 때, 손상된 WAN Miniport 어댑터를
echo  재설정합니다. (OpenVPN 은 잘 되는데 IKEv2 만 안 되는 경우)
echo  当 IKEv2 一连上就断时, 重置损坏的 WAN Miniport 适配器。
echo.

echo  [1/4] Titan VPN / VPN 연결 끊는 중... / Disconnecting...
rasdial /disconnect >nul 2>&1

echo  [2/4] WAN Miniport (IKEv2) 비활성화 중... / Disabling...
netsh interface set interface "WAN Miniport (IKEv2)" admin=disable >nul 2>&1

echo  [3/4] 3초 대기 후 다시 활성화... / Re-enabling...
timeout /t 3 /nobreak >nul
netsh interface set interface "WAN Miniport (IKEv2)" admin=enable >nul 2>&1

echo  [4/4] DNS 캐시 비우는 중... / Flushing DNS cache...
ipconfig /flushdns >nul 2>&1

echo.
echo  ============================================================
echo    완료! / 完成! / Done!
echo    이제 Titan VPN 앱에서 다시 연결해 보세요.
echo    请在 Titan VPN 应用中重新连接。
echo  ============================================================
echo.
echo  * 그래도 안 되면 PC 재부팅 후 다시 시도하거나,
echo    앱에서 프로토콜을 OpenVPN 으로 바꿔 사용하세요.
echo  * 不行就重启电脑, 或在应用里改用 OpenVPN 协议。
echo.
pause
