chatgpt 도움을 받았는데...
Bitdefender VPN 사용 중 입니다.
이 프로그램 에서 Kill Switch를 지원하지만 배치파일로 쓰는거랑
이 기본 프로그램의 Kill Switch 만 해 놔도 안전 하겠죠?
@echo off
setlocal enabledelayedexpansion
:: VPN 인터페이스 이름 설정 (자신의 VPN 인터페이스 이름으로 수정)
set VPN_INTERFACE_NAME=VPN
set FW_RULE_NAME=VPN-Kill-Switch-Rule
:loop
set VPN_CONNECTED=
for /f "tokens=*" %%i in ('netsh interface show interface "%VPN_INTERFACE_NAME%" 2^>nul ^| findstr /i "Connected"') do (
set VPN_CONNECTED=1
)
if defined VPN_CONNECTED (
echo VPN 연결됨. 인터넷 연결을 허용합니다.
netsh advfirewall firewall delete rule name="%FW_RULE_NAME%" >nul 2>&1
) else (
echo VPN 연결되지 않음. 인터넷 연결을 차단합니다.
netsh advfirewall firewall add rule name="%FW_RULE_NAME%" dir=out action=block remoteip=any profile=any enable=yes >nul 2>&1
netsh advfirewall firewall add rule name="%FW_RULE_NAME%" dir=in action=block remoteip=any profile=any enable=yes >nul 2>&1
)
timeout /t 5 /nobreak >nul
goto loop
exit
setlocal enabledelayedexpansion
:: VPN ÀÎÅÍÆäÀ̽º À̸§ ¼³Á¤
set "VPN_INTERFACE_NAME=VPN"
set "FW_RULE_NAME=VPN-Kill-Switch-Rule"
:loop
set VPN_CONNECTED=
for /f "tokens=*" %%i in ('netsh interface show interface "%VPN_INTERFACE_NAME%" 2^>nul ^| findstr /i "Connected ¿¬°áµÊ"') do (
set VPN_CONNECTED=1
)
if defined VPN_CONNECTED (
echo VPN ¿¬°áµÊ. ÀÎÅÍ³Ý ¿¬°áÀ» Çã¿ëÇÕ´Ï´Ù.
netsh advfirewall firewall delete rule name="%FW_RULE_NAME%" >nul 2>&1
) else (
echo VPN ¿¬°áµÇÁö ¾ÊÀ½. ÀÎÅÍ³Ý ¿¬°áÀ» Â÷´ÜÇÕ´Ï´Ù.
netsh advfirewall firewall add rule name="%FW_RULE_NAME%" dir=out action=block remoteip=any profile=any enable=yes >nul 2>&1
netsh advfirewall firewall add rule name="%FW_RULE_NAME%" dir=in action=block remoteip=any profile=any enable=yes >nul 2>&1
)
timeout /t 5 /nobreak >nul
goto loop
¹Ì±¹ ¿î¿µÃ¼Á¦´Â Connected ¶ß°í ÇÑ±Û ¿î¿µÃ¼Á¦´Â ¿¬°áµÊ ¶°¼ ¼öÁ¤ ÇØ º¾´Ï´Ù...