+ Responder ao Tópico



  1. #1

    Padrão Ao mais experientes com scripts...

    Pessoal, gostaria de saber pq este script que derruba os cleintes com ACKTimeout auto não funciona nas versões 3.24 em diante, vou postar o script para que vcs possam me ajudar a adaptar para versões acima da 3.23...


    # Defina abaixo o valor mínimo de ACK
    :global ack 46;
    # Defina abaixo 1 para bloquear e 0 para não bloquear o cliente que estiver acima do valor mínimo
    :global block 0;
    # Defina abaixo 1 para dropar e 0 para não dropar o cliente que estiver acima do valor mínimo
    :global drop 1;
    # Defina abaixo a Interface
    :global interf "MEGANET3";
    # =============================================================================
    # ATENÇÃO ! SO FAÇA ALTERAÇÕES ABAIXO, SE TIVER CERTEZA DO QUE ESTA FAZENDO
    # =============================================================================
    :global total 0;
    :global mac "";
    :global cliente "";
    :log info "Listando Clientes com ACK acima de $ack ms:";
    :foreach i in=[/interface wireless registration-table find interface=$interf] do={
    :if ([/interface wireless registration-table get $i ack-timeout] > $ack) do={
    :log info ("COMENTARIO: " . [/interface wireless registration-table get $i comment] . " - MAC: " . [/interface wireless registration-table get $i mac-address] . " - ACK: " . [/interface wireless registration-table get $i ack-timeout]);
    :set mac [/interface wireless registration-table get $i mac-address];
    :set cliente [/interface wireless access-list find mac-address=$mac];
    :if ($block = 1) do={
    /interface wireless access-list disable $cliente;
    };
    :if ($drop = 1) do={
    /interface wireless registration-table remove $i;
    };
    :set total total+1;
    };
    };
    :if ($total = 0) do={
    :log info "Parabéns ! Nenhum Cliente com ACK acima de $ack ms encontrado.";
    };

  2. #2

    Padrão

    Não encontrei erro algum no script, o que esta acontecendo é que a forma de colar os scripts esta ficando cada vez mais chata. varias vezes que digitei na versão 3.27 diretamente no source do winbox ele não dava erro mas não executava as funções. Após utilizar da forma abaixo nunca mais tive problemas.

    Experimente criar o script através de ssh.

    /system script name=ackalto
    /system script edit ackalto source
    (copie e cole o script)

    em ssh execute ele para ver se dá algum problema :

    /system script run ackalto

  3. #3

    Padrão

    aki depois que atualizei para a versão 4.0beta4 nao funciono mais esse script :/
    eu poderia voltar a versao 3x mais estou usando um cartão N
    e so funciona na versao 4x :/

  4. #4

    Padrão

    Eu uso exatamente este na versão 3.27 e não tenho problemas, inclusive adaptei para minhas rbs que estão em bridge e não tenho cadastro na tabela registration.

  5. #5

    Padrão

    Citação Postado originalmente por herlon2008 Ver Post
    Não encontrei erro algum no script, o que esta acontecendo é que a forma de colar os scripts esta ficando cada vez mais chata. varias vezes que digitei na versão 3.27 diretamente no source do winbox ele não dava erro mas não executava as funções. Após utilizar da forma abaixo nunca mais tive problemas.

    Experimente criar o script através de ssh.

    /system script name=ackalto
    /system script edit ackalto source
    (copie e cole o script)

    em ssh execute ele para ver se dá algum problema :

    /system script run ackalto
    Fiz como vc mostrou ai, aqui estou usando a vesão 3.28 olha oq ele retorna:

    interrupted
    input does not match any value of value-name

  6. #6

    Padrão

    Verifique o nome da interface, pois este erro é caracteristico disto

  7. #7

    Padrão

    Citação Postado originalmente por herlon2008 Ver Post
    Verifique o nome da interface, pois este erro é caracteristico disto
    O nome da interface esta certo quando o nome esta errado aparece

    input does not match any value of interface

  8. #8

    Padrão

    Bom dia Amigo, eu fiz um tópico a um tempo atras, mas não tive minha dúvida solucionada e o topico trancado, será que vc poderia me ajudar, é que sou bastante leigo no assunto, minha dúvida é sobre o APRouter WR254
    Um Atendente do suporte técnico me disse que tem como fazer um comando no script pessoal do AP para redirecionar usuarios com o MAC bloqueados para uma página em meu PC o qual daria uma mensagem personalizada para que o usuario entre em contato com o administrador de Rede. já fucei a internete em peso e não consegui encontrar, será que vc pode me ajudar?

  9. #9

    Padrão

    Citação Postado originalmente por samygon Ver Post
    Bom dia Amigo, eu fiz um tópico a um tempo atras, mas não tive minha dúvida solucionada e o topico trancado, será que vc poderia me ajudar, é que sou bastante leigo no assunto, minha dúvida é sobre o APRouter WR254
    Um Atendente do suporte técnico me disse que tem como fazer um comando no script pessoal do AP para redirecionar usuarios com o MAC bloqueados para uma página em meu PC o qual daria uma mensagem personalizada para que o usuario entre em contato com o administrador de Rede. já fucei a internete em peso e não consegui encontrar, será que vc pode me ajudar?
    Cara isso não tem nada a ver com o tópico. O seu APRouter WR254 é um linux você tem que redirecionar o trafego dos mac's via iptables para o pc ( procure por iptables se vc compreende-lo vai conseguir) indicação o manual foca gnu/linux (pesquise no google)

  10. #10

  11. #11

    Padrão

    Citação Postado originalmente por samygon Ver Post
    Será que vc poderia me ajudar com algum exemplo?
    Ja lhe disse q isso nao tem nada a ver com o topico procure sobre iptables e roteamento e tem q manjar umpouco de comandos basicos de linux né ..

  12. #12

    Padrão

    Infelizmente, não da erro algum no script, simplismente não funciona apartir da 3.23...

  13. #13

    Padrão

    Citação Postado originalmente por rogeriodj Ver Post
    Infelizmente, não da erro algum no script, simplismente não funciona apartir da 3.23...
    o erro so aparece se vc executar o scrip no ssh