Contribuição - Script Conexão Turbo

Boa noite a todos, vou contribuir com um script que tem a função de dobrar a velocidade de cada cliente, (semelhante a função turbo do mk-auth) antes de tudo quero deixar claro que esse script foi adaptado para essa função, o script original tem outra função que é adicionar o cache full individual para cada cliente, e é de autoria da thagos hyper cache, o script abaixo verifica cada controle de banda individual na simple queue do mikrotik e adiciona as regras de marcar pacotes no mangle e dobra a velocidade no queue tree.

o script pode ser facilmente alterado nas variáveis que estão #comentadas

Funciona com pppoe e hotspot

o script não verifica o cliente por tipo autenticação e sim a simple queue, ex: se o cliente tem autenticação hotspot ele pega o login e ip do cliente e faz a marcação...

se o cliente tem autenticação pppoe ele pega o login e a interface e faz a marcação.

#===================================
# Dobra a velocidade baseado no
# plano contratado pelo cliente
#
#===================================
#
# Limite de velocidade do Turbo (aqui é o limite máximo que pode chegar em Mbps pode ser
# alterado para mais ou para menos, o mínimo é 1 que é referente a 1Mbps )
:local LimiteMaxClientes 10 ; \
#
# Velocidade do cliente * Multiplicador = Velocidade Dobrada ou seja multiplicando por 2
:local Multiplicador 2 ; \
#
# Velocidade máxima para poder usar Turbo ( em Mbps )
:local LimitePlano 5 ; \
#
# Velocidade mínima para poder usar Turbo ( em kbps )
:local MinPlano 100 ; \
#
#
#
#
#
#
# Remove as regras antigas do mangle
:foreach b in [/ip firewall mangle find where comment="Conexao-Turbo"] do={ /ip firewall mangle remove $b }; \
#
# Remove as queues antigas
:foreach c in [/queue tree find where comment="Conexao-Turbo"] do={ /queue tree remove $c }; \
#
#
#
#
#
# Para cada queue de cliente gera as regras
:foreach n in [/queue simple find] do={ \
:local targetaddress [/queue simple get $n target-addresses] ;\
:local queuename [/queue simple get $n name] ;\
:local interfacename [/queue simple get $n interface] ;\
:local prioridade [/queue simple get $n priority] ;\
:local limitemaximo [/queue simple get $n max-limit] ;\
:local limitemaxfull [:pick "$limitemaximo" "$([:find "$limitemaximo" "/" -1 ] + 1)" "$([:len "$limitemaximo"] - 1)" ] ; \
:local limitemaxunidade [:pick "$limitemaximo" "$([:len "$limitemaximo"] - 1)"]; \
:local limitemaxfullturbo "$($limitemaxfull * $Multiplicador)"; \
:local limitemaxplano "$LimitePlano";\
:local limitemax $LimiteMaxClientes ;\
:if ("$limitemaxunidade" = "k") do={ \
:set limitemax "$($LimiteMaxClientes * 1024)" ;\
:set limitemaxplano "$($LimitePlano * 1024)" ;\
} else { \
:if ("$limitemaxunidade" = "K") do={ \
:set limitemax "$($LimiteMaxClientes * 1024)" ;\
:set limitemaxplano "$($LimitePlano * 1024)" ;\
} else { \
:set MinPlano [:tonum "$($MinPlano / 1024)"];\
};\
};\
:if ($limitemaxfullturbo > $limitemax) do={ :set limitemaxfullturbo $limitemax } ;\
:if ($limitemaxfull <= $limitemaxplano) do={ \
:if ($limitemaxfull >= $MinPlano) do={ \
#
#
#
##
# Regra que marca os pacotes
:if ("$interfacename" = "all") do={ \
/ip firewall mangle add action="mark-packet" chain="forward" comment="Conexao-Turbo" \
disabled="no" dst-address="$targetaddress" new-packet-mark="Conexao-Turbo-$queuename" passthrough="no" ; \
} else { \
#
/ip firewall mangle add action=mark-packet chain="forward" comment="Conexao-Turbo" \
disabled="no" out-interface="$interfacename" new-packet-mark="Conexao-Turbo-$queuename" passthrough="no" ; \
}; \
##
#
##
# Queue tree com o limite por cliente
/queue tree add burst-limit=0 burst-threshold=0 burst-time=0s comment="Conexao-Turbo" \
disabled=no max-limit="$limitemaxfullturbo$limitemaxunidade" name="Conexao-Turbo-$queuename" \
packet-mark="Conexao-Turbo-$queuename" parent=global-out priority="$prioridade" \
queue=default ; \
##
#
#
}; \
}; \
}
:log info "Conexao Turbo" \
#==============================
#===- Edited by  Jonas Oliveira   
#==============================

para automatizar o script é preciso criar o agendamento de acordo com cada necessidade,

em anexo está todo o script com o agendamento da seguinte forma,

conexão turbo inicia a partir das 00:00hr e termina as 08:00hr da manhã para mudar esse tempo altere em system scheduler "iniciar-turbo" e "fim-turbo", atenção para o funcionamento correto do script, o relogio do mikrotik tem que está ajustado.

espero que esse script ajude!

Um abraço a todos e fiquem com Deus.

script turbo.txt

Para adicionar comentários, você deve ser membro de MK-AUTH.

Join MK-AUTH

Votos 0
Enviar-me um email quando as pessoas responderem –

Respostas

  • vou mostrar como consegui ta rodando file 2018

     o grande problema do horario turbo, é que ele altera o plano

    no mk-auth no horaro programado, mais no mikrotik nao acontece nada continua com plano normal, somente se cliente desconectar e reconectar pegara o plano turbo, da mesma forma se ele nao desconectar mais ficará com plano turbo até o desconectar isso pode durar dias....

    solução e um script para mikrotik de derrubar os cliente pppoe, 2 vezes por dia

     eu tbm testei reiniciando rb 2 vzs por dia so que o reboot demora muito e a solucao de derrubar o pppoe soente 3 segundos maioria nunca vai sentir.

    vamos la

    program no Mk-Auth 

    horaio turbo para

    23:50 inicio

    07:50 termino

    No Mikrotik no New Terminal

    copie e cole 

    script horario turbo

    meia noite

    / system scheduler add name="Reboot Router Daily" on-event="/ppp active remove [find]" start-date=jan/01/1970 start-time=00:00:00 interval=1d comment="" disabled=no

    manha
    / system scheduler add name="Reboot Router Daily" on-event="/ppp active remove [find]" start-date=jan/01/1970 start-time=08:00:00 interval=1d comment="" disabled=no

    veja que coloquei o mk-auth pra trabalhar primeiro, pois se mikrotik trabalhar no mesmo horario ou antes

    pode nao subir o plano certo



    greg disse:

    Como fizeste? Aqui não funciona, já tentei em 3 versões diferentes do MK-AUTH e não funciona, e ninguém consegue me explicar o motivo de não funcionar.

    G2 Consultoria disse:

    Pelo que vi, não precisei de script para ativar o turbo, aqui meus clientes de 5mb estão todos ganhando 2 mb a mais de 17:00 até as 5

  • Como fizeste? Aqui não funciona, já tentei em 3 versões diferentes do MK-AUTH e não funciona, e ninguém consegue me explicar o motivo de não funcionar.

    G2 Consultoria disse:

    Pelo que vi, não precisei de script para ativar o turbo, aqui meus clientes de 5mb estão todos ganhando 2 mb a mais de 17:00 até as 5

  • Pelo que vi, não precisei de script para ativar o turbo, aqui meus clientes de 5mb estão todos ganhando 2 mb a mais de 17:00 até as 5

  • qual versão da 5x voce usa??


    jonas oliveira da silva disse:

    Opa! amigo não testei esse script na versão 6x

    mais posso te garantir que na versão 5X roda perfeito, e como o amigo Elton Araujo disse, eu tambem não gostei da versão 6x.

    e bem lembrado! o script completo está em anexo.

    Aline disse:

    O amigo que postou nem esta ajudando?
  • boa amigo, me diga uma coisa, pra gente criar esse script para garantia de banda, por exemplo das 18:00 as 00:00 (pois garantia de banda é zica pelo menos pra mim) solicitei ao pedro que crie uma opçao no mkauth assim como a do "horario turbo" "horario garantia" acho que seria mais eficiente e teria menos problemas com atualizações do mikrotik. pois tentei varios tipos de garantia e ate agora nada de funcionar aqui comigo.

  • Parabéns Amigo , Parabéns Mesmo !!

  • Obrigado
  • Dá uma lida AQUI

    tá bem mastigado!

    Saniel disse:

    como colocar o burst pra funcionar amigo?

    Pode me ajudar?

  • Opa! amigo não testei esse script na versão 6x

    mais posso te garantir que na versão 5X roda perfeito, e como o amigo Elton Araujo disse, eu tambem não gostei da versão 6x.

    e bem lembrado! o script completo está em anexo.

    Aline disse:

    O amigo que postou nem esta ajudando?
  • como colocar o burst pra funcionar amigo?

    Pode me ajudar?

This reply was deleted.