ros插件php,ROS白名单服务端PHP脚本,客户端ROS脚本

本文介绍了客户端使用ROS(Robot Operating System)脚本实现IP地址的动态管理,通过HTTP请求调用服务端PHP脚本,筛选并添加白名单。数据库操作中,PHP从数据库获取过期时间未到的IP,并返回给客户端进行实时更新。
摘要由CSDN通过智能技术生成

客户端ROS脚本:

{

:global rosid

:global addlist do={

/ip firewall address-list

:if (""=[find list=white_list address="$1"]) do={

add list=whitelist address="$1" timeout=2m

} else={

set [find list=white_list address="$1"] timeout=2m

}

}

:local ser "http://www.ip99.xyz/shortproxy.php\?rosid=$rosid"

/tool fetch url="$ser" mode=http dst-path=iplist.rsc

:delay 1

/import file=iplist.rsc

:delay 1

/file remove [find name=iplist.rsc]

}

服务端php脚本:

if ( isset($_GET['rosid'])) {

header('Content-type: text/plain');

$rosid=filter_input(INPUT_GET,'rosid');

$rosid=(int)$rosid;

if($rosid>0) {

} else {

echo "no rosid";

exit(0);

}

require_once './db/ip99.php';

$sql="select getiplist('$rosid')";

$conn=mysql_connect($host,$user,$pass);

if (!$conn) {die("could not connect to the database.\n");}

mysql_query("set names 'utf8'");

$res=mysql_select_db($db);

echo ":global addlist\r\n";

$sql="select ipaddress from {$tb_whiteip} where expiration>now() and find_in_set($rosid,areas)";

$res=mysql_query($sql,$conn);

while($row=mysql_fetch_row($res)) {

$ip=$row[0];

if(strlen(trim($ip))>7) {

echo " \$addlist $ip\r\n";

}

}

mysql_close($conn);

exit(0);

}

数据库 PHP文件:

$host='www.ip99.xyz';

$user='user';

$pass='pass';

$db='dbname';

$tb_whiteip='whiteip';

$conn=mysqli_connect($host,$user,$pass,$db);

if (mysqli_errno($conn)) {

die('db connect error:' . mysqli_error($conn));

} else {

mysqli_set_charset($conn,'utf8');

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值