Можно покопать в сторону shaperd. Несколько упрощенно, но довольно работоспособно.
Входящий траффик тоже шейпится, но коряво. Поскольку ты просто отбрасываешь пакеты, которые переполняют корзину. Wednesday 17 March 2004 16:32, Sergey Spiridonov написал: > Здравствуйте > > для тестирования понадобилость 64Kb ограничить входящий/исходящий > траффик для определённого порта. Решил начать с ssh. В аттачменте - > скрипт что я переделал из какого-то найденного в гугле. > > К сожалению этот скрипт почему-то ограничивает только исходящий траффик > - при копировании scp с этой машины всё хорошо - порядка 8-10KB, но при > копировании на эту машину - траффик ограничен 500KB, (и я думаю это > ограничение возникает из-за ограничения исходящего). > > Что я делаю не так? > > kernel-2.4.20 > > Вот результирующая таблица iptables и tc: > > eth0: > qdisc cbq 11: rate 100Mbit (bounded,isolated) prio no-transmit > class cbq 11: root rate 100Mbit (bounded,isolated) prio no-transmit > class cbq 11:1 parent 11: rate 64Kbit (bounded) prio 1 > filter parent 11: protocol ip pref 49152 fw > filter parent 11: protocol ip pref 49152 fw handle 0x4 classid 11:1 > > Chain PREROUTING (policy ACCEPT) > target prot opt source destination > MARK tcp -- anywhere anywhere tcp spt:ssh > MARK set 0x4 > MARK tcp -- anywhere anywhere tcp dpt:ssh > MARK set 0x4 > > Chain INPUT (policy ACCEPT) > target prot opt source destination > MARK tcp -- anywhere anywhere tcp spt:ssh > MARK set 0x4 > MARK tcp -- anywhere anywhere tcp dpt:ssh > MARK set 0x4 > > Chain FORWARD (policy ACCEPT) > target prot opt source destination > > Chain OUTPUT (policy ACCEPT) > target prot opt source destination > MARK tcp -- anywhere anywhere tcp spt:ssh > MARK set 0x4 > MARK tcp -- anywhere anywhere tcp dpt:ssh > MARK set 0x4 > > Chain POSTROUTING (policy ACCEPT) > target prot opt source destination > MARK tcp -- anywhere anywhere tcp spt:ssh > MARK set 0x4 > MARK tcp -- anywhere anywhere tcp dpt:ssh > MARK set 0x4 > > > Спасибо > -- > Best regards, Sergey Spiridonov -- Yagdzhyyev Vladislav Dnepropetrovsk, Ukraine