Приветствую! Есть машина-хранилище с gentoo на борту. На неё (в NFS шару) из другого города регулярно сливаются бекапы с нескольких машин (например, 192.168.10.41-192.168.10.43, os Debian), в процессе перелива занимая всю ширину канала между городами (400 мбит). Нужно ограничить на хранилище скорость входящих соединений до 200мбит при соединении с этих машин, не ограничивая скорости соединения с других адресов.
Подскажите пожалуйста как максимально просто и изящно реализовать это с помощью TC.
Пробовал вот так:
#!/bin/bash
ETH=eth1
tc qdisc del dev $ETH root
tc qdisc add dev $ETH root handle 1: htb default 3
tc class add dev $ETH parent 1: classid 1:1 htb rate 200mbit
tc filter add dev $ETH protocol ip parent 1: prio 1 u32 match ip dst 192.168.10.41 flowid 1:1
tc filter add dev $ETH protocol ip parent 1: prio 1 u32 match ip dst 192.168.10.42 flowid 1:1
tc filter add dev $ETH protocol ip parent 1: prio 1 u32 match ip dst 192.168.10.43 flowid 1:1
но получил только пачку ошибок:
RTNETLINK answers: No such file or directory
RTNETLINK answers: No such file or directory
RTNETLINK answers: No such file or directory
RTNETLINK answers: Invalid argument
We have an error talking to the kernel
RTNETLINK answers: Invalid argument
We have an error talking to the kernel
RTNETLINK answers: Invalid argument
We have an error talking to the kernel