Board logo

标题: [系统相关] 请教:BAT如何实现对防火墙某个端口增量添加IP [打印本页]

作者: murray861021    时间: 2014-1-14 02:43     标题: 请教:BAT如何实现对防火墙某个端口增量添加IP

比如服务器目前443端口,已经有添加了大量IP。在保留原有IP列表前提下,如何利用批处理新添加一个IP?

目前比较笨的办法是把所有的IP整理成,隔开的形式,赋值给一个变量,然后再用netsh firewall实现添加的。

但是如果中间有哪次是手动添加的IP话,有时候会把一些没有在列表里面的删掉了。

而且每次新加IP都必须加到列表比较麻烦,请哪位高手不吝指点下,有没有其他实现方式,最好是BAT,不想用VBS,谢谢!
作者: DAIC    时间: 2014-1-14 08:26

  1. netsh firewall show config > a.txt
复制代码
看看这个命令的结果里面有没有那些IP
有的话,把a.txt传上来看看。
作者: murray861021    时间: 2014-1-15 01:40

你这个命令执行出来没有想要的IP地址列表,

我用 netsh firewall show state verbose=enable |findstr "TCP 范围"
在Server 2003中,地址列表那一行会提示:
443    TCP       是
FINDSTR: 行 67 太长。

在Server 2008中,地址列表可以完整显示出来,但是内容太多了;

Server 2003报错的问题就不管了,服务器慢慢都会换成Server 2008的系统;

想办法把端口对应的地址列表单独抽出来,然后再把新IP合并到列表中进去,实现单个IP进行添加;

这是我的一个想法,不知道大家有没有更好的处理办法,还请大家指教,谢谢!
作者: DAIC    时间: 2014-1-15 08:43

回复 3# murray861021
  1. netsh firewall show state verbose=enable > a.txt
复制代码
把a.txt压缩一下传上来看看
作者: benson2599    时间: 2014-1-16 00:54

友情支持~~~
作者: murray861021    时间: 2014-1-16 01:11

回复 4# DAIC
  1. netsh firewall show state verbose=enable > a.txt
复制代码
  1. NETSH ADVFIREWALL FIREWALL SHOW RULE NAME=443|FINDSTR /I /C:"远程 IP" > b.txt
复制代码
尝试了Server2008里面的NETSH ADVFIREWALL, 比NETSH FIREWALL抽取的想要的内容要容易一些了




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2