标签归档:PPPoE

RouterOS/ros-ppp在线人数统计脚本,有效连接统计脚本

RouterOS标题栏显示ppp当前在线,最终实现的功能如下图:
26543
将下面的脚本加计划周期性更新即可:

:global zxzj [:len [/ppp active find]]
sy id set n=("\B5\B1\C7\B0\D4\DA\CF\DF"."$zxzj"." \C8\CB")

——————-分割线————————-

另一种实现方式:将在线人数周期统计写入log:
log2
将下面的脚本加计划周期性更新即可:

{:log warning ("当前拨号用户数是:".[:len [/ppp active find]])}

脚本-自动绑定PPPOE在线用户的MAC地址

#自动绑定在线PPP用户的MAC地址,如果不绑定请备注:admin
#可加计划执行,第一次绑定后的换MAC不会再次修改绑定MAC

/ppp secret;
:foreach pppuse in [find caller-id=""] do={
:local pcom [get $pppuse comment];
:local pnam [get $pppuse name];
:if ($pcom!="admin") do={
/ppp active;
:foreach pact in [find name=$pnam] do={
:local acal [get $pact caller-id];
/ppp secret set [/ppp secret find name=$pnam] caller-id=$acal;
}}}

#以下配合到期日期使用
可以配合备注日期为:[20111109]这样的日期格式,实现部份用户不绑定MAC
ROS用户备注格式:[20111109]
标注有:的为不绑定用户MAC的,示标注的绑定MAC

/ppp secret;
:foreach i in [find caller-id=""] do={
:local pcom [get $i comment];
:local pnam [get $i name];
:if ($pcom~"") do={} else={
/ppp active;
:foreach pact in [find name=$pnam] do={
:local acal [get $pact caller-id];
/ppp secret set [/ppp secret find name=$pnam] caller-id=$acal;
}}}