#  > Desenvolvimento >  > Linguagens de Programação >  >  Monitora a quantidade de estações conectadas em um AP

## Treme

Boa tarde, 


Preciso monitora a quantidade de estações conectadas em um AP(torre) em tempo real, Ex: Routerboard-912 (Mikrotik). Não sei por onde começá, por favor me ensina a pesca. 


Utilizando o comando: "snmpwalk -v 2c -c public <host IP>" tenho retorno normal, consigo enxerga 27 estações conectadas(registradas na interface wireless da AP) e seus respectivos mac, quero que o zabbix me traduza a quantidades de clientes que estão conectados em tempo real.
Terei que fazer algum script para isso, ou so usando o zabbix: chave + oid conseguirei realiza essa façanha,



_Sou iniciante nesse mundo zabbix, aceitei o desafio em que a empresa a qual estou me disponibilizou, comprei o livro de A a Zabbix, bom já evoluir muito, mais também tenho muitas duvidas, já perdi algumas noites de sono tentando resolve alguns pepinos e erros.



_Debian 8.3 + Zabbix 3.0.5

----------


## 1929

Não sei se entendi bem o que você quer.

Na interface wireless no winbox, em registration mostra quantos clientes estão conectados...

Agora, nem todos estarão navegando. Alguns só pelo fato do rádio cliente estar ligado já aparece no winbox em registration. Para ver quem realmente está usando a conexão em dado momento eu configuro o registration em "show columns" para aparecer na tabela. Assim fico sabendo quem realmente está usando e quem está só ligado.

----------


## Treme

> Não sei se entendi bem o que você quer.
> 
> Na interface wireless no winbox, em registration mostra quantos clientes estão conectados...
> 
> Agora, nem todos estarão navegando. Alguns só pelo fato do rádio cliente estar ligado já aparece no winbox em registration. Para ver quem realmente está usando a conexão em dado momento eu configuro o registration em "show columns" para aparecer na tabela. Assim fico sabendo quem realmente está usando e quem está só ligado.


A intenção e a integração com o zabbix, quero que o zabbix identifica e mostre, desejo monta um mapa,

----------


## Treme

Pesquisando sobre me mostraram a solução 
dentro do mikrotik utilizando o comando: interface wireless print oid
Terei como resultado 

tx-rate=.1.3.6.1.4.1.14988.1.1.1.3.1.2.47 
rx-rate=.1.3.6.1.4.1.14988.1.1.1.3.1.3.47 
ssid=.1.3.6.1.4.1.14988.1.1.1.3.1.4.47 
bssid=.1.3.6.1.4.1.14988.1.1.1.3.1.5.47 
client-count=.1.3.6.1.4.1.14988.1.1.1.3.1.6.47 
frequency=.1.3.6.1.4.1.14988.1.1.1.3.1.7.47 
band=.1.3.6.1.4.1.14988.1.1.1.3.1.8.47 
noise-floor=.1.3.6.1.4.1.14988.1.1.1.3.1.9.47 
overall-ccq=.1.3.6.1.4.1.14988.1.1.1.3.1.10.47 '


O que preciso meu caso e o (client-count=.1.3.6.1.4.1.14988.1.1.1.3.1.6.47)

Que vai resulta a quantidade de clientes conectado na painel.

----------


## 1929

Entendi. 

Despercebi o Zabbix na sua necessidade.

Muito legal.

E nesta sua aplicação precisa mostrar os conectados mas inativos ou vai mostrar só os que estiveram ativos em determinado momento?

----------


## 1929

> Para ele não interessa quem está usando ou não, mas quantos clientes estão conectados no AP, aqui tenho algo semelhante, para se ter uma noção de quantos clientes conectados no AP.


Entendo...vai depender de para que finalidade as informações serão utilizadas.

Mas se fosse eu, me interessaria em quantos estão ativos... senão a leitura poderia ser falsa, ou não?

Por exemplo, é comum alguém dizer que tem 30 50 ou mais usuários num rádio. Mas na realidade quantos estão realmente consumindo banda e processamento do rádio?

----------


## Treme

Só os que estiveram ativos em tempo real, a intenção mesmo e saber quando devemos coloca um nova painel, não temos a intenção de coloca mais que 30 clientes em uma painel, isto é para ter um controle mais fácil.

----------


## Treme

> Entendo...vai depender de para que finalidade as informações serão utilizadas.
> 
> Mas se fosse eu, me interessaria em quantos estão ativos... senão a leitura poderia ser falsa, ou não?
> 
> Por exemplo, é comum alguém dizer que tem 30 50 ou mais usuários num rádio. Mas na realidade quantos estão realmente consumindo banda e processamento do rádio?


E uma coisa a sí pensa, mais a nivel de provedor não seria tão importante, o consumo total da AP ja bastaria

----------


## 1929

> E uma coisa a sí pensa, mais a nivel de provedor não seria tão importante, o consumo total da AP ja bastaria


para o consumo total do AP não ficaria mais fácil um gráfico gerado pelo próprio Mikrotik?

----------


## eduardomazolini

Eu coloquei no The Dude com o comando:
/interface pppoe-server print count-only
Eu tenho um PPPoE server por painel então poderia fazer:
/interface pppoe-server print count-only where service="PainelA"

Mas com certeza usar snmp é melhor que SSH ou API.

Eu a algum tempo queria avaliar o quanto de banda entre as torres eu ganharia se centraliza-se as queues.

pra isso fiz o seguinte script:



```
/queue simple
:global downpackets 0
:global downdropped 0
:set downpackets 0
:set downdropped 0
:foreach i in=[find] do={:set downdropped ($downdropped + [:pick [get $i dropped] ([:find [get $i dropped] "/" -1] + 1) 999 ])}
:foreach i in=[find] do={:set downpackets ($downpackets + [:pick [get $i packets] ([:find [get $i packets] "/" -1] + 1) 999 ])}
:foreach i in=[find] do={:put [:pick [get $i dropped] ([:find [get $i dropped] "/" -1] + 1) 999 ]}
:put $downdropped
:foreach i in=[find] do={:put [:pick [get $i packets] ([:find [get $i packets] "/" -1] + 1) 999 ]}
:put $downpackets
:put (((($downdropped * 1000) / $downpackets )))
```

 
Acho que isso pode ser adaptado pra saber quantos clientes estão realmente consumindo.

----------


## eduardomazolini



----------


## alextaws

@*eduardomazolini*, fiz os procedimentos e não deu certo. Alguma sugestão?

----------


## eduardomazolini

Tenta o comando /ppp active print count-only

----------


## alextaws

pera ai, acho que passe despercebido, é pra eu colocar aquele script citado anteriormente? e depois esse comando? nos probes?

----------


## alextaws

> Eu coloquei no The Dude com o comando:
> /interface pppoe-server print count-only
> Eu tenho um PPPoE server por painel então poderia fazer:
> /interface pppoe-server print count-only where service="PainelA"
> 
> Mas com certeza usar snmp é melhor que SSH ou API.
> 
> Eu a algum tempo queria avaliar o quanto de banda entre as torres eu ganharia se centraliza-se as queues.
> 
> ...


Como posso inserir isso no dude? apenas os comandos citados não deu certo, preciso colocar algo a mais

----------


## avatar52

Eu também gostaria de saber, não sou tão experiente no TheDude como consigo extrair do Zabbix, mas queria aprender isso.

----------


## alextaws

Pelo que o video demonstrou ele faz isso apenas nos equipamentos que usam o sistema RouterOS, o AirOS da ubiquiti, não encontrei uma maneira ainda

----------


## eduardomazolini

O Script foi coisa minha. E exemplo, não é pra usar. Faz o que está no vídeo. 
O vídeo mostra do dude pra uma RouterOS.

----------


## JonasMT

Tenho para the dude ubnt, clientes conectados, uptime e canal usado chegando na loja posto.

Para mk tenho clientes conectados e uptime, me falta o do canal ainda.

----------


## alextaws

@*JonasMT*, ficaremos no aguardo, já tentei muitas maneiras de monitorar a quantidade de estações conectadas, mais todas sem sucesso

----------


## JonasMT

Se alguem tiver a funçao de mostrar o canal no mk eu agradeço.

UBNT - nome do radio, IP, quantidade de user ON, canal e uptime



> [Device.Type] [Device.Name]
> [Device.FirstAddress]
> Clientes:[oid("1.3.6.1.4.1.41112.1.4.5.1.15.1")]
> Canal: [oid("1.3.6.1.4.1.41112.1.4.1.1.4.1")]Ghz
> [oid("1.3.6.1.2.1.1.3.0")]


MK - nome do radio, IP, clientes conectado e UPtime



> [Device.Type] [Device.Name]
> [Device.FirstAddress]
> Clientes:[array_size(oid_column("iso.org.dod.internet.private.enterprises.mikrotik.mikrotikExperimentalModule.mtXRouterOs.mtxrWireless.mtxrWlRtabTable.mtxrWlRtabEntry.mtxrWlRtabStrength"))]
> [oid("1.3.6.1.2.1.1.3.0")]

----------


## alextaws

@*JonasMT*, muito obrigado, sua regra funcionou, a tempo tentava conseguir essa oid

----------


## HellMaster

Boa tarde pessoal, trabalho em um provedor de internet e gostaria de saber se alguém pode me ajudar! Tenho o The Dude para monitoramento de nosso provedor, nele colocamos em sua Appearence as Oids para monitorar o numero de estações conectadas em nossos APs. Gostaria de saber se é possível colocarmos o The Dude para nos enviar mensagem se acontecesse de 90% das estações 
que estão associadas nos APs desconectarem por algum motivo! Observei no The Dude que existe a Função Probes que onde é possível monitorar processamento e memoria e acredito que o caminho seja por aí....

----------


## eduardomazolini

> Se alguem tiver a funçao de mostrar o canal no mk eu agradeço.
> 
> UBNT - nome do radio, IP, quantidade de user ON, canal e uptime
> 
> 
> MK - nome do radio, IP, clientes conectado e UPtime


/interface wireless> print oid 
0 tx-rate=.1.3.6.1.4.1.14988.1.1.1.3.1.2.2 
rx-rate=.1.3.6.1.4.1.14988.1.1.1.3.1.3.2 
ssid=.1.3.6.1.4.1.14988.1.1.1.3.1.4.2 bssid=.1.3.6.1.4.1.14988.1.1.1.3.1.5.2 
client-count=.1.3.6.1.4.1.14988.1.1.1.3.1.6.2 
*frequency*=*.1.3.6.1.4.1.14988.1.1.1.3.1.7.2* 
band=.1.3.6.1.4.1.14988.1.1.1.3.1.8.2 
noise-floor=.1.3.6.1.4.1.14988.1.1.1.3.1.9.2 
overall-ccq=.1.3.6.1.4.1.14988.1.1.1.3.1.10.2 
auth-client-count=.1.3.6.1.4.1.14988.1.1.1.3.1.11.2

----------

