Kullanıcı bant genişliği kullanımını sınırlamanın kolay bir yolu var mı?


14

Kullanıcı bant genişliği kullanımını 10kpbs ile sınırlamanın kolay bir yolu var mı? Diğer kullanıcılar etkilenmemelidir. Bulduğum en iyi şey tc, ancak böyle basit bir şey yapmak için çok karmaşık görünüyor.


Verilen cevap sorununuzu çözerse (umarım), lütfen kabul edildiği gibi seçin, böylece bu sorun çözülmüş olarak işaretlenebilir ..
heemayl

Yanıtlar:


8

tc, yapılandırma gereksinimleriniz için doğru yanıttır.
tc karmaşık görünebilir çünkü sınıfsız (ve daha az) kuyruk kuyruklarını yöneterek sınırsız esneklik ve şekillendirme ve filtreleme katmanları sağlar.
Ancak durum böyle değil. Tc, çekirdekteki yerleşik (veya modüler) kuyruk disiplinlerini kullandığından, bant genişliğini kullanıcı bazında sınırlamanın en basit / en iyi yoludur.
İşte örnek bir kurulum, ben Mbit formatında bıraktım ama oran ölçüsünü kbps olarak değiştirebilirsiniz.

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

Iptables kuralı sadece --uid-owner'ı sınırlamak istediğiniz kullanıcının uidine değiştirir, belgeler UID yerine kullanıcı adını kullanabileceğinizi, bunu test etmediklerini söyler.

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

FYI, bir HTB'ye ihtiyacınız olmasa bile, mevcut seçeneklere ve hangi hızla sınırladığınıza bağlı olarak tavsiye ederim.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.