【问题标题】:How to remove Mikrotik PHP Api firewall nat entry using find如何使用 find 删除 Mikrotik PHP Api 防火墙 nat 条目
【发布时间】:2017-05-08 10:34:37
【问题描述】:
我正在尝试使用单行 php api 代码添加和删除 NAT 条目,但无法做到。
终端代码 Mikrotik:
/ip firewall nat remove [find comment=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-addresses=103.19.130.215\n=to-ports=80");
//Working fine
删除:
$API->comm("/ip/firewall/nat/remove/[find\n=comment=id9]");
//Not working
谁能帮我解决?提前致谢。
【问题讨论】:
标签:
php
api
firewall
nat
mikrotik
【解决方案1】:
好像打错了;
$API->comm("/ip/firewall/nat/remove\n=[find\n=comment=id9]");
【解决方案2】:
我认为你必须更正命令
$API->comm("/ip/firewall/nat/remove/[/ip/firewall/nat/find\n=comment=id9]");
【解决方案3】:
完成了。下面是代码:
//使用 PHP API 移除 Mikrotik NAT
$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();
感谢大家的尝试。