Um projeto pessoal para testar a estabilidade da Internet, destinado ao uso em Linux e Windows. Esta ferramenta pode enviar um determinado número de pings por segundo e gerar um gráfico para ilustrar os tempos de resposta do ping para indicar a estabilidade da conexão. Inspirado em packetlosstest.com
.
Este programa agora inclui funcionalidade GUI. Consulte Uso para obter mais detalhes.
Este script foi escrito em Python3.
Os requisitos podem ser instalados com os seguintes comandos no Linux:
sudo apt install python3-tk &&
sudo apt install traceroute &&
pip install matplotlib &&
pip install numpy
Modifique conforme necessário dependendo do seu gerenciador de pacotes. Para Windows, tracert
é usado em vez de traceroute
e já deve estar instalado. O Tkinter também pode ser instalado com Python3, não tenho certeza, pois já vi as duas coisas.
No Linux, clone o repositório e execute o arquivo pingtest
com Python3 ou use o comando chmod a+x pingtest
para tornar o programa executável como um script.
No Windows, clone o repositório e execute o arquivo pingtest
com Python3.
NOTA: No Linux, se o threading não for usado, requer privilégios sudo devido aos pequenos intervalos usados no comando ping
. Se você executar o programa sem sudo nem threading, ele poderá solicitar sua senha durante o tempo de execução.
NOTA: No Windows, se o threading não for usado, o intervalo máximo entre pings será de apenas um segundo. Isso vai contra o propósito do programa, portanto, é altamente recomendável utilizar o sinalizador -T
para ativar o threading, pois permite mais de um ping por segundo.
Após seguir as notas de configuração, execute com ./pingtest
ou python3 pingtest
no Linux, ou python3 pingtest.py
no Windows, seguido por quaisquer sinalizadores desejados.
O programa agora usa sinalizadores/argumentos de linha de comando para definir os parâmetros do teste. A ajuda pode ser exibida com ./pingtest -h
:
usage: pingtest [-h] [-G] [-a <address>] [-d <seconds>] [-f <pings/second>] [-t <milliseconds>] [-T]
____ ____ ____ ____ ______ ___ _____ ______
| || / || | / _]/ ___/| |
| o ) | | _ || __|| | / [_( _ | |
| _/| | | | || | ||_| |_|| _]__ ||_| |_|
| | | | | | || |_ | | | | [_ / | | |
| | | | | | || | | | | | | | |
|__| |____||__|__||___,_| |__| |_____| ___| |__|
Pingtest program by mire
https://github.com/itsonlyMiRE/pingtest
optional arguments:
-h, --help show this help message and exit
-G use GUI (all other flags are ignored if this is used)
-a <address> address to ping (or use '-a F' to use first hop router)
-d <seconds> duration of test (DEFAULT: 10)
-f <pings/second> frequency in pings per second (DEFAULT: 50, but 1 on Windows unless using threading)
-t <milliseconds> threshold of acceptable ping time (DEFAULT: 60)
-T enable threading approach (highly recommended for Windows users)
Observe que o sinalizador -a ou -G deve ser usado. Se o sinalizador -G for usado para iniciar a GUI, todos os outros sinalizadores serão ignorados.
Conforme está escrito, este programa só pode ser usado em Linux. Ele poderia ser implementado para Windows, mas o comando ping
no Windows não permite intervalos extremamente pequenos entre pings, o que é útil para obter dados precisos.
Disponível no Windows. Threading altamente recomendado.
Não há planos de implementação para MacOS