Página 7 de 19 PrimeiroPrimeiro ... 23456789101112 ... ÚltimoÚltimo
+ Responder ao Tópico



  1. contribuindo mais... fiz uma alteração...

    voce pode definir.. se vai apenas DROPAR o cliente, forçando uma reconexão. em alguns casos.. o cliente volta com ack baixo

    Código :
    # Defina abaixo o valor mínimo de ACK
    :global ack 30;
    # 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 "wlan1";
    # =============================================================================
    # 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. Citação Postado originalmente por alexandrecorrea Ver Post
    contribuindo mais... fiz uma alteração...

    voce pode definir.. se vai apenas DROPAR o cliente, forçando uma reconexão. em alguns casos.. o cliente volta com ack baixo
    Disso eu não sabia oO... bom... vou fazer isso então... pq tem uns clientes que vai de 35 pra 400 as vezes, mas to mandando o técnico ir la ver a instalação.

    Valew !



  3. exato.. eu desconecto todos que estao acima de 30 ... na maioria das vezes.. 80% volta com ack em 30 ... e os que novamente ficam com ack alto.. eu ja mando o tecnico urgente arrumar...

    as vezes um cliente ficou com ack alto por causa de algum outro cliente.. (alguma coisa momentanea) ...

    o ideal eh.. acima de 100 .. desconectar... rodar um script de 1 em 1 hora.. que cliente com ack acima de 100 .. seja desconectado..

  4. Citação Postado originalmente por alexandrecorrea Ver Post
    exato.. eu desconecto todos que estao acima de 30 ... na maioria das vezes.. 80% volta com ack em 30 ... e os que novamente ficam com ack alto.. eu ja mando o tecnico urgente arrumar...

    as vezes um cliente ficou com ack alto por causa de algum outro cliente.. (alguma coisa momentanea) ...

    o ideal eh.. acima de 100 .. desconectar... rodar um script de 1 em 1 hora.. que cliente com ack acima de 100 .. seja desconectado..
    Ah tah ! Saquei



  5. Olá Pessoal,

    Segue abaixo o script para RouterOS 2.9.x ou inferior:

    Código :
    # Defina abaixo o valor mínimo de ACK
    :global ack 30;
    # 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 reiniciar a Interface quando um cliente estiver acima do valor mínimo e 0 para não fazer nada
    # Obs.: Ative apenas no último dos casos, pois derruba todos clientes enlaçados na Interface
    :global intdis 0;
    # Defina abaixo a Interface
    :global interf "AP-Master";
     
    # =============================================================================
    # 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={
        :set mac [/interface wireless registration-table get $i mac-address];
        :set cliente [/interface wireless access-list find mac-address=$mac];
        :log info ("COMENTARIO: " . [/interface wireless access-list get $cliente comment] . " - MAC: " . [/interface wireless registration-table get $i mac-address] . " - ACK: " . [/interface wireless registration-table get $i ack-timeout]);
        :if ($block = 1) do={
          /interface wireless access-list disable $cliente;
        };
        :set total total+1;
      };
    };
    :if ($total = 0) do={
      :log info ("Nenhum Cliente com ACK acima de " . $ack . " ms encontrado.");
    } else {
      :if ($intdis = 1) do={
        /interface wireless disable $interf;
        /interface wireless enable $interf;
      };
    };

    Obs.: Infelizmente nesta versão não é possível derrubar o cliente sem ter que derrubar todos os outros, sendo assim use a função por sua conta e risco.

    Abraços.
    Última edição por youngrp; 18-05-2008 às 01:04.






Tópicos Similares

  1. regra para ack timeout
    Por thenet no fórum Redes
    Respostas: 15
    Último Post: 22-11-2007, 21:58
  2. Ack timeout
    Por EDUipiranga no fórum Redes
    Respostas: 5
    Último Post: 10-09-2007, 11:09
  3. ACK TimeOut fixo ou dinâmico?
    Por marcelomg no fórum Redes
    Respostas: 9
    Último Post: 24-02-2007, 00:38
  4. O que interfere no ACK TimeOut (cartão como AP)
    Por liandrocarniel no fórum Redes
    Respostas: 16
    Último Post: 22-02-2007, 08:41
  5. Ack Timeout
    Por alexsk no fórum Redes
    Respostas: 0
    Último Post: 29-08-2006, 14:25

Visite: BR-Linux ·  VivaOLinux ·  Dicas-L