Как удалить запись nat в Mikrotik PHP Api firewall с помощью find

Я пытаюсь добавить и удалить запись NAT с помощью однострочного кода php api, но не могу этого сделать.

Код терминала Mikrotik:

/ ip firewall nat remove [найти комментарий = id9]

//Its working fine on terminal

Я пытаюсь написать ниже php api:

добавить:

$ API-> comm ("/ ip / firewall / nat / add \ n = chain = dstnat \ n = src-address = 103.19.131.3 \ n = protocol = tcp \ n = action = dst-nat \ n = comment = id9 \ n = to-address = 103.19.130.215 \ n = to-ports = 80 ");

//Working fine

удалить:

$ API-> comm ("/ ip / firewall / nat / remove / [найти \ n = комментарий = id9]");

 //Not working

Может ли кто-нибудь помочь мне решить эту проблему? Заранее спасибо.


person Sakif Ahmed    schedule 08.05.2017    source источник


Ответы (3)


Вроде опечатка;

$ API-> comm ("/ ip / firewall / nat / remove \ n = [find \ n = comment = id9]");

person Arash    schedule 08.05.2017

Я думаю ты должен поправить команду

$API->comm("/ip/firewall/nat/remove/[/ip/firewall/nat/find\n=comment=id9]");
person David L    schedule 12.05.2017

Это сделано. Ниже приведен код:

// Удаляем Mikrotik NAT с помощью PHP API

$API->write('/ip/firewall/nat/print', false);
$API->write('?comment=id9', false);
$API->write('=.proplist=.id');
$ARRAYS = $API->read();

$API->write('/ip/firewall/nat/remove', false);
$API->write('=.id=' . $ARRAYS[0]['.id']);
$READ = $API->read();

Спасибо всем за попытку.

person Sakif Ahmed    schedule 13.05.2017