+ Responder ao Tópico



  1. #1

    Padrão SCRIPT ACK ( Distance ) para Mikrotik V5.1

    Fiz algumas mudanças no SCRIPT do Alexandrecorrea para funcionar na nova versão do Mikrotik, Segue abaixo.
    Código php:
    #Informacoes:
    #
    #Variavel distance -> deve ter o valor do distance MAXIMO permitido.
    #Variavel cut ->  deve ser 0 ou 1, 0 somente mostra, 1 mostra e desconecta a estacao.
    ##################################################################
    #Configuracoes das variaveis
    :local ack 5;
    :local cut 1;
     
    ############ Script - NAO ALTERAR #####################################
    :local mac "";
    :local uack "";
    :local removido "";
    :log warning ("[DistanceCheck] Procurando clientes com Distance maior que " . $ack);
    #pega a lista de interfaces AP wireless ativas, e que tenham ack dinamico
    :foreach i in=[ / interface wireless find mode="ap-bridge" distance="dynamic" running] do={
              :local intname [ / interface wireless get $i name ];
              :log warning ("     Interface: " . $intname);
              :foreach x in=[/interface wireless registration-table find interface=$intname] do={
                        :set uack [/interface wireless registration-table get $x distance];
                        :set removido "";
                        :if ($uack > $ack) do={
                             :set mac [ / interface wireless registration-table get $x mac-address];                         
                             :if ($cut = 1) do= {
                                  :set removido " removido...";
                                  / interface wireless registration-table remove $x;
                             };
                        :log warning ("          mac: " . $mac . "@" . $intname . " [" . $uack . "]" . $removido);
                        };                    
              };
    };
    ############ FIM #####################################
    Todos os direitos de criação são do Alexandrecorrea.

    Abcs.
    Última edição por osmano807; 21-07-2011 às 16:53.

  2. #2

    Padrão Re: SCRIPT ACK ( Distance ) para Mikrotik V5.1

    Valeu!!!



  3. #3

    Padrão Re: SCRIPT ACK ( Distance ) para Mikrotik V5.1

    muito bom mesmo.... rodou perfeitamente na v5.2 tbm.

  4. #4

    Padrão Re: SCRIPT ACK ( Distance ) para Mikrotik V5.1

    Aqui no 5.5 tambem está filé...


    alguem conhece algum OID do SNMP para pegar este distance???

    estou terminando o meu template para o mikrotik/zabbix, mas ainda não consegui achar o OID para o maximo do distance.



  5. #5

    Padrão Re: SCRIPT ACK ( Distance ) para Mikrotik V5.1

    Vlw, tava procurando esse script a tempos.

  6. #6

    Post Re: SCRIPT ACK ( Distance ) para Mikrotik V5.1

    Bom Dia ! a todos do forum under-Linux.
    Sou novo mais fiz um descoberta massa para que usa esre script, modifique este script que alexandre fez e que foi modificado para melhor pelo Bender, vou deixa aki minha contribuição modifiquei o script para verificar tb as VirtualAP, que criamos pra subistituir temporaria mente uma MiniPCI.
    segue a baixo.





    Código PHP:
    #Informacoes:
    #
    #Variavel distance -> deve ter o valor do distance MAXIMO permitido.
    #Variavel cut ->  deve ser 0 ou 1, 0 somente mostra, 1 mostra e desconecta a estacao.
    ##################################################################
    #Configuracoes das variaveis
    :local ack 3;
    :
    local cut 1;
     
    ############ Script - NAO ALTERAR #####################################
    :local mac "";
    :
    local uack "";
    :
    local removido "";
    :
    log warning ("[DistanceCheck] Procurando clientes com Distance maior que " $ack);
    #pega a lista de interfaces AP wireless ativas, e que tenham ack dinamico
    :foreach i in=[ / interface wireless find arp="enabled" running] do={
              :
    local intname [ / interface wireless get $i name ];
              :
    log warning ("     Interface: " $intname);
              :foreach 
    x in=[/interface wireless registration-table find interface=$intname] do={
                        :
    set uack [/interface wireless registration-table get $x distance];
                        :
    set removido "";
                        :if (
    $uack $ack) do={
                             :
    set mac [ / interface wireless registration-table get $x mac-address];                         
                             :if (
    $cut 1) do= {
                                  :
    set removido " removido...";
                                  / interface 
    wireless registration-table remove $x;
                             };
                        :
    log warning ("          mac: " $mac "@" $intname " [" $uack "]" $removido);
                        };                    
              };
    };
    ############ FIM ##################################### 

    vamos explicar:

    eu modifiquei o trecho original=":foreach i in=[ / interface wireless find mode="ap-bridge" distance="dynamic" running]"

    Pelo trecho modificado= ":foreach i in=[ / interface wireless find arp="enabled" running]"

    assim pega todas as miniPCI.
    valeu se gostarem dem joinha, valeuuuuuuuuuuuuuuuuuuuuu



  7. #7

    Padrão Re: SCRIPT ACK ( Distance ) para Mikrotik V5.1

    como fica para controlar VirtualAP tambem nao estou conseguido achar algum mateial