PDA

Показать полную графическую версию : Вопрос по netsh


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

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

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

greg zakharov
24-10-2016, 12:43
Swit0, set устанавливает правило, а add - добавляет, то есть netsh advfirewall firewall add rule...

Kazun
24-10-2016, 13:10
@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
netsh advfirewall firewall add rule... »

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

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

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

greg zakharov
24-10-2016, 22:21
Смотрим что в правиле 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
greg zakharov, после отрабатывания, в правиле как был один ip так и остался, новый не добавился.
Я может недопонимаю чего ?

greg zakharov
25-10-2016, 20:10
Что ж, давайте разбираться и искать причину, и первое, на что следовало бы обратить внимание - не затесался ли где лишний пробел, например,
set ip=114.215.84.35
попробовать заменить на:
set "ip=114.215.84.35"
Причем в переменной ip указывается тот адрес, который нужно добавить к существующему.

Swit0
27-10-2016, 11:34
Причем в переменной ip указывается тот адрес, который нужно добавить к существующему. »
Да, именно так мне и нужно. Но кавычки не помогли, по прежнему в правиле я вижу только один адрес.

Swit0
30-10-2016, 17:12
Бамп вопросу.




© OSzone.net 2001-2012