# Установка wondershaper на Ubuntu server 24.04В этой статье покажу как установить wondershaper для ограничения скорости сети на Ubuntu 24.04.



---

# Установка и использование Wondershaper на Ubuntu 24.04

Классический `wondershaper` из репозиториев Ubuntu сломался после удаления qdisc CBQ из ядра Linux (начиная с ~6.3).    
Поэтому используем **обновлённую версию** от magnific0, которая работает на HTB и поддерживает ядра 6.8+.

## Установка

```bash
# 1. Качаем и устанавливаем свежую версию
cd /tmp
wget https://github.com/magnific0/wondershaper/archive/refs/heads/master.zip -O wondershaper.zip
unzip wondershaper.zip
cd wondershaper-master

# 2. Копируем в системный путь
sudo cp wondershaper /usr/local/bin/
sudo chmod +x /usr/local/bin/wondershaper

# 3. (опционально) Удаляем временные файлы
cd /tmp && rm -rf wondershaper*
```

Проверьте, что всё установилось:

```bash
wondershaper --version
# или просто
wondershaper -h
```

## Быстрый запуск

Узнайте имя интерфейса:

```bash
ip -br link show
# чаще всего: ens3, enp1s0, eth0 и т.п.
```

Применяем ограничение (в кбит/с):

```bash
# 10 Мбит ↓ и 10 Мбит ↑
sudo wondershaper -a ens3 -d 10000 -u 10000

# или короткая запись (часто работает)
sudo wondershaper ens3 10000 10000
```

Проверить статус:

```bash
sudo wondershaper -s -a ens3
# или
sudo wondershaper status ens3
```

Отключить:

```bash
sudo wondershaper -c -a ens3
# или
sudo wondershaper clear
```

## Полезные примеры

Ограничить до 5 Мбит/с в обе стороны:

```bash
sudo wondershaper ens3 5000 5000
```

Только upload (download не трогаем):

```bash
sudo wondershaper ens3 0 2000   # 0 = без ограничения download
```

## Если возникают ошибки

Чаще всего виноваты уже существующие qdisc:

```bash
# Быстрая очистка
sudo tc qdisc del dev ens3 root    2>/dev/null
sudo tc qdisc del dev ens3 ingress 2>/dev/null
sudo wondershaper clear
```

После этого повторно применяйте wondershaper — должно встать без проблем.

## Автозапуск после перезагрузки (опционально)

Создайте файл `/etc/network/if-pre-up.d/shaper`:

```bash
sudo nano /etc/network/if-pre-up.d/shaper
```

Вставьте:

```bash
#!/bin/sh
[ "$IFACE" = "ens3" ] || exit 0
/usr/local/bin/wondershaper -a ens3 -d 10000 -u 10000
```

Сделайте исполняемым:

```bash
sudo chmod +x /etc/network/if-pre-up.d/shaper
```

Готово! Теперь канал сервера будет ограничен автоматически.