Réponses:
Limiter une seule interface est facile, mais les limites de débit globales nécessitent des règles plus complexes, tout comme les règles basées sur les applications. Je ne dis pas que cela ne peut pas être fait, mais cela nécessite un peu de fouille dans les éléments internes du réseau.
Voici un rapide Comment mettre en place une limite par interface
Si vous voulez vraiment configurer des règles basées sur les applications, vous devriez vous pencher sur une infrastructure de pare-feu, telle que shorewall , qui dispose de fonctionnalités d'assistance pour configurer la mise en forme. Même avec ces outils, il faut un peu de prévoyance et de tests pour le mettre en place. Faire quelque chose comme ceci ad-hoc n'est pas encore aussi facile.
wondershaper eth0 1000 1000
n'a pas de bande passante Internet. Je dois limiter toute la bande passante d'eth0, pas seulement des applications spécifiques. Comment peut-on y
Bien que cette question soit ancienne, je l’ai trouvée en cherchant une réponse à la même question. Les limites du système d'exploitation et de l'interface sont déjà abordées dans une réponse précédente. Voici donc un moyen de définir des limites spécifiques à l'application. Utilisez une application appelée filet. Donc faire sudo apt-get install trickle
. Vous pouvez limiter le téléchargement pour une application spécifique en exécutant
trickle -u (upload limit in KB/s) -d (download limit in KB/s) application
Cela lancera l'application avec les limites spécifiées. Vous pouvez également spécifier le temps de "lissage", afin que les échantillons s'écoulent sur la période souhaitée au cas où votre application consomme de la bande passante en rafales et souhaitez que les rafales soient autorisées tant que la moyenne correspond à vos spécifications.
trickle: Could not reach trickled, working independently: No such file or directory
. Vous pouvez supprimer cet avertissement en exécutant le filet en mode autonome avec trickle -s
.
Si vous souhaitez limiter la bande passante pour une adresse IP spécifique, vous pouvez utiliser ceci:
tc qdisc add dev eth1 root handle 1: htb default 12
tc class add dev eth1 parent 1: classid 1:10 htb rate 2500kbps
tc class add dev eth1 parent 1: classid 1:11 htb rate 2500kbps
tc class add dev eth1 parent 1: classid 1:12 htb rate 5000kbps
tc filter add dev eth1 protocol ip parent 1:0 prio 1 u32 match ip dst 192.168.2.105 flowid 1:10
tc filter add dev eth1 protocol ip parent 1:0 prio 1 u32 match ip dst 192.168.2.106 flowid 1:11
wondershaper
problème dans Ubuntu 17.10, qui peut être similaire à ce qui se passe pour @Zeromatiker dans Ubuntu 17.04: bugs.launchpad.net/ubuntu/+source/wondershaper/+bug/1745421