• Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Search
  • Register
  • Login
Netgate Discussion Forum
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Search
  • Register
  • Login

Tutorial para Medir Velocidade (Speedtest) no pfsense

Portuguese
9
27
19.2k
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • V
    victorfmaraujo
    last edited by Apr 14, 2016, 3:49 AM Feb 1, 2016, 7:48 PM

    Pessoal, boa tarde

    Recurso importante para medirmos a velocidade individual de nossos links WAN diretamente no pfsense e sem a necessidade de acessar uma estação e criarmos regras de firewall, direcionando o tráfego por determinado Gateway.

    Obs:  quem não quiser instalar o wget, pode fazer o download dos arquivos manualmente no github e criar o script através do pacote filer, a vantagem está no fato desse arquivo ficar no backup do pfsense.

    Abaixo o necessário.

    No terminal (Pode ser no command prompt ou putty obviamente).
    ##############Versão 2.2.x##############
    pkg install wget
    pkg install python
    pkg install unzip
    rehash
    mkdir /root/temp
    cd /root/temp
    wget 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
    ##############Versão 2.3##############

    verifique se possui o python com pkg version | grep python.  Caso tenha feito uma instalação limpa do pfsense, um amigo me informou que a instalação dele que é limpa não possuia e teve que instalar o mesmo
    mkdir /root/temp
    cd /root/temp
    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
    editar o arquivo /usr/bin/speedtest_cli.py e alterar a primeira linha #!/usr/bin/env python para #!/usr/bin/env python2

    Testes que realizei:

    Possuo 2 links de internet com nat

    192.168.25.254
    192.168.0.11

    Rodei o comando /usr/bin/speedtest_cli.py

    Me retorna o download e Upload do meu Link default

    para selecionar o link de internet, basta adicionar o parâmetro –source IP_INTERFACE

    /usr/bin/speedtest_cli.py --source 192.168.25.254

    [2.2.6-RELEASE][admin@fw1.compore.intra]/root: /usr/bin/speedtest_cli.py --source 192.168.25.254
    Retrieving speedtest.net configuration...
    Retrieving speedtest.net server list...
    Testing from Global Village Telecom (177.xx.xx.xx)...
    Selecting best server based on latency...
    Hosted by TIM Brasil (Rio de Janeiro) [4.09 km]: 11.427 ms
    Testing download speed........................................
    Download: 16.34 Mbit/s
    Testing upload speed..................................................
    Upload: 0.86 Mbit/s
    
    
    [2.2.6-RELEASE][admin@fw1.corporate.intra]/root/temp/speedtest-cli-master: /usr/bin/speedtest_cli.py --source 192.168.0.11
    Retrieving speedtest.net configuration...
    Retrieving speedtest.net server list...
    Testing from NET Virtua (179.xx.xx.xx)...
    Selecting best server based on latency...
    Hosted by Claro (Rio de Janeiro) [13.50 km]: 12.524 ms
    Testing download speed........................................
    Download: 52.22 Mbit/s
    Testing upload speed..................................................
    Upload: 2.98 Mbit/s
    
    

    Obs:  Funciona se colocar –source IP da Interface VIP do HA

    Explorando as possibilidades.

    Utilizando Zabbix, é possível filtrar esses dados e gerar de tempos em tempos (Não muito frequentemente já que o script no momento de execução faz um download) esses dados e armazenar em banco de dados utilizando UserParameter.

    Exemplo de representação

    Depois estarei postando aqui a criação dos ítens.
    grafana.JPG
    grafana.JPG_thumb

    1 Reply Last reply Reply Quote 1
    • M
      marcelloc
      last edited by Feb 1, 2016, 7:55 PM

      Obrigado pela contribuição. Tópico fixado nos tutorias

      https://forum.pfsense.org/index.php?topic=44267.msg239896#msg239896

      Só uma observação.

      Quando se mede um link em uso, dependendo da utilização, você vai "medir" um valor menor que o realmente utilizado no momento já que o trafego do speedtest está competindo com o resto da navegação.

      Treinamentos de Elite: http://sys-squad.com

      Help a community developer! ;D

      1 Reply Last reply Reply Quote 0
      • V
        victorfmaraujo
        last edited by Feb 1, 2016, 7:57 PM

        @marcelloc:

        Obrigado pela contribuição. Tópico fixado nos tutorias

        https://forum.pfsense.org/index.php?topic=44267.msg239896#msg239896

        Só uma observação.

        Quando se mede um link em uso, dependendo da utilização, você vai "medir" um valor menor que o realmente utilizado no momento já que o trafego do speedtest está competindo com o resto da navegação.

        Exatamente Marcelo, Observação bem lembrada.

        1 Reply Last reply Reply Quote 0
        • V
          victorfmaraujo
          last edited by Apr 14, 2016, 1:15 AM

          Atualizei o tutorial para quem utiliza na 2.2.x e gostaria de utilizar na 2.3

          1 Reply Last reply Reply Quote 0
          • A
            alandnc
            last edited by May 2, 2016, 2:23 PM

            victorfmaraujo,

            Poderia descrever como fez para o zabbix verificar a velocidade? Estou tentando mas não funciona.

            Att,

            1 Reply Last reply Reply Quote 0
            • V
              victorfmaraujo
              last edited by May 10, 2016, 2:35 PM May 2, 2016, 3:08 PM

              @alandnc:

              victorfmaraujo,

              Poderia descrever como fez para o zabbix verificar a velocidade? Estou tentando mas não funciona.

              UserParameter

              coloco uma tarefa no cron para cada Link e no zabbix, utilizo um UserParameter para coletar o conteúdo desse log.

              Ex do Userparameter
              UserParameter=velocidade* ,cat /var/speedtest/$1

              Exemplo do Cron (Rodando a cada 10 minutos)
              /usr/local/bin/python /usr/bin/speedtest_cli.py –source 192.168.25.254 --simple > /var/speedtest/link1.log
              /usr/local/bin/python /usr/bin/speedtest_cli.py --source 192.168.0.11 --simple > /var/speedtest/link2.log
              
              E no Zabbix Server, crie um ítem(Para cada Link) do tipo Zabbix Agent onde a key seja:
              
              velocidade[link1.log]
              velocidade[link2.log]
              
              Tipo Texto (Ainda me falta tempo para coletar em modo Octal para gerar gráficos em bytes).
              
              Os exemplos acima são um CTRL + C CTRL + V das minhas confs
              
              
              
              
              
              Att,
              
              1 Reply Last reply Reply Quote 0
              • A
                alandnc
                last edited by May 2, 2016, 3:33 PM

                Obrigado,

                Estava imaginando que o próprio zabbiz ia fazer o comando diretamente no pfsense via ssh. Tentou isso?

                1 Reply Last reply Reply Quote 0
                • V
                  victorfmaraujo
                  last edited by May 2, 2016, 6:30 PM

                  @alandnc:

                  Obrigado,

                  Estava imaginando que o próprio zabbiz ia fazer o comando diretamente no pfsense via ssh. Tentou isso?

                  Tentei, o problema é que o script faz um teste que pode demorar um pouco para retornar o resultado.

                  não é igual rodar um ls -l | wc -l rs

                  1 Reply Last reply Reply Quote 0
                  • A
                    alandnc
                    last edited by May 2, 2016, 10:58 PM

                    victorfmaraujo,

                    Valeu ai pela dica, poderia me tirar outra duvida? Tenho 3 interface WAN(OI - 20MB e NET 120MB) e duas redes LAN (01 - 192.168.10.1  e 10.30.0.1)  quando executo o comando:
                    /usr/local/bin/python /usr/bin/speedtest_cli.py –source 192.168.10.1
                    /usr/local/bin/python /usr/bin/speedtest_cli.py --source 10.30.0.1
                    Qualquer dos dois a medição fica pela wan da OI, mesmo a rede 10.30.0.1 está com uma regra para sair pela NET. Observo que quando mudo lá em gateway padrão ele muda.

                    Att

                    1 Reply Last reply Reply Quote 0
                    • A
                      alandnc
                      last edited by May 3, 2016, 12:48 PM

                      victorfmaraujo,

                      Poderia me ajudar na finalização do tutorial? Estou postando um print com as configurações no pfsens e o item no zabbix, via comando funciona normal mas o item não é suportado.

                      1 Reply Last reply Reply Quote 0
                      • A
                        alandnc
                        last edited by May 10, 2016, 1:45 AM

                        Vctor,

                        Até agora já consigo coletar os dados da conexão lá no zabbix, porém não consigo gerar os gráficos uma vez que as informações são em texto, e os gráficos são apenas para valores numéricos, como fez para gerar o gráfico?

                        grato ai pela dica.

                        1 Reply Last reply Reply Quote 0
                        • V
                          victorfmaraujo
                          last edited by May 10, 2016, 2:19 PM

                          @alandnc:

                          Vctor,

                          Até agora já consigo coletar os dados da conexão lá no zabbix, porém não consigo gerar os gráficos uma vez que as informações são em texto, e os gráficos são apenas para valores numéricos, como fez para gerar o gráfico?

                          grato ai pela dica.

                          No grafana?  Olhe a imagem em anexo que estou mandando agora.

                          Grafana.PNG
                          Grafana.PNG_thumb

                          1 Reply Last reply Reply Quote 0
                          • V
                            victorfmaraujo
                            last edited by May 10, 2016, 2:22 PM

                            @alandnc:

                            victorfmaraujo,

                            Valeu ai pela dica, poderia me tirar outra duvida? Tenho 3 interface WAN(OI - 20MB e NET 120MB) e duas redes LAN (01 - 192.168.10.1  e 10.30.0.1)  quando executo o comando:
                            /usr/local/bin/python /usr/bin/speedtest_cli.py –source 192.168.10.1
                            /usr/local/bin/python /usr/bin/speedtest_cli.py --source 10.30.0.1
                            Qualquer dos dois a medição fica pela wan da OI, mesmo a rede 10.30.0.1 está com uma regra para sair pela NET. Observo que quando mudo lá em gateway padrão ele muda.

                            Att

                            Nunca passei por isso, realmente é estrnaho.

                            1 Reply Last reply Reply Quote 0
                            • G
                              gst.freitas
                              last edited by May 10, 2016, 2:23 PM

                              Victor,

                              Publica no grupo do facebook do zabbix.. mas galera opinar.. essa é melhor maneira de medir o link ?

                              1 Reply Last reply Reply Quote 0
                              • V
                                victorfmaraujo
                                last edited by May 11, 2016, 7:20 PM

                                @gst.freitas:

                                Victor,

                                Publica no grupo do facebook do zabbix.. mas galera opinar.. essa é melhor maneira de medir o link ?

                                Melhor maneira não é, porém pode ser que o sysadmin queira ter um Histórico de como está o seu link de internet de tempos em tempos, comparando a utilização da interface com a velocidade do link já que fica em histórico com data e hora.

                                Já me ajudou quando um de meus clientes usava FailOver de WAN e sempre reclamava que quando o segundo link assumia (Possuía a mesma velocidade do principal) a navegação ficava extremamente lenta.  Olhando nos logs de texto armazenados no zabbix que o link secundário (Estando em Standby) nunca alcançava a velocidade contratada, então o responsável pelo contrato ligou para o provedor e descobriu que simplesmente MUDARAM o plano dele.

                                Eu mesmo já precisei por várias vezes testar a velocidade dos links, porém remotamente (E a conexão remota via RDP ou Team viewer era horível), entretanto por SSH estava satisfatório.

                                1 Reply Last reply Reply Quote 0
                                • danilosv.03D
                                  danilosv.03
                                  last edited by Dec 23, 2016, 10:44 AM

                                  @victorfmaraujo:

                                  @gst.freitas:

                                  Victor,

                                  Publica no grupo do facebook do zabbix.. mas galera opinar.. essa é melhor maneira de medir o link ?

                                  Melhor maneira não é, porém pode ser que o sysadmin queira ter um Histórico de como está o seu link de internet de tempos em tempos, comparando a utilização da interface com a velocidade do link já que fica em histórico com data e hora.

                                  Já me ajudou quando um de meus clientes usava FailOver de WAN e sempre reclamava que quando o segundo link assumia (Possuía a mesma velocidade do principal) a navegação ficava extremamente lenta.  Olhando nos logs de texto armazenados no zabbix que o link secundário (Estando em Standby) nunca alcançava a velocidade contratada, então o responsável pelo contrato ligou para o provedor e descobriu que simplesmente MUDARAM o plano dele.

                                  Eu mesmo já precisei por várias vezes testar a velocidade dos links, porém remotamente (E a conexão remota via RDP ou Team viewer era horível), entretanto por SSH estava satisfatório.

                                  Mais neste caso para o acesso remoto você conseguiu encontrar alguma solução?


                                  :)
                                  |E-mail: danilosv.03@gmail.com
                                  |Skype: danilosv.03


                                  1 Reply Last reply Reply Quote 0
                                  • V
                                    victorfmaraujo
                                    last edited by Dec 27, 2016, 3:23 PM

                                    @danilosv.03:

                                    @victorfmaraujo:

                                    @gst.freitas:

                                    Victor,

                                    Publica no grupo do facebook do zabbix.. mas galera opinar.. essa é melhor maneira de medir o link ?

                                    Melhor maneira não é, porém pode ser que o sysadmin queira ter um Histórico de como está o seu link de internet de tempos em tempos, comparando a utilização da interface com a velocidade do link já que fica em histórico com data e hora.

                                    Já me ajudou quando um de meus clientes usava FailOver de WAN e sempre reclamava que quando o segundo link assumia (Possuía a mesma velocidade do principal) a navegação ficava extremamente lenta.  Olhando nos logs de texto armazenados no zabbix que o link secundário (Estando em Standby) nunca alcançava a velocidade contratada, então o responsável pelo contrato ligou para o provedor e descobriu que simplesmente MUDARAM o plano dele.

                                    Eu mesmo já precisei por várias vezes testar a velocidade dos links, porém remotamente (E a conexão remota via RDP ou Team viewer era horível), entretanto por SSH estava satisfatório.

                                    Mais neste caso para o acesso remoto você conseguiu encontrar alguma solução?

                                    não entendi sua dúvida

                                    1 Reply Last reply Reply Quote 0
                                    • danilosv.03D
                                      danilosv.03
                                      last edited by Dec 27, 2016, 3:27 PM

                                      Ele disse que os acesso remotos ficavam horrível etc. Dai perguntei se ele tinha conseguido resolver esse problema.


                                      :)
                                      |E-mail: danilosv.03@gmail.com
                                      |Skype: danilosv.03


                                      1 Reply Last reply Reply Quote 0
                                      • V
                                        victorfmaraujo
                                        last edited by Dec 27, 2016, 3:57 PM

                                        @danilosv.03:

                                        Ele disse que os acesso remotos ficavam horrível etc. Dai perguntei se ele tinha conseguido resolver esse problema.

                                        isso é problema do link ser muito ruim para acesso remoto (estabelecimento de conexão criptografada, renderização de tela, saturação do link etc), nada à ser feito quanto à isso

                                        1 Reply Last reply Reply Quote 0
                                        • A
                                          aloisiobilck
                                          last edited by Mar 9, 2017, 5:36 PM Mar 9, 2017, 3:04 PM

                                          Bom dia,

                                          Eu tenho DOIS link de Internet, VIVO e NET,
                                          Ao executar o comando para sair pela NET, ele sai pelo link Default que é a VIVO,

                                          /root/speedtest-cli-master/speedtest.py –source 172.16.0.14
                                          Retrieving speedtest.net configuration...
                                          Testing from Vivo (XXXXXXXX)...
                                          Retrieving speedtest.net server list...

                                          Alguma sugestão ?

                                          1 Reply Last reply Reply Quote 0
                                          • First post
                                            Last post
                                          Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.