Da się to zrobić przy użyciu iptables z modułem quota. Problem polega tylko na tym, że regułę tą trzeba będzie resetować co jakiś czas np. przy użyciu crona. Nie musisz resetować całej zapory, wystarczy określone reguły, po numerze.
Kod: Zaznacz cały
iptables -A FORWARD -s 0/0 -d [IP] -m quota --quota 1073741824 -j ACCEPT
Polecenie
pokaże, jaki numer ma reguła. Aby wstawić (przeładować) regułę np. 12-tą co miesiąc w cronie wstawiamy polecenie:
Kod: Zaznacz cały
iptables -I FORWARD 12 -s 0/0 -d [IP] -m quota --quota 1073741824 -j ACCEP
W ten sposób ją zmieniamy, nadpisujemy, w wyniku czego jej licznik jest kasowany.
Pisałem to wszystko teoretycznie, więc może coś przeoczyłem, ale ogólnie powinno działać.
Ehh pomyliło mi się - nie o to Ci chodziło. Ale to też da się zrobić bez dodatków

Np. chcemy uciąć pobieranie dla 192.168.4.50 na eth1 do 1mbit:
Kod: Zaznacz cały
tc qdisc add dev eth1 root handle 1: htb default 4
tc class add dev eth1 parent 1: classid 1:1 htb rate 1mbit
tc filter add dev eth1 protocol ip parent 1:0 prio 1 u32 match ip dst 192.168.4.50/32 flowid 1:1
Aby to zatrzymać