如何使用netsh.exe批量添加Windows防火墙IP范围阻止规则
解决Windows防火墙批量阻止IP范围的批处理问题
问题根源
你当前的脚本存在格式错误:
- 用了多余的
**符号包裹IP范围 from/to和对应IP之间添加了空格,不符合netsh的语法规范
修正后的批处理脚本
@echo off :: 阻止入站TCP流量 netsh advfirewall firewall add rule name="test" dir=in action=block protocol=TCP remoteip=16.24.0.0/24,from=157.175.0.0 to=157.175.255.255,from=15.184.0.0 to=15.184.255.255,from=15.185.0.0 to=15.185.255.255 :: 阻止出站TCP流量 netsh advfirewall firewall add rule name="test" dir=out action=block protocol=TCP remoteip=16.24.0.0/24,from=157.175.0.0 to=157.175.255.255,from=15.184.0.0 to=15.184.255.255,from=15.185.0.0 to=15.185.255.255 :: 打开防火墙高级设置界面 start wf.msc pause
核心语法要点
- IP范围必须写成
from=起始IP to=结束IP的格式,不能有空格,也无需额外符号包裹 - 多个IP地址、CIDR段或范围用逗号直接分隔,不要加空格
- 脚本开头用标准的
@echo off关闭命令回显,替代原脚本里的echo@
内容的提问来源于stack exchange,提问作者SPOTENK
相关产品推荐
相关产品推荐

