Esiste un modo semplice per limitare l'utilizzo della larghezza di banda dell'utente?


14

Esiste un modo semplice per limitare l'utilizzo della larghezza di banda dell'utente per dire 10kpbs? Gli altri utenti non dovrebbero essere interessati. Il migliore che ho trovato è TC, ma sembra troppo complicato per fare una cosa così semplice.


Se la risposta fornita risolve il tuo problema (lo spero), selezionalo come accettato, in modo che questo problema possa essere contrassegnato come risolto.
heemayl

Risposte:


8

tc è la risposta corretta alle tue esigenze di configurazione.
tc può sembrare complicato perché gestisce discepoli di classe (e meno) in coda che gli danno flessibilità e livelli illimitati di modellatura e filtro.
Questo comunque non è il caso. Poiché tc utilizza i discepoli di accodamento (o modulari) integrati nel kernel, rappresenta il modo più semplice / migliore di limitare la larghezza di banda in base all'utente.
Ecco un esempio di configurazione, l'ho lasciato in formato Mbit ma è possibile modificare la misura della frequenza in kbps.

tc qdisc add dev eth0 root handle 1:0 htb
tc class add dev eth0 parent 1:0 classid 1:1 htb rate 1Mbit ceil 1Mbit prio 1

Per te la regola di iptables basta cambiare --uid-owner con l'uid dell'utente che desideri limitare, la documentazione dice che puoi usare il nome dell'utente invece dell'UID, non l'ho testato.

iptables -t mangle -A POSTROUTING -o eth0 -p tcp -m owner --uid-owner 1000 -j CLASSIFY --set-class 1:1

Cordiali saluti, anche se non è necessario un HTB, lo consiglio in base alle opzioni disponibili e alla velocità a cui si sta limitando.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.