Pesquisa de site

WonderShaper - uma ferramenta para limitar a largura de banda da rede no Linux


Wondershaper é um pequeno script bash que permite limitar a largura de banda da rede no Linux. Ele emprega o programa de linha de comando tc como backend para configurar o controle de tráfego. É uma ferramenta útil para controlar a largura de banda em um servidor Linux.

Ele permite que você defina a taxa máxima de download e/ou taxa máxima de upload. Além disso, também permite limpar os limites definidos e exibir o status atual de uma interface na linha de comando. Em vez de usar as opções CLI, você pode executá-lo persistentemente como um serviço em systemd.

Neste artigo, mostraremos como instalar e usar o wondershaper para limitar a largura de banda da rede em sistemas Linux.

Como instalar o Wondershaper em sistemas Linux

Primeiro, comece instalando o wondershaper usando seu gerenciador de pacotes de distribuição Linux a partir dos repertórios padrão, conforme mostrado.


sudo apt install wondershaper  [On Debian/Ubuntu]
sudo yum install wondershaper  [On CentOS/RHEL]
sudo dnf install wondershaper  [On Fedora 22+]

Alternativamente, para extrair e instalar as atualizações mais recentes, você precisa clonar o repositório GitHub do wondershaper em seu sistema, ir para o repositório local e instalá-lo usando os seguintes comandos. Observe que você deve ter a ferramenta de linha de comando git instalada:

cd bin
git clone https://github.com/magnific0/wondershaper.git
cd wondershaper
sudo make install

Antes de começar a usar o wondershaper, você deve primeiro verificar todas as interfaces de rede conectadas à sua máquina usando o comando ifconfig ou ip.

Isso ajudará você a conhecer a interface na qual deseja moldar o uso da largura de banda, por exemplo, a interface sem fio wlp1s0 que está ativa.

ifconfig 
OR
ip addr

Como usar o Wondershaper para limitar a largura de banda da rede no Linux

Para definir a taxa máxima de download em Kbps para uma interface, execute o seguinte comando usando a opção -a (define a interface) e -d ( define Kbps), ou seja, a taxa de download será definida como 4Mbps.

wondershaper -a wlp1s0 -d 4048

Para definir a taxa máxima de upload em Kbps para uma interface, use a opção -u conforme a seguir.

wondershaper -a wlp1s0 -u 1048

Você também pode definir o download e o upload de uma só vez com um único comando, por exemplo.

wondershaper -a wlp1s0 -d 4048 -u 1048

A opção -s permite visualizar o status atual de uma interface.

wondershaper -sa wlp1s0 

Você também pode usar iPerf – ferramenta de throughput de rede para testar a redução de largura de banda pelo wondershaper, por exemplo.

Você pode limpar os limites de download ou upload definidos para uma interface usando o sinalizador -c.

wondershaper -ca wlp1s0

Também é possível executar o wondershaper como um serviço, onde você define os parâmetros para moldar a largura de banda em um arquivo de configuração. Isso permite que o Wondershaper inicie no momento da inicialização e limite o uso da largura de banda em todos os momentos, quando o sistema estiver ligado, conforme explicado na próxima seção.

Como executar o Wondershaper persistentemente no Systemd

Neste modo, você precisa definir a interface e as taxas de upload e download no arquivo de configuração do Wondershaper localizado em /etc/conf.d/wondershaper. Você pode abrir este arquivo para edição usando seu editor CLI favorito, conforme mostrado.

sudo vim /etc/conf.d/wondershaper 

Defina os parâmetros necessários da seguinte forma.

[wondershaper]
Adapter
IFACE="wlp1s0"

Download rate in Kbps
DSPEED="4048"

Upload rate in Kbps
USPEED="512"

Salve o arquivo e feche-o.

Em seguida, inicie o serviço wondershaper enquanto isso, habilite-o para iniciar automaticamente na inicialização do sistema e visualize seu status, usando o comando systemctl.

sudo systemctl start wondershaper
sudo systemctl enable wondershaper
sudo systemctl status wondershaper

Caso você altere os valores dos parâmetros no arquivo de configuração, será necessário reiniciar o wonderservice para que as alterações sejam efetivadas.

sudo systemctl restart wondershaper

Para interromper o serviço Wondershaper, use o seguinte comando.

sudo systemctl stop wondershaper

Para obter mais ajuda, consulte o repositório Wondershaper Github: https://github.com/magnific0/wondershaper

Wondershaper é um modelador de tráfego para limitar a largura de banda da rede em sistemas Linux. Experimente e compartilhe suas idéias conosco por meio do formulário de feedback abaixo. Se você conhece alguma ferramenta semelhante por aí, também pode mencioná-la nos comentários – ficaremos gratos.