ROS3.30中利用PHP通过API管理PPPOE用户(有兴趣的进来吧)
本帖最后由 weikun444 于 2011-1-14 14:43 编辑一直想做一个PPPOE在线管理的,也就是用户自助平台,由于是单位用户,功能只要能注册及更改密码就行了。
经过网上搜索一下,发现了注册用户的(使用前请开API功能,ip service enable api),文件源码如下:
<?php
require('routeros_api.class.php'); //这个文件,论坛里有,我以前发过
$API = new routeros_api();
$API->debug = false;
if ($API->connect('192.168.1.1', 'admin', '123456'))
{
$API->write('/ppp/secret/add',false);
$API->write('=name=testpppoe',false);
$API->write('=service=pppoe',false);
$API->write('=password=123456');
$API->disconnect();
}
?>
现在就缺一个更改密码的,ROS中很好实现:
/ppp sec set password=654321,一句话就行了,但就是没法弄成API能识别的格式,请各位大大们指点一下。做好了以后,也可以增加一些其它的功能,方便各位坛友了。 帮忙顶起来,我也很想要这样的东西。我和你用途一样,单位用的 嘿嘿,有radius你怎么不用现成的呢?这个东西workbaby版主会弄。 Radius我下载了几个,都是收费的,要不就是设置不了。请老大帮忙推荐一个好用的RADIUS服务器软件(2003下用的),要能自动绑定MAC 地址,还有就是带自助系统。:) 网大的有,580,是基于2003的,没钱买 回复 weikun444 的帖子
我有艾博力的系统,你要不要 kankan....... 我也是卡在这里,不知在PHP中有什么格式来识别SET命令。 <?php
require('routeros_api.class.php'); //这个文件,论坛里有,我以前发过
$API = new routeros_api();
$API->debug = false;
if ($API->connect('192.168.1.1', 'admin', '123456'))
{
$API->write('/ppp/secret/set',false);
$API->write('=.id=testpppoe',false);
$API->write('=password=123456');
$API->disconnect();
}
?>
这样就OK了,已在5.7内测试通过。 不知道在3.30中可不可以,先试一下。万分感谢。 本帖最后由 okpan 于 2011-10-5 22:43 编辑
楼主和10楼的在3.30下运行不成功。
以下是添加PPPOE用户。
<?php
require('routeros_api.class.php');
$API = new routeros_api();
$API->debug = false;
if ($API->connect('192.168.1.1', 'admin','123456')) {
$API->comm("/ppp/secret/add", array(
"name" => "testpppoe",
"password" => "123456",
"service"=> "pppoe",)
);
$API->disconnect();
}
?>
这个程序在3.30下添加用户成功!就是不知如何将SET套用进去。
本帖最后由 okpan 于 2011-10-5 23:15 编辑
搞定!3.30下PPPOE将用户testpppoe密码123456,成功改为654321。
<?php
require('routeros_api.class.php');
$API = new routeros_api();
$API->debug = false;
if ($API->connect('192.168.1.1', 'admin','123456')) {
$API->comm("/ppp/secret/set", array(
".id" => "testpppoe",
"password" => "654321",)
);
$API->disconnect();
}
?>
这次国庆几天辛苦,终于在10楼9939781给予思路下成功解决。非常感谢。 断续努力狂挣铜板中....:):D:') 很深东西,跟你们学习了。。 不会API,,看看学习、ing...
页:
[1]
2