Script Mikrotik para LIMITAR dispositivos móviles con DHCP con QUEUEs Dinamicas

Bloquear / Limitar

En las 3 versiones anteriores de este script podiamos “bloquear” un dispositivo movil tanto por DHCP como en el firewall del Bridge (capa 2) y en firewall capa 3.

Tal vez te interesen los scripts anteriores:
Version 1: Filtrar en Bridge Filter
Version 2: Filtrar en Firewall Filter
Version 3: Filtrar con DHCP Block

Ahora con una mínima modificación podemos controlarles el ancho de banda a cada uno de ellos. En este caso el script permite setear el RATE-LIMIT en una variable para todos los dispositivos.

########## INICIO DEL SCRIPT
:local DHCPSERVER "dhcp1";
:local LIMITE "256k";
# # www.tech-nico.com 
 
:foreach i in=[/ip dhcp-server lease find active-server=$DHCPSERVER] do={
log warning "Hola";
    :local DhcpDynMAC [/ip dhcp-server lease get $i mac-address];
                :local DhcpDynCLIENTID [/ip dhcp-server lease get $i active-client-id];
    :local DhcpDynHOST [/ip dhcp-server lease get $i host-name];
    :local phoneNAME [:pick $DhcpDynHOST 0 4];
 
    :if ( ($phoneNAME="BLUS") || ($phoneNAME="iPad") || ($phoneNAME="andr") || ($phoneNAME="Andr") || ($phoneNAME="Wind") || ($phoneNAME="iPho") || ($phoneNAME="BLAC") ) do={
        /ip dhcp-server lease set $i block-access=no  rate-limit="$LIMITE" insert-queue-before=first  mac-address="$DhcpDynMAC" use-src-mac=yes comment="$DhcpDynHOST" server="$DHCPSERVER" client-id="$DhcpDynCLIENTID";
    }
}
############## FIN DEL SCRIPT

La forma de limitar del script (sincronizando con queues) es como lo hacen algunos servidores radius.

El script recorre la lista de Leases DHCP y busca los dispositivos que comienzan con Host_name “iPad”, “andr”, etc. Luego lo edita, agregandole el limite de velocidad. Esto instantaneamente agrega un Queue dinamico en la lista de queues, controlando asi en el acto a cada Lease. Si el lease caduca, el queue se elimina solo, y si el lease por alguna razon renueva con otra direccion IP, tambien lo hace el queue de manera sincronizada. Es tal y como lo manejan los Servidores Radius.

Espero que lo disfruten de estas utilidades tan sencillas pero al mismo tiempo tan brillantes.

A pedido de Leonardo Jung. (excelente idea).

Saludos.

6 pensamientos en “Script Mikrotik para LIMITAR dispositivos móviles con DHCP con QUEUEs Dinamicas

  1. No me lo ha hecho nunca, quizas la IP que quiere asignar en la queue ya la tenes creada como queue estatica. O bien esta queriendo asignar 2 veces una misma direccion. Es raro. Proba actualizar el routerOS a la ultima version.

  2. azzarito, yo lo tengo andando en 2 routerboard con la 6.18. Te deberia andar perfectamente bien en la 6.3. Seguro estas haciendo algo mal. Volve a seguir los pasos y si no, a debuggear hermano!.

  3. Hola el scripts funciona cuando yo manualmente le paso a modo estático, luego corro el scripts funciona. pero en modo dinamico no funciona! no creis que primero seria pasar de modo dinamic a modo static?

    ideas?

    Saludos

  4. Guzman, claro, el script se encarga de leer dinamicos y al filtralo, agregar el flag “Blocked” como entrada estatica. Es decir, que no deberias hacer nada.

Deja un comentario