# Hotspot Script para uma Fase de Test p. novos Usoários #
# ATENÇÃO !! Este Script e para a Versão mais recent do Mikrotik, não e para Login http #
# O Hotspot server-profile precisa esta em, login-by: mac=sim http-chap=não http-pap=não mac-cookie=não cookie=não https=não trial=não #
# o Mac-auth-mode= Mac as username and password, eu não gosto do Radius, esta configuração e sem Radius #
# este Script cria até uma ACL acess-list automatico para cada cliente também cria um ip-binding e dhcp-lease automatico # #
# Script for Latest RouterOS v.6.33rc37 #
# Eu coloquei no schedule com Intervale de 3 Minutos #
{
# coloque aqui o nome do seu dhcp-server #
:global sv "dhcp-server-nome";
:foreach i in=[/ip dhcp-server lease find where server=$sv dynamic=yes ] do={
/ip dhcp-server lease make-static [ find ];
}
}
{
# coloque aqui o nome do seu dhcp-server #
:global sv "dhcp-server-nome";
# coloque a rota para os hotspot clientes aqui, use este formato -> 10.63.240.0/23 10.63.240.255 #
# importante o segundo endereço e o endereço Broadcast, o Broadcast sempre o ultimo ip da sua ip faixa usada #
:global route "0.0.0.0/0 0.0.0.0";
# coloque o nome da sua interface wireless aqui #
:global wif "nome-da-interface-wlan";
:foreach i in=[/ip dhcp-server lease find where server=$sv dynamic=no ] do={
:local ip [/ip dhcp-server lease get $i address ];
:local mac [/ip dhcp-server lease get $i mac-address ];
:local date [/system clock get date ];
:if ([/ip dhcp-server lease find comment=$mac ] = "" ) do={
/ip dhcp-server lease set [ find address=$ip ] client-id="1:$mac" use-src-mac=yes server=$sv lease-time=10m comment="$mac";
# define aqui a quantidade em megas de upload e download qual V. vai liberar, não comfunda com a Velocidade #
:local in "25"
:local out "50"
# coloque o nome do seu servidor hotspot aqui #
:local hss "hotspot-server-nome";
# coloque o user-profile dos seus usoarios para accesso de test aqui #
# se não tem crie primeiro, a Velocidade o meu script vai acertar #
:local hup "user-profile-name";
# define aqui qual ceria a Velocidade da sua fase de test #
:local band "128k/256k 150k/300k 100k/200k 10/10 8 64k/128k"
# coloque aqui o vençimento apois quantos dias o cliente céra bloqueado #
:local days "1"
# NÃO EDITE MAIS NADA ABAIXO DAQUI #
:local upload [($in*1024*1024)];
:local download [($out*1024*1024)];
:local up [($days*86400)];
/ip hotspot user profile set [ find name="$hup" ] rate-limit="$band";
:if ([ /ip hotspot user find name="$mac" ] = "" ) do={
/ip hotspot user add server=$hss profile="$hup" name="$mac" address=$ip mac-address=$mac \
password=$mac routes="$route" limit-bytes-in=$upload limit-bytes-out=$download limit-uptime=$up comment="$date";
/ip hotspot ip-binding add mac-address=$mac address=$ip to-address=$ip server=$hss \
type=regular comment="$mac";
:if ([/interface wireless access-list find mac-address=$mac ] = "" ) do={
/interface wireless access-list add interface="$wif" mac-address=$mac comment="$ip"
}
}
}
}
}