Mikrotik – Gerando LOGs, por trafego das interfaces WLAN

Share Button

Esse script gera LOGs de todas as interfaces WLANs conforme a utilização de banda de cada cartão. No script é setado a velocidade máxima da interface, caso esse valor seja ultrapassado, é gerado um log do sistema avisando que essa interface esta excedendo uma certa taxa de trafego, o log também pode ser enviado via SYSLOG.

No meu caso configurei o scheduler para executar o script em 30 em 30minutos.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
:global traffic;
:global trafficlimit;
:global interface;
:global type;
:global name;
:global ip;
:global ssid;
:global band
:global tx;
:for i from="1" to=10 do={:set interface "wlan$i"; :set type [/interface wireless get $interface band];
<strong>#Nas próximas linhas é necessário configurar a velocidade máxima da interface, caso essa velocidade seja ultrapassada o log é gerado.</strong>
:if ($type = "2.4ghz-b") do={:set trafficlimit 2000000}; <strong>#velocidade dos cartões em 8002.11b</strong>
:if ($type = "2.4ghz-b/g") do={:set trafficlimit 4000000};<strong> #velocidade dos cartões em 8002.11b/g</strong>
:if ($type = "5ghz") do={:set trafficlimit 8000000}; <strong>#velocidade dos cartões em 8002.11a</strong>
/interface monitor-traffic [/interface find name=$interface] once do={:set traffic (tx-bits-per-second);
:if ($traffic > $trafficlimit) do={  :set name [/system identity get name];
:set ip [/ip address get 0 address];
:set ssid [/in wi get $interface ssid];
:set  band [/in wi get $interface band;
:set tx ($traffic/1000)];
:log info "Nome=$name  IP=$ip  SSID=$ssid  interface=$interface  band=$band  Tx-kbps=$tx" }}};

Basta configurar o scheduler para executar o script de tempos em tempos, e acompanhar os resultados com o comando;

/log print

O resultado já é convertido em kbps, algo como

Nome=Nome-da-MK  IP=10.0.0.1  SSID=REDE-TESTE  interface=wlan1  band=2.4ghz-b  Tx-kbps=2468

;

Deixe uma resposta