Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   Вопрос по netsh (http://forum.oszone.net/showthread.php?t=320085)

Swit0 24-10-2016 12:26 2681191

Вопрос по netsh
 
Здравствуйте! Не уверен, что спрашиваю в правильно разделе.
Никак не могу найти как модифицировать существующее правило для фаервола в netsh.
Делаю:
netsh advfirewall firewall set rule name="blacklist" new remoteip=114.215.84.35

но он перезаписывает правило полностью, оставляя там только последний айпишник. А сделать чтобы он не перезаписывал, а именно добавлял адреса ?

Заранее спасибо.

greg zakharov 24-10-2016 12:43 2681195

Swit0, set устанавливает правило, а add - добавляет, то есть
Код:

netsh advfirewall firewall add rule...

Kazun 24-10-2016 13:10 2681202

Код:

@echo off
set rname=blacklist
set ip=114.215.84.35
for /F "tokens=2* delims=: " %%i in ('netsh advfirewall firewall show rule name^=%rname% ^| findstr "RemoteIP"') do (
        netsh advfirewall firewall set rule name=%rname% new remoteip=%%i,%ip%
)
netsh advfirewall firewall show rule name^=%rname%


Swit0 24-10-2016 16:19 2681259

Цитата:

Цитата greg zakharov
netsh advfirewall firewall add rule... »

В таком случае он делает много правил с одним и тем же именем в которых потом не разобраться.

greg zakharov 24-10-2016 17:15 2681275

Swit0, пардон, не уловил изначально сути. Тогда, как написал Kazun: выдергиваете предыдущий айпишник правила и к нему через запятую привинчиваете айпишник, который попимо прочего должен оказаться в правиле, - проще вряд ли возможно, так как set просто перезапиывает\устанавливает правило.

Swit0 24-10-2016 19:50 2681310

greg zakharov, я не знаю, я может делаю что не так, но у меня не работает. Как один айпишник был в правиле, так и остался. Новый айпишник должен быть в set ip ?

greg zakharov 24-10-2016 22:21 2681350

Смотрим что в правиле blacklist:
Код:

netsh advfirewall firewall show rule name="blacklist"
Из этой команды захватывает текущее данные (ip_1), теперь добавляем к уже имеющимся данным другой ip (ip_2):
Код:

netsh advfirewall firewall set rule name="blacklist" new remoteip="ip_1, ip_2"

Swit0 25-10-2016 03:59 2681386

Вложений: 1
greg zakharov, после отрабатывания, в правиле как был один ip так и остался, новый не добавился.
Я может недопонимаю чего ?

greg zakharov 25-10-2016 20:10 2681626

Что ж, давайте разбираться и искать причину, и первое, на что следовало бы обратить внимание - не затесался ли где лишний пробел, например,
Код:

set ip=114.215.84.35
попробовать заменить на:
Код:

set "ip=114.215.84.35"
Причем в переменной ip указывается тот адрес, который нужно добавить к существующему.

Swit0 27-10-2016 11:34 2682063

Цитата:

Цитата greg zakharov
Причем в переменной ip указывается тот адрес, который нужно добавить к существующему. »

Да, именно так мне и нужно. Но кавычки не помогли, по прежнему в правиле я вижу только один адрес.

Swit0 30-10-2016 17:12 2683056

Бамп вопросу.


Время: 02:39.

Время: 02:39.
© OSzone.net 2001-