wondershaper nedir?

Wonder Shaper, kullanıcının bir veya daha fazla ağ bağdaştırıcısının bant genişliğini sınırlamasını sağlayan bir komut dosyasıdır. Bunu iproute'un tc komutunu kullanarak yapar, ancak çalışmasını büyük ölçüde basitleştirir. Wonder Shaper ilk olarak 2002'de Bert Hubert tarafından piyasaya sürüldü, ancak orijinal sürümde komut satırı arayüzü yoktu.
Wonder Shaper Özellikler
- 1.2 sürümünden itibaren komut satırı arayüzü özelliği eklendi.
- 1.3 sürümünden itibaren, CBQ yerine HTB kuyruğu kullanılır ve bu, yüksek hızlı (on megabitin üzerinde) bağlantılarda daha iyi bant genişliği yönetimine olanak tanır.
- 1.4 sürümünde, geliştirilmiş bir giriş şekillendirme yöntemi uygulandı ve aşağı veya yukarı sınırlama yeteneği geldi.
wondershaper aracını direkt olarak depolardan kurup kullanabilirsiniz.
wonder kurulum
Wondershaper'ın GitHub deposunu, istediğiniz zaman yeni güncellemeleri alabilmeniz için klonlamanız önerilir. Yeni bir terminal açın ve kullanarak depoyu klonlayın.
git clone https://github.com/magnific0/wondershaper.git

Bu, harika şekillendiriciyi mevcut klasörünüzdeki harika şekillendirici adlı yeni bir klasöre kopyalayacaktır. Şimdi kullanarak klasörü girin
cd wondershaper

wondershaper kullanımı
Limitleme yapmadan önce testi doğrulamak adına ilk olarak internet hız testimizi kontrol edelim. Test için Ookla tarafından sunulan speedtest-cli aracını kullanacağım. Depolarda hazır bulunmaktadır. Paket yöneticiniz ile kurabilirsiniz.

İnternet hız testimize baktıktan sonra, wondershaper kullanım talimatları -h opsiyonu yazarak bakabilirsiniz. Program, Wondershaper'ın nasıl kullanılacağına dair mevcut tüm seçenekleri detaylandırıyor. Wondershaper programını kurmadan çalıştırabiliriz.
./wondershaper -h

Şimdi ise sınırlandırmak istediğimiz ağ arayüzünü belirlememiz gerekiyor. Mevcut tüm arayüzleri aşağıdaki komutları kullanarak bulabilirsiniz.
ethernet isimlerinin sisteme göre farklılık gösterdiğini unutmayın.
Mevcut tüm arayüzlere bakalım.
ip a
Eski sistemlerde ip komutun mevcut olmayabileceği için ifconfig kullanabilirsiniz.
ifconfig
Şekillendirmek istediğiniz ağ arayüzünü belirleyelim. Aşağıdaki görselde 2 adet ethernet gözükmektedir. Bilgisayar, TCP/IP protokolünü kullanarak erişim sağlanması için lo yani loopback denilen sanal bir ağ kartı oluşturulur. Bununla işimiz olmadığı için bir tek ens160 kalıyor.

Aşağıdaki örnekte, ağ arayüzümüze 4Mbps yükleme ve 8Mbps indirme ile sınırladık.
- a = adapter
- u = upload
- d = download
sudo ./wondershaper -a ens160 -u 4096 -d 8192
RTNETLINK answers: Operation not permitted mesajı kullanıcı hesabınızın yeterli ayrıcalığa sahip olmadığını bildirmektedir.

Yukarıdaki örneğe ek olarak sadece indirme veya yüklemeye limitler koyabilirsiniz.
Sadece indirme hızını limitlemek için. Aşağıdaki örnekte ağ arayüzüne 1Mbps indirme belirlenmiştir.
sudo ./wondershaper -a ens160 -d 1024
Sadece indirme yükleme hızını limitlemek için. Aşağıdaki örnekte ağ arayüzüne 1Mbps yükleme belirlenmiştir.
sudo ./wondershaper -a ens160 -u 1024
Ağ bağdaştırıcıda ki limiti temizlemek için -c opsiyonunu kullanabilirsiniz.
sudo ./wondershaper -c -a

Limitlemeler makina yeniden başlatıldığında ve wondershaper üzerinden temizlenildiğinde kalkacaktır. Kalıcı hale gelmesi için github sayfasını inceleyebilirsiniz.