В настоящее время я работаю над формированием трафика в Linux. У нас есть клиент, подключенный к серверу, на котором запущены nat и dhcp. Что мы хотим сделать, так это ограничить скорость загрузки и скачивания клиента / клиентов.
Однако работает только лимит загрузки.
Лимит скачивания (часть скрипта) РАБОТАЕТ
tc class add dev eth1 parent 1:1 classid 1:4 htb rate 30000kbit
tc filter add dev eth1 protocol ip parent 1:0 prio 1 u32 match ip dst 192.168.0.101/32 flowid 1:4
Лимит загрузки (часть скрипта)
tc class add dev eth1 parent 1:1 classid 1:4 htb rate 30000kbit
tc filter add dev eth1 protocol ip parent 1:0 prio 1 u32 match ip src 192.168.0.101/32 flowid 1:4
Единственное, что изменилось в части загрузки, - это «dst» на «src». Проблема в том, что когда мы заменяем часть загрузки сценария частью загрузки, никаких ограничений не делается. что случилось
ваше приложение для формирования трафика работает на вашем сервере с IP-адресом 192.168.0.101, поэтому вы можете просто контролировать пропускную способность загрузки с помощью фильтра с src 192.168.0.101. когда вы используете фильтр с dst 192.168.0.101, пакеты сначала принимаются на сервер, затем на них выполняется формирование трафика, поэтому вы не можете контролировать пропускную способность загрузки. для этого вы должны использовать машину между вашим сервером и вашими пользователями, чтобы контролировать загрузку и загрузку с помощью этих обоих фильтров.