Что-то вроде этого?
Сохраните это как blockit.bat
:
@echo off
if "%1"=="list" (
netsh advfirewall firewall show rule Blockit | findstr RemoteIP
exit/b
)
:: Deleting existing block on ips
netsh advfirewall firewall delete rule name="Blockit"
:: Block new ips (while reading them from blockit.txt)
for /f %%i in (blockit.txt) do (
netsh advfirewall firewall add rule name="Blockit" protocol=any dir=in action=block remoteip=%%i
netsh advfirewall firewall add rule name="Blockit" protocol=any dir=out action=block remoteip=%%i
)
:: call this batch again with list to show the blocked IPs
call %0 list
Создайте blockit.txt
со своими IP-адресами, чтобы блокировать и запускать blockit
.
Вы можете запустить blockit list
чтобы проверить, какие IP-адреса заблокированы в данный момент.
Примечание: это должно быть запущено от имени администратора.
Редактировать: не знал, хотите ли вы, чтобы исходящий или входящий трафик был заблокирован, поэтому я добавил и dir=in
и dir=out
. Вы можете удалить один или другой (или оставить их обоих в обоих направлениях).