forma dropbox no roteador linux com tc e iptables

1

Outra máquina na minha LAN é fazer o upload para o Dropbox e saturar a largura de banda de upload da minha conexão com a Internet. Quando isso acontece meus pings para 8.8.8.8 levam 3000-6000ms. Quando dropbox não está carregando meus pings para 8.8.8.8 são 45ms.

Estou tentando simplificar e desacelerar o tráfego encaminhado de / para o Dropbox no meu roteador linux.

Eu tentei dois guias ligeiramente diferentes e não tive sucesso com nenhum deles. Eu acho que um fator que torna confuso é que o tráfego do Dropbox parece acelerar e desacelerar a cada minuto ou dois. Eu não tenho acesso à máquina fazendo os uploads do Dropbox, então não consigo ver por que o tráfego está alto por alguns minutos, depois por alguns segundos, oscilando. Talvez esteja carregando muitos arquivos e haja uma pausa entre cada arquivo.

Eu fiz 3 tentativas com base em 3 guias ligeiramente diferentes on-line.

Entendo que 1:30 é a classe de tráfego de menor prioridade, que é o que eu quero que o Dropbox seja.

Atualização: Eu adaptei isso um pouco para moldar um download que eu corri do meu próprio computador. O limite de taxa funcionou como esperado. No entanto, agora devo testar o upload.

Tentativa 1

#!/bin/bash
tc qdisc add dev br0 root handle 1:0 htb default 1
tc class add dev br0 parent 1:0 classid 1:30 htb rate 64kbps ceil 128kbps prio 0
tc filter add dev br0 parent 1:0 prio 0 protocol ip handle 30 fw flowid 1:30
iptables -I FORWARD -t mangle -s 162.125.0.0/16,199.47.216.0/22,108.160.160.0/20,205.189.0.0/24,64.124.102.192/29,209.99.70.0/24,45.58.64.0/20,208.185.144.160/27 -j MARK --set-mark 30
iptables -I FORWARD -t mangle -d 162.125.0.0/16,199.47.216.0/22,108.160.160.0/20,205.189.0.0/24,64.124.102.192/29,209.99.70.0/24,45.58.64.0/20,208.185.144.160/27 -j MARK --set-mark 30

iptables-save -c mostra que o tráfego relevante está sendo marcado

[145:212599] -A FORWARD -d 162.125.0.0/16 -j MARK --set-xmark 0x1e/0xffffffff
[72:2880] -A FORWARD -s 162.125.0.0/16 -j MARK --set-xmark 0x1e/0xffffffff

Tentativa 2

#!/bin/bash
#tc qdisc add dev br0 root handle 1: htb
#tc class add dev br0 parent 1: classid 1:30 htb rate 32kbps ceil 64kbps
#tc filter add dev br0 parent 1: prio 0 protocol ip handle 30 fw flowid 1:30
#iptables -I FORWARD -t mangle -s 162.125.0.0/16,199.47.216.0/22,108.160.160.0/20,205.189.0.0/24,64.124.102.192/29,209.99.70.0/24,45.58.64.0/20,208.185.144.160/27 -j MARK --set-mark 30
#iptables -I FORWARD -t mangle -d 162.125.0.0/16,199.47.216.0/22,108.160.160.0/20,205.189.0.0/24,64.124.102.192/29,209.99.70.0/24,45.58.64.0/20,208.185.144.160/27 -j MARK --set-mark 30

Tentativa 3

tc qdisc add dev br0 root handle 1: htb default 1
#Second add a class (bucket) with bandwidth restrictions
tc class add dev br0 parent 1: classid 1:30 htb rate 512kbit
#Then add a filter to force packets through the class
tc filter add dev br0 protocol ip parent 1:0 prio 1 handle 1 fw classid 1:30
iptables -I FORWARD -t mangle -s 162.125.0.0/16,199.47.216.0/22,108.160.160.0/20,205.189.0.0/24,64.124.102.192/29,209.99.70.0/24,45.58.64.0/20,208.185.144.160/27 -j MARK --set-mark 0x1
iptables -I FORWARD -t mangle -d 162.125.0.0/16,199.47.216.0/22,108.160.160.0/20,205.189.0.0/24,64.124.102.192/29,209.99.70.0/24,45.58.64.0/20,208.185.144.160/27 -j MARK --set-mark 0x1
    
por Josh 08.04.2017 / 16:28

1 resposta

1

Se você está trabalhando para o lado de download do tráfego, sua configuração é boa. A modelagem de tráfego funciona apenas para o tráfego de saída. Isso ocorre porque a modelagem controla os buffers de envio da interface e não tem efeito no lado de recebimento (tráfego de entrada).

Existem duas soluções possíveis: uma é usar IFB (mencionado no post vinculado), ou para configurar a formatação de saída em outra interface (não voltada para seus clientes). Para esclarecer o segundo ponto:

Clients <=> (download limit) [Server] (upload limit) <=> [Edge router]

Você deseja moldar o tráfego em "Servidor" aplicando limites de download e upload em diferentes interfaces, conforme mostrado. Os dados enviados são o tráfego de saída para a segunda interface (não voltada) para seus clientes.

Veja mensagens semelhantes: post1 e post2 .

    
por 08.04.2017 / 17:03