Olá pessoal,
Gostaria de compartilhar com vocês um item que tenho implementado nos nossos clientes que possuem pfSense.
Cenário Inicial Link para o cabeçalho
A maioria dos clientes que temos aqui possuem o pfSense atuando como gateway/proxy, fazendo todo o direcionamento e filtro do trafego de dados LAN/WAN. Um detalhe importante é que, boa parte desses clientes, também possuem mais de um link de dados ativo (O principal e seu backup).
As pessoas que possuem alguma familiaridade com o pfSense devem sabem que ele monitora os links estão online através de um item chamado “monitor IP”! É através deste monitoramento que o pfSense sabe se precisa trocar de link ou não, tudo isso de acordo com a regra especificada.
O ponto é que esse monitoramento é bem simples, fazendo com que não tenhamos muitas informações disponíveis sobre nossos links! Para sanar este gap, ou quem sabe melhorar o teste de performance e obter mais algumas informações, e porque não se aproximar um pouco mais dos testes que fazemos em nosso dia-a-dia, descobri uma aplicação chamada speedtest-cli (site oficial: https://pypi.python.org/pypi/speedtest-cli/). Talvez algumas pessoas já tenham usado o Speedtest (http://www.speedtest.net/) para testar o desempenho de sua internet. Pois bem, o speedtest-cli é uma aplicação feita em Python que usa a API do Speedtest para testar nosso link.
Além de facilitar nossa vida, é possível também automatizarmos este processo, seja ele enviando o resultado via e-mail, salvando em algum banco de dados… aqui a imaginação é o limite!
Vamos por a mão na massa agora!!!!! Link para o cabeçalho
Existem inúmeras formas de instalarmos está aplicação, a que achei mais fácil e rápida, foi fazer uma conexão SSH ao pfSense usando o Putty (Lembre-se de checar se o SSH está habilitado em System » Advanced » Admin Access » Enable Secure Shell).
pfsense – Tela Inicial
Iremos na opção 8 para abrir o shell. Em seguida, gosto de atualizar a lista de pacotes do FreeBSD usando o comando (Este passo não é obrigatório, mas gosto de atualizar a lista caso precise fazer alguma correção ou instalar alguma outra coisa):
pkg update
pfSense – Atualizando pacotes
Outro detalhe importante, o speedtest-cli foi feito em Python, por isso é necessário verificar se realmente já temos o Python instalado (Utilizando o comando pkg version | grep python). Caso não tenha, use o comando:
pkg add http://pkg.freebsd.org/freebsd:10:x86:64/latest/All/python36-3.6.3.txz
Agora entra o Speedtest-cli propriamente dito! A sequência de comandos que vamos usar é:
cd /tmp/
fetch https://github.com/sivel/speedtest-cli/archive/master.zip
unzip master.zip
cd speedtest-cli-master/
chmod 755 speedtest_cli.py
mv speedtest_cli.py /usr/bin
pfSense – Baixando speedtest-cli
Pronto! Agora é só testar usando a sintaxe:
/usr/bin/speedtest-cli –source IP_INTERFACE
pfSense – Testando speedtest-cli
A saída que ele é essa aí de cima!! Podemos observar os itens:
- Provedor: NET Virtua;
- Download: 99,29 Mbit/s;
- Upload: 6,53 Mbits/s;
- Entre outras informações…
Para não precisar executar esse processo na mão todas as vezes que queremos testar nossos links, uso o pacote mailreport do pfSense e coloco para receber via e-mail algumas vezes por dia o teste dos links!
Bom é isso pessoal, espero que tenham gostado!
Inspirado em um post do fórum oficial que pode ser acessado por aqui https://forum.pfsense.org/index.php?topic=106185.0.