Regra ACK TIMEOUT rb433 v 4.5 :)
Ola mestres.
Digo isso por sou fã do under linux
tenho um provedor aqui em recife PE
estou com um pequeno problema.
vamos lá...
o ack de alguns visitantes da minha rede esta alto, chegando ate 408(us) "nossa"
meus clientes todos ele estão de 30 a 50 (us)
meu problema é que meu hotspot é um portal atrativo e com isso atrai muitos clientes dos meu concorrentes, contudo por causa desse portal já ganhei varios clientes, la tem muitos serviços gratis etc...
o ponto "x" é, já coloquei uma regra que achei aqui mesmo no forum para verificar e bloquear os usuarios com ack alto, mas a mesma não funciona. Acho que seja por causa da versão 4.5.
será que tem solução para isso
/system script
add name=ACK_VLAN1 policy=\
ftp,reboot,read,write,policy,test,winbox,password,sniff,sensitive source="\
# Defina abaixo o valor m\EDnimo de ACK\r\
\n:global ack 90;\r\
\n# Defina abaixo 1 para bloquear e 0 para n\E3o bloquear o cliente que es\
tiver acima do valor m\EDnimo\r\
\n:global block 0;\r\
\n# Defina abaixo 1 para dropar e 0 para n\E3o dropar o cliente que estive\
r acima do valor m\EDnimo\r\
\n:global drop 1;\r\
\n# Defina abaixo a Interface\r\
\n:global interf \"Wireless_01\";\r\
\n# =================================== ==================================\
= =======\r\
\n# ATEN\C7\C3O ! SO FA\C7A ALTERA\C7\D5ES ABAIXO, SE TIVER CERTEZA DO QUE\
\_ESTA FAZENDO\r\
\n# =================================== ==================================\
= =======\r\
\n:global total 0;\r\
\n:global mac \"\";\r\
\n:global cliente \"\";\r\
\n:log info \"Listando Clientes com ACK acima de \$ack ms:\";\r\
\n:foreach i in=[/interface wireless registration-table find interface=\$i\
nterf] do={\r\
\n:if ([/interface wireless registration-table get \$i ack-timeout] > \$ac\
k) do={\r\
\n:log info (\"COMENTARIO: \" . [/interface wireless registration-table ge\
t \$i comment] . \" - MAC: \" . [/interface wireless registration-table ge\
t \$i mac-address] . \" - ACK: \" . [/interface wireless registration-tabl\
e get \$i ack-timeout]);\r\
\n:set mac [/interface wireless registration-table get \$i mac-address];\r\
\n:set cliente [/interface wireless access-list find mac-address=\$mac];\r\
\n:if (\$block = 1) do={\r\
\n/interface wireless access-list disable \$cliente;\r\
\n};\r\
\n:if (\$drop = 1) do={\r\
\n/interface wireless registration-table remove \$i;\r\
\n};\r\
\n:set total total+1;\r\
\n};\r\
\n};\r\
\n:if (\$total = 0) do={\r\
\n:log info \"Parab\E9ns ! Nenhum Cliente com ACK acima de \$ack ms encont\
rado.\";\r\
\n};\r\
\n"
Re: Regra ACK TIMEOUT rb433 v 4.5 :)
eu uso essa aki, na rb433 mk v4.5
e nunca me deu problema
:global interf "CLIENTES";
:global ack 40;
:global mac "";
:global cliente "";
: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 (">".[/interface wireless registration-table get $i comment]." || ".$mac);
:log info (">>".[/interface wireless registration-table get $i ack-timeout]." us");
/interface wireless access-list disable $cliente;
/interface wireless access-list enable $cliente;
};
};
eu peguei aki no forum, mas nao me lembro o autor
antes de postar da uma procurada q vc axa varios posts
flw
Re: Regra ACK TIMEOUT rb433 v 4.5 :)
O autor é AlexandreCorrea, no blog dele tem inclusive, o script.
Script para verificar ACK - nova versão - Blogs - Under-Linux.org
Re: Regra ACK TIMEOUT rb433 v 4.5 :)
Ola mestres
Funcionou direitinho aqui na 4.5
Obrigado ao Leonardo
Obrigado ao mktguaruja
Re: Regra ACK TIMEOUT rb433 v 4.5 :)
Citação:
Postado originalmente por
mktguaruja
Show esse script cara
procurei muito auqi no forum , mas esse não apareceu nas pesquisas...
acho que por ser um pouco antigo ele talvez não seja listado " nos 10" primeiros...
grato pela sua atenção
Re: Regra ACK TIMEOUT rb433 v 4.5 :)
Citação:
Postado originalmente por
Leonardo
eu uso essa aki, na rb433 mk v4.5
e nunca me deu problema
:global interf "CLIENTES";
:global ack 40;
:global mac "";
:global cliente "";
: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 (">".[/interface wireless registration-table get $i comment]." || ".$mac);
:log info (">>".[/interface wireless registration-table get $i ack-timeout]." us");
/interface wireless access-list disable $cliente;
/interface wireless access-list enable $cliente;
};
};
eu peguei aki no forum, mas nao me lembro o autor
antes de postar da uma procurada q vc axa varios posts
flw
Essa regra não funfou aqui na rb433 v4.5
ele ate aparece no log , mas ela só mostra os clientes com ack alto, mas não os derruba...
mas fico grato pela sua atenção
Re: Regra ACK TIMEOUT rb433 v 4.5 :)